relaton-cie 1.13.0 → 1.14.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ece947bea9b8e815d649df47410f77fa4533a2945e39a0261090a922a70c2a3c
4
- data.tar.gz: ef57b4d5d70dbe4d1d7db11dfd3dd72becede5d29c05a7093eb99af9358f20b1
3
+ metadata.gz: a55c7a70b3d2fe2a2300cf69bf6d1e000d684d9897106c1510c690fa598e994c
4
+ data.tar.gz: 4d57b3900f4092e4a94553c6c285eaf606bdfc3366571e0605d90f7445d799b9
5
5
  SHA512:
6
- metadata.gz: 9341540f70dda86dafe71195c4e2d764d7a8046a6984364f6525aee8c7597d434f72c98cd7820a82dc7b46bc5142f20183ed08b36fae9923b056c0bc5f838dc0
7
- data.tar.gz: 7aa27ab7b17103b8e2c0130537c97c22d7f9dd0b6d479944637d44b9163e27e23c5696b0802807c7efdc3e842f2edfc8eac5a863c640bddae6adb8cf162c5bd8
6
+ metadata.gz: 59626d155d94bc7f8d128071b70c1eefa6efff43f580e080e5226645c9ca669352e6b2d5126604c3508f435068638306184aa6a4187a8b336fa07e6633d31eef
7
+ data.tar.gz: 5fed598422fc98c9c458d6d46b0a987ba0cb40ea17f1681f527248f54c74ab955bd40895f80cf4eb036d587ab7c968d8f34197d29e15edca65465cb667978224
@@ -0,0 +1,23 @@
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
+ repository_dispatch:
14
+ types: [ do-release ]
15
+
16
+
17
+ jobs:
18
+ release:
19
+ uses: relaton/support/.github/workflows/release.yml@master
20
+ with:
21
+ next_version: ${{ github.event.inputs.next_version }}
22
+ secrets:
23
+ rubygems-api-key: ${{ secrets.RELATON_CI_RUBYGEMS_API_KEY }}
data/.gitignore CHANGED
@@ -6,6 +6,7 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
+ /vendor/
9
10
 
10
11
  # rspec failure tracking
11
12
  .rspec_status
data/.rubocop.yml CHANGED
@@ -7,6 +7,6 @@ require: rubocop-rails
7
7
  inherit_from:
8
8
  - https://raw.githubusercontent.com/riboseinc/oss-guides/master/ci/rubocop.yml
9
9
  AllCops:
10
- TargetRubyVersion: 2.5
10
+ TargetRubyVersion: 2.7
11
11
  Rails:
12
12
  Enabled: false
data/Gemfile CHANGED
@@ -3,5 +3,11 @@ source "https://rubygems.org"
3
3
  # Specify your gem's dependencies in relaton_cie.gemspec
4
4
  gemspec
5
5
 
6
+ gem "equivalent-xml", "~> 0.6"
7
+ gem "pry-byebug"
6
8
  gem "rake", "~> 13.0"
7
9
  gem "rspec", "~> 3.0"
10
+ gem "ruby-jing"
11
+ gem "simplecov"
12
+ gem "vcr"
13
+ gem "webmock"
data/README.adoc CHANGED
@@ -8,7 +8,7 @@ image:https://codeclimate.com/github/relaton/relaton-cie/badges/gpa.svg["Code Cl
8
8
  image:https://img.shields.io/github/issues-pr-raw/relaton/relaton-cie.svg["Pull Requests", link="https://github.com/relaton/relaton-cie/pulls"]
9
9
  image:https://img.shields.io/github/commits-since/relaton/relaton-cie/latest.svg["Commits since latest",link="https://github.com/relaton/relaton-cie/releases"]
10
10
 
11
- RelatonCie is a Ruby gem that search and fetch standards from the https://www.techstreet.com/cie/searches/31156444[International Commision on Illuminantion].
11
+ RelatonCie is a Ruby gem that searches and fetches standards from the https://www.techstreet.com/cie/searches/31156444[International Commision on Illuminantion].
12
12
 
13
13
  == Installation
14
14
 
@@ -42,7 +42,7 @@ item = RelatonCie::CieBibliography.get 'CIE 001-1980'
42
42
  => #<RelatonBib::BibliographicItem:0x007fb3f6098920
43
43
  ...
44
44
 
45
- # Return nil if document doesn't exist.
45
+ # Return nil if a document doesn't exist.
46
46
  RelatonCie::CieBibliography.get '1111'
47
47
  [relaton-cie] ("1111") fetching...
48
48
  [relaton-cie] WARNING no match found online for 1111. The code must be exactly like it is on the standards website.
@@ -54,64 +54,29 @@ RelatonCie::CieBibliography.get '1111'
54
54
  [source,ruby]
55
55
  ----
56
56
  item.to_xml
57
- "<bibitem id="CIE001-1980" type="standard">
58
- <fetched>2021-03-17</fetched>
59
- <title type="title-main" format="text/plain">
60
- Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)
61
- </title>
62
- <title type="main" format="text/plain">
63
- Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)
64
- </title>
65
- <uri type="src">https://www.techstreet.com/cie/standards/cie-001-1980?product_id=1210107</uri>
66
- <docidentifier type="CIE">CIE 001-1980</docidentifier>
67
- <docidentifier type="ISBN">9783901906657</docidentifier>
68
- <date type="published">
69
- <on>1980-01-01</on>
70
- </date>
71
- <contributor>
72
- <role type="publisher"/>
73
- <organization>
74
- <name>Commission Internationale de L'Eclairage</name>
75
- <abbreviation>CIE</abbreviation>
76
- <uri>cie.co.at</uri>
77
- </organization>
78
- </contributor>
79
- <language>en</language>
80
- <script>Latn</script>
81
- <abstract format="text/plain" language="en" script="Latn">
82
- The increase of outdoor lighting in urban areas has resulted in levels of sky glow which seriously threaten astronomical observatories, even where these have purposely been located more than 100 km from large cities. The International Astronomical Union (IAU) and the CIE have worked together to prepare these guidelines in order to stimulate collective action that minimizes the degradation of the astronomical environment near cities.
83
-
84
- The problem and its solutions are stated in a manner that provides a basis for understanding, cooperation, and action by astronomers, lighting engineers and public authorities. The report explains the effect of man-made sky glow, the degree of glow likely to be produced by lighting near an observatory, the level above which sky glow should not be allowed to rise, and how it can be contained by good lighting practice and public ordinances.
85
-
86
- The publication contains 24 pages and 2 figures.
87
-
88
- This publication has been prepared by:
89
-
90
- * R. Cayrel and F. G. Smith (IAU)
91
- * A. J. Fisher and J. B. de Boer (CIE)
92
- </abstract>
93
- </bibitem>"
57
+ => "<bibitem id="CIE001-1980" type="standard" schema-version="v1.2.1">
58
+ <fetched>2022-12-03</fetched>
59
+ <title type="title-main" format="text/plain">Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)</title>
60
+ <title type="main" format="text/plain">Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)</title>
61
+ <uri type="src">https://www.techstreet.com/cie/standards/cie-001-1980?product_id=1210107</uri>
62
+ ...
63
+ </bibitem>"
94
64
  ----
95
65
 
96
- With `bibdata: true` option XML output wrapped with `bibdata` element and `ext` element added.
66
+ With `bibdata: true` option XML output is wrapped with `bibdata` element and `ext` element added.
97
67
  [source,ruby]
98
68
  ----
99
69
  item.to_xml bibdata: true
100
- "<bibdata type="standard">
101
- <fetched>2021-03-17</fetched>
102
- <title type="title-main" format="text/plain">
103
- Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)
104
- </title>
105
- <title type="main" format="text/plain">
106
- Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)
107
- </title>
108
- <uri type="src">https://www.techstreet.com/cie/standards/cie-001-1980?product_id=1210107</uri>
109
- <docidentifier type="CIE">CIE 001-1980</docidentifier>
110
- ...
111
- <ext>
112
- <doctype>document</doctype>
113
- </ext>
114
- </bibdata>"
70
+ => "<bibdata type="standard" schema-version="v1.2.1">
71
+ <fetched>2022-12-03</fetched>
72
+ <title type="title-main" format="text/plain">Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)</title>
73
+ <title type="main" format="text/plain">Guidelines for minimizing urban sky glow near astronomical observatories (Joint Publication IAU/CIE)</title>
74
+ <uri type="src">https://www.techstreet.com/cie/standards/cie-001-1980?product_id=1210107</uri>
75
+ ...
76
+ <ext schema-version="v1.0.0">
77
+ <doctype>document</doctype>
78
+ </ext>
79
+ </bibdata>"
115
80
  ----
116
81
  === Typed links
117
82
 
@@ -127,20 +92,20 @@ item.link
127
92
 
128
93
  [source,ruby]
129
94
  ----
130
- item = RelatonBib::XMLParser.from_xml File.read("spec/fixtures/bibdata.xml")
131
- => #<RelatonBib::BibliographicItem:0x007fb4061aa498
95
+ item = RelatonCie::XMLParser.from_xml File.read("spec/fixtures/bibdata.xml")
96
+ #<RelatonCie::BibliographicItem:0x00007feecda370f0
132
97
  ...
133
98
  ----
134
99
 
135
100
  === Fetch data
136
101
 
137
- This gem uses the https://www.techstreet.com/cie/searches/31156444 dataset as one of data sources.
102
+ This gem uses the https://www.techstreet.com/cie/searches/31156444 dataset as one of the data sources.
138
103
 
139
- The method `RelatonCie::DataFetcher.fetch(output: "data", format: "yaml")` fetches all the documents from the datast and save them to the `./data` folder in YAML format.
104
+ The method `RelatonCie::DataFetcher.fetch(output: "data", format: "yaml")` fetches all the documents from the dataset and saves them to the `./data` folder in YAML format.
140
105
  Arguments:
141
106
 
142
107
  - `output` - folder to save documents (default './data').
143
- - `format` - format in which the documents are saved. Possimle formats are: `yaml`, `xml` (default `yaml`).
108
+ - `format` - the format in which the documents are saved. Possible formats are: `yaml`, `xml`, `bibxml` (default `yaml`).
144
109
 
145
110
  [source,ruby]
146
111
  ----
@@ -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>
@@ -527,7 +522,6 @@
527
522
  <value>tip</value>
528
523
  <value>important</value>
529
524
  <value>caution</value>
530
- <value>statement</value>
531
525
  </choice>
532
526
  </define>
533
527
  <define name="figure">
@@ -688,6 +682,9 @@
688
682
  </define>
689
683
  <define name="underline">
690
684
  <element name="underline">
685
+ <optional>
686
+ <attribute name="style"/>
687
+ </optional>
691
688
  <zeroOrMore>
692
689
  <ref name="PureTextElement"/>
693
690
  </zeroOrMore>
@@ -1125,26 +1122,4 @@
1125
1122
  </zeroOrMore>
1126
1123
  </element>
1127
1124
  </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
1125
  </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>
@@ -200,6 +216,9 @@
200
216
  <optional>
201
217
  <ref name="fullname"/>
202
218
  </optional>
219
+ <zeroOrMore>
220
+ <ref name="credential"/>
221
+ </zeroOrMore>
203
222
  <zeroOrMore>
204
223
  <ref name="affiliation"/>
205
224
  </zeroOrMore>
@@ -216,6 +235,11 @@
216
235
  <ref name="FullNameType"/>
217
236
  </element>
218
237
  </define>
238
+ <define name="credential">
239
+ <element name="credential">
240
+ <text/>
241
+ </element>
242
+ </define>
219
243
  <define name="FullNameType">
220
244
  <choice>
221
245
  <group>
@@ -289,7 +313,9 @@
289
313
  <zeroOrMore>
290
314
  <ref name="affiliationdescription"/>
291
315
  </zeroOrMore>
292
- <ref name="organization"/>
316
+ <optional>
317
+ <ref name="organization"/>
318
+ </optional>
293
319
  </element>
294
320
  </define>
295
321
  <define name="affiliationname">
@@ -500,6 +526,17 @@
500
526
  </define>
501
527
  <define name="localityStack">
502
528
  <element name="localityStack">
529
+ <optional>
530
+ <attribute name="connective">
531
+ <choice>
532
+ <value>and</value>
533
+ <value>or</value>
534
+ <value>from</value>
535
+ <value>to</value>
536
+ <value/>
537
+ </choice>
538
+ </attribute>
539
+ </optional>
503
540
  <zeroOrMore>
504
541
  <ref name="locality"/>
505
542
  </zeroOrMore>
@@ -512,6 +549,17 @@
512
549
  </define>
513
550
  <define name="sourceLocalityStack">
514
551
  <element name="sourceLocalityStack">
552
+ <optional>
553
+ <attribute name="connective">
554
+ <choice>
555
+ <value>and</value>
556
+ <value>or</value>
557
+ <value>from</value>
558
+ <value>to</value>
559
+ <value/>
560
+ </choice>
561
+ </attribute>
562
+ </optional>
515
563
  <zeroOrMore>
516
564
  <ref name="sourceLocality"/>
517
565
  </zeroOrMore>
@@ -614,6 +662,9 @@
614
662
  <ref name="BibItemType"/>
615
663
  </attribute>
616
664
  </optional>
665
+ <optional>
666
+ <attribute name="schema-version"/>
667
+ </optional>
617
668
  <optional>
618
669
  <ref name="fetched"/>
619
670
  </optional>
@@ -650,6 +701,9 @@
650
701
  <zeroOrMore>
651
702
  <ref name="language"/>
652
703
  </zeroOrMore>
704
+ <zeroOrMore>
705
+ <ref name="locale"/>
706
+ </zeroOrMore>
653
707
  <zeroOrMore>
654
708
  <ref name="script"/>
655
709
  </zeroOrMore>
@@ -705,6 +759,9 @@
705
759
  <ref name="BibItemType"/>
706
760
  </attribute>
707
761
  </optional>
762
+ <optional>
763
+ <attribute name="schema-version"/>
764
+ </optional>
708
765
  <optional>
709
766
  <ref name="fetched"/>
710
767
  </optional>
@@ -741,6 +798,9 @@
741
798
  <zeroOrMore>
742
799
  <ref name="language"/>
743
800
  </zeroOrMore>
801
+ <zeroOrMore>
802
+ <ref name="locale"/>
803
+ </zeroOrMore>
744
804
  <zeroOrMore>
745
805
  <ref name="script"/>
746
806
  </zeroOrMore>
@@ -854,6 +914,15 @@
854
914
  <optional>
855
915
  <attribute name="type"/>
856
916
  </optional>
917
+ <optional>
918
+ <attribute name="language"/>
919
+ </optional>
920
+ <optional>
921
+ <attribute name="locale"/>
922
+ </optional>
923
+ <optional>
924
+ <attribute name="script"/>
925
+ </optional>
857
926
  <data type="anyURI"/>
858
927
  </define>
859
928
  <define name="DateType">
@@ -882,6 +951,7 @@
882
951
  <value>vote-started</value>
883
952
  <value>vote-ended</value>
884
953
  <value>announced</value>
954
+ <value>stable-until</value>
885
955
  </choice>
886
956
  </define>
887
957
  <define name="bdate">
@@ -930,6 +1000,9 @@
930
1000
  <optional>
931
1001
  <attribute name="language"/>
932
1002
  </optional>
1003
+ <optional>
1004
+ <attribute name="locale"/>
1005
+ </optional>
933
1006
  <optional>
934
1007
  <attribute name="script"/>
935
1008
  </optional>
@@ -1253,7 +1326,7 @@
1253
1326
  <value>commentaryOf</value>
1254
1327
  <value>hasCommentary</value>
1255
1328
  <value>related</value>
1256
- <value>complements</value>
1329
+ <value>hasComplement</value>
1257
1330
  <value>complementOf</value>
1258
1331
  <value>obsoletes</value>
1259
1332
  <value>obsoletedBy</value>
@@ -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-cie.rng"/>
5
+ <start>
6
+ <choice>
7
+ <ref name="bibitem"/>
8
+ <ref name="bibdata"/>
9
+ </choice>
10
+ </start>
11
+ </grammar>
@@ -0,0 +1,4 @@
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
+ </grammar>