grammars/isostandard.rng in relaton-ietf-0.12.1 vs grammars/isostandard.rng in relaton-ietf-1.0.0
- old
+ new
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <!-- default namespace isostandard = "https://www.metanorma.com/ns/iso" -->
<include href="isodoc.rng">
<start>
<ref name="iso-standard"/>
</start>
<define name="organization">
@@ -34,18 +35,19 @@
<ref name="secretariat"/>
</optional>
</element>
</define>
<define name="BibDataExtensionType">
- <optional>
- <ref name="doctype"/>
- </optional>
+ <ref name="doctype"/>
<ref name="editorialgroup"/>
<zeroOrMore>
<ref name="ics"/>
</zeroOrMore>
<ref name="structuredidentifier"/>
+ <optional>
+ <ref name="stagename"/>
+ </optional>
</define>
<define name="bdate">
<element name="date">
<attribute name="type">
<choice>
@@ -66,98 +68,45 @@
</group>
<element name="on">
<choice>
<ref name="ISO8601Date"/>
<value>--</value>
+ <value>–</value>
</choice>
</element>
</choice>
</element>
</define>
- <define name="sections">
- <element name="sections">
- <ref name="clause"/>
- <choice>
- <ref name="term-clause"/>
- <ref name="terms"/>
- </choice>
- <optional>
- <ref name="definitions"/>
- </optional>
- <oneOrMore>
- <ref name="clause"/>
- </oneOrMore>
- </element>
- </define>
- <define name="Basic-Section">
- <optional>
+ <define name="ul">
+ <element name="ul">
<attribute name="id">
<data type="ID"/>
</attribute>
- </optional>
- <optional>
- <attribute name="language"/>
- </optional>
- <optional>
- <attribute name="script"/>
- </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"/>
+ <ref name="ul_li"/>
</oneOrMore>
<zeroOrMore>
<ref name="note"/>
</zeroOrMore>
- </group>
+ </element>
</define>
- <define name="Content-Section">
- <optional>
- <attribute name="id">
- <data type="ID"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="language"/>
- </optional>
- <optional>
- <attribute name="script"/>
- </optional>
- <optional>
- <attribute name="obligation">
+ <define name="sections">
+ <element name="sections">
+ <ref name="clause"/>
+ <optional>
<choice>
- <value>normative</value>
- <value>informative</value>
+ <ref name="term-clause"/>
+ <ref name="terms"/>
</choice>
- </attribute>
- </optional>
- <optional>
- <ref name="section-title"/>
- </optional>
- <choice>
- <group>
- <oneOrMore>
- <ref name="BasicBlock"/>
- </oneOrMore>
- <zeroOrMore>
- <ref name="note"/>
- </zeroOrMore>
- </group>
+ </optional>
+ <optional>
+ <ref name="definitions"/>
+ </optional>
<oneOrMore>
- <ref name="content-subsection"/>
+ <ref name="clause"/>
</oneOrMore>
- </choice>
+ </element>
</define>
<define name="Clause-Section">
<optional>
<attribute name="id">
<data type="ID"/>
@@ -197,111 +146,10 @@
<oneOrMore>
<ref name="clause-subsection"/>
</oneOrMore>
</choice>
</define>
- <define name="references">
- <element name="references">
- <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>
- <zeroOrMore>
- <ref name="BasicBlock"/>
- </zeroOrMore>
- <zeroOrMore>
- <ref name="bibitem"/>
- <zeroOrMore>
- <ref name="note"/>
- </zeroOrMore>
- </zeroOrMore>
- <zeroOrMore>
- <ref name="references"/>
- </zeroOrMore>
- </element>
- </define>
- <define name="definitions">
- <element name="definitions">
- <optional>
- <attribute name="id">
- <data type="ID"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="language"/>
- </optional>
- <optional>
- <attribute name="script"/>
- </optional>
- <optional>
- <attribute name="obligation">
- <choice>
- <value>normative</value>
- <value>informative</value>
- </choice>
- </attribute>
- </optional>
- <zeroOrMore>
- <ref name="BasicBlock"/>
- </zeroOrMore>
- <ref name="dl"/>
- </element>
- </define>
- <define name="terms">
- <element name="terms">
- <optional>
- <attribute name="id">
- <data type="ID"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="language"/>
- </optional>
- <optional>
- <attribute name="script"/>
- </optional>
- <optional>
- <attribute name="obligation">
- <choice>
- <value>normative</value>
- <value>informative</value>
- </choice>
- </attribute>
- </optional>
- <optional>
- <ref name="section-title"/>
- </optional>
- <zeroOrMore>
- <ref name="BasicBlock"/>
- </zeroOrMore>
- <choice>
- <oneOrMore>
- <ref name="term"/>
- </oneOrMore>
- <group>
- <zeroOrMore>
- <ref name="terms"/>
- </zeroOrMore>
- <optional>
- <ref name="definitions"/>
- </optional>
- </group>
- </choice>
- </element>
- </define>
<define name="term">
<element name="term">
<optional>
<attribute name="id">
<data type="ID"/>
@@ -385,221 +233,161 @@
<zeroOrMore>
<ref name="annex-appendix"/>
</zeroOrMore>
</element>
</define>
- <define name="figure">
- <element name="figure">
- <attribute name="id">
- <data type="ID"/>
- </attribute>
+ <define name="AdmonitionType">
+ <choice>
+ <value>danger</value>
+ <value>caution</value>
+ <value>warning</value>
+ <value>important</value>
+ <value>safety precautions</value>
+ </choice>
+ </define>
+ <define name="preface">
+ <element name="preface">
<optional>
- <ref name="tname"/>
+ <ref name="preface_abstract"/>
</optional>
- <choice>
- <ref name="image"/>
- <oneOrMore>
- <ref name="subfigure"/>
- </oneOrMore>
- </choice>
- <zeroOrMore>
- <ref name="fn"/>
- </zeroOrMore>
+ <ref name="foreword"/>
<optional>
- <ref name="dl"/>
+ <ref name="introduction"/>
</optional>
- <zeroOrMore>
- <ref name="note"/>
- </zeroOrMore>
</element>
</define>
- <define name="li">
- <element name="li">
+ <define name="DocumentType">
+ <choice>
+ <value>international-standard</value>
+ <value>technical-specification</value>
+ <value>technical-report</value>
+ <value>publicly-available-specification</value>
+ <value>international-workshop-agreement</value>
+ <value>guide</value>
+ </choice>
+ </define>
+ <define name="structuredidentifier">
+ <element name="structuredidentifier">
+ <optional>
+ <attribute name="type"/>
+ </optional>
<group>
+ <ref name="documentnumber"/>
<optional>
- <!-- ( paragraph-with-footnote | table | note | formula | admonition | ol | ul | dl | quote | sourcecode | review | example )+ -->
- <attribute name="id">
- <data type="ID"/>
- </attribute>
+ <ref name="tc-documentnumber"/>
</optional>
- <oneOrMore>
- <ref name="BasicBlock"/>
- </oneOrMore>
</group>
- <!-- exclude figures? -->
</element>
</define>
- <define name="dd">
- <element name="dd">
+ <define name="foreword">
+ <element name="foreword">
+ <ref name="Basic-Section"/>
+ </element>
+ </define>
+ <define name="introduction">
+ <element name="introduction">
+ <ref name="Content-Section"/>
+ </element>
+ </define>
+ <define name="editorialgroup">
+ <element name="editorialgroup">
+ <oneOrMore>
+ <ref name="technical-committee"/>
+ </oneOrMore>
<zeroOrMore>
- <!--
- ( paragraph-with-footnote | table | note | formula | admonition | ol | ul | dl | quote | sourcecode | review | example )*
- exclude figures?
- -->
- <ref name="BasicBlock"/>
+ <ref name="subcommittee"/>
</zeroOrMore>
+ <zeroOrMore>
+ <ref name="workgroup"/>
+ </zeroOrMore>
+ <optional>
+ <ref name="secretariat"/>
+ </optional>
</element>
</define>
- <define name="admonition">
- <element name="admonition">
+ <define name="Content-Section">
+ <optional>
<attribute name="id">
<data type="ID"/>
</attribute>
- <attribute name="type">
+ </optional>
+ <optional>
+ <attribute name="language"/>
+ </optional>
+ <optional>
+ <attribute name="script"/>
+ </optional>
+ <optional>
+ <attribute name="obligation">
<choice>
- <value>danger</value>
- <value>caution</value>
- <value>warning</value>
- <value>important</value>
- <value>safety precautions</value>
+ <value>normative</value>
+ <value>informative</value>
</choice>
</attribute>
+ </optional>
+ <optional>
+ <ref name="section-title"/>
+ </optional>
+ <choice>
+ <group>
+ <zeroOrMore>
+ <ref name="BasicBlock"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="note"/>
+ </zeroOrMore>
+ </group>
<oneOrMore>
- <ref name="paragraph-with-footnote"/>
+ <ref name="content-subsection"/>
</oneOrMore>
- <zeroOrMore>
- <ref name="note"/>
- </zeroOrMore>
- </element>
+ </choice>
</define>
- <define name="xref">
- <element name="xref">
- <attribute name="target">
- <data type="IDREF"/>
+ <define name="table">
+ <element name="table">
+ <attribute name="id">
+ <data type="ID"/>
</attribute>
- <text/>
- </element>
- </define>
- <define name="hyperlink">
- <element name="link">
- <attribute name="target">
- <data type="anyURI"/>
- </attribute>
- <text/>
- </element>
- </define>
- <define name="thead">
- <element name="thead">
- <oneOrMore>
- <ref name="tr"/>
- </oneOrMore>
- </element>
- </define>
- <define name="td">
- <element name="td">
<optional>
- <attribute name="colspan"/>
+ <attribute name="width"/>
</optional>
<optional>
- <attribute name="rowspan"/>
+ <attribute name="unnumbered">
+ <data type="boolean"/>
+ </attribute>
</optional>
<optional>
- <attribute name="align">
- <choice>
- <value>left</value>
- <value>right</value>
- <value>center</value>
- </choice>
- </attribute>
+ <attribute name="subsequence"/>
</optional>
- <choice>
- <zeroOrMore>
- <choice>
- <ref name="TextElement"/>
- <ref name="fn"/>
- </choice>
- </zeroOrMore>
- <oneOrMore>
- <ref name="paragraph-with-footnote"/>
- </oneOrMore>
- </choice>
- </element>
- </define>
- <define name="th">
- <element name="th">
<optional>
- <attribute name="colspan"/>
+ <attribute name="alt"/>
</optional>
<optional>
- <attribute name="rowspan"/>
+ <attribute name="summary"/>
</optional>
<optional>
- <attribute name="align">
- <choice>
- <value>left</value>
- <value>right</value>
- <value>center</value>
- </choice>
+ <attribute name="uri">
+ <data type="anyURI"/>
</attribute>
</optional>
- <choice>
- <zeroOrMore>
- <choice>
- <ref name="TextElement"/>
- <ref name="fn"/>
- </choice>
- </zeroOrMore>
- <oneOrMore>
- <ref name="paragraph-with-footnote"/>
- </oneOrMore>
- </choice>
- </element>
- </define>
- <define name="table-note">
- <element name="note">
<optional>
- <attribute name="id">
- <data type="ID"/>
- </attribute>
+ <ref name="tname"/>
</optional>
- <ref name="paragraph"/>
- </element>
- </define>
- <define name="preface">
- <element name="preface">
<optional>
- <ref name="preface_abstract"/>
+ <ref name="thead"/>
</optional>
- <ref name="foreword"/>
+ <ref name="tbody"/>
<optional>
- <ref name="introduction"/>
+ <ref name="tfoot"/>
</optional>
- </element>
- </define>
- <define name="DocumentType">
- <choice>
- <value>international-standard</value>
- <value>technical-specification</value>
- <value>technical-report</value>
- <value>publicly-available-specification</value>
- <value>international-workshop-agreement</value>
- <value>guide</value>
- </choice>
- </define>
- <define name="structuredidentifier">
- <element name="structuredidentifier">
+ <zeroOrMore>
+ <ref name="table-note"/>
+ </zeroOrMore>
<optional>
- <attribute name="type"/>
+ <ref name="dl"/>
</optional>
- <group>
- <ref name="documentnumber"/>
- <optional>
- <ref name="tc-documentnumber"/>
- </optional>
- </group>
</element>
</define>
- <define name="foreword">
- <element name="foreword">
- <ref name="Basic-Section"/>
- </element>
- </define>
- <define name="introduction">
- <element name="introduction">
- <ref name="Content-Section"/>
- </element>
- </define>
</include>
<!-- end overrides -->
<!--
We display the Normative References between scope and terms; but to keep the
grammar simple, we keep the references together
@@ -621,41 +409,10 @@
<ref name="annex"/>
</zeroOrMore>
<ref name="bibliography"/>
</element>
</define>
- <define name="bibliography">
- <element name="bibliography">
- <oneOrMore>
- <choice>
- <ref name="references"/>
- <ref name="reference-clause"/>
- </choice>
- </oneOrMore>
- </element>
- </define>
- <define name="editorialgroup">
- <element name="editorialgroup">
- <oneOrMore>
- <ref name="technical-committee"/>
- </oneOrMore>
- <zeroOrMore>
- <ref name="subcommittee"/>
- </zeroOrMore>
- <zeroOrMore>
- <ref name="workgroup"/>
- </zeroOrMore>
- <optional>
- <ref name="secretariat"/>
- </optional>
- </element>
- </define>
- <define name="preface_abstract">
- <element name="abstract">
- <ref name="Basic-Section"/>
- </element>
- </define>
<define name="documentnumber">
<element name="project-number">
<optional>
<attribute name="part">
<data type="int"/>
@@ -672,36 +429,20 @@
<define name="tc-documentnumber">
<element name="tc-document-number">
<data type="int"/>
</element>
</define>
- <define name="technical-committee">
- <element name="technical-committee">
- <ref name="IsoWorkgroup"/>
- </element>
- </define>
<define name="subcommittee">
<element name="subcommittee">
<ref name="IsoWorkgroup"/>
</element>
</define>
<define name="workgroup">
<element name="workgroup">
<ref name="IsoWorkgroup"/>
</element>
</define>
- <define name="IsoWorkgroup">
- <optional>
- <attribute name="number">
- <data type="int"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="type"/>
- </optional>
- <text/>
- </define>
<define name="secretariat">
<element name="secretariat">
<text/>
</element>
</define>
@@ -744,114 +485,38 @@
<zeroOrMore>
<ref name="clause-hanging-paragraph-with-footnote"/>
</zeroOrMore>
</element>
</define>
- <define name="subfigure">
- <element name="figure">
- <attribute name="id">
- <data type="ID"/>
- </attribute>
- <optional>
- <ref name="tname"/>
- </optional>
- <ref name="image"/>
+ <define name="annex-appendix">
+ <element name="appendix">
+ <ref name="Clause-Section"/>
</element>
</define>
- <define name="termdocsource">
- <element name="termdocsource">
- <ref name="CitationType"/>
- </element>
- </define>
- <define name="ics">
- <element name="ics">
- <element name="code">
- <text/>
- </element>
- <element name="text">
- <text/>
- </element>
- </element>
- </define>
- <define name="term-clause">
- <element name="clause">
+ <define name="ul_li">
+ <element name="li">
<optional>
<attribute name="id">
<data type="ID"/>
</attribute>
</optional>
<optional>
- <attribute name="language"/>
- </optional>
- <optional>
- <attribute name="script"/>
- </optional>
- <optional>
- <attribute name="inline-header">
+ <attribute name="uncheckedcheckbox">
<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>
- <zeroOrMore>
- <choice>
- <ref name="term-clause"/>
- <ref name="terms"/>
- <ref name="definitions"/>
- </choice>
- </zeroOrMore>
- </element>
- </define>
- <define name="reference-clause">
- <element name="clause">
- <optional>
- <attribute name="id">
- <data type="ID"/>
- </attribute>
- </optional>
- <optional>
- <attribute name="language"/>
- </optional>
- <optional>
- <attribute name="script"/>
- </optional>
- <optional>
- <attribute name="inline-header">
+ <attribute name="checkedcheckbox">
<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>
+ <oneOrMore>
+ <ref name="paragraph-with-footnote"/>
+ </oneOrMore>
</element>
</define>
- <define name="annex-appendix">
- <element name="appendix">
- <ref name="Clause-Section"/>
+ <define name="stagename">
+ <element name="stagename">
+ <text/>
</element>
</define>
</grammar>