metanorma-ogc 0.0.6 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.travis.yml +3 -3
- data/README.adoc +8 -239
- data/README.adoc.old +187 -0
- data/appveyor.yml +30 -0
- data/lib/asciidoctor/ogc/biblio.rng +57 -50
- data/lib/asciidoctor/ogc/converter.rb +1 -1
- data/lib/asciidoctor/ogc/isodoc.rng +1 -0
- data/lib/asciidoctor/ogc/reqt.rng +157 -0
- data/lib/isodoc/ogc/html/html_ogc_titlepage.html +2 -7
- data/lib/isodoc/ogc/html/scripts.html +1 -1
- data/lib/isodoc/ogc/html/scripts.pdf.html +1 -1
- data/lib/isodoc/ogc/html_convert.rb +1 -12
- data/lib/isodoc/ogc/pdf_convert.rb +1 -12
- data/lib/isodoc/ogc/word_convert.rb +2 -14
- data/lib/metanorma/ogc/version.rb +1 -1
- data/metanorma-ogc.gemspec +1 -1
- metadata +6 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: eea51c0d090677e7d33baba438144ba8124e0013784531aad6157444eb64fe78
|
|
4
|
+
data.tar.gz: 7fda2b26713c8075c24307ec3db64547de91920540c88b64d029fbf40e59fb56
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9c2e579039e84e10a4f3d91ee1da183e220c1d4d337b6a3bdfb7032d2f706603fba5618b94f854ca6fbb076de01b014496f7f8e3500cbc7b9307542753b35867
|
|
7
|
+
data.tar.gz: 9e4d01426f51cbe26229d864578c1a2e24c6cdd3a04b3f6346abb6a5e90895d7698701f7cc4716b044d2b0ba96a55c0a65b8a552e77f6626eb88652da4d595cf
|
data/.travis.yml
CHANGED
|
@@ -8,9 +8,9 @@ rvm:
|
|
|
8
8
|
- ruby-head
|
|
9
9
|
before_install:
|
|
10
10
|
- gem install bundler -v 2.0.1
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
- unset _JAVA_OPTIONS
|
|
11
|
+
- travis_retry sudo apt-get update
|
|
12
|
+
- sudo bash -c "curl -L https://raw.githubusercontent.com/metanorma/metanorma-linux-setup/master/ubuntu-install-puppeteer.sh | bash"
|
|
14
13
|
matrix:
|
|
15
14
|
allow_failures:
|
|
16
15
|
- rvm: ruby-head
|
|
16
|
+
|
data/README.adoc
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
= metanorma-ogc: Metanorma processor for the Open Geospatial Consortium document class
|
|
2
2
|
|
|
3
3
|
image:https://img.shields.io/gem/v/metanorma-ogc.svg["Gem Version", link="https://rubygems.org/gems/metanorma-ogc"]
|
|
4
|
-
image:https://img.shields.io/travis/
|
|
5
|
-
image:https://
|
|
4
|
+
image:https://img.shields.io/travis/metanorma/metanorma-ogc/master.svg["Build Status", link="https://travis-ci.com/metanorma/metanorma-ogc"]
|
|
5
|
+
image:https://ci.appveyor.com/api/projects/status/odgc3ltblokvd6e7?svg=true["Appveyor Build Status", link="https://ci.appveyor.com/project/ribose/metanorma-ogc"]
|
|
6
|
+
image:https://codeclimate.com/github/metanorma/metanorma-ogc/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/metanorma/metanorma-ogc"]
|
|
6
7
|
|
|
7
8
|
WARNING: This gem is still under development.
|
|
8
9
|
|
|
@@ -30,7 +31,7 @@ as end deliverable OGC documents.
|
|
|
30
31
|
|
|
31
32
|
== Structure
|
|
32
33
|
|
|
33
|
-
This gem inherits from the https://github.com/
|
|
34
|
+
This gem inherits from the https://github.com/metanorma/metanorma-standoc
|
|
34
35
|
gem, and aligns closely to it.
|
|
35
36
|
|
|
36
37
|
|
|
@@ -38,13 +39,13 @@ gem, and aligns closely to it.
|
|
|
38
39
|
|
|
39
40
|
Please see https://www.metanorma.com for instructions to get started.
|
|
40
41
|
|
|
41
|
-
If you are using a Mac, the https://github.com/
|
|
42
|
+
If you are using a Mac, the https://github.com/metanorma/metanorma-macos-setup
|
|
42
43
|
repository has instructions on setting up your machine to run Metanorma
|
|
43
44
|
scripts such as this one. You need only run the following in a Terminal console:
|
|
44
45
|
|
|
45
46
|
[source,console]
|
|
46
47
|
----
|
|
47
|
-
$ bash <(curl -s https://raw.githubusercontent.com/
|
|
48
|
+
$ bash <(curl -s https://raw.githubusercontent.com/metanorma/metanorma-macos-setup/master/metanorma-setup)
|
|
48
49
|
$ gem install metanorma-cli
|
|
49
50
|
$ gem install metanorma-ogc
|
|
50
51
|
----
|
|
@@ -79,241 +80,9 @@ if you do not get expected results, try bracketing terms your in AsciiMathML
|
|
|
79
80
|
expressions.
|
|
80
81
|
////
|
|
81
82
|
|
|
83
|
+
== Documentation
|
|
82
84
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
=== Document model
|
|
86
|
-
|
|
87
|
-
The OGC document model is detailed here:
|
|
88
|
-
|
|
89
|
-
* https://github.com/riboseinc/metanorma-model-ogc[OGC document model]
|
|
90
|
-
|
|
91
|
-
It is an instance of the
|
|
92
|
-
https://github.com/riboseinc/metanorma-model-standoc[StandardDocument model].
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
=== Document input
|
|
96
|
-
|
|
97
|
-
Document input to Metanorma is for the compilation of content into the
|
|
98
|
-
Metanorma XML document.
|
|
99
|
-
|
|
100
|
-
The Metanorma-OGC processor supports AsciiDoc input.
|
|
101
|
-
|
|
102
|
-
AsciiDoc is selected has been selected as the authoring tool to generate the document
|
|
103
|
-
model representation of OGC standards.
|
|
104
|
-
|
|
105
|
-
Similar to Markdown, AsciiDoc is a lightweight markup format, but
|
|
106
|
-
combines the rigor and expressivity of DocBook.
|
|
107
|
-
A number of editors (through plugins) support preview of AsciiDoc files,
|
|
108
|
-
so textual content can be previewed without running the Metanorma toolchain.
|
|
109
|
-
|
|
110
|
-
The Metanorma processor automates numbering of headings, figures,
|
|
111
|
-
tables etc, automatically generates references and citations,
|
|
112
|
-
and the resulting output presentations.
|
|
113
|
-
|
|
114
|
-
NOTE: The Asciidoctor gem is used for AsciiDoc input parsing.
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
== Document attributes
|
|
118
|
-
|
|
119
|
-
=== Common attributes
|
|
120
|
-
|
|
121
|
-
Metadata of the document is provided through AsciiDoc document attributes.
|
|
122
|
-
|
|
123
|
-
https://github.com/riboseinc/metanorma-standoc[Metanorma-Standoc]
|
|
124
|
-
documents all common Metanorma document attributes.
|
|
125
|
-
Where these preexisting metanorma attributes correspond to attributes already used
|
|
126
|
-
by OGC in their Asciidoctor template, they are treated as synonyms of the Metanorma
|
|
127
|
-
attributes. The attributes relevant to OGC documents include:
|
|
128
|
-
|
|
129
|
-
`:edition:`:: The document version; e.g. `2.0`.
|
|
130
|
-
|
|
131
|
-
`:revdate:`:: The date the document was last updated.
|
|
132
|
-
|
|
133
|
-
`:copyright-year:` (OGC: `:copyrightYear`):: The year which will be claimed as when the copyright for
|
|
134
|
-
the document was issued.
|
|
135
|
-
|
|
136
|
-
`:title:`:: The main component of the English title of the document
|
|
137
|
-
(mandatory). (The first line of the AsciiDoc document, which contains the title
|
|
138
|
-
introduced with `=`, is ignored)
|
|
139
|
-
|
|
140
|
-
`:doctype:`:: The document type (mandatory). The permitted types are:
|
|
141
|
-
+
|
|
142
|
-
--
|
|
143
|
-
* Standards
|
|
144
|
-
`standard`::: Implementation Standard
|
|
145
|
-
`standard-with-suite`::: Implementation Standard with Compliance Suite
|
|
146
|
-
`abstract-specification`::: Abstract Specification
|
|
147
|
-
`community-standard`::: Community Standard
|
|
148
|
-
`profile`::: Profile / Application Profile
|
|
149
|
-
`best-practice`::: Best Practices Document
|
|
150
|
-
|
|
151
|
-
* Other
|
|
152
|
-
`engineering-report`::: Engineering Report
|
|
153
|
-
`discussion-paper`::: Discussion Paper
|
|
154
|
-
`reference-model`::: OGC Reference Model
|
|
155
|
-
`user-guide`::: User Guide
|
|
156
|
-
`policy`::: OGC Policy Document
|
|
157
|
-
`guide`::: Guide
|
|
158
|
-
`amendment`::: Technical Amendment
|
|
159
|
-
`technical-corrigendum`::: Corrigendum (errata) Changes to OGC Standards
|
|
160
|
-
`administrative`::: Internal administrative documents
|
|
161
|
-
--
|
|
162
|
-
|
|
163
|
-
`:status:`:: Document status/stage. The permitted types are:
|
|
164
|
-
+
|
|
165
|
-
`rfc`::: OGC RFC (proposal)
|
|
166
|
-
`candidate`::: Candidate Standard
|
|
167
|
-
`published`::: Published
|
|
168
|
-
`deprecated`::: Deprecated
|
|
169
|
-
`retired`::: Retired
|
|
170
|
-
|
|
171
|
-
`:committee:`:: The name of the relevant committee producing the document (mandatory). The legal values are:
|
|
172
|
-
`technical`, `planning`, `strategic-member-advisory`
|
|
173
|
-
`:subcommittee:`:: The name of the relevant subcommittee producing the document
|
|
174
|
-
`:workgroup:` (OGC: `:workingGroup:`):: The name of the relevant working group producing the document (mandatory)
|
|
175
|
-
|
|
176
|
-
`:language:`:: The language of the document (e.g. `en`) (mandatory)
|
|
177
|
-
|
|
178
|
-
`:published-date:` (OGC: `:publicationDate:`):: The publication date for the document.
|
|
179
|
-
`:issued-date:` (OGC: `:approvalDate:`):: The approval date for the document.
|
|
180
|
-
`:created-date:`:: The creation date for the document.
|
|
181
|
-
`:received-date:` (OGC: `:submissionDate:`):: The date at which the document was submitted to the standards body.
|
|
182
|
-
|
|
183
|
-
`:uri:`:: The URI to which this standard is published.
|
|
184
|
-
`:xml-uri:`:: The URI for the Metanorma XML as which this standard is published.
|
|
185
|
-
`:pdf-uri:`:: The URI for the PDF as which this standard is published.
|
|
186
|
-
`:doc-uri:`:: The URI for the DOC as which this standard is published.
|
|
187
|
-
`:docnumber:` (OGC: `docReference`):: The internal identifier referring to this document.
|
|
188
|
-
|
|
189
|
-
`:draft:`:: If present, review notes are included in the
|
|
190
|
-
Metanorma XML output; otherwise they are suppressed.
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
=== OGC-specific attributes
|
|
194
|
-
|
|
195
|
-
The following document attributes are specific to this document class:
|
|
196
|
-
|
|
197
|
-
`:external-id:`:: The external identifier referring to this document.
|
|
198
|
-
`:referenceURLID:`:: The identifier embedded into a document type-specific
|
|
199
|
-
external URL.
|
|
200
|
-
`:previous-uri:`:: URI of previous version of the document.
|
|
201
|
-
`:subcommittee-type:`:: The type of the relevant subcommittee producing the document
|
|
202
|
-
`:subcommittee-number:`:: The number of the relevant subcommittee producing the document
|
|
203
|
-
`:workgroup-type:`:: The type of the relevant workgroup producing the document
|
|
204
|
-
`:workgroup-number:`:: The number of the relevant workgroup producing the document
|
|
205
|
-
|
|
206
|
-
`:keywords:`:: Comma-delimited list of the keywords associated with the document.
|
|
207
|
-
`:submitting-organizations:`:: Semicolon-delimited list of the submitting organisations
|
|
208
|
-
for this document. (The organisation names themselves may contain commas; e.g.
|
|
209
|
-
`University of Calgary, Canada; National Central University, Taiwan`.
|
|
210
|
-
|
|
211
|
-
`:fullname{_i}:`:: The full name of a person who is a contributor to the document.
|
|
212
|
-
A second person is indicated by using a numeric suffix: `:fullname:`, `:fullname_2:`, `fullname_3:`, &c.
|
|
213
|
-
|
|
214
|
-
`:surname{_i}:`:: The surname of a person who is a contributor to the document.
|
|
215
|
-
`:givenname{_i}:`:: The given name(s) of a person who is a contributor to the document.
|
|
216
|
-
`:role{_i}:`:: The role of a a person who is a contributor to the document. By default,
|
|
217
|
-
they are coded as an `editor`; they can also be represented as an `author`.
|
|
218
|
-
|
|
219
|
-
OGC `:editor:`:: corresponds to `:fullname:` with `role` = "editor"
|
|
220
|
-
|
|
221
|
-
== Asciidoctor features specific to OGC
|
|
222
|
-
|
|
223
|
-
The https://github.com/riboseinc/metanorma-standoc[metanorma-standoc]
|
|
224
|
-
gem documents the customisations of Asciidoctor markup common to all metanorma gems.
|
|
225
|
-
The following markup is specific to this gem:
|
|
226
|
-
|
|
227
|
-
=== Section names
|
|
228
|
-
|
|
229
|
-
The Normative References section may be named just "References", reflecting OGC practice.
|
|
230
|
-
|
|
231
|
-
=== Preliminary elements
|
|
232
|
-
|
|
233
|
-
The following clauses are preliminary elements, and are moved into the frontispiece
|
|
234
|
-
of the document (in Metanorma, the document preface):
|
|
235
|
-
|
|
236
|
-
* Abstract
|
|
237
|
-
* Keywords
|
|
238
|
-
* Preface
|
|
239
|
-
* Submitting Organizations
|
|
240
|
-
* Submitters
|
|
241
|
-
|
|
242
|
-
The abstract is recognised as the first clause with an `abstract` style attribute:
|
|
243
|
-
|
|
244
|
-
[source,asciidoc]
|
|
245
|
-
----
|
|
246
|
-
[abstract]
|
|
247
|
-
== Abstract
|
|
248
|
-
|
|
249
|
-
xxx
|
|
250
|
-
----
|
|
251
|
-
|
|
252
|
-
The preface is recognised as the text between the Asciidoctor document attributes and
|
|
253
|
-
the first Asciidoctor section title; it must not be given a section title of its own.
|
|
254
|
-
|
|
255
|
-
[source,asciidoc]
|
|
256
|
-
----
|
|
257
|
-
:received-date: 2019-01-01
|
|
258
|
-
|
|
259
|
-
.Preface
|
|
260
|
-
|
|
261
|
-
preface text
|
|
262
|
-
|
|
263
|
-
=== Submitters
|
|
264
|
-
----
|
|
265
|
-
|
|
266
|
-
Keywords and Submitting Organizations consist of lists. They are treated as document metadata,
|
|
267
|
-
and are entered as a document attribute.
|
|
268
|
-
The prefatory text introducing them is added automatically.
|
|
269
|
-
|
|
270
|
-
Submitters are treated as a table, contained in a section with the title `Submitters`:
|
|
271
|
-
|
|
272
|
-
[source,asciidoc]
|
|
273
|
-
----
|
|
274
|
-
=== Submitters
|
|
275
|
-
|
|
276
|
-
|===
|
|
277
|
-
|Name |Representing |OGC member
|
|
278
|
-
|
|
279
|
-
|Steve Liang | University of Calgary, Canada / SensorUp Inc. | Yes
|
|
280
|
-
|===
|
|
281
|
-
----
|
|
282
|
-
|
|
283
|
-
=== Examples
|
|
284
|
-
|
|
285
|
-
Unlike the normal case in Metanorma, examples can have captions:
|
|
286
|
-
|
|
287
|
-
[source,asciidoc]
|
|
288
|
-
----
|
|
289
|
-
[example]
|
|
290
|
-
.Example caption
|
|
291
|
-
====
|
|
292
|
-
Text
|
|
293
|
-
====
|
|
294
|
-
----
|
|
295
|
-
|
|
296
|
-
=== Recommendations, requirements, and permissions
|
|
297
|
-
|
|
298
|
-
Distinct recommendations, requirements and permissions are recognised in Metanorma
|
|
299
|
-
Asciidoctor as tables whose first cell contains the text _Recommendation_, _Requirement_, _Permission_,
|
|
300
|
-
optionally followed by a number (which is ignored in parsing; the elements are renumberd
|
|
301
|
-
automatically in rendering.) These are currently constituted of two elements: an internal
|
|
302
|
-
label, which is parsed as the first paragraph of the second table cell, and the body of
|
|
303
|
-
the recommendation etc., which is parsed as the remainder of the second table cell.
|
|
304
|
-
|
|
305
|
-
[source,asciidoc]
|
|
306
|
-
----
|
|
307
|
-
[[recommendation1]]
|
|
308
|
-
|===
|
|
309
|
-
|Recommendation |/ogc/recommendation/wfs/2 +
|
|
310
|
-
|
|
311
|
-
If the API definition document uses the OpenAPI Specification 3.0,
|
|
312
|
-
the document SHOULD conform to the
|
|
313
|
-
<<rc_oas30,OpenAPI Specification 3.0 requirements class>>.
|
|
314
|
-
|===
|
|
315
|
-
----
|
|
316
|
-
|
|
85
|
+
See https://www.metanorma.com/author/ogc/[Write Open Geospatial Consortium documents with Metanorma]
|
|
317
86
|
|
|
318
87
|
== Examples
|
|
319
88
|
|
data/README.adoc.old
ADDED
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
= metanorma-ogc: Asciidoctor processor for Open Geospatial Consortium documents
|
|
2
|
+
|
|
3
|
+
image:https://img.shields.io/gem/v/metanorma-ogc.svg["Gem Version", link="https://rubygems.org/gems/metanorma-ogc"]
|
|
4
|
+
image:https://img.shields.io/travis/riboseinc/metanorma-ogc/master.svg["Build Status", link="https://travis-ci.com/riboseinc/metanorma-ogc"]
|
|
5
|
+
image:https://codeclimate.com/github/riboseinc/metanorma-ogc/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/riboseinc/metanorma-ogc"]
|
|
6
|
+
|
|
7
|
+
WARNING: This gem is still under development.
|
|
8
|
+
|
|
9
|
+
== Functionality
|
|
10
|
+
|
|
11
|
+
This gem processes documents following a template for generating OGC documents.
|
|
12
|
+
For http://asciidoctor.org/[Asciidoctor] input, the Metanorma toolchain uses the Asciidoctor gem as its parser.
|
|
13
|
+
|
|
14
|
+
The gem currently inherits from the https://github.com/riboseinc/metanorma-standoc
|
|
15
|
+
gem, and aligns closely to it. Refer to the ISO gem documentation
|
|
16
|
+
for guidance, including https://github.com/riboseinc/metanorma-iso/wiki/Guidance-for-authoring
|
|
17
|
+
|
|
18
|
+
The following outputs are generated.
|
|
19
|
+
|
|
20
|
+
* an XML representation of the document, intended as a document model for OGC documents.
|
|
21
|
+
* The XML representation is processed in turn to generate the following outputs
|
|
22
|
+
as end deliverable OGC documents.
|
|
23
|
+
** HTML
|
|
24
|
+
** http://asciimath.org[AsciiMathML] is to be used for mathematical formatting.
|
|
25
|
+
The gem uses the https://github.com/asciidoctor/asciimath[Ruby AsciiMath parser],
|
|
26
|
+
which is syntactically stricter than the common MathJax processor;
|
|
27
|
+
if you do not get expected results, try bracketing terms your in AsciiMathML
|
|
28
|
+
expressions.
|
|
29
|
+
|
|
30
|
+
== Usage
|
|
31
|
+
|
|
32
|
+
The preferred way to invoke this gem is via the `metanorma` script:
|
|
33
|
+
|
|
34
|
+
[source,console]
|
|
35
|
+
----
|
|
36
|
+
$ metanorma --type ogc a.adoc # output HTML
|
|
37
|
+
$ metanorma --type ogc --extensions html a.adoc # output just HTML
|
|
38
|
+
$ metanorma --type ogc --extensions xml a.adoc # output RSD XML
|
|
39
|
+
----
|
|
40
|
+
|
|
41
|
+
The gem translates the document into Metanorma XML format, and then
|
|
42
|
+
validates its output against the Metanorma XML document model; errors are
|
|
43
|
+
reported to console against the XML, and are intended for users to
|
|
44
|
+
check that they have provided all necessary components of the
|
|
45
|
+
document.
|
|
46
|
+
|
|
47
|
+
The gem then converts the XML into HTML.
|
|
48
|
+
|
|
49
|
+
The gem can also be invoked directly within asciidoctor, though this is deprecated:
|
|
50
|
+
|
|
51
|
+
[source,console]
|
|
52
|
+
----
|
|
53
|
+
$ asciidoctor -b ogc -r 'metanorma-ogc' a.adoc
|
|
54
|
+
----
|
|
55
|
+
|
|
56
|
+
=== Installation
|
|
57
|
+
|
|
58
|
+
If you are using a Mac, the https://github.com/riboseinc/metanorma-macos-setup
|
|
59
|
+
repository has instructions on setting up your machine to run Metanorma
|
|
60
|
+
scripts such as this one. You need only run the following in a Terminal console:
|
|
61
|
+
|
|
62
|
+
[source,console]
|
|
63
|
+
----
|
|
64
|
+
$ bash <(curl -s https://raw.githubusercontent.com/riboseinc/metanorma-macos-setup/master/metanorma-setup)
|
|
65
|
+
$ gem install metanorma-ogc
|
|
66
|
+
$ gem install metanorma-cli
|
|
67
|
+
----
|
|
68
|
+
|
|
69
|
+
== Approach
|
|
70
|
+
|
|
71
|
+
=== Document model
|
|
72
|
+
|
|
73
|
+
The OGC Document model used by this gem is an instance of the
|
|
74
|
+
https://github.com/riboseinc/isodoc-models[StandardDocument model].
|
|
75
|
+
|
|
76
|
+
The Metanorma XML format intends to introduce rigor into the OGC
|
|
77
|
+
standards authoring process, and is prescribed in a separate document.
|
|
78
|
+
|
|
79
|
+
=== Asciidoctor
|
|
80
|
+
|
|
81
|
+
Asciidoctor has been selected as the authoring tool to generate the document
|
|
82
|
+
model representation of OGC standards. It is a document formatting tool like
|
|
83
|
+
Markdown and DocBook, which combines the relative ease of use of the former
|
|
84
|
+
(using relatively lightweight markup), and the rigor and expressively of the
|
|
85
|
+
latter (it has a well-defined syntax, and was in fact initially developed as a
|
|
86
|
+
DocBook document authoring tool). Asciidoctor has built-in capability to output
|
|
87
|
+
Text, DocBook and HTML; so it can be used to preview the file as it is being
|
|
88
|
+
autA
|
|
89
|
+
|
|
90
|
+
Generating documents via a document model substantially automated formatting
|
|
91
|
+
associated with the document, including automating numbering of headings, figures,
|
|
92
|
+
tables etc, and automatically generating references and citations.
|
|
93
|
+
hored.
|
|
94
|
+
|
|
95
|
+
== Document Attributes
|
|
96
|
+
|
|
97
|
+
=== Common attributes
|
|
98
|
+
|
|
99
|
+
The gem relies on Asciidoctor document attributes to provide necessary
|
|
100
|
+
metadata about the document. The https://github.com/riboseinc/metanorma-standoc[metanorma-standoc]
|
|
101
|
+
gem documents the Asciidoctor document attributes common to all metanorma gems.
|
|
102
|
+
Where these preexisting metanorma attributes correspond to attributes already used
|
|
103
|
+
by OGC in their Asciidoctor template, they are treated as synonyms of the Metanorma
|
|
104
|
+
attributes. These include:
|
|
105
|
+
|
|
106
|
+
`:edition:`:: The document version; e.g. `2.0`.
|
|
107
|
+
|
|
108
|
+
`:revdate:`:: The date the document was last updated
|
|
109
|
+
|
|
110
|
+
`:copyright-year:`:: The year which will be claimed as when the copyright for
|
|
111
|
+
the document was issued
|
|
112
|
+
|
|
113
|
+
`:title:`:: The main component of the English title of the document
|
|
114
|
+
(mandatory). (The first line of the AsciiDoc document, which contains the title
|
|
115
|
+
introduced with `=`, is ignored)
|
|
116
|
+
|
|
117
|
+
`:doctype:`:: The document type (mandatory). The permitted types are:
|
|
118
|
+
+
|
|
119
|
+
--
|
|
120
|
+
* Standards
|
|
121
|
+
implementation-standard::: Implementation Standard (with or without Compliance Suite)
|
|
122
|
+
abstract-specification::: Abstract Specification (with or without Compliance Suite)
|
|
123
|
+
community-standard::: Community Standard (with or without Compliance Suite)
|
|
124
|
+
profile::: Profile (with or without Compliance Suite)
|
|
125
|
+
best-practices::: Best Practices Document
|
|
126
|
+
* Other
|
|
127
|
+
engineering-report::: Engineering Report
|
|
128
|
+
discussion-paper::: Discussion Paper
|
|
129
|
+
white-paper::: White Paper
|
|
130
|
+
user-guide::: User Guide
|
|
131
|
+
policy-directive::: Technical Committee Policy Directive
|
|
132
|
+
informative::: Informative
|
|
133
|
+
--
|
|
134
|
+
|
|
135
|
+
`:status:``:: The document status. The permitted types are:
|
|
136
|
+
|
|
137
|
+
* SWG Work
|
|
138
|
+
* OAB Review
|
|
139
|
+
* OGC-NA Review
|
|
140
|
+
* Public Review
|
|
141
|
+
* Prepare for Approval
|
|
142
|
+
* TC Approval to Vote
|
|
143
|
+
* TC Vote
|
|
144
|
+
* PC Vote
|
|
145
|
+
* Published
|
|
146
|
+
|
|
147
|
+
`:committee:` (OGC: `:workingGroup:`):: The name of the relevant committee (mandatory)
|
|
148
|
+
|
|
149
|
+
`:language:` :: The language of the document (only `en` for now) (mandatory)
|
|
150
|
+
|
|
151
|
+
`:published-date` (OGC: `:publicationDate:`):: The publication date for the document.
|
|
152
|
+
`:issued-date` (OGC: `:approvalDate:`):: The approval date for the document.
|
|
153
|
+
`:created-date`:: The creation date for the document.
|
|
154
|
+
`:submitted-date` (OGC: `:submissionDate:`):: The date at which the document was submitted to the standards body.
|
|
155
|
+
|
|
156
|
+
`:uri:`:: The URI to which this standard is published.
|
|
157
|
+
`:docnumber:` (OGC: `docReference`):: The internal identifier referring to this document.
|
|
158
|
+
|
|
159
|
+
The attribute `:draft:`, if present, includes review notes in the XML output;
|
|
160
|
+
these are otherwise suppressed.
|
|
161
|
+
|
|
162
|
+
== Asciidoctor features specific to OGC
|
|
163
|
+
|
|
164
|
+
The https://github.com/riboseinc/metanorma-standoc[metanorma-standoc]
|
|
165
|
+
gem documents the customisations of Asciidoctor markup common to all metanorma gems.
|
|
166
|
+
The following markup is specific to this gem:
|
|
167
|
+
|
|
168
|
+
`:external-id:`:: The external identifier referring to this document.
|
|
169
|
+
`:referenceURLID:`:: The identifier embedded into a document type-specific
|
|
170
|
+
external URL.
|
|
171
|
+
|
|
172
|
+
`:fullname{_i}`:: The full name of a person who is a contributor to the document.
|
|
173
|
+
A second person is indicated by using a numeric suffix: `:fullname`, `:fullname_2`, `fullname_3`, &c.
|
|
174
|
+
|
|
175
|
+
`:surname{_i}`:: The surname of a person who is a contributor to the document.
|
|
176
|
+
`:givenname{_i}`:: The given name(s) of a person who is a contributor to the document.
|
|
177
|
+
`:role{_i}`:: The role of a a person who is a contributor to the document. By default,
|
|
178
|
+
they are coded as an `editor`; they can also be represented as an `author`.
|
|
179
|
+
|
|
180
|
+
OGC `:editor:`:: corresponds to `:fullname:` with `role` = "editor"
|
|
181
|
+
|
|
182
|
+
== Examples
|
|
183
|
+
|
|
184
|
+
* link:spec/examples/rfc6350.adoc[] is an Metanorma Asciidoctor version of https://tools.ietf.org/html/rfc6350[RFC 6350].
|
|
185
|
+
* link:spec/examples/rfc6350.html[] is an HTML file generated from the Asciidoctor.
|
|
186
|
+
* link:spec/examples/rfc6350.doc[] is a Word document generated from the Asciidoctor.
|
|
187
|
+
|
data/appveyor.yml
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
version: '{build}'
|
|
2
|
+
|
|
3
|
+
environment:
|
|
4
|
+
matrix:
|
|
5
|
+
- RUBY_VERSION: 25
|
|
6
|
+
- RUBY_VERSION: 24
|
|
7
|
+
- RUBY_VERSION: 23
|
|
8
|
+
- RUBY_VERSION: _trunk
|
|
9
|
+
|
|
10
|
+
matrix:
|
|
11
|
+
allow_failures:
|
|
12
|
+
- RUBY_VERSION: _trunk
|
|
13
|
+
|
|
14
|
+
install:
|
|
15
|
+
- ps: . { iwr -useb https://raw.githubusercontent.com/metanorma/metanorma-build-scripts/master/appveyor.ps1 } | iex
|
|
16
|
+
- refreshenv
|
|
17
|
+
|
|
18
|
+
build_script:
|
|
19
|
+
- set PATH=C:\Ruby%RUBY_VERSION%\bin;%PATH%
|
|
20
|
+
- bundle update
|
|
21
|
+
- bundle install
|
|
22
|
+
|
|
23
|
+
before_test:
|
|
24
|
+
- ruby -v
|
|
25
|
+
- gem -v
|
|
26
|
+
- bundle -v
|
|
27
|
+
|
|
28
|
+
test_script:
|
|
29
|
+
- bundle exec rake
|
|
30
|
+
|
|
@@ -156,9 +156,9 @@
|
|
|
156
156
|
<zeroOrMore>
|
|
157
157
|
<ref name="contact"/>
|
|
158
158
|
</zeroOrMore>
|
|
159
|
-
<
|
|
159
|
+
<zeroOrMore>
|
|
160
160
|
<ref name="uri"/>
|
|
161
|
-
</
|
|
161
|
+
</zeroOrMore>
|
|
162
162
|
</element>
|
|
163
163
|
</define>
|
|
164
164
|
<define name="fullname">
|
|
@@ -246,9 +246,9 @@
|
|
|
246
246
|
<optional>
|
|
247
247
|
<ref name="abbreviation"/>
|
|
248
248
|
</optional>
|
|
249
|
-
<
|
|
249
|
+
<zeroOrMore>
|
|
250
250
|
<ref name="uri"/>
|
|
251
|
-
</
|
|
251
|
+
</zeroOrMore>
|
|
252
252
|
<zeroOrMore>
|
|
253
253
|
<ref name="org-identifier"/>
|
|
254
254
|
</zeroOrMore>
|
|
@@ -469,12 +469,13 @@
|
|
|
469
469
|
<value>film</value>
|
|
470
470
|
<value>video</value>
|
|
471
471
|
<value>broadcast</value>
|
|
472
|
-
<value>
|
|
472
|
+
<value>graphic_work</value>
|
|
473
473
|
<value>music</value>
|
|
474
474
|
<value>patent</value>
|
|
475
475
|
<value>inbook</value>
|
|
476
476
|
<value>incollection</value>
|
|
477
477
|
<value>inproceedings</value>
|
|
478
|
+
<value>journal</value>
|
|
478
479
|
</choice>
|
|
479
480
|
</define>
|
|
480
481
|
<define name="BibliographicItem">
|
|
@@ -739,39 +740,44 @@
|
|
|
739
740
|
<element name="series">
|
|
740
741
|
<optional>
|
|
741
742
|
<attribute name="type">
|
|
742
|
-
<
|
|
743
|
-
<value>main</value>
|
|
744
|
-
<value>alt</value>
|
|
745
|
-
</choice>
|
|
743
|
+
<ref name="SeriesType"/>
|
|
746
744
|
</attribute>
|
|
747
745
|
</optional>
|
|
748
746
|
<choice>
|
|
749
|
-
<ref name="btitle"/>
|
|
750
747
|
<ref name="formattedref"/>
|
|
748
|
+
<group>
|
|
749
|
+
<ref name="btitle"/>
|
|
750
|
+
<optional>
|
|
751
|
+
<ref name="bplace"/>
|
|
752
|
+
</optional>
|
|
753
|
+
<optional>
|
|
754
|
+
<ref name="seriesorganization"/>
|
|
755
|
+
</optional>
|
|
756
|
+
<optional>
|
|
757
|
+
<ref name="abbreviation"/>
|
|
758
|
+
</optional>
|
|
759
|
+
<optional>
|
|
760
|
+
<ref name="seriesfrom"/>
|
|
761
|
+
</optional>
|
|
762
|
+
<optional>
|
|
763
|
+
<ref name="seriesto"/>
|
|
764
|
+
</optional>
|
|
765
|
+
<optional>
|
|
766
|
+
<ref name="seriesnumber"/>
|
|
767
|
+
</optional>
|
|
768
|
+
<optional>
|
|
769
|
+
<ref name="seriespartnumber"/>
|
|
770
|
+
</optional>
|
|
771
|
+
</group>
|
|
751
772
|
</choice>
|
|
752
|
-
<optional>
|
|
753
|
-
<ref name="bplace"/>
|
|
754
|
-
</optional>
|
|
755
|
-
<optional>
|
|
756
|
-
<ref name="seriesorganization"/>
|
|
757
|
-
</optional>
|
|
758
|
-
<optional>
|
|
759
|
-
<ref name="abbreviation"/>
|
|
760
|
-
</optional>
|
|
761
|
-
<optional>
|
|
762
|
-
<ref name="seriesfrom"/>
|
|
763
|
-
</optional>
|
|
764
|
-
<optional>
|
|
765
|
-
<ref name="seriesto"/>
|
|
766
|
-
</optional>
|
|
767
|
-
<optional>
|
|
768
|
-
<ref name="seriesnumber"/>
|
|
769
|
-
</optional>
|
|
770
|
-
<optional>
|
|
771
|
-
<ref name="seriespartnumber"/>
|
|
772
|
-
</optional>
|
|
773
773
|
</element>
|
|
774
774
|
</define>
|
|
775
|
+
<define name="SeriesType">
|
|
776
|
+
<choice>
|
|
777
|
+
<value>main</value>
|
|
778
|
+
<value>alt</value>
|
|
779
|
+
</choice>
|
|
780
|
+
</define>
|
|
775
781
|
<define name="seriesorganization">
|
|
776
782
|
<element name="organization">
|
|
777
783
|
<text/>
|
|
@@ -831,25 +837,29 @@
|
|
|
831
837
|
<ref name="ContributorInfo"/>
|
|
832
838
|
</element>
|
|
833
839
|
</define>
|
|
840
|
+
<define name="DocRelationType">
|
|
841
|
+
<choice>
|
|
842
|
+
<value>obsoletes</value>
|
|
843
|
+
<value>updates</value>
|
|
844
|
+
<value>updatedBy</value>
|
|
845
|
+
<value>complements</value>
|
|
846
|
+
<value>derivedFrom</value>
|
|
847
|
+
<value>translatedFrom</value>
|
|
848
|
+
<value>adoptedFrom</value>
|
|
849
|
+
<value>equivalent</value>
|
|
850
|
+
<value>identical</value>
|
|
851
|
+
<value>nonequivalent</value>
|
|
852
|
+
<value>includedIn</value>
|
|
853
|
+
<value>includes</value>
|
|
854
|
+
<value>instance</value>
|
|
855
|
+
<value>partOf</value>
|
|
856
|
+
<value>hasDraft</value>
|
|
857
|
+
</choice>
|
|
858
|
+
</define>
|
|
834
859
|
<define name="docrelation">
|
|
835
860
|
<element name="relation">
|
|
836
861
|
<attribute name="type">
|
|
837
|
-
<
|
|
838
|
-
<value>obsoletes</value>
|
|
839
|
-
<value>updates</value>
|
|
840
|
-
<value>updatedBy</value>
|
|
841
|
-
<value>complements</value>
|
|
842
|
-
<value>derivedFrom</value>
|
|
843
|
-
<value>translatedFrom</value>
|
|
844
|
-
<value>adoptedFrom</value>
|
|
845
|
-
<value>equivalent</value>
|
|
846
|
-
<value>identical</value>
|
|
847
|
-
<value>nonequivalent</value>
|
|
848
|
-
<value>includedIn</value>
|
|
849
|
-
<value>includes</value>
|
|
850
|
-
<value>instance</value>
|
|
851
|
-
<value>partOf</value>
|
|
852
|
-
</choice>
|
|
862
|
+
<ref name="DocRelationType"/>
|
|
853
863
|
</attribute>
|
|
854
864
|
<element name="bibitem">
|
|
855
865
|
<ref name="BibliographicItem"/>
|
|
@@ -861,9 +871,6 @@
|
|
|
861
871
|
</define>
|
|
862
872
|
<define name="version">
|
|
863
873
|
<element name="version">
|
|
864
|
-
<optional>
|
|
865
|
-
<ref name="vedition"/>
|
|
866
|
-
</optional>
|
|
867
874
|
<optional>
|
|
868
875
|
<ref name="revision-date"/>
|
|
869
876
|
</optional>
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
|
3
|
+
<!--
|
|
4
|
+
Presupposes isodoc.rnc, is included in it
|
|
5
|
+
include "isodoc.rnc" { }
|
|
6
|
+
-->
|
|
7
|
+
<define name="requirement">
|
|
8
|
+
<element name="requirement">
|
|
9
|
+
<ref name="RequirementType"/>
|
|
10
|
+
</element>
|
|
11
|
+
</define>
|
|
12
|
+
<define name="recommendation">
|
|
13
|
+
<element name="recommendation">
|
|
14
|
+
<ref name="RequirementType"/>
|
|
15
|
+
</element>
|
|
16
|
+
</define>
|
|
17
|
+
<define name="permission">
|
|
18
|
+
<element name="permission">
|
|
19
|
+
<ref name="RequirementType"/>
|
|
20
|
+
</element>
|
|
21
|
+
</define>
|
|
22
|
+
<define name="RequirementType">
|
|
23
|
+
<optional>
|
|
24
|
+
<attribute name="obligation">
|
|
25
|
+
<ref name="ObligationType"/>
|
|
26
|
+
</attribute>
|
|
27
|
+
</optional>
|
|
28
|
+
<attribute name="id">
|
|
29
|
+
<data type="ID"/>
|
|
30
|
+
</attribute>
|
|
31
|
+
<optional>
|
|
32
|
+
<attribute name="filename"/>
|
|
33
|
+
</optional>
|
|
34
|
+
<optional>
|
|
35
|
+
<ref name="reqtitle"/>
|
|
36
|
+
</optional>
|
|
37
|
+
<optional>
|
|
38
|
+
<ref name="label"/>
|
|
39
|
+
</optional>
|
|
40
|
+
<optional>
|
|
41
|
+
<ref name="subject"/>
|
|
42
|
+
</optional>
|
|
43
|
+
<optional>
|
|
44
|
+
<ref name="reqinherit"/>
|
|
45
|
+
</optional>
|
|
46
|
+
<zeroOrMore>
|
|
47
|
+
<ref name="classification"/>
|
|
48
|
+
</zeroOrMore>
|
|
49
|
+
<zeroOrMore>
|
|
50
|
+
<choice>
|
|
51
|
+
<ref name="measurementtarget"/>
|
|
52
|
+
<ref name="specification"/>
|
|
53
|
+
<ref name="verification"/>
|
|
54
|
+
<ref name="import"/>
|
|
55
|
+
<ref name="description"/>
|
|
56
|
+
</choice>
|
|
57
|
+
</zeroOrMore>
|
|
58
|
+
<optional>
|
|
59
|
+
<ref name="reqt_references"/>
|
|
60
|
+
</optional>
|
|
61
|
+
<zeroOrMore>
|
|
62
|
+
<choice>
|
|
63
|
+
<ref name="requirement"/>
|
|
64
|
+
<ref name="recommendation"/>
|
|
65
|
+
<ref name="permission"/>
|
|
66
|
+
</choice>
|
|
67
|
+
</zeroOrMore>
|
|
68
|
+
</define>
|
|
69
|
+
<define name="reqtitle">
|
|
70
|
+
<element name="title">
|
|
71
|
+
<ref name="FormattedString"/>
|
|
72
|
+
</element>
|
|
73
|
+
</define>
|
|
74
|
+
<define name="label">
|
|
75
|
+
<element name="label">
|
|
76
|
+
<text/>
|
|
77
|
+
</element>
|
|
78
|
+
</define>
|
|
79
|
+
<define name="subject">
|
|
80
|
+
<element name="subject">
|
|
81
|
+
<text/>
|
|
82
|
+
</element>
|
|
83
|
+
</define>
|
|
84
|
+
<define name="reqinherit">
|
|
85
|
+
<element name="subject">
|
|
86
|
+
<text/>
|
|
87
|
+
</element>
|
|
88
|
+
</define>
|
|
89
|
+
<define name="measurementtarget">
|
|
90
|
+
<element name="measurement-target">
|
|
91
|
+
<ref name="RequirementSubpart"/>
|
|
92
|
+
</element>
|
|
93
|
+
</define>
|
|
94
|
+
<define name="specification">
|
|
95
|
+
<element name="specification">
|
|
96
|
+
<ref name="RequirementSubpart"/>
|
|
97
|
+
</element>
|
|
98
|
+
</define>
|
|
99
|
+
<define name="verification">
|
|
100
|
+
<element name="verification">
|
|
101
|
+
<ref name="RequirementSubpart"/>
|
|
102
|
+
</element>
|
|
103
|
+
</define>
|
|
104
|
+
<define name="import">
|
|
105
|
+
<element name="import">
|
|
106
|
+
<ref name="RequirementSubpart"/>
|
|
107
|
+
</element>
|
|
108
|
+
</define>
|
|
109
|
+
<define name="description">
|
|
110
|
+
<element name="description">
|
|
111
|
+
<ref name="RequirementSubpart"/>
|
|
112
|
+
</element>
|
|
113
|
+
</define>
|
|
114
|
+
<define name="reqt_references">
|
|
115
|
+
<element name="references">
|
|
116
|
+
<oneOrMore>
|
|
117
|
+
<ref name="bibitem"/>
|
|
118
|
+
</oneOrMore>
|
|
119
|
+
</element>
|
|
120
|
+
</define>
|
|
121
|
+
<define name="RequirementSubpart">
|
|
122
|
+
<optional>
|
|
123
|
+
<attribute name="type"/>
|
|
124
|
+
</optional>
|
|
125
|
+
<optional>
|
|
126
|
+
<attribute name="exclude">
|
|
127
|
+
<data type="boolean"/>
|
|
128
|
+
</attribute>
|
|
129
|
+
</optional>
|
|
130
|
+
<oneOrMore>
|
|
131
|
+
<ref name="BasicBlock"/>
|
|
132
|
+
</oneOrMore>
|
|
133
|
+
</define>
|
|
134
|
+
<define name="ObligationType">
|
|
135
|
+
<choice>
|
|
136
|
+
<value>requirement</value>
|
|
137
|
+
<value>recommendation</value>
|
|
138
|
+
<value>permission</value>
|
|
139
|
+
</choice>
|
|
140
|
+
</define>
|
|
141
|
+
<define name="classification">
|
|
142
|
+
<element name="classification">
|
|
143
|
+
<ref name="classification_tag"/>
|
|
144
|
+
<ref name="classification_value"/>
|
|
145
|
+
</element>
|
|
146
|
+
</define>
|
|
147
|
+
<define name="classification_tag">
|
|
148
|
+
<element name="tag">
|
|
149
|
+
<text/>
|
|
150
|
+
</element>
|
|
151
|
+
</define>
|
|
152
|
+
<define name="classification_value">
|
|
153
|
+
<element name="value">
|
|
154
|
+
<text/>
|
|
155
|
+
</element>
|
|
156
|
+
</define>
|
|
157
|
+
</grammar>
|
|
@@ -143,17 +143,12 @@
|
|
|
143
143
|
|
|
144
144
|
<div class="info-section">
|
|
145
145
|
<div class="copyright">
|
|
146
|
+
<p><b>Copyright notice</b></p>
|
|
146
147
|
<p class="year">
|
|
147
|
-
© {{ docyear }} Open Geospatial Consortium
|
|
148
|
+
Copyright © {{ docyear }} Open Geospatial Consortium
|
|
148
149
|
</p>
|
|
149
150
|
|
|
150
151
|
<p class="message">
|
|
151
|
-
All rights reserved. Unless otherwise specified, no part of this
|
|
152
|
-
publication may be reproduced or utilized otherwise in any form or by any
|
|
153
|
-
means, electronic or mechanical, including photocopying, or posting on the
|
|
154
|
-
internet or an intranet, without prior written permission. Permission can
|
|
155
|
-
be requested from the address below.
|
|
156
|
-
|
|
157
152
|
To obtain additional rights of use, visit <a href="http://www.opengeospatial.org/legal/">http://www.opengeospatial.org/legal/</a>.
|
|
158
153
|
</p>
|
|
159
154
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script>
|
|
2
2
|
//TOC generation
|
|
3
3
|
$('#toc').toc({
|
|
4
|
-
'selectors':
|
|
4
|
+
'selectors': toclevel(), //elements to use as headings
|
|
5
5
|
'container': 'main', //element to find all selectors in
|
|
6
6
|
'smoothScrolling': true, //enable or disable smooth scrolling on click
|
|
7
7
|
'prefix': 'toc', //prefix for anchor tags and class names
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script>
|
|
2
2
|
//TOC generation
|
|
3
3
|
$('#toc').toc({
|
|
4
|
-
'selectors':
|
|
4
|
+
'selectors': toclevel(), //elements to use as headings
|
|
5
5
|
'container': 'main', //element to find all selectors in
|
|
6
6
|
'smoothScrolling': true, //enable or disable smooth scrolling on click
|
|
7
7
|
'prefix': 'toc', //prefix for anchor tags and class names
|
|
@@ -37,22 +37,11 @@ module IsoDoc
|
|
|
37
37
|
@meta = Metadata.new(lang, script, labels)
|
|
38
38
|
end
|
|
39
39
|
|
|
40
|
-
def
|
|
40
|
+
def googlefonts
|
|
41
41
|
<<~HEAD.freeze
|
|
42
|
-
<title>{{ doctitle }}</title>
|
|
43
|
-
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
44
|
-
|
|
45
|
-
<!--TOC script import-->
|
|
46
|
-
<script type="text/javascript" src="https://cdn.rawgit.com/jgallen23/toc/0.3.2/dist/toc.min.js"></script>
|
|
47
|
-
|
|
48
|
-
<!--Google fonts-->
|
|
49
42
|
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i|Space+Mono:400,700" rel="stylesheet" />
|
|
50
43
|
<link href="https://fonts.googleapis.com/css?family=Teko:300,400,500" rel="stylesheet">
|
|
51
44
|
<link href="https://fonts.googleapis.com/css?family=Overpass:300,300i,600,900" rel="stylesheet">
|
|
52
|
-
<!--Font awesome import for the link icon-->
|
|
53
|
-
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/solid.css" integrity="sha384-rdyFrfAIC05c5ph7BKz3l5NG5yEottvO/DQ0dCrwD8gzeQDjYBHNr1ucUpQuljos" crossorigin="anonymous">
|
|
54
|
-
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/fontawesome.css" integrity="sha384-u5J7JghGz0qUrmEsWzBQkfvc8nK3fUT7DCaQzNQ+q4oEXhGSx+P2OqjWsfIRB8QT" crossorigin="anonymous">
|
|
55
|
-
<style class="anchorjs"></style>
|
|
56
45
|
HEAD
|
|
57
46
|
end
|
|
58
47
|
|
|
@@ -35,22 +35,11 @@ module IsoDoc
|
|
|
35
35
|
@meta = Metadata.new(lang, script, labels)
|
|
36
36
|
end
|
|
37
37
|
|
|
38
|
-
def
|
|
38
|
+
def googlefonts()
|
|
39
39
|
<<~HEAD.freeze
|
|
40
|
-
<title>{{ doctitle }}</title>
|
|
41
|
-
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
|
|
42
|
-
|
|
43
|
-
<!--TOC script import-->
|
|
44
|
-
<script type="text/javascript" src="https://cdn.rawgit.com/jgallen23/toc/0.3.2/dist/toc.min.js"></script>
|
|
45
|
-
|
|
46
|
-
<!--Google fonts-->
|
|
47
40
|
<link href="https://fonts.googleapis.com/css?family=Open+Sans:300,300i,400,400i,600,600i|Space+Mono:400,700" rel="stylesheet" />
|
|
48
41
|
<link href="https://fonts.googleapis.com/css?family=Overpass:300,300i,600,900" rel="stylesheet" />
|
|
49
42
|
<link href="https://fonts.googleapis.com/css?family=Teko:300,400,500" rel="stylesheet">
|
|
50
|
-
<!--Font awesome import for the link icon-->
|
|
51
|
-
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/solid.css" integrity="sha384-rdyFrfAIC05c5ph7BKz3l5NG5yEottvO/DQ0dCrwD8gzeQDjYBHNr1ucUpQuljos" crossorigin="anonymous">
|
|
52
|
-
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/fontawesome.css" integrity="sha384-u5J7JghGz0qUrmEsWzBQkfvc8nK3fUT7DCaQzNQ+q4oEXhGSx+P2OqjWsfIRB8QT" crossorigin="anonymous">
|
|
53
|
-
<style class="anchorjs"></style>
|
|
54
43
|
HEAD
|
|
55
44
|
end
|
|
56
45
|
|
|
@@ -58,9 +58,9 @@ module IsoDoc
|
|
|
58
58
|
end
|
|
59
59
|
=end
|
|
60
60
|
|
|
61
|
-
def insert_toc(intro, docxml)
|
|
61
|
+
def insert_toc(intro, docxml, level)
|
|
62
62
|
toc = ""
|
|
63
|
-
toc += make_WordToC(docxml)
|
|
63
|
+
toc += make_WordToC(docxml, level)
|
|
64
64
|
if docxml.at("//p[@class = 'TableTitle']")
|
|
65
65
|
toc += %{<p class="TOCTitle">List of Tables</p>}
|
|
66
66
|
toc += make_TableWordToC(docxml)
|
|
@@ -132,18 +132,6 @@ module IsoDoc
|
|
|
132
132
|
%{\\1#{WORD_TOC_RECOMMENDATION_PREFACE1}}) + WORD_TOC_SUFFIX1
|
|
133
133
|
end
|
|
134
134
|
|
|
135
|
-
def make_WordToC(docxml)
|
|
136
|
-
toc = ""
|
|
137
|
-
docxml.xpath("//h1[not(ancestor::*[@class = 'WordSection2'])] |"\
|
|
138
|
-
"//h1[contains(., 'Executive Summary')] |"\
|
|
139
|
-
"//h2[not(ancestor::*[@class = 'WordSection2'])] |"\
|
|
140
|
-
"//h3[not(ancestor::*[@class = 'WordSection2'])]").each do |h|
|
|
141
|
-
toc += word_toc_entry(h.name[1].to_i, header_strip(h))
|
|
142
|
-
end
|
|
143
|
-
toc.sub(/(<p class="MsoToc1">)/,
|
|
144
|
-
%{\\1#{WORD_TOC_PREFACE1}}) + WORD_TOC_SUFFIX1
|
|
145
|
-
end
|
|
146
|
-
|
|
147
135
|
def annex_name(annex, name, div)
|
|
148
136
|
div.h1 **{ class: "Annex" } do |t|
|
|
149
137
|
t << "#{get_anchors[annex['id']][:label]} "
|
data/metanorma-ogc.gemspec
CHANGED
|
@@ -13,7 +13,7 @@ Gem::Specification.new do |spec|
|
|
|
13
13
|
Metanorma for the Open Geospatial Consortium.
|
|
14
14
|
DESCRIPTION
|
|
15
15
|
|
|
16
|
-
spec.homepage = "https://github.com/
|
|
16
|
+
spec.homepage = "https://github.com/metanorma/metanorma-ogc"
|
|
17
17
|
spec.license = "BSD-2-Clause"
|
|
18
18
|
|
|
19
19
|
spec.files = `git ls-files -z`.split("\x0").reject do |f|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: metanorma-ogc
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ribose Inc.
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: exe
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2019-
|
|
11
|
+
date: 2019-04-04 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: asciidoctor
|
|
@@ -279,7 +279,9 @@ files:
|
|
|
279
279
|
- Gemfile
|
|
280
280
|
- LICENSE
|
|
281
281
|
- README.adoc
|
|
282
|
+
- README.adoc.old
|
|
282
283
|
- Rakefile
|
|
284
|
+
- appveyor.yml
|
|
283
285
|
- bin/console
|
|
284
286
|
- bin/rspec
|
|
285
287
|
- bin/setup
|
|
@@ -290,6 +292,7 @@ files:
|
|
|
290
292
|
- lib/asciidoctor/ogc/isodoc.rng
|
|
291
293
|
- lib/asciidoctor/ogc/isostandard.rng
|
|
292
294
|
- lib/asciidoctor/ogc/ogc.rng
|
|
295
|
+
- lib/asciidoctor/ogc/reqt.rng
|
|
293
296
|
- lib/isodoc/ogc.rb
|
|
294
297
|
- lib/isodoc/ogc/html/header.html
|
|
295
298
|
- lib/isodoc/ogc/html/html_ogc_intro.html
|
|
@@ -311,7 +314,7 @@ files:
|
|
|
311
314
|
- lib/metanorma/ogc/processor.rb
|
|
312
315
|
- lib/metanorma/ogc/version.rb
|
|
313
316
|
- metanorma-ogc.gemspec
|
|
314
|
-
homepage: https://github.com/
|
|
317
|
+
homepage: https://github.com/metanorma/metanorma-ogc
|
|
315
318
|
licenses:
|
|
316
319
|
- BSD-2-Clause
|
|
317
320
|
metadata: {}
|