relaton-nist 1.13.1 → 1.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/rake.yml +0 -1
- data/.github/workflows/release.yml +22 -0
- data/README.adoc +30 -37
- data/grammars/basicdoc.rng +3 -27
- data/grammars/biblio-standoc.rng +164 -0
- data/grammars/biblio.rng +82 -19
- data/grammars/relaton-nist-compile.rng +11 -0
- data/grammars/relaton-nist.rng +70 -0
- data/lib/relaton_nist/data_fetcher.rb +1 -1
- data/lib/relaton_nist/hit_collection.rb +111 -58
- data/lib/relaton_nist/nist_bibliographic_item.rb +13 -2
- data/lib/relaton_nist/scrapper.rb +10 -6
- data/lib/relaton_nist/version.rb +1 -1
- data/relaton_nist.gemspec +1 -1
- data/resp.html +616 -616
- metadata +12 -11
- data/grammars/isodoc.rng +0 -2807
- data/grammars/nist.rng +0 -219
- data/grammars/reqt.rng +0 -223
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d4ff63cc9a73c9d9032720ed22ea75fdb33b6bfcfc0560c8b993229bb3f054b6
|
4
|
+
data.tar.gz: c8021d3d62a10781d0d41f51ee64a5c23e2a4a700f5afd1fc6e016710b3eedc8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7428af4e6d096ad69dc479449ab148c2c5af897a195338606605a87c2f6a07c439d6f55434f24c6733427c7baa016727308f53ee7d2fb7863a9f0a714f4ec6c6
|
7
|
+
data.tar.gz: 199967053022613a34208b54593ccdc3b36b0f10238aa828b2c6dbe44b2953c1f2dc1015220a95058137fdc7e59196acfcce8d5bddc8cfadab570c4ec26f21b9
|
data/.github/workflows/rake.yml
CHANGED
@@ -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/README.adoc
CHANGED
@@ -26,8 +26,8 @@ all CSRC publications (in Relaton JSON)
|
|
26
26
|
Office (ISO) that contains information about all NIST Technical Publications
|
27
27
|
(https://github.com/usnistgov/NIST-Tech-Pubs[GitHub])
|
28
28
|
|
29
|
-
Bibliographic information offered through CSRC
|
30
|
-
metadata that is not available
|
29
|
+
Bibliographic information offered through CSRC is provided with enhanced
|
30
|
+
metadata that is not available in the NIST Library dataset, including:
|
31
31
|
|
32
32
|
* public drafts (the NIST Library dataset only contains final publications)
|
33
33
|
* revision information: revision number, iteration
|
@@ -37,7 +37,7 @@ metadata that is not available at the NIST Library dataset, including:
|
|
37
37
|
* document relationships: supersession and replacements
|
38
38
|
* contacts: enhanced name parts and affiliation information
|
39
39
|
|
40
|
-
Relaton for NIST therefore uses the following order of priority for the data
|
40
|
+
Relaton for NIST, therefore, uses the following order of priority for the data
|
41
41
|
sources:
|
42
42
|
|
43
43
|
. bibliographic feed from NIST CSRC
|
@@ -50,7 +50,7 @@ Add this line to your application's Gemfile:
|
|
50
50
|
|
51
51
|
[source,ruby]
|
52
52
|
----
|
53
|
-
gem '
|
53
|
+
gem 'relaton-nist'
|
54
54
|
----
|
55
55
|
|
56
56
|
And then execute:
|
@@ -68,11 +68,12 @@ Or install it yourself as:
|
|
68
68
|
[source,ruby]
|
69
69
|
----
|
70
70
|
require 'relaton_nist'
|
71
|
+
=> true
|
71
72
|
|
72
73
|
hit_collection = RelatonNist::NistBibliography.search("8200")
|
73
74
|
=> <RelatonNist::HitCollection:0x007fc069d19da0 @ref=8200 @fetched=false>
|
74
75
|
|
75
|
-
|
76
|
+
item = hit_collection[1].fetch
|
76
77
|
=> #<RelatonNist::NistBibliographicItem:0x007fc049aa6778
|
77
78
|
...
|
78
79
|
----
|
@@ -81,52 +82,44 @@ hit_collection = RelatonNist::NistBibliography.search("8200")
|
|
81
82
|
[source,ruby]
|
82
83
|
----
|
83
84
|
item.to_xml
|
84
|
-
=> "<bibitem id="
|
85
|
-
<fetched>
|
86
|
-
<title format="text/plain" language="en" script="Latn">
|
87
|
-
Interagency Report on Status of International Cybersecurity Standardization for the Internet of Things (IoT)
|
88
|
-
</title>
|
85
|
+
=> "<bibitem id="SP800-160Vol.1Ver.1Rev.1" type="standard" schema-version="v1.2.1">
|
86
|
+
<fetched>2022-12-05</fetched>
|
87
|
+
<title format="text/plain" language="en" script="Latn">Engineering Trustworthy Secure Systems</title>
|
89
88
|
...
|
90
89
|
<bibitem>"
|
91
90
|
----
|
92
|
-
With argument `bibdata: true` it
|
91
|
+
With argument `bibdata: true` it outputs XML wrapped by `bibdata` element and adds flavor `ext` element.
|
93
92
|
[source,ruby]
|
94
93
|
----
|
95
94
|
item.to_xml bibdata: true
|
96
|
-
=> "<bibdata type="standard">
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
<doctype>stadard</doctype>
|
104
|
-
<commentperiod>
|
105
|
-
<from>2018-02-01</from>
|
106
|
-
<to>2018-04-18</to>
|
107
|
-
</commentperiod>
|
108
|
-
</ext>
|
95
|
+
=> "<bibdata type="standard" schema-version="v1.2.1">
|
96
|
+
<fetched>2022-12-05</fetched>
|
97
|
+
<title format="text/plain" language="en" script="Latn">Engineering Trustworthy Secure Systems</title>
|
98
|
+
...
|
99
|
+
<ext schema-version="v1.0.0">
|
100
|
+
<doctype>standard</doctype>
|
101
|
+
</ext>
|
109
102
|
</bibdata>"
|
110
103
|
----
|
111
104
|
|
112
105
|
=== Get code, and year
|
113
106
|
[source,ruby]
|
114
107
|
----
|
115
|
-
RelatonNist::NistBibliography.get("8200", "2018", {})
|
116
|
-
[relaton-nist] ("8200") fetching...
|
117
|
-
[relaton-nist] ("8200") found
|
118
|
-
=> #<RelatonNist::NistBibliographicItem:
|
108
|
+
RelatonNist::NistBibliography.get("NIST IR 8200", "2018", {})
|
109
|
+
[relaton-nist] ("NIST IR 8200") fetching...
|
110
|
+
[relaton-nist] ("NIST IR 8200") found NIST IR 8200
|
111
|
+
=> #<RelatonNist::NistBibliographicItem:0x00007fab74a572c0
|
119
112
|
...
|
120
113
|
----
|
121
114
|
|
122
115
|
=== Get short citation
|
123
|
-
|
116
|
+
A short citation is a convention about a citation's format. The format for NIST publications is:
|
124
117
|
----
|
125
118
|
NIST {abbrev(series)} {docnumber} {(edition), optional} {(stage), optional}
|
126
119
|
# or
|
127
120
|
{abbrev(series)} {docnumber} {(edition), optional} {(stage), optional}
|
128
121
|
----
|
129
|
-
- `(stage)` is empty if the state is "final" (published). In case state is "draft" it
|
122
|
+
- `(stage)` is empty if the state is "final" (published). In case the state is "draft" it should be:
|
130
123
|
* PD for public draft
|
131
124
|
* IPD for initial iteration public draft or 2PD, 3PD and so one for following iterations
|
132
125
|
* FPD for final public draft
|
@@ -159,16 +152,16 @@ Referehces can contain optional parameters `{ptN}{vN}{verN}{rN}{/Add}`:
|
|
159
152
|
|
160
153
|
[source,ruby]
|
161
154
|
----
|
162
|
-
item = RelatonNist::NistBibliography.get 'SP 800-
|
163
|
-
[relaton-nist] ("SP 800-
|
164
|
-
[relaton-nist] ("SP 800-
|
165
|
-
=> #<RelatonNist::NistBibliographicItem:
|
155
|
+
item = RelatonNist::NistBibliography.get 'NIST SP 800-67r1'
|
156
|
+
[relaton-nist] ("NIST SP 800-67r1") fetching...
|
157
|
+
[relaton-nist] ("NIST SP 800-67r1") found SP 800-67 Rev. 1
|
158
|
+
=> #<RelatonNist::NistBibliographicItem:0x00007fab748ae978
|
166
159
|
...
|
167
160
|
|
168
161
|
item.docidentifier.first.id
|
169
|
-
=> "SP 800-67 Rev.
|
162
|
+
=> "SP 800-67 Rev. 1"
|
170
163
|
|
171
|
-
RelatonNist::NistBibliography.get 'SP 800-38A/Add'
|
164
|
+
item = RelatonNist::NistBibliography.get 'SP 800-38A/Add'
|
172
165
|
[relaton-nist] ("SP 800-38A/Add") fetching...
|
173
166
|
[relaton-nist] ("SP 800-38A/Add") found SP 800-38A-Add
|
174
167
|
=> #<RelatonNist::NistBibliographicItem:0x007fd88c21d880
|
@@ -209,7 +202,7 @@ The method `RelatonNist::DataFetcher.fetch(output: "data", format: "yaml")` fetc
|
|
209
202
|
Arguments:
|
210
203
|
|
211
204
|
- `output` - folder to save documents (default './data').
|
212
|
-
- `format` - format in which the documents are saved.
|
205
|
+
- `format` - the format in which the documents are saved. Possible formats are: `yaml`, `xml`, `bibxxml` (default `yaml`).
|
213
206
|
|
214
207
|
[source,ruby]
|
215
208
|
----
|
data/grammars/basicdoc.rng
CHANGED
@@ -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
|
-
|
37
|
-
|
38
|
-
|
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="
|
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
|
-
<
|
174
|
+
<oneOrMore>
|
162
175
|
<ref name="role"/>
|
163
|
-
</
|
176
|
+
</oneOrMore>
|
164
177
|
<ref name="ContributorInfo"/>
|
165
178
|
</element>
|
166
179
|
</define>
|
167
180
|
<define name="role">
|
168
181
|
<element name="role">
|
169
|
-
<
|
170
|
-
<
|
171
|
-
<
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
</
|
180
|
-
|
181
|
-
|
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>
|
@@ -500,6 +516,17 @@
|
|
500
516
|
</define>
|
501
517
|
<define name="localityStack">
|
502
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>
|
503
530
|
<zeroOrMore>
|
504
531
|
<ref name="locality"/>
|
505
532
|
</zeroOrMore>
|
@@ -512,6 +539,17 @@
|
|
512
539
|
</define>
|
513
540
|
<define name="sourceLocalityStack">
|
514
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>
|
515
553
|
<zeroOrMore>
|
516
554
|
<ref name="sourceLocality"/>
|
517
555
|
</zeroOrMore>
|
@@ -614,6 +652,9 @@
|
|
614
652
|
<ref name="BibItemType"/>
|
615
653
|
</attribute>
|
616
654
|
</optional>
|
655
|
+
<optional>
|
656
|
+
<attribute name="schema-version"/>
|
657
|
+
</optional>
|
617
658
|
<optional>
|
618
659
|
<ref name="fetched"/>
|
619
660
|
</optional>
|
@@ -650,6 +691,9 @@
|
|
650
691
|
<zeroOrMore>
|
651
692
|
<ref name="language"/>
|
652
693
|
</zeroOrMore>
|
694
|
+
<zeroOrMore>
|
695
|
+
<ref name="locale"/>
|
696
|
+
</zeroOrMore>
|
653
697
|
<zeroOrMore>
|
654
698
|
<ref name="script"/>
|
655
699
|
</zeroOrMore>
|
@@ -705,6 +749,9 @@
|
|
705
749
|
<ref name="BibItemType"/>
|
706
750
|
</attribute>
|
707
751
|
</optional>
|
752
|
+
<optional>
|
753
|
+
<attribute name="schema-version"/>
|
754
|
+
</optional>
|
708
755
|
<optional>
|
709
756
|
<ref name="fetched"/>
|
710
757
|
</optional>
|
@@ -741,6 +788,9 @@
|
|
741
788
|
<zeroOrMore>
|
742
789
|
<ref name="language"/>
|
743
790
|
</zeroOrMore>
|
791
|
+
<zeroOrMore>
|
792
|
+
<ref name="locale"/>
|
793
|
+
</zeroOrMore>
|
744
794
|
<zeroOrMore>
|
745
795
|
<ref name="script"/>
|
746
796
|
</zeroOrMore>
|
@@ -854,6 +904,15 @@
|
|
854
904
|
<optional>
|
855
905
|
<attribute name="type"/>
|
856
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>
|
857
916
|
<data type="anyURI"/>
|
858
917
|
</define>
|
859
918
|
<define name="DateType">
|
@@ -882,6 +941,7 @@
|
|
882
941
|
<value>vote-started</value>
|
883
942
|
<value>vote-ended</value>
|
884
943
|
<value>announced</value>
|
944
|
+
<value>stable-until</value>
|
885
945
|
</choice>
|
886
946
|
</define>
|
887
947
|
<define name="bdate">
|
@@ -930,6 +990,9 @@
|
|
930
990
|
<optional>
|
931
991
|
<attribute name="language"/>
|
932
992
|
</optional>
|
993
|
+
<optional>
|
994
|
+
<attribute name="locale"/>
|
995
|
+
</optional>
|
933
996
|
<optional>
|
934
997
|
<attribute name="script"/>
|
935
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-nist.rng"/>
|
5
|
+
<start>
|
6
|
+
<choice>
|
7
|
+
<ref name="bibitem"/>
|
8
|
+
<ref name="bibdata"/>
|
9
|
+
</choice>
|
10
|
+
</start>
|
11
|
+
</grammar>
|
@@ -0,0 +1,70 @@
|
|
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
|
+
<value>standard</value>
|
6
|
+
</define>
|
7
|
+
<define name="editorialgroup">
|
8
|
+
<element name="editorialgroup">
|
9
|
+
<oneOrMore>
|
10
|
+
<ref name="committee"/>
|
11
|
+
</oneOrMore>
|
12
|
+
</element>
|
13
|
+
</define>
|
14
|
+
<define name="BibDataExtensionType">
|
15
|
+
<optional>
|
16
|
+
<attribute name="schema-version"/>
|
17
|
+
</optional>
|
18
|
+
<optional>
|
19
|
+
<ref name="doctype"/>
|
20
|
+
</optional>
|
21
|
+
<optional>
|
22
|
+
<ref name="docsubtype"/>
|
23
|
+
</optional>
|
24
|
+
<optional>
|
25
|
+
<ref name="editorialgroup"/>
|
26
|
+
</optional>
|
27
|
+
<zeroOrMore>
|
28
|
+
<ref name="ics"/>
|
29
|
+
</zeroOrMore>
|
30
|
+
<optional>
|
31
|
+
<ref name="commentperiod"/>
|
32
|
+
</optional>
|
33
|
+
</define>
|
34
|
+
</include>
|
35
|
+
<define name="DocRelationType" combine="choice">
|
36
|
+
<choice>
|
37
|
+
<value>obsoletedBy</value>
|
38
|
+
<value>supersedes</value>
|
39
|
+
<value>supersededBy</value>
|
40
|
+
</choice>
|
41
|
+
</define>
|
42
|
+
<define name="BibliographicDateType" combine="choice">
|
43
|
+
<choice>
|
44
|
+
<value>abandoned</value>
|
45
|
+
<value>superseded</value>
|
46
|
+
</choice>
|
47
|
+
</define>
|
48
|
+
<define name="commentperiod">
|
49
|
+
<element name="commentperiod">
|
50
|
+
<element name="from">
|
51
|
+
<ref name="ISO8601Date"/>
|
52
|
+
</element>
|
53
|
+
<optional>
|
54
|
+
<element name="to">
|
55
|
+
<ref name="ISO8601Date"/>
|
56
|
+
</element>
|
57
|
+
</optional>
|
58
|
+
<optional>
|
59
|
+
<element name="extended">
|
60
|
+
<ref name="ISO8601Date"/>
|
61
|
+
</element>
|
62
|
+
</optional>
|
63
|
+
</element>
|
64
|
+
</define>
|
65
|
+
<define name="committee">
|
66
|
+
<element name="committee">
|
67
|
+
<text/>
|
68
|
+
</element>
|
69
|
+
</define>
|
70
|
+
</grammar>
|