metanorma-iso 2.2.1 → 2.2.2
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/.github/workflows/automerge.yml +31 -0
- data/lib/isodoc/iso/html/style-human.css +1 -1
- data/lib/isodoc/iso/html/style-iso.css +1 -1
- data/lib/isodoc/iso/i18n-en.yaml +9 -4
- data/lib/isodoc/iso/i18n-fr.yaml +9 -3
- data/lib/isodoc/iso/i18n-ru.yaml +9 -2
- data/lib/isodoc/iso/i18n-zh-Hans.yaml +1 -2
- data/lib/isodoc/iso/iso.amendment.xsl +21 -3
- data/lib/isodoc/iso/iso.international-standard.xsl +21 -3
- data/lib/isodoc/iso/presentation_xref.rb +10 -7
- data/lib/isodoc/iso/sections.rb +1 -1
- data/lib/metanorma/iso/basicdoc.rng +0 -27
- data/lib/metanorma/iso/biblio-standoc.rng +164 -0
- data/lib/metanorma/iso/biblio.rng +45 -18
- data/lib/metanorma/iso/isodoc.rng +22 -194
- data/lib/metanorma/iso/isostandard-amd.rng +3 -54
- data/lib/metanorma/iso/isostandard-compile.rng +7 -0
- data/lib/metanorma/iso/isostandard.rng +1 -195
- data/lib/metanorma/iso/relaton-iso.rng +225 -0
- data/lib/metanorma/iso/validate.rb +6 -6
- data/lib/metanorma/iso/version.rb +1 -1
- data/lib/metanorma/requirements/modspec.rb +22 -38
- data/spec/isodoc/inline_spec.rb +1 -1
- data/spec/metanorma/validate_spec.rb +55 -55
- data/spec/requirements/requirement_components_spec.rb +51 -63
- data/spec/requirements/requirements_spec.rb +177 -262
- data/spec/vcr_cassettes/withdrawn_iso.yml +29 -29
- metadata +6 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: bababdaaa40b4311b1ea3b536d4033bbeb418582ef7c4b7bd8cc5dcec43dfc4c
|
4
|
+
data.tar.gz: e3a3754839ac30e66c0d35574d565bced4e951a8bd1042e56cb85c390bcaf8fd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fa5cd0815b1649389973e2bfff66581386dd68450b53f31e3f5d4ae8e91c59bcebc6d5fe63691542c918dc93a6dd3a6e8392ebf32207e5b22d69785c7005852c
|
7
|
+
data.tar.gz: fdbcfc037894c4121c50eefc9eab7c26296dfeb599152409b2c46fd8f84a231051d7e21d5a6696eddf43002c6ca79cb3977972f92dab5dc2b974ed1c54a45722
|
@@ -0,0 +1,31 @@
|
|
1
|
+
# Auto-generated by Cimas: Do not edit it manually!
|
2
|
+
# See https://github.com/metanorma/cimas
|
3
|
+
# source: https://github.com/marketplace/actions/merge-pull-requests#usage
|
4
|
+
name: automerge
|
5
|
+
on:
|
6
|
+
pull_request:
|
7
|
+
types:
|
8
|
+
- labeled
|
9
|
+
- unlabeled
|
10
|
+
- synchronize
|
11
|
+
- opened
|
12
|
+
- edited
|
13
|
+
- ready_for_review
|
14
|
+
- reopened
|
15
|
+
- unlocked
|
16
|
+
pull_request_review:
|
17
|
+
types:
|
18
|
+
- submitted
|
19
|
+
check_suite:
|
20
|
+
types:
|
21
|
+
- completed
|
22
|
+
status: {}
|
23
|
+
jobs:
|
24
|
+
automerge:
|
25
|
+
runs-on: ubuntu-latest
|
26
|
+
steps:
|
27
|
+
- id: automerge
|
28
|
+
name: automerge
|
29
|
+
uses: "pascalgn/automerge-action@v0.15.3"
|
30
|
+
env:
|
31
|
+
GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
|
data/lib/isodoc/iso/i18n-en.yaml
CHANGED
@@ -76,7 +76,12 @@ locality:
|
|
76
76
|
appendix: Appendix
|
77
77
|
requirements:
|
78
78
|
modspec:
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
79
|
+
provision: Provision
|
80
|
+
conformancetest: Conformance test
|
81
|
+
inflection:
|
82
|
+
Provision:
|
83
|
+
sg: Provision
|
84
|
+
pl: Provisions
|
85
|
+
Statement:
|
86
|
+
sg: Statement
|
87
|
+
pl: Statements
|
data/lib/isodoc/iso/i18n-fr.yaml
CHANGED
@@ -70,6 +70,12 @@ locality:
|
|
70
70
|
appendix: Appendice
|
71
71
|
requirements:
|
72
72
|
modspec:
|
73
|
-
|
74
|
-
|
75
|
-
|
73
|
+
provision: Disposition
|
74
|
+
conformancetest: Test de conformité
|
75
|
+
inflection:
|
76
|
+
Disposition:
|
77
|
+
sg: Disposition
|
78
|
+
pl: Dispositions
|
79
|
+
Déclaration:
|
80
|
+
sg: Déclaration
|
81
|
+
pl: Déclarations
|
data/lib/isodoc/iso/i18n-ru.yaml
CHANGED
@@ -74,5 +74,12 @@ locality:
|
|
74
74
|
appendix: Приложение
|
75
75
|
requirements:
|
76
76
|
modspec:
|
77
|
-
|
78
|
-
|
77
|
+
provision: Условие
|
78
|
+
conformancetest: Тест на соответствие
|
79
|
+
inflection:
|
80
|
+
Условие:
|
81
|
+
sg: Условие
|
82
|
+
pl: Условия
|
83
|
+
Утверждение:
|
84
|
+
sg: Утверждение
|
85
|
+
pl: Утверждения
|
@@ -1900,6 +1900,9 @@
|
|
1900
1900
|
</xsl:choose>
|
1901
1901
|
</xsl:attribute>
|
1902
1902
|
<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
|
1903
|
+
<xsl:if test="starts-with(ancestor::*[local-name() = 'table'][1]/@type, 'recommend') and not(following-sibling::*[local-name() = 'p'])">
|
1904
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
1905
|
+
</xsl:if>
|
1903
1906
|
<xsl:if test="@id">
|
1904
1907
|
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
|
1905
1908
|
</xsl:if>
|
@@ -4753,6 +4756,9 @@
|
|
4753
4756
|
<xsl:if test="ancestor::*[local-name() = 'tfoot']">
|
4754
4757
|
<xsl:attribute name="border">solid black 0</xsl:attribute>
|
4755
4758
|
</xsl:if>
|
4759
|
+
<xsl:if test="starts-with(ancestor::*[local-name() = 'table'][1]/@type, 'recommend')">
|
4760
|
+
<xsl:attribute name="display-align">before</xsl:attribute>
|
4761
|
+
</xsl:if>
|
4756
4762
|
|
4757
4763
|
<xsl:if test=".//*[local-name() = 'table']"> <!-- if there is nested table -->
|
4758
4764
|
<xsl:attribute name="padding-right">1mm</xsl:attribute>
|
@@ -5743,8 +5749,17 @@
|
|
5743
5749
|
</fo:inline>
|
5744
5750
|
</xsl:template> <!-- tt -->
|
5745
5751
|
|
5752
|
+
<xsl:variable name="regex_url_start">^(http://|https://|www\.)?(.*)</xsl:variable>
|
5746
5753
|
<xsl:template match="*[local-name()='tt']/text()" priority="2">
|
5747
|
-
<xsl:
|
5754
|
+
<xsl:choose>
|
5755
|
+
<xsl:when test="java:replaceAll(java:java.lang.String.new(.), '$2', '') != ''">
|
5756
|
+
<!-- url -->
|
5757
|
+
<xsl:call-template name="add-zero-spaces-link-java"/>
|
5758
|
+
</xsl:when>
|
5759
|
+
<xsl:otherwise>
|
5760
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5761
|
+
</xsl:otherwise>
|
5762
|
+
</xsl:choose>
|
5748
5763
|
</xsl:template>
|
5749
5764
|
|
5750
5765
|
<xsl:template match="*[local-name()='underline']">
|
@@ -6100,8 +6115,11 @@
|
|
6100
6115
|
|
6101
6116
|
<xsl:template name="add-zero-spaces-link-java">
|
6102
6117
|
<xsl:param name="text" select="."/>
|
6118
|
+
|
6119
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
|
6120
|
+
<xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
|
6103
6121
|
<!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
|
6104
|
-
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($
|
6122
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1')"/>
|
6105
6123
|
</xsl:template>
|
6106
6124
|
|
6107
6125
|
<!-- add zero space after dash character (for table's entries) -->
|
@@ -10641,7 +10659,7 @@
|
|
10641
10659
|
|
10642
10660
|
<xsl:variable name="element_name_keep-together_within-line">keep-together_within-line</xsl:variable>
|
10643
10661
|
|
10644
|
-
<xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'sourcecode'] or
|
10662
|
+
<xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
|
10645
10663
|
|
10646
10664
|
<!-- enclose standard's number into tag 'keep-together_within-line' -->
|
10647
10665
|
<xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
|
@@ -1900,6 +1900,9 @@
|
|
1900
1900
|
</xsl:choose>
|
1901
1901
|
</xsl:attribute>
|
1902
1902
|
<xsl:attribute name="margin-bottom">8pt</xsl:attribute>
|
1903
|
+
<xsl:if test="starts-with(ancestor::*[local-name() = 'table'][1]/@type, 'recommend') and not(following-sibling::*[local-name() = 'p'])">
|
1904
|
+
<xsl:attribute name="margin-bottom">0pt</xsl:attribute>
|
1905
|
+
</xsl:if>
|
1903
1906
|
<xsl:if test="@id">
|
1904
1907
|
<xsl:attribute name="id"><xsl:value-of select="@id"/></xsl:attribute>
|
1905
1908
|
</xsl:if>
|
@@ -4753,6 +4756,9 @@
|
|
4753
4756
|
<xsl:if test="ancestor::*[local-name() = 'tfoot']">
|
4754
4757
|
<xsl:attribute name="border">solid black 0</xsl:attribute>
|
4755
4758
|
</xsl:if>
|
4759
|
+
<xsl:if test="starts-with(ancestor::*[local-name() = 'table'][1]/@type, 'recommend')">
|
4760
|
+
<xsl:attribute name="display-align">before</xsl:attribute>
|
4761
|
+
</xsl:if>
|
4756
4762
|
|
4757
4763
|
<xsl:if test=".//*[local-name() = 'table']"> <!-- if there is nested table -->
|
4758
4764
|
<xsl:attribute name="padding-right">1mm</xsl:attribute>
|
@@ -5743,8 +5749,17 @@
|
|
5743
5749
|
</fo:inline>
|
5744
5750
|
</xsl:template> <!-- tt -->
|
5745
5751
|
|
5752
|
+
<xsl:variable name="regex_url_start">^(http://|https://|www\.)?(.*)</xsl:variable>
|
5746
5753
|
<xsl:template match="*[local-name()='tt']/text()" priority="2">
|
5747
|
-
<xsl:
|
5754
|
+
<xsl:choose>
|
5755
|
+
<xsl:when test="java:replaceAll(java:java.lang.String.new(.), '$2', '') != ''">
|
5756
|
+
<!-- url -->
|
5757
|
+
<xsl:call-template name="add-zero-spaces-link-java"/>
|
5758
|
+
</xsl:when>
|
5759
|
+
<xsl:otherwise>
|
5760
|
+
<xsl:call-template name="add_spaces_to_sourcecode"/>
|
5761
|
+
</xsl:otherwise>
|
5762
|
+
</xsl:choose>
|
5748
5763
|
</xsl:template>
|
5749
5764
|
|
5750
5765
|
<xsl:template match="*[local-name()='underline']">
|
@@ -6100,8 +6115,11 @@
|
|
6100
6115
|
|
6101
6116
|
<xsl:template name="add-zero-spaces-link-java">
|
6102
6117
|
<xsl:param name="text" select="."/>
|
6118
|
+
|
6119
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$1')"/> <!-- http://. https:// or www. -->
|
6120
|
+
<xsl:variable name="url_continue" select="java:replaceAll(java:java.lang.String.new($text), $regex_url_start, '$2')"/>
|
6103
6121
|
<!-- add zero-width space (#x200B) after characters: dash, dot, colon, equal, underscore, em dash, thin space -->
|
6104
|
-
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($
|
6122
|
+
<xsl:value-of select="java:replaceAll(java:java.lang.String.new($url_continue),'(-|\.|:|=|_|—| |,|/)','$1')"/>
|
6105
6123
|
</xsl:template>
|
6106
6124
|
|
6107
6125
|
<!-- add zero space after dash character (for table's entries) -->
|
@@ -10641,7 +10659,7 @@
|
|
10641
10659
|
|
10642
10660
|
<xsl:variable name="element_name_keep-together_within-line">keep-together_within-line</xsl:variable>
|
10643
10661
|
|
10644
|
-
<xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'sourcecode'] or
|
10662
|
+
<xsl:template match="text()[not(ancestor::*[local-name() = 'bibdata'] or ancestor::*[local-name() = 'link'][not(contains(.,' '))] or ancestor::*[local-name() = 'sourcecode'] or ancestor::*[local-name() = 'math'] or starts-with(., 'http://') or starts-with(., 'https://') or starts-with(., 'www.') )]" name="keep_together_standard_number" mode="update_xml_enclose_keep-together_within-line">
|
10645
10663
|
|
10646
10664
|
<!-- enclose standard's number into tag 'keep-together_within-line' -->
|
10647
10665
|
<xsl:variable name="regex_standard_reference">([A-Z]{2,}(/[A-Z]{2,})* \d+(-\d+)*(:\d{4})?)</xsl:variable>
|
@@ -104,15 +104,18 @@ module IsoDoc
|
|
104
104
|
locality_span_wrap(ret, type)
|
105
105
|
end
|
106
106
|
|
107
|
-
def prefix_container(container, linkend, target)
|
107
|
+
def prefix_container(container, linkend, node, target)
|
108
108
|
delim = ", "
|
109
|
-
|
110
|
-
if @xrefs.anchor(target, :type) == "listitem" &&
|
109
|
+
ref = if @xrefs.anchor(target, :type) == "listitem" &&
|
111
110
|
!@xrefs.anchor(target, :refer_list)
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
111
|
+
delim = " "
|
112
|
+
@xrefs.anchor(container, :label)
|
113
|
+
# 7 a) : Clause 7 a), but Clause 7 List 1 a)
|
114
|
+
else
|
115
|
+
anchor_xref(node, container)
|
116
|
+
end
|
117
|
+
|
118
|
+
l10n(ref + delim + linkend)
|
116
119
|
end
|
117
120
|
|
118
121
|
def expand_citeas(text)
|
data/lib/isodoc/iso/sections.rb
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>
|
@@ -1125,26 +1120,4 @@
|
|
1125
1120
|
</zeroOrMore>
|
1126
1121
|
</element>
|
1127
1122
|
</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
1123
|
</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
|
+
<value>document</value>
|
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>
|
@@ -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"/>
|
@@ -170,27 +171,25 @@
|
|
170
171
|
</define>
|
171
172
|
<define name="contributor">
|
172
173
|
<element name="contributor">
|
173
|
-
<
|
174
|
+
<oneOrMore>
|
174
175
|
<ref name="role"/>
|
175
|
-
</
|
176
|
+
</oneOrMore>
|
176
177
|
<ref name="ContributorInfo"/>
|
177
178
|
</element>
|
178
179
|
</define>
|
179
180
|
<define name="role">
|
180
181
|
<element name="role">
|
181
|
-
<
|
182
|
-
<
|
183
|
-
<
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
</attribute>
|
193
|
-
</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
|
+
</choice>
|
192
|
+
</attribute>
|
194
193
|
<zeroOrMore>
|
195
194
|
<ref name="roledescription"/>
|
196
195
|
</zeroOrMore>
|
@@ -512,6 +511,17 @@
|
|
512
511
|
</define>
|
513
512
|
<define name="localityStack">
|
514
513
|
<element name="localityStack">
|
514
|
+
<optional>
|
515
|
+
<attribute name="connective">
|
516
|
+
<choice>
|
517
|
+
<value>and</value>
|
518
|
+
<value>or</value>
|
519
|
+
<value>from</value>
|
520
|
+
<value>to</value>
|
521
|
+
<value/>
|
522
|
+
</choice>
|
523
|
+
</attribute>
|
524
|
+
</optional>
|
515
525
|
<zeroOrMore>
|
516
526
|
<ref name="locality"/>
|
517
527
|
</zeroOrMore>
|
@@ -524,6 +534,17 @@
|
|
524
534
|
</define>
|
525
535
|
<define name="sourceLocalityStack">
|
526
536
|
<element name="sourceLocalityStack">
|
537
|
+
<optional>
|
538
|
+
<attribute name="connective">
|
539
|
+
<choice>
|
540
|
+
<value>and</value>
|
541
|
+
<value>or</value>
|
542
|
+
<value>from</value>
|
543
|
+
<value>to</value>
|
544
|
+
<value/>
|
545
|
+
</choice>
|
546
|
+
</attribute>
|
547
|
+
</optional>
|
527
548
|
<zeroOrMore>
|
528
549
|
<ref name="sourceLocality"/>
|
529
550
|
</zeroOrMore>
|
@@ -626,6 +647,9 @@
|
|
626
647
|
<ref name="BibItemType"/>
|
627
648
|
</attribute>
|
628
649
|
</optional>
|
650
|
+
<optional>
|
651
|
+
<attribute name="schema-version"/>
|
652
|
+
</optional>
|
629
653
|
<optional>
|
630
654
|
<ref name="fetched"/>
|
631
655
|
</optional>
|
@@ -720,6 +744,9 @@
|
|
720
744
|
<ref name="BibItemType"/>
|
721
745
|
</attribute>
|
722
746
|
</optional>
|
747
|
+
<optional>
|
748
|
+
<attribute name="schema-version"/>
|
749
|
+
</optional>
|
723
750
|
<optional>
|
724
751
|
<ref name="fetched"/>
|
725
752
|
</optional>
|