relaton-iho 1.12.1 → 1.14.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 15f8ff781c6eea28a733d0954f7db760b375163e593117afac51f5173f2d363c
4
- data.tar.gz: 5d47f1c4a452dccd29045b2889788453e7a4a936c8bb07deb969bbd6ef11a4cc
3
+ metadata.gz: 4d01d422a7d0b04520ca42375a62fbd2e1dfdedaf6ce67c1f10fab2750607b2a
4
+ data.tar.gz: 41ba50e867c5655ed1094f22b5b47a4ac4a47b4c5ce7a1012290cc556968ca14
5
5
  SHA512:
6
- metadata.gz: 6d7f6271fc4ed0b098aec63a968ecb1d8d5d071523c694d9ad5ca790c9534ca7aaeb0973c8937318f258bb0d49b205f270ee907ff7a43e8e7c5c08ae3f7ddb38
7
- data.tar.gz: d709455d126fb8efd402371ed022dcd95e6c8546877e79e562331347922ad08af537a6c47c4bdb192cd4adc642be6183d74db87419a567c95beba1d2f20a597b
6
+ metadata.gz: 30427e3902880f4dfc2973cfebe63285606e89daa0a0515cf8c4a5ceb299112bca795cba6d8a4143b4a6573574aec8625395b9552702985187e41be3a0491d01
7
+ data.tar.gz: 9218aea85733e22afbb9f9ea537d63ccb60f3a95d5c7aba880cfcd9273bdfaabb74e3b5038c93d4e0c2b56b9d7082b931bb91b5fe95866ff113c29c3eecbe751
@@ -5,32 +5,8 @@ name: rake
5
5
  on:
6
6
  push:
7
7
  branches: [ master, main ]
8
- tags: [ v* ]
9
8
  pull_request:
10
9
 
11
10
  jobs:
12
11
  rake:
13
- name: Test on Ruby ${{ matrix.ruby }} ${{ matrix.os }}
14
- runs-on: ${{ matrix.os }}
15
- continue-on-error: ${{ matrix.experimental }}
16
- strategy:
17
- fail-fast: false
18
- matrix:
19
- ruby: [ '3.0', '2.7', '2.6' ]
20
- os: [ ubuntu-latest, windows-latest, macos-latest ]
21
- experimental: [ false ]
22
- steps:
23
- - uses: actions/checkout@v2
24
- with:
25
- submodules: true
26
-
27
- # https://github.com/ruby-debug/debase/issues/89#issuecomment-686827382
28
- - if: matrix.os == 'macos-latest' && matrix.ruby == '2.5'
29
- run: echo BUNDLE_BUILD__DEBASE="--with-cflags=\"-Wno-error=implicit-function-declaration\"" >> $GITHUB_ENV
30
-
31
- - uses: ruby/setup-ruby@v1
32
- with:
33
- ruby-version: ${{ matrix.ruby }}
34
- bundler-cache: true
35
-
36
- - run: bundle exec rake
12
+ uses: relaton/support/.github/workflows/rake.yml@master
@@ -0,0 +1,22 @@
1
+ # Auto-generated by Cimas: Do not edit it manually!
2
+ # See https://github.com/metanorma/cimas
3
+ name: release
4
+
5
+ on:
6
+ workflow_dispatch:
7
+ inputs:
8
+ next_version:
9
+ description: |
10
+ Next release version. Possible values: x.y.z, major, minor, patch or pre|rc|etc
11
+ required: true
12
+ default: 'skip'
13
+ push:
14
+ tags: [ v* ]
15
+
16
+ jobs:
17
+ release:
18
+ uses: relaton/support/.github/workflows/release.yml@master
19
+ with:
20
+ next_version: ${{ github.event.inputs.next_version }}
21
+ secrets:
22
+ rubygems-api-key: ${{ secrets.RELATON_CI_RUBYGEMS_API_KEY }}
data/.gitignore CHANGED
@@ -12,3 +12,4 @@
12
12
  .rspec_status
13
13
  .rubocop-https---raw-githubusercontent-com-riboseinc-oss-guides-master-ci-rubocop-yml
14
14
  Gemfile.lock
15
+ spec/examples.txt
data/README.adoc CHANGED
@@ -41,7 +41,7 @@ $ gem install relaton-iho
41
41
 
42
42
  [source,ruby]
43
43
  ----
44
- pry(main)> require 'relaton_iho'
44
+ require 'relaton_iho'
45
45
  => true
46
46
 
47
47
  item = RelatonIho::IhoBibliography.search("B-11")
@@ -55,41 +55,28 @@ item = RelatonIho::IhoBibliography.search("B-11")
55
55
  [source,ruby]
56
56
  ----
57
57
  item.to_xml
58
- => "<bibitem id="B-11" type="standard">
59
- <fetched>2020-03-29</fetched>
58
+ => "<bibitem id="B-11" type="standard" schema-version="v1.2.1">
59
+ <fetched>2022-12-04</fetched>
60
60
  <title type="main" format="text/plain" language="en">IHO-IOC GEBCO Cook Book</title>
61
61
  <title type="main" format="text/plain" language="fr">Livre de recettes GEBCO OHI-COI</title>
62
62
  <uri type="pdf">https://www.star.nesdis.noaa.gov/socd/lsa/GEBCO_Cookbook/documents/CookBook_20191031.pdf</uri>
63
- <docidentifier type="IHO">B-11</docidentifier>
63
+ <docidentifier type="IHO" primary="true">B-11</docidentifier>
64
64
  ...
65
65
  </bibitem>"
66
66
  ----
67
- With argument `bibdata: true` it ouputs XML wrapped by `bibdata` element and adds flavour `ext` element.
67
+ With argument `bibdata: true` it outputs XML wrapped by `bibdata` element and adds flavor `ext` element.
68
68
  [source,ruby]
69
69
  ----
70
70
  item.to_xml bibdata: true
71
- => "<bibdata type="standard">
72
- <fetched>2020-03-29</fetched>
71
+ => "<bibdata type="standard" schema-version="v1.2.1">
72
+ <fetched>2022-12-04</fetched>
73
73
  <title type="main" format="text/plain" language="en">IHO-IOC GEBCO Cook Book</title>
74
74
  <title type="main" format="text/plain" language="fr">Livre de recettes GEBCO OHI-COI</title>
75
75
  <uri type="pdf">https://www.star.nesdis.noaa.gov/socd/lsa/GEBCO_Cookbook/documents/CookBook_20191031.pdf</uri>
76
- <docidentifier type="IHO">B-11</docidentifier>
76
+ <docidentifier type="IHO" primary="true">B-11</docidentifier
77
77
  ...
78
- <ext>
79
- <editorialgroup>
80
- <committee>
81
- <name>Hydrographic Services and Standards Committee</name>
82
- <abbreviation>HSSC</abbreviation>
83
- </committee>
84
- <committee>
85
- <name>Inter-Regional Coordination Committee</name>
86
- <abbreviation>IRCC</abbreviation>
87
- <committee>
88
- <name>JOINT IHO-IOC GUIDING COMMITTEE FOR THE GENERAL BATHYMETRIC CHART OF THE OCEANS</name>
89
- <abbreviation>GEBCO</abbreviation>
90
- </committee>
91
- </committee>
92
- </editorialgroup>
78
+ <ext schema-version="v1.0.0">
79
+ ...
93
80
  </ext>
94
81
  </bibdata>"
95
82
  ----
@@ -1,10 +1,5 @@
1
1
  <?xml version="1.0" encoding="UTF-8"?>
2
2
  <grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
3
- <include href="biblio.rng">
4
- <start>
5
- <ref name="document"/>
6
- </start>
7
- </include>
8
3
  <define name="document">
9
4
  <element name="document">
10
5
  <optional>
@@ -688,6 +683,9 @@
688
683
  </define>
689
684
  <define name="underline">
690
685
  <element name="underline">
686
+ <optional>
687
+ <attribute name="style"/>
688
+ </optional>
691
689
  <zeroOrMore>
692
690
  <ref name="PureTextElement"/>
693
691
  </zeroOrMore>
@@ -1125,26 +1123,4 @@
1125
1123
  </zeroOrMore>
1126
1124
  </element>
1127
1125
  </define>
1128
- <define name="ext">
1129
- <element name="ext">
1130
- <ref name="BibDataExtensionType"/>
1131
- </element>
1132
- </define>
1133
- <define name="BibDataExtensionType">
1134
- <ref name="doctype"/>
1135
- </define>
1136
- <define name="doctype">
1137
- <element name="doctype">
1138
- <ref name="DocumentType"/>
1139
- </element>
1140
- </define>
1141
- <define name="DocumentType">
1142
- <value>document</value>
1143
- </define>
1144
- <define name="BibData">
1145
- <ref name="BibliographicItem"/>
1146
- <optional>
1147
- <ref name="ext"/>
1148
- </optional>
1149
- </define>
1150
1126
  </grammar>
@@ -0,0 +1,164 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3
+ <!--
4
+ Add-ons to biblio.rnc for standoc model: defines the extension point BibDataExtensionType
5
+ of relaton
6
+
7
+ Specialisations as for biblio.rnc. Extension point can be redefined completely for a flavour of standoc
8
+ (SDO); but other elements in Bibdata can only be extended (more specialised vocabularies for Bibdata)
9
+ -->
10
+ <include href="biblio.rng">
11
+ <define name="BibData">
12
+ <ref name="BibliographicItem"/>
13
+ <optional>
14
+ <ref name="ext"/>
15
+ </optional>
16
+ </define>
17
+ </include>
18
+ <define name="ext">
19
+ <element name="ext">
20
+ <ref name="BibDataExtensionType"/>
21
+ </element>
22
+ </define>
23
+ <define name="BibDataExtensionType">
24
+ <optional>
25
+ <attribute name="schema-version"/>
26
+ </optional>
27
+ <ref name="doctype"/>
28
+ <optional>
29
+ <ref name="docsubtype"/>
30
+ </optional>
31
+ <optional>
32
+ <ref name="editorialgroup"/>
33
+ </optional>
34
+ <zeroOrMore>
35
+ <ref name="ics"/>
36
+ </zeroOrMore>
37
+ <zeroOrMore>
38
+ <ref name="structuredidentifier"/>
39
+ </zeroOrMore>
40
+ </define>
41
+ <define name="doctype">
42
+ <element name="doctype">
43
+ <optional>
44
+ <attribute name="abbreviation"/>
45
+ </optional>
46
+ <ref name="DocumentType"/>
47
+ </element>
48
+ </define>
49
+ <define name="DocumentType">
50
+ <text/>
51
+ </define>
52
+ <define name="docsubtype">
53
+ <element name="subdoctype">
54
+ <ref name="DocumentSubtype"/>
55
+ </element>
56
+ </define>
57
+ <define name="DocumentSubtype">
58
+ <text/>
59
+ </define>
60
+ <define name="editorialgroup">
61
+ <element name="editorialgroup">
62
+ <oneOrMore>
63
+ <ref name="technical-committee"/>
64
+ </oneOrMore>
65
+ </element>
66
+ </define>
67
+ <define name="technical-committee">
68
+ <element name="technical-committee">
69
+ <ref name="IsoWorkgroup"/>
70
+ </element>
71
+ </define>
72
+ <define name="IsoWorkgroup">
73
+ <optional>
74
+ <attribute name="number"/>
75
+ </optional>
76
+ <optional>
77
+ <attribute name="type"/>
78
+ </optional>
79
+ <optional>
80
+ <attribute name="identifier"/>
81
+ </optional>
82
+ <optional>
83
+ <attribute name="prefix"/>
84
+ </optional>
85
+ <text/>
86
+ </define>
87
+ <define name="ics">
88
+ <element name="ics">
89
+ <element name="code">
90
+ <text/>
91
+ </element>
92
+ <optional>
93
+ <element name="text">
94
+ <text/>
95
+ </element>
96
+ </optional>
97
+ </element>
98
+ </define>
99
+ <define name="structuredidentifier">
100
+ <element name="structuredidentifier">
101
+ <optional>
102
+ <attribute name="type"/>
103
+ </optional>
104
+ <oneOrMore>
105
+ <element name="agency">
106
+ <text/>
107
+ </element>
108
+ </oneOrMore>
109
+ <optional>
110
+ <element name="class">
111
+ <text/>
112
+ </element>
113
+ </optional>
114
+ <element name="docnumber">
115
+ <text/>
116
+ </element>
117
+ <optional>
118
+ <element name="partnumber">
119
+ <text/>
120
+ </element>
121
+ </optional>
122
+ <optional>
123
+ <element name="edition">
124
+ <text/>
125
+ </element>
126
+ </optional>
127
+ <optional>
128
+ <element name="version">
129
+ <text/>
130
+ </element>
131
+ </optional>
132
+ <optional>
133
+ <element name="supplementtype">
134
+ <text/>
135
+ </element>
136
+ </optional>
137
+ <optional>
138
+ <element name="supplementnumber">
139
+ <text/>
140
+ </element>
141
+ </optional>
142
+ <optional>
143
+ <element name="amendment">
144
+ <text/>
145
+ </element>
146
+ </optional>
147
+ <optional>
148
+ <element name="corrigendum">
149
+ <text/>
150
+ </element>
151
+ </optional>
152
+ <optional>
153
+ <element name="language">
154
+ <text/>
155
+ </element>
156
+ </optional>
157
+ <optional>
158
+ <element name="year">
159
+ <text/>
160
+ </element>
161
+ </optional>
162
+ </element>
163
+ </define>
164
+ </grammar>
data/grammars/biblio.rng CHANGED
@@ -33,9 +33,10 @@
33
33
  <param name="pattern">([\+\-]?\d{4})((-?)((0[1-9]|1[0-2])((-?)([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-2])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6]))))?</param>
34
34
  </data>
35
35
  </define>
36
- <start>
37
- <ref name="bibitem"/>
38
- </start>
36
+ <!-- start = bibitem -->
37
+ <define name="BibData">
38
+ <ref name="BibliographicItem"/>
39
+ </define>
39
40
  <define name="status">
40
41
  <element name="status">
41
42
  <ref name="stage"/>
@@ -73,8 +74,14 @@
73
74
  <text/>
74
75
  </element>
75
76
  </define>
76
- <define name="script">
77
+ <define name="locale">
77
78
  <a:documentation>ISO-639</a:documentation>
79
+ <element name="locale">
80
+ <text/>
81
+ </element>
82
+ </define>
83
+ <define name="script">
84
+ <a:documentation>ISO-3166</a:documentation>
78
85
  <element name="script">
79
86
  <text/>
80
87
  </element>
@@ -93,6 +100,9 @@
93
100
  <!-- multiple languages and scripts possible: comma delimit them if so -->
94
101
  <attribute name="language"/>
95
102
  </optional>
103
+ <optional>
104
+ <attribute name="locale"/>
105
+ </optional>
96
106
  <optional>
97
107
  <attribute name="script"/>
98
108
  </optional>
@@ -136,6 +146,9 @@
136
146
  <!-- multiple languages and scripts possible: comma delimit them if so -->
137
147
  <attribute name="language"/>
138
148
  </optional>
149
+ <optional>
150
+ <attribute name="locale"/>
151
+ </optional>
139
152
  <optional>
140
153
  <attribute name="script"/>
141
154
  </optional>
@@ -158,27 +171,30 @@
158
171
  </define>
159
172
  <define name="contributor">
160
173
  <element name="contributor">
161
- <zeroOrMore>
174
+ <oneOrMore>
162
175
  <ref name="role"/>
163
- </zeroOrMore>
176
+ </oneOrMore>
164
177
  <ref name="ContributorInfo"/>
165
178
  </element>
166
179
  </define>
167
180
  <define name="role">
168
181
  <element name="role">
169
- <optional>
170
- <attribute name="type">
171
- <choice>
172
- <value>author</value>
173
- <value>performer</value>
174
- <value>publisher</value>
175
- <value>editor</value>
176
- <value>adapter</value>
177
- <value>translator</value>
178
- <value>distributor</value>
179
- </choice>
180
- </attribute>
181
- </optional>
182
+ <attribute name="type">
183
+ <choice>
184
+ <value>author</value>
185
+ <value>performer</value>
186
+ <value>publisher</value>
187
+ <value>editor</value>
188
+ <value>adapter</value>
189
+ <value>translator</value>
190
+ <value>distributor</value>
191
+ <value>realizer</value>
192
+ <value>owner</value>
193
+ <value>authorizer</value>
194
+ <value>enabler</value>
195
+ <value>subject</value>
196
+ </choice>
197
+ </attribute>
182
198
  <zeroOrMore>
183
199
  <ref name="roledescription"/>
184
200
  </zeroOrMore>
@@ -225,9 +241,9 @@
225
241
  <zeroOrMore>
226
242
  <ref name="forename"/>
227
243
  </zeroOrMore>
228
- <zeroOrMore>
229
- <ref name="initial"/>
230
- </zeroOrMore>
244
+ <optional>
245
+ <ref name="formatted-initials"/>
246
+ </optional>
231
247
  <ref name="surname"/>
232
248
  <zeroOrMore>
233
249
  <ref name="addition"/>
@@ -247,8 +263,8 @@
247
263
  <ref name="LocalizedString"/>
248
264
  </element>
249
265
  </define>
250
- <define name="initial">
251
- <element name="initial">
266
+ <define name="formatted-initials">
267
+ <element name="formatted-initials">
252
268
  <ref name="LocalizedString"/>
253
269
  </element>
254
270
  </define>
@@ -264,6 +280,9 @@
264
280
  </define>
265
281
  <define name="forename">
266
282
  <element name="forename">
283
+ <optional>
284
+ <attribute name="initial"/>
285
+ </optional>
267
286
  <ref name="LocalizedString"/>
268
287
  </element>
269
288
  </define>
@@ -497,6 +516,17 @@
497
516
  </define>
498
517
  <define name="localityStack">
499
518
  <element name="localityStack">
519
+ <optional>
520
+ <attribute name="connective">
521
+ <choice>
522
+ <value>and</value>
523
+ <value>or</value>
524
+ <value>from</value>
525
+ <value>to</value>
526
+ <value/>
527
+ </choice>
528
+ </attribute>
529
+ </optional>
500
530
  <zeroOrMore>
501
531
  <ref name="locality"/>
502
532
  </zeroOrMore>
@@ -509,6 +539,17 @@
509
539
  </define>
510
540
  <define name="sourceLocalityStack">
511
541
  <element name="sourceLocalityStack">
542
+ <optional>
543
+ <attribute name="connective">
544
+ <choice>
545
+ <value>and</value>
546
+ <value>or</value>
547
+ <value>from</value>
548
+ <value>to</value>
549
+ <value/>
550
+ </choice>
551
+ </attribute>
552
+ </optional>
512
553
  <zeroOrMore>
513
554
  <ref name="sourceLocality"/>
514
555
  </zeroOrMore>
@@ -611,6 +652,9 @@
611
652
  <ref name="BibItemType"/>
612
653
  </attribute>
613
654
  </optional>
655
+ <optional>
656
+ <attribute name="schema-version"/>
657
+ </optional>
614
658
  <optional>
615
659
  <ref name="fetched"/>
616
660
  </optional>
@@ -647,6 +691,9 @@
647
691
  <zeroOrMore>
648
692
  <ref name="language"/>
649
693
  </zeroOrMore>
694
+ <zeroOrMore>
695
+ <ref name="locale"/>
696
+ </zeroOrMore>
650
697
  <zeroOrMore>
651
698
  <ref name="script"/>
652
699
  </zeroOrMore>
@@ -702,6 +749,9 @@
702
749
  <ref name="BibItemType"/>
703
750
  </attribute>
704
751
  </optional>
752
+ <optional>
753
+ <attribute name="schema-version"/>
754
+ </optional>
705
755
  <optional>
706
756
  <ref name="fetched"/>
707
757
  </optional>
@@ -738,6 +788,9 @@
738
788
  <zeroOrMore>
739
789
  <ref name="language"/>
740
790
  </zeroOrMore>
791
+ <zeroOrMore>
792
+ <ref name="locale"/>
793
+ </zeroOrMore>
741
794
  <zeroOrMore>
742
795
  <ref name="script"/>
743
796
  </zeroOrMore>
@@ -851,6 +904,15 @@
851
904
  <optional>
852
905
  <attribute name="type"/>
853
906
  </optional>
907
+ <optional>
908
+ <attribute name="language"/>
909
+ </optional>
910
+ <optional>
911
+ <attribute name="locale"/>
912
+ </optional>
913
+ <optional>
914
+ <attribute name="script"/>
915
+ </optional>
854
916
  <data type="anyURI"/>
855
917
  </define>
856
918
  <define name="DateType">
@@ -879,6 +941,7 @@
879
941
  <value>vote-started</value>
880
942
  <value>vote-ended</value>
881
943
  <value>announced</value>
944
+ <value>stable-until</value>
882
945
  </choice>
883
946
  </define>
884
947
  <define name="bdate">
@@ -927,6 +990,9 @@
927
990
  <optional>
928
991
  <attribute name="language"/>
929
992
  </optional>
993
+ <optional>
994
+ <attribute name="locale"/>
995
+ </optional>
930
996
  <optional>
931
997
  <attribute name="script"/>
932
998
  </optional>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <grammar xmlns="http://relaxng.org/ns/structure/1.0">
3
+ <include href="basicdoc.rng"/>
4
+ <include href="relaton-iho.rng"/>
5
+ <start>
6
+ <choice>
7
+ <ref name="bibitem"/>
8
+ <ref name="bibdata"/>
9
+ </choice>
10
+ </start>
11
+ </grammar>
@@ -0,0 +1,92 @@
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>policy-and-procedures</value>
7
+ <value>best-practices</value>
8
+ <value>supporting-document</value>
9
+ <value>report</value>
10
+ <value>legal</value>
11
+ <value>directives</value>
12
+ <value>proposal</value>
13
+ <value>standard</value>
14
+ </choice>
15
+ </define>
16
+ <define name="editorialgroup">
17
+ <element name="editorialgroup">
18
+ <oneOrMore>
19
+ <choice>
20
+ <ref name="committee"/>
21
+ <ref name="workgroup"/>
22
+ <ref name="commission"/>
23
+ </choice>
24
+ </oneOrMore>
25
+ </element>
26
+ </define>
27
+ <define name="BibDataExtensionType">
28
+ <optional>
29
+ <attribute name="schema-version"/>
30
+ </optional>
31
+ <optional>
32
+ <ref name="doctype"/>
33
+ </optional>
34
+ <optional>
35
+ <ref name="docsubtype"/>
36
+ </optional>
37
+ <zeroOrMore>
38
+ <ref name="editorialgroup"/>
39
+ </zeroOrMore>
40
+ <zeroOrMore>
41
+ <ref name="ics"/>
42
+ </zeroOrMore>
43
+ <optional>
44
+ <ref name="commentperiod"/>
45
+ </optional>
46
+ </define>
47
+ </include>
48
+ <define name="committee">
49
+ <element name="committee">
50
+ <ref name="IHO_Group"/>
51
+ </element>
52
+ </define>
53
+ <define name="workgroup">
54
+ <element name="workgroup">
55
+ <ref name="IHO_Group"/>
56
+ </element>
57
+ </define>
58
+ <define name="commission">
59
+ <element name="commission">
60
+ <ref name="IHO_Group"/>
61
+ </element>
62
+ </define>
63
+ <define name="IHO_Group">
64
+ <optional>
65
+ <element name="name">
66
+ <text/>
67
+ </element>
68
+ </optional>
69
+ <element name="abbreviation">
70
+ <text/>
71
+ </element>
72
+ <optional>
73
+ <choice>
74
+ <ref name="committee"/>
75
+ <ref name="workgroup"/>
76
+ <ref name="commission"/>
77
+ </choice>
78
+ </optional>
79
+ </define>
80
+ <define name="commentperiod">
81
+ <element name="commentperiod">
82
+ <element name="from">
83
+ <ref name="ISO8601Date"/>
84
+ </element>
85
+ <optional>
86
+ <element name="to">
87
+ <ref name="ISO8601Date"/>
88
+ </element>
89
+ </optional>
90
+ </element>
91
+ </define>
92
+ </grammar>