metanorma-ogc 2.2.4 → 2.2.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/isodoc/ogc/html/htmlstyle.css +7 -1
- data/lib/isodoc/ogc/html/htmlstyle.scss +1 -0
- data/lib/isodoc/ogc/metadata.rb +7 -6
- data/lib/isodoc/ogc/ogc.abstract-specification-topic.xsl +163 -29
- data/lib/isodoc/ogc/ogc.best-practice.xsl +163 -29
- data/lib/isodoc/ogc/ogc.change-request-supporting-document.xsl +163 -29
- data/lib/isodoc/ogc/ogc.community-practice.xsl +163 -29
- data/lib/isodoc/ogc/ogc.community-standard.xsl +163 -29
- data/lib/isodoc/ogc/ogc.discussion-paper.xsl +163 -29
- data/lib/isodoc/ogc/ogc.draft-standard.xsl +10902 -0
- data/lib/isodoc/ogc/ogc.engineering-report.xsl +163 -29
- data/lib/isodoc/ogc/ogc.other.xsl +163 -29
- data/lib/isodoc/ogc/ogc.policy.xsl +163 -29
- data/lib/isodoc/ogc/ogc.reference-model.xsl +163 -29
- data/lib/isodoc/ogc/ogc.release-notes.xsl +163 -29
- data/lib/isodoc/ogc/ogc.standard.xsl +163 -29
- data/lib/isodoc/ogc/ogc.test-suite.xsl +163 -29
- data/lib/isodoc/ogc/ogc.user-guide.xsl +163 -29
- data/lib/isodoc/ogc/ogc.white-paper.xsl +145 -23
- data/lib/isodoc/ogc/pdf_convert.rb +5 -4
- data/lib/isodoc/ogc/presentation_xml_convert.rb +5 -5
- data/lib/isodoc/ogc/xref.rb +19 -19
- data/lib/metanorma/ogc/basicdoc.rng +0 -27
- data/lib/metanorma/ogc/biblio-standoc.rng +164 -0
- data/lib/metanorma/ogc/biblio.rng +50 -18
- data/lib/metanorma/ogc/cleanup.rb +14 -14
- data/lib/metanorma/ogc/converter.rb +2 -2
- data/lib/metanorma/ogc/front.rb +12 -8
- data/lib/metanorma/ogc/isodoc.rng +68 -206
- data/lib/metanorma/ogc/ogc.rng +1 -74
- data/lib/metanorma/ogc/relaton-ogc.rng +83 -0
- data/lib/metanorma/ogc/validate.rb +15 -15
- data/lib/metanorma/ogc/version.rb +1 -1
- data/metanorma-ogc.gemspec +3 -2
- metadata +7 -10
- data/.github/workflows/rake.yml +0 -15
- data/.github/workflows/release.yml +0 -24
- data/Rakefile +0 -8
- data/bin/console +0 -14
- data/bin/rspec +0 -17
- data/bin/setup +0 -8
@@ -19,19 +19,7 @@
|
|
19
19
|
-->
|
20
20
|
<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
|
21
21
|
<include href="reqt.rng"/>
|
22
|
-
<!-- include "biblio.rnc" { } -->
|
23
22
|
<include href="basicdoc.rng">
|
24
|
-
<start>
|
25
|
-
<ref name="standard-document"/>
|
26
|
-
</start>
|
27
|
-
<define name="doctype">
|
28
|
-
<element name="doctype">
|
29
|
-
<optional>
|
30
|
-
<attribute name="abbreviation"/>
|
31
|
-
</optional>
|
32
|
-
<ref name="DocumentType"/>
|
33
|
-
</element>
|
34
|
-
</define>
|
35
23
|
<define name="admonition">
|
36
24
|
<element name="admonition">
|
37
25
|
<attribute name="type">
|
@@ -117,24 +105,6 @@
|
|
117
105
|
</optional>
|
118
106
|
</element>
|
119
107
|
</define>
|
120
|
-
<define name="bibitem">
|
121
|
-
<element name="bibitem">
|
122
|
-
<attribute name="id">
|
123
|
-
<data type="ID"/>
|
124
|
-
</attribute>
|
125
|
-
<optional>
|
126
|
-
<attribute name="hidden">
|
127
|
-
<data type="boolean"/>
|
128
|
-
</attribute>
|
129
|
-
</optional>
|
130
|
-
<optional>
|
131
|
-
<attribute name="suppress_identifier">
|
132
|
-
<data type="boolean"/>
|
133
|
-
</attribute>
|
134
|
-
</optional>
|
135
|
-
<ref name="BibliographicItem"/>
|
136
|
-
</element>
|
137
|
-
</define>
|
138
108
|
<define name="section-title">
|
139
109
|
<element name="title">
|
140
110
|
<zeroOrMore>
|
@@ -207,11 +177,7 @@
|
|
207
177
|
</optional>
|
208
178
|
<optional>
|
209
179
|
<attribute name="style">
|
210
|
-
<
|
211
|
-
<value>basic</value>
|
212
|
-
<value>full</value>
|
213
|
-
<value>short</value>
|
214
|
-
</choice>
|
180
|
+
<ref name="XrefStyleType"/>
|
215
181
|
</attribute>
|
216
182
|
</optional>
|
217
183
|
<ref name="XrefBody"/>
|
@@ -248,42 +214,6 @@
|
|
248
214
|
<ref name="PureTextElement"/>
|
249
215
|
</oneOrMore>
|
250
216
|
</define>
|
251
|
-
<define name="localityStack">
|
252
|
-
<element name="localityStack">
|
253
|
-
<optional>
|
254
|
-
<attribute name="connective">
|
255
|
-
<choice>
|
256
|
-
<value>and</value>
|
257
|
-
<value>or</value>
|
258
|
-
<value>from</value>
|
259
|
-
<value>to</value>
|
260
|
-
<value/>
|
261
|
-
</choice>
|
262
|
-
</attribute>
|
263
|
-
</optional>
|
264
|
-
<zeroOrMore>
|
265
|
-
<ref name="locality"/>
|
266
|
-
</zeroOrMore>
|
267
|
-
</element>
|
268
|
-
</define>
|
269
|
-
<define name="sourceLocalityStack">
|
270
|
-
<element name="sourceLocalityStack">
|
271
|
-
<optional>
|
272
|
-
<attribute name="connective">
|
273
|
-
<choice>
|
274
|
-
<value>and</value>
|
275
|
-
<value>or</value>
|
276
|
-
<value>from</value>
|
277
|
-
<value>to</value>
|
278
|
-
<value/>
|
279
|
-
</choice>
|
280
|
-
</attribute>
|
281
|
-
</optional>
|
282
|
-
<zeroOrMore>
|
283
|
-
<ref name="sourceLocality"/>
|
284
|
-
</zeroOrMore>
|
285
|
-
</element>
|
286
|
-
</define>
|
287
217
|
<define name="ul">
|
288
218
|
<element name="ul">
|
289
219
|
<attribute name="id">
|
@@ -827,21 +757,6 @@
|
|
827
757
|
</zeroOrMore>
|
828
758
|
</element>
|
829
759
|
</define>
|
830
|
-
<define name="BibDataExtensionType">
|
831
|
-
<ref name="doctype"/>
|
832
|
-
<optional>
|
833
|
-
<ref name="docsubtype"/>
|
834
|
-
</optional>
|
835
|
-
<optional>
|
836
|
-
<ref name="editorialgroup"/>
|
837
|
-
</optional>
|
838
|
-
<zeroOrMore>
|
839
|
-
<ref name="ics"/>
|
840
|
-
</zeroOrMore>
|
841
|
-
<zeroOrMore>
|
842
|
-
<ref name="structuredidentifier"/>
|
843
|
-
</zeroOrMore>
|
844
|
-
</define>
|
845
760
|
<!-- TitleType = text -->
|
846
761
|
<define name="sections">
|
847
762
|
<element name="sections">
|
@@ -881,7 +796,7 @@
|
|
881
796
|
<ref name="BasicBlock"/>
|
882
797
|
</zeroOrMore>
|
883
798
|
<zeroOrMore>
|
884
|
-
<ref name="
|
799
|
+
<ref name="doc_bibitem"/>
|
885
800
|
<zeroOrMore>
|
886
801
|
<ref name="note"/>
|
887
802
|
</zeroOrMore>
|
@@ -1112,6 +1027,7 @@
|
|
1112
1027
|
<ref name="stem"/>
|
1113
1028
|
<ref name="index"/>
|
1114
1029
|
<ref name="eref"/>
|
1030
|
+
<ref name="erefstack"/>
|
1115
1031
|
<ref name="xref"/>
|
1116
1032
|
<ref name="hyperlink"/>
|
1117
1033
|
</choice>
|
@@ -1126,6 +1042,7 @@
|
|
1126
1042
|
<ref name="stem"/>
|
1127
1043
|
<ref name="index"/>
|
1128
1044
|
<ref name="eref"/>
|
1045
|
+
<ref name="erefstack"/>
|
1129
1046
|
<ref name="xref"/>
|
1130
1047
|
<ref name="hyperlink"/>
|
1131
1048
|
</choice>
|
@@ -1139,6 +1056,7 @@
|
|
1139
1056
|
<ref name="PureTextElement"/>
|
1140
1057
|
<ref name="index"/>
|
1141
1058
|
<ref name="eref"/>
|
1059
|
+
<ref name="erefstack"/>
|
1142
1060
|
<ref name="xref"/>
|
1143
1061
|
<ref name="hyperlink"/>
|
1144
1062
|
</choice>
|
@@ -1219,6 +1137,24 @@
|
|
1219
1137
|
</define>
|
1220
1138
|
</include>
|
1221
1139
|
<!-- end overrides -->
|
1140
|
+
<define name="doc_bibitem">
|
1141
|
+
<element name="bibitem">
|
1142
|
+
<attribute name="id">
|
1143
|
+
<data type="ID"/>
|
1144
|
+
</attribute>
|
1145
|
+
<optional>
|
1146
|
+
<attribute name="hidden">
|
1147
|
+
<data type="boolean"/>
|
1148
|
+
</attribute>
|
1149
|
+
</optional>
|
1150
|
+
<optional>
|
1151
|
+
<attribute name="suppress_identifier">
|
1152
|
+
<data type="boolean"/>
|
1153
|
+
</attribute>
|
1154
|
+
</optional>
|
1155
|
+
<ref name="BibliographicItem"/>
|
1156
|
+
</element>
|
1157
|
+
</define>
|
1222
1158
|
<define name="image" combine="choice">
|
1223
1159
|
<element name="svg">
|
1224
1160
|
<oneOrMore>
|
@@ -1237,14 +1173,6 @@
|
|
1237
1173
|
<value>tag</value>
|
1238
1174
|
</choice>
|
1239
1175
|
</define>
|
1240
|
-
<define name="docsubtype">
|
1241
|
-
<element name="subdoctype">
|
1242
|
-
<ref name="DocumentSubtype"/>
|
1243
|
-
</element>
|
1244
|
-
</define>
|
1245
|
-
<define name="DocumentSubtype">
|
1246
|
-
<text/>
|
1247
|
-
</define>
|
1248
1176
|
<define name="colgroup">
|
1249
1177
|
<element name="colgroup">
|
1250
1178
|
<oneOrMore>
|
@@ -1266,6 +1194,7 @@
|
|
1266
1194
|
<ref name="add"/>
|
1267
1195
|
<ref name="del"/>
|
1268
1196
|
<ref name="span"/>
|
1197
|
+
<ref name="erefstack"/>
|
1269
1198
|
</choice>
|
1270
1199
|
</define>
|
1271
1200
|
<define name="add">
|
@@ -1273,6 +1202,7 @@
|
|
1273
1202
|
<choice>
|
1274
1203
|
<ref name="PureTextElement"/>
|
1275
1204
|
<ref name="eref"/>
|
1205
|
+
<ref name="erefstack"/>
|
1276
1206
|
<ref name="stem"/>
|
1277
1207
|
<ref name="keyword"/>
|
1278
1208
|
<ref name="xref"/>
|
@@ -1285,6 +1215,7 @@
|
|
1285
1215
|
<choice>
|
1286
1216
|
<ref name="PureTextElement"/>
|
1287
1217
|
<ref name="eref"/>
|
1218
|
+
<ref name="erefstack"/>
|
1288
1219
|
<ref name="stem"/>
|
1289
1220
|
<ref name="keyword"/>
|
1290
1221
|
<ref name="xref"/>
|
@@ -1349,6 +1280,7 @@
|
|
1349
1280
|
</optional>
|
1350
1281
|
<choice>
|
1351
1282
|
<ref name="eref"/>
|
1283
|
+
<ref name="erefstack"/>
|
1352
1284
|
<ref name="xref"/>
|
1353
1285
|
<ref name="termref"/>
|
1354
1286
|
</choice>
|
@@ -1606,45 +1538,6 @@
|
|
1606
1538
|
</choice>
|
1607
1539
|
</element>
|
1608
1540
|
</define>
|
1609
|
-
<define name="editorialgroup">
|
1610
|
-
<element name="editorialgroup">
|
1611
|
-
<oneOrMore>
|
1612
|
-
<ref name="technical-committee"/>
|
1613
|
-
</oneOrMore>
|
1614
|
-
</element>
|
1615
|
-
</define>
|
1616
|
-
<define name="technical-committee">
|
1617
|
-
<element name="technical-committee">
|
1618
|
-
<ref name="IsoWorkgroup"/>
|
1619
|
-
</element>
|
1620
|
-
</define>
|
1621
|
-
<define name="IsoWorkgroup">
|
1622
|
-
<optional>
|
1623
|
-
<attribute name="number"/>
|
1624
|
-
</optional>
|
1625
|
-
<optional>
|
1626
|
-
<attribute name="type"/>
|
1627
|
-
</optional>
|
1628
|
-
<optional>
|
1629
|
-
<attribute name="identifier"/>
|
1630
|
-
</optional>
|
1631
|
-
<optional>
|
1632
|
-
<attribute name="prefix"/>
|
1633
|
-
</optional>
|
1634
|
-
<text/>
|
1635
|
-
</define>
|
1636
|
-
<define name="ics">
|
1637
|
-
<element name="ics">
|
1638
|
-
<element name="code">
|
1639
|
-
<text/>
|
1640
|
-
</element>
|
1641
|
-
<optional>
|
1642
|
-
<element name="text">
|
1643
|
-
<text/>
|
1644
|
-
</element>
|
1645
|
-
</optional>
|
1646
|
-
</element>
|
1647
|
-
</define>
|
1648
1541
|
<define name="standard-document">
|
1649
1542
|
<element name="standard-document">
|
1650
1543
|
<attribute name="version"/>
|
@@ -2080,6 +1973,7 @@
|
|
2080
1973
|
</element>
|
2081
1974
|
<choice>
|
2082
1975
|
<ref name="eref"/>
|
1976
|
+
<ref name="erefstack"/>
|
2083
1977
|
<ref name="xref"/>
|
2084
1978
|
<ref name="termref"/>
|
2085
1979
|
</choice>
|
@@ -2475,71 +2369,6 @@
|
|
2475
2369
|
</optional>
|
2476
2370
|
</element>
|
2477
2371
|
</define>
|
2478
|
-
<define name="structuredidentifier">
|
2479
|
-
<element name="structuredidentifier">
|
2480
|
-
<optional>
|
2481
|
-
<attribute name="type"/>
|
2482
|
-
</optional>
|
2483
|
-
<oneOrMore>
|
2484
|
-
<element name="agency">
|
2485
|
-
<text/>
|
2486
|
-
</element>
|
2487
|
-
</oneOrMore>
|
2488
|
-
<optional>
|
2489
|
-
<element name="class">
|
2490
|
-
<text/>
|
2491
|
-
</element>
|
2492
|
-
</optional>
|
2493
|
-
<element name="docnumber">
|
2494
|
-
<text/>
|
2495
|
-
</element>
|
2496
|
-
<optional>
|
2497
|
-
<element name="partnumber">
|
2498
|
-
<text/>
|
2499
|
-
</element>
|
2500
|
-
</optional>
|
2501
|
-
<optional>
|
2502
|
-
<element name="edition">
|
2503
|
-
<text/>
|
2504
|
-
</element>
|
2505
|
-
</optional>
|
2506
|
-
<optional>
|
2507
|
-
<element name="version">
|
2508
|
-
<text/>
|
2509
|
-
</element>
|
2510
|
-
</optional>
|
2511
|
-
<optional>
|
2512
|
-
<element name="supplementtype">
|
2513
|
-
<text/>
|
2514
|
-
</element>
|
2515
|
-
</optional>
|
2516
|
-
<optional>
|
2517
|
-
<element name="supplementnumber">
|
2518
|
-
<text/>
|
2519
|
-
</element>
|
2520
|
-
</optional>
|
2521
|
-
<optional>
|
2522
|
-
<element name="amendment">
|
2523
|
-
<text/>
|
2524
|
-
</element>
|
2525
|
-
</optional>
|
2526
|
-
<optional>
|
2527
|
-
<element name="corrigendum">
|
2528
|
-
<text/>
|
2529
|
-
</element>
|
2530
|
-
</optional>
|
2531
|
-
<optional>
|
2532
|
-
<element name="language">
|
2533
|
-
<text/>
|
2534
|
-
</element>
|
2535
|
-
</optional>
|
2536
|
-
<optional>
|
2537
|
-
<element name="year">
|
2538
|
-
<text/>
|
2539
|
-
</element>
|
2540
|
-
</optional>
|
2541
|
-
</element>
|
2542
|
-
</define>
|
2543
2372
|
<define name="term-clause">
|
2544
2373
|
<element name="clause">
|
2545
2374
|
<optional>
|
@@ -2700,6 +2529,7 @@
|
|
2700
2529
|
<ref name="xref"/>
|
2701
2530
|
<ref name="hyperlink"/>
|
2702
2531
|
<ref name="eref"/>
|
2532
|
+
<ref name="erefstack"/>
|
2703
2533
|
</choice>
|
2704
2534
|
<oneOrMore>
|
2705
2535
|
<element name="coords">
|
@@ -2747,6 +2577,7 @@
|
|
2747
2577
|
<ref name="xref"/>
|
2748
2578
|
<ref name="hyperlink"/>
|
2749
2579
|
<ref name="eref"/>
|
2580
|
+
<ref name="erefstack"/>
|
2750
2581
|
</choice>
|
2751
2582
|
</element>
|
2752
2583
|
</zeroOrMore>
|
@@ -2795,6 +2626,15 @@
|
|
2795
2626
|
<ref name="PureTextElement"/>
|
2796
2627
|
</oneOrMore>
|
2797
2628
|
</define>
|
2629
|
+
<define name="XrefConnectiveType">
|
2630
|
+
<choice>
|
2631
|
+
<value>and</value>
|
2632
|
+
<value>or</value>
|
2633
|
+
<value>from</value>
|
2634
|
+
<value>to</value>
|
2635
|
+
<value/>
|
2636
|
+
</choice>
|
2637
|
+
</define>
|
2798
2638
|
<define name="XrefTarget">
|
2799
2639
|
<element name="location">
|
2800
2640
|
<attribute name="target">
|
@@ -2803,14 +2643,36 @@
|
|
2803
2643
|
</data>
|
2804
2644
|
</attribute>
|
2805
2645
|
<attribute name="connective">
|
2806
|
-
<
|
2807
|
-
<value>and</value>
|
2808
|
-
<value>or</value>
|
2809
|
-
<value>from</value>
|
2810
|
-
<value>to</value>
|
2811
|
-
<value/>
|
2812
|
-
</choice>
|
2646
|
+
<ref name="XrefConnectiveType"/>
|
2813
2647
|
</attribute>
|
2814
2648
|
</element>
|
2815
2649
|
</define>
|
2650
|
+
<define name="XrefStyleType">
|
2651
|
+
<choice>
|
2652
|
+
<value>basic</value>
|
2653
|
+
<value>full</value>
|
2654
|
+
<value>short</value>
|
2655
|
+
<value>id</value>
|
2656
|
+
</choice>
|
2657
|
+
</define>
|
2658
|
+
<define name="erefTypeWithConnective">
|
2659
|
+
<optional>
|
2660
|
+
<attribute name="connective">
|
2661
|
+
<ref name="XrefConnectiveType"/>
|
2662
|
+
</attribute>
|
2663
|
+
</optional>
|
2664
|
+
<ref name="erefType"/>
|
2665
|
+
</define>
|
2666
|
+
<define name="erefstack">
|
2667
|
+
<element name="erefstack">
|
2668
|
+
<oneOrMore>
|
2669
|
+
<element name="eref">
|
2670
|
+
<ref name="erefTypeWithConnective"/>
|
2671
|
+
</element>
|
2672
|
+
</oneOrMore>
|
2673
|
+
</element>
|
2674
|
+
</define>
|
2675
|
+
<start>
|
2676
|
+
<ref name="standard-document"/>
|
2677
|
+
</start>
|
2816
2678
|
</grammar>
|
data/lib/metanorma/ogc/ogc.rng
CHANGED
@@ -5,52 +5,11 @@
|
|
5
5
|
we cannot have a new default namespace: we will end up with a grammar with two different
|
6
6
|
namespaces, one for isostandard and one for csand additions. And we do not want that.
|
7
7
|
-->
|
8
|
+
<include href="relaton-ogc.rng"/>
|
8
9
|
<include href="isodoc.rng">
|
9
10
|
<start>
|
10
11
|
<ref name="ogc-standard"/>
|
11
12
|
</start>
|
12
|
-
<define name="DocumentType">
|
13
|
-
<choice>
|
14
|
-
<value>abstract-specification-topic</value>
|
15
|
-
<value>best-practice</value>
|
16
|
-
<value>change-request-supporting-document</value>
|
17
|
-
<value>community-practice</value>
|
18
|
-
<value>community-standard</value>
|
19
|
-
<value>discussion-paper</value>
|
20
|
-
<value>engineering-report</value>
|
21
|
-
<value>other</value>
|
22
|
-
<value>policy</value>
|
23
|
-
<value>reference-model</value>
|
24
|
-
<value>release-notes</value>
|
25
|
-
<value>standard</value>
|
26
|
-
<value>user-guide</value>
|
27
|
-
<value>white-paper</value>
|
28
|
-
<value>test-suite</value>
|
29
|
-
</choice>
|
30
|
-
</define>
|
31
|
-
<define name="editorialgroup">
|
32
|
-
<element name="editorialgroup">
|
33
|
-
<ref name="committee"/>
|
34
|
-
<optional>
|
35
|
-
<ref name="subcommittee"/>
|
36
|
-
</optional>
|
37
|
-
<optional>
|
38
|
-
<ref name="workgroup"/>
|
39
|
-
</optional>
|
40
|
-
</element>
|
41
|
-
</define>
|
42
|
-
<define name="BibDataExtensionType">
|
43
|
-
<optional>
|
44
|
-
<ref name="doctype"/>
|
45
|
-
</optional>
|
46
|
-
<optional>
|
47
|
-
<ref name="docsubtype"/>
|
48
|
-
</optional>
|
49
|
-
<ref name="editorialgroup"/>
|
50
|
-
<zeroOrMore>
|
51
|
-
<ref name="ics"/>
|
52
|
-
</zeroOrMore>
|
53
|
-
</define>
|
54
13
|
<define name="preface">
|
55
14
|
<element name="preface">
|
56
15
|
<optional>
|
@@ -62,19 +21,6 @@
|
|
62
21
|
</optional>
|
63
22
|
</element>
|
64
23
|
</define>
|
65
|
-
<define name="DocumentSubtype">
|
66
|
-
<choice>
|
67
|
-
<value>conceptual-model</value>
|
68
|
-
<value>conceptual-model-and-encoding</value>
|
69
|
-
<value>conceptual-model-and-implementation</value>
|
70
|
-
<value>encoding</value>
|
71
|
-
<value>extension</value>
|
72
|
-
<value>implementation</value>
|
73
|
-
<value>profile</value>
|
74
|
-
<value>profile-with-extension</value>
|
75
|
-
<value>general</value>
|
76
|
-
</choice>
|
77
|
-
</define>
|
78
24
|
</include>
|
79
25
|
<define name="TextElement" combine="choice">
|
80
26
|
<ref name="hi"/>
|
@@ -97,25 +43,6 @@
|
|
97
43
|
<ref name="Basic-Section"/>
|
98
44
|
</element>
|
99
45
|
</define>
|
100
|
-
<define name="committee">
|
101
|
-
<element name="committee">
|
102
|
-
<choice>
|
103
|
-
<value>technical</value>
|
104
|
-
<value>planning</value>
|
105
|
-
<value>strategic-member-advisory</value>
|
106
|
-
</choice>
|
107
|
-
</element>
|
108
|
-
</define>
|
109
|
-
<define name="subcommittee">
|
110
|
-
<element name="subcommittee">
|
111
|
-
<ref name="IsoWorkgroup"/>
|
112
|
-
</element>
|
113
|
-
</define>
|
114
|
-
<define name="workgroup">
|
115
|
-
<element name="workgroup">
|
116
|
-
<ref name="IsoWorkgroup"/>
|
117
|
-
</element>
|
118
|
-
</define>
|
119
46
|
<define name="ogc-standard">
|
120
47
|
<element name="ogc-standard">
|
121
48
|
<attribute name="version"/>
|
@@ -0,0 +1,83 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
|
3
|
+
<include href="biblio-standoc.rng">
|
4
|
+
<define name="DocumentType">
|
5
|
+
<choice>
|
6
|
+
<value>abstract-specification-topic</value>
|
7
|
+
<value>best-practice</value>
|
8
|
+
<value>change-request-supporting-document</value>
|
9
|
+
<value>community-practice</value>
|
10
|
+
<value>community-standard</value>
|
11
|
+
<value>discussion-paper</value>
|
12
|
+
<value>engineering-report</value>
|
13
|
+
<value>other</value>
|
14
|
+
<value>policy</value>
|
15
|
+
<value>reference-model</value>
|
16
|
+
<value>release-notes</value>
|
17
|
+
<value>standard</value>
|
18
|
+
<value>user-guide</value>
|
19
|
+
<value>white-paper</value>
|
20
|
+
<value>test-suite</value>
|
21
|
+
<value>draft-standard</value>
|
22
|
+
</choice>
|
23
|
+
</define>
|
24
|
+
<define name="DocumentSubtype">
|
25
|
+
<choice>
|
26
|
+
<value>conceptual-model</value>
|
27
|
+
<value>conceptual-model-and-encoding</value>
|
28
|
+
<value>conceptual-model-and-implementation</value>
|
29
|
+
<value>encoding</value>
|
30
|
+
<value>extension</value>
|
31
|
+
<value>implementation</value>
|
32
|
+
<value>profile</value>
|
33
|
+
<value>profile-with-extension</value>
|
34
|
+
<value>general</value>
|
35
|
+
</choice>
|
36
|
+
</define>
|
37
|
+
<define name="editorialgroup">
|
38
|
+
<element name="editorialgroup">
|
39
|
+
<ref name="committee"/>
|
40
|
+
<optional>
|
41
|
+
<ref name="subcommittee"/>
|
42
|
+
</optional>
|
43
|
+
<optional>
|
44
|
+
<ref name="workgroup"/>
|
45
|
+
</optional>
|
46
|
+
</element>
|
47
|
+
</define>
|
48
|
+
<define name="BibDataExtensionType">
|
49
|
+
<optional>
|
50
|
+
<attribute name="schema-version"/>
|
51
|
+
</optional>
|
52
|
+
<optional>
|
53
|
+
<ref name="doctype"/>
|
54
|
+
</optional>
|
55
|
+
<optional>
|
56
|
+
<ref name="docsubtype"/>
|
57
|
+
</optional>
|
58
|
+
<ref name="editorialgroup"/>
|
59
|
+
<zeroOrMore>
|
60
|
+
<ref name="ics"/>
|
61
|
+
</zeroOrMore>
|
62
|
+
</define>
|
63
|
+
</include>
|
64
|
+
<define name="committee">
|
65
|
+
<element name="committee">
|
66
|
+
<choice>
|
67
|
+
<value>technical</value>
|
68
|
+
<value>planning</value>
|
69
|
+
<value>strategic-member-advisory</value>
|
70
|
+
</choice>
|
71
|
+
</element>
|
72
|
+
</define>
|
73
|
+
<define name="subcommittee">
|
74
|
+
<element name="subcommittee">
|
75
|
+
<ref name="IsoWorkgroup"/>
|
76
|
+
</element>
|
77
|
+
</define>
|
78
|
+
<define name="workgroup">
|
79
|
+
<element name="workgroup">
|
80
|
+
<ref name="IsoWorkgroup"/>
|
81
|
+
</element>
|
82
|
+
</define>
|
83
|
+
</grammar>
|
@@ -32,10 +32,12 @@ module Metanorma
|
|
32
32
|
|
33
33
|
def stage_type_validate(stage, doctype)
|
34
34
|
err = case doctype
|
35
|
-
when "standard", "abstract-specification-topic"
|
35
|
+
when "standard", "abstract-specification-topic", "draft-standard"
|
36
36
|
%w(draft work-item-draft).include?(stage)
|
37
37
|
when "community-standard"
|
38
38
|
%w(draft swg-draft).include?(stage)
|
39
|
+
when "best-practice", "community-practice"
|
40
|
+
%w(draft swg-draft work-item-draft).include?(stage)
|
39
41
|
else %w(swg-draft oab-review public-rfc tc-vote
|
40
42
|
work-item-draft deprecated rescinded).include?(stage)
|
41
43
|
end
|
@@ -44,22 +46,20 @@ module Metanorma
|
|
44
46
|
end
|
45
47
|
|
46
48
|
def version_validate(xmldoc)
|
47
|
-
version = xmldoc
|
48
|
-
doctype = xmldoc
|
49
|
+
version = xmldoc.at("//bibdata/edition")&.text
|
50
|
+
doctype = xmldoc.at("//bibdata/ext/doctype")&.text
|
49
51
|
if %w(engineering-report discussion-paper).include? doctype
|
50
|
-
version.nil? or
|
51
|
-
|
52
|
-
"Version not permitted for #{doctype}")
|
52
|
+
version.nil? or @log.add("Document Attributes", nil,
|
53
|
+
"Version not permitted for #{doctype}")
|
53
54
|
else
|
54
|
-
version.nil? and
|
55
|
-
|
56
|
-
"Version required for #{doctype}")
|
55
|
+
version.nil? and @log.add("Document Attributes", nil,
|
56
|
+
"Version required for #{doctype}")
|
57
57
|
end
|
58
58
|
end
|
59
59
|
|
60
60
|
def execsummary_validate(xmldoc)
|
61
|
-
doctype = xmldoc
|
62
|
-
sect = xmldoc
|
61
|
+
doctype = xmldoc.at("//bibdata/ext/doctype")&.text
|
62
|
+
sect = xmldoc.at("//clause[@type = 'executivesummary']")
|
63
63
|
doctype == "engineering-report" && sect.nil? and
|
64
64
|
@log.add("Style", nil,
|
65
65
|
"Executive Summary required for Engineering Reports!")
|
@@ -91,7 +91,7 @@ module Metanorma
|
|
91
91
|
val: ["./self::clause[@type = 'conformance']"],
|
92
92
|
},
|
93
93
|
{
|
94
|
-
msg: "Normative References must be followed by "\
|
94
|
+
msg: "Normative References must be followed by " \
|
95
95
|
"Terms and Definitions",
|
96
96
|
val: ["./self::terms | .//terms"],
|
97
97
|
},
|
@@ -110,7 +110,7 @@ module Metanorma
|
|
110
110
|
|
111
111
|
def sections_sequence_validate(root)
|
112
112
|
return unless STANDARDTYPE.include?(
|
113
|
-
root
|
113
|
+
root.at("//bibdata/ext/doctype")&.text,
|
114
114
|
)
|
115
115
|
|
116
116
|
names = root.xpath("//sections/* | //bibliography/*")
|
@@ -126,7 +126,7 @@ module Metanorma
|
|
126
126
|
"Document must contain at least one clause")
|
127
127
|
return
|
128
128
|
end
|
129
|
-
root.at("//references | //clause[descendant::references]"\
|
129
|
+
root.at("//references | //clause[descendant::references]" \
|
130
130
|
"[not(parent::clause)]") or
|
131
131
|
@log.add("Style", nil, "Normative References are mandatory")
|
132
132
|
end
|
@@ -138,7 +138,7 @@ module Metanorma
|
|
138
138
|
@log.add("Style", nil, "Keywords are missing!")
|
139
139
|
root.at("//foreword") or @log.add("Style", nil,
|
140
140
|
"Preface is missing!")
|
141
|
-
root.at("//bibdata/contributor[role/@type = 'author']/organization/"\
|
141
|
+
root.at("//bibdata/contributor[role/@type = 'author']/organization/" \
|
142
142
|
"name") or
|
143
143
|
@log.add("Style", nil, "Submitting Organizations is missing!")
|
144
144
|
root.at("//submitters") or @log.add("Style", nil,
|