lib/asciidoctor/gb/isostandard.rng in asciidoctor-gb-0.1.5 vs lib/asciidoctor/gb/isostandard.rng in asciidoctor-gb-0.2.2
- old
+ new
@@ -15,24 +15,10 @@
<define name="script">
<element name="script">
<value>Latn</value>
</element>
</define>
- <!-- draft into isodoc? To replace version/version? -->
- <define name="version">
- <element name="version">
- <optional>
- <ref name="edition"/>
- </optional>
- <optional>
- <ref name="revision-date"/>
- </optional>
- <optional>
- <ref name="draft"/>
- </optional>
- </element>
- </define>
<!-- add type to docidentifier in isodoc? -->
<define name="docidentifier">
<element name="docidentifier">
<choice>
<text/>
@@ -47,10 +33,13 @@
</define>
<define name="organization">
<element name="organization">
<ref name="orgname"/>
<optional>
+ <ref name="abbreviation"/>
+ </optional>
+ <optional>
<ref name="uri"/>
</optional>
<zeroOrMore>
<ref name="org-identifier"/>
</zeroOrMore>
@@ -82,11 +71,11 @@
<ref name="btitle"/>
</oneOrMore>
<ref name="formattedref"/>
</choice>
<optional>
- <ref name="source"/>
+ <ref name="bsource"/>
</optional>
<zeroOrMore>
<ref name="docidentifier"/>
</zeroOrMore>
<zeroOrMore>
@@ -100,13 +89,10 @@
</optional>
<zeroOrMore>
<ref name="biblionote"/>
</zeroOrMore>
<zeroOrMore>
- <ref name="partof"/>
- </zeroOrMore>
- <zeroOrMore>
<ref name="language"/>
</zeroOrMore>
<zeroOrMore>
<ref name="script"/>
</zeroOrMore>
@@ -123,10 +109,13 @@
<ref name="docrelation"/>
</zeroOrMore>
<optional>
<ref name="editorialgroup"/>
</optional>
+ <zeroOrMore>
+ <ref name="ics"/>
+ </zeroOrMore>
</define>
<define name="BibData">
<optional>
<attribute name="type">
<ref name="BibItemType"/>
@@ -137,11 +126,11 @@
</oneOrMore>
<optional>
<ref name="formattedref"/>
</optional>
<optional>
- <ref name="source"/>
+ <ref name="bsource"/>
</optional>
<zeroOrMore>
<ref name="docidentifier"/>
</zeroOrMore>
<zeroOrMore>
@@ -155,13 +144,10 @@
</optional>
<zeroOrMore>
<ref name="biblionote"/>
</zeroOrMore>
<zeroOrMore>
- <ref name="partof"/>
- </zeroOrMore>
- <zeroOrMore>
<ref name="language"/>
</zeroOrMore>
<zeroOrMore>
<ref name="script"/>
</zeroOrMore>
@@ -174,22 +160,16 @@
<ref name="copyright"/>
<zeroOrMore>
<ref name="docrelation"/>
</zeroOrMore>
<ref name="editorialgroup"/>
+ <zeroOrMore>
+ <ref name="ics"/>
+ </zeroOrMore>
</define>
- <define name="bdate">
- <element name="date">
- <attribute name="type">
- <choice>
- <value>published</value>
- <value>accessed</value>
- <value>created</value>
- <value>activated</value>
- <value>obsoleted</value>
- </choice>
- </attribute>
+ <define name="bfrom">
+ <element name="from">
<choice>
<data type="gYear"/>
<data type="date"/>
<value>--</value>
</choice>
@@ -211,10 +191,13 @@
<group>
<ref name="stage"/>
<optional>
<ref name="substage"/>
</optional>
+ <optional>
+ <ref name="iteration"/>
+ </optional>
</group>
</choice>
</element>
</define>
<define name="btitle">
@@ -234,19 +217,48 @@
</element>
</define>
<define name="sections">
<element name="sections">
<ref name="clause"/>
- <ref name="terms"/>
+ <choice>
+ <ref name="term-clause"/>
+ <ref name="terms"/>
+ </choice>
<optional>
- <ref name="symbols-abbrevs"/>
+ <ref name="definitions"/>
</optional>
<oneOrMore>
<ref name="clause"/>
</oneOrMore>
</element>
</define>
+ <define name="Basic-Section">
+ <optional>
+ <attribute name="id">
+ <data type="ID"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="obligation">
+ <choice>
+ <value>normative</value>
+ <value>informative</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="section-title"/>
+ </optional>
+ <group>
+ <oneOrMore>
+ <ref name="BasicBlock"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="note"/>
+ </zeroOrMore>
+ </group>
+ </define>
<define name="Content-Section">
<optional>
<attribute name="id">
<data type="ID"/>
</attribute>
@@ -274,10 +286,46 @@
<oneOrMore>
<ref name="content-subsection"/>
</oneOrMore>
</choice>
</define>
+ <define name="Clause-Section">
+ <optional>
+ <attribute name="id">
+ <data type="ID"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="inline-header">
+ <data type="boolean"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="obligation">
+ <choice>
+ <value>normative</value>
+ <value>informative</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="section-title"/>
+ </optional>
+ <choice>
+ <group>
+ <oneOrMore>
+ <ref name="BasicBlock"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="note"/>
+ </zeroOrMore>
+ </group>
+ <oneOrMore>
+ <ref name="clause-subsection"/>
+ </oneOrMore>
+ </choice>
+ </define>
<define name="references">
<element name="references">
<optional>
<attribute name="id">
<data type="ID"/>
@@ -300,12 +348,12 @@
<zeroOrMore>
<ref name="references"/>
</zeroOrMore>
</element>
</define>
- <define name="symbols-abbrevs">
- <element name="symbols-abbrevs">
+ <define name="definitions">
+ <element name="definitions">
<optional>
<attribute name="id">
<data type="ID"/>
</attribute>
</optional>
@@ -336,23 +384,20 @@
</attribute>
</optional>
<optional>
<ref name="section-title"/>
</optional>
- <zeroOrMore>
- <ref name="termdocsource"/>
- </zeroOrMore>
<choice>
<oneOrMore>
<ref name="term"/>
</oneOrMore>
<group>
<zeroOrMore>
<ref name="terms"/>
</zeroOrMore>
<optional>
- <ref name="symbols-abbrevs"/>
+ <ref name="definitions"/>
</optional>
</group>
</choice>
</element>
</define>
@@ -430,10 +475,13 @@
<ref name="note"/>
</zeroOrMore>
<zeroOrMore>
<ref name="clause-hanging-paragraph-with-footnote"/>
</zeroOrMore>
+ <zeroOrMore>
+ <ref name="annex-appendix"/>
+ </zeroOrMore>
</element>
</define>
<define name="figure">
<element name="figure">
<attribute name="id">
@@ -592,46 +640,10 @@
</attribute>
</optional>
<ref name="paragraph"/>
</element>
</define>
- <define name="Clause-Section">
- <optional>
- <attribute name="id">
- <data type="ID"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="inline-header">
- <data type="boolean"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="obligation">
- <choice>
- <value>normative</value>
- <value>informative</value>
- </choice>
- </attribute>
- </optional>
- <optional>
- <ref name="section-title"/>
- </optional>
- <choice>
- <group>
- <oneOrMore>
- <ref name="BasicBlock"/>
- </oneOrMore>
- <zeroOrMore>
- <ref name="note"/>
- </zeroOrMore>
- </group>
- <oneOrMore>
- <ref name="clause-subsection"/>
- </oneOrMore>
- </choice>
- </define>
</include>
<!-- end overrides -->
<!--
We display the Normative References between scope and terms; but to keep the
grammar simple, we keep the references together
@@ -640,22 +652,38 @@
<element name="iso-standard">
<ref name="bibdata"/>
<optional>
<ref name="version"/>
</optional>
- <ref name="foreword"/>
- <optional>
- <ref name="introduction"/>
- </optional>
+ <zeroOrMore>
+ <ref name="termdocsource"/>
+ </zeroOrMore>
+ <ref name="preface"/>
<oneOrMore>
<ref name="sections"/>
</oneOrMore>
<zeroOrMore>
<ref name="annex"/>
</zeroOrMore>
+ <ref name="bibliography"/>
+ </element>
+ </define>
+ <define name="preface">
+ <element name="preface">
+ <ref name="foreword"/>
+ <optional>
+ <ref name="introduction"/>
+ </optional>
+ </element>
+ </define>
+ <define name="bibliography">
+ <element name="bibliography">
<oneOrMore>
- <ref name="references"/>
+ <choice>
+ <ref name="references"/>
+ <ref name="reference-clause"/>
+ </choice>
</oneOrMore>
</element>
</define>
<define name="BibItemType" combine="choice">
<choice>
@@ -681,23 +709,18 @@
</optional>
</element>
</define>
<define name="foreword">
<element name="foreword">
- <ref name="Content-Section"/>
+ <ref name="Basic-Section"/>
</element>
</define>
<define name="introduction">
<element name="introduction">
<ref name="Content-Section"/>
</element>
</define>
- <define name="draft">
- <element name="draft">
- <text/>
- </element>
- </define>
<define name="stage">
<element name="stage">
<choice>
<value>00</value>
<value>10</value>
@@ -723,10 +746,15 @@
<value>98</value>
<value>99</value>
</choice>
</element>
</define>
+ <define name="iteration">
+ <element name="iteration">
+ <data type="int"/>
+ </element>
+ </define>
<define name="documentnumber">
<element name="project-number">
<optional>
<attribute name="part">
<data type="int"/>
@@ -790,11 +818,11 @@
<element name="title-part">
<ref name="FormattedString"/>
</element>
</define>
<define name="clause-hanging-paragraph-with-footnote">
- <element name="subsection">
+ <element name="clause">
<optional>
<attribute name="id">
<data type="ID"/>
</attribute>
</optional>
@@ -836,10 +864,89 @@
</optional>
<ref name="image"/>
</element>
</define>
<define name="termdocsource">
- <element name="source">
- <ref name="erefType"/>
+ <element name="termdocsource">
+ <ref name="CitationType"/>
+ </element>
+ </define>
+ <define name="ics">
+ <element name="ics">
+ <text/>
+ </element>
+ </define>
+ <define name="term-clause">
+ <element name="clause">
+ <optional>
+ <attribute name="id">
+ <data type="ID"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="inline-header">
+ <data type="boolean"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="obligation">
+ <choice>
+ <value>normative</value>
+ <value>informative</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="section-title"/>
+ </optional>
+ <choice>
+ <oneOrMore>
+ <ref name="term-clause"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <choice>
+ <ref name="terms"/>
+ <ref name="definitions"/>
+ </choice>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ <define name="reference-clause">
+ <element name="clause">
+ <optional>
+ <attribute name="id">
+ <data type="ID"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="inline-header">
+ <data type="boolean"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="obligation">
+ <choice>
+ <value>normative</value>
+ <value>informative</value>
+ </choice>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="section-title"/>
+ </optional>
+ <choice>
+ <oneOrMore>
+ <ref name="reference-clause"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="references"/>
+ </zeroOrMore>
+ </choice>
+ </element>
+ </define>
+ <define name="annex-appendix">
+ <element name="appendix">
+ <ref name="Clause-Section"/>
</element>
</define>
</grammar>