lib/asciidoctor/ribose/isodoc.rng in metanorma-ribose-1.7.13 vs lib/asciidoctor/ribose/isodoc.rng in metanorma-ribose-1.8.0
- old
+ new
@@ -15,11 +15,11 @@
DO NOT introduce a namespace here. We do not want a distinct namespace
for these elements, and a distinct namespace for any grammar inheriting
these elements; we just want one namespace for any child grammars
of this.
-->
-<grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+<grammar xmlns:a="http://relaxng.org/ns/compatibility/annotations/1.0" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
<include href="reqt.rng"/>
<!-- include "biblio.rnc" { } -->
<include href="basicdoc.rng">
<start>
<ref name="standard-document"/>
@@ -1801,21 +1801,24 @@
</oneOrMore>
<zeroOrMore>
<ref name="admitted"/>
</zeroOrMore>
<zeroOrMore>
- <ref name="related"/>
+ <ref name="deprecates"/>
</zeroOrMore>
<zeroOrMore>
- <ref name="deprecates"/>
+ <ref name="related"/>
</zeroOrMore>
<optional>
<ref name="termdomain"/>
</optional>
- <zeroOrMore>
- <ref name="termgrammar"/>
- </zeroOrMore>
+ <optional>
+ <ref name="termsubject"/>
+ </optional>
+ <optional>
+ <ref name="termusage"/>
+ </optional>
<oneOrMore>
<ref name="termdefinition"/>
</oneOrMore>
<zeroOrMore>
<ref name="termnote"/>
@@ -1828,63 +1831,251 @@
</zeroOrMore>
</element>
</define>
<define name="preferred">
<element name="preferred">
- <oneOrMore>
- <ref name="TextElement"/>
- </oneOrMore>
+ <ref name="Designation"/>
</element>
</define>
<define name="admitted">
<element name="admitted">
- <oneOrMore>
- <ref name="TextElement"/>
- </oneOrMore>
+ <ref name="Designation"/>
</element>
</define>
<define name="related">
<element name="related">
+ <attribute name="type">
+ <ref name="RelatedTermType"/>
+ </attribute>
+ <element name="preferred">
+ <ref name="Designation"/>
+ </element>
+ <choice>
+ <ref name="eref"/>
+ <ref name="xref"/>
+ <ref name="termref"/>
+ </choice>
+ </element>
+ </define>
+ <define name="RelatedTermType">
+ <choice>
+ <value>deprecates</value>
+ <value>supersedes</value>
+ <value>narrower</value>
+ <value>broader</value>
+ <value>equivalent</value>
+ <value>compare</value>
+ <value>contrast</value>
+ <value>see</value>
+ </choice>
+ </define>
+ <define name="deprecates">
+ <element name="deprecates">
+ <ref name="Designation"/>
+ </element>
+ </define>
+ <define name="Designation">
+ <optional>
+ <attribute name="absent">
+ <data type="boolean"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="geographicArea"/>
+ </optional>
+ <choice>
+ <ref name="expression_designation"/>
+ <ref name="letter_symbol_designation"/>
+ <ref name="graphical_symbol_designation"/>
+ </choice>
+ <zeroOrMore>
+ <ref name="termsource"/>
+ </zeroOrMore>
+ </define>
+ <define name="letter_symbol_designation">
+ <element name="letter-symbol">
<optional>
- <attribute name="type">
+ <attribute name="isInternational">
+ <data type="boolean"/>
+ </attribute>
+ </optional>
+ <element name="name">
+ <oneOrMore>
<choice>
- <value>compare</value>
- <value>contrast</value>
- <value>see</value>
+ <ref name="PureTextElement"/>
+ <ref name="stem"/>
</choice>
+ </oneOrMore>
+ </element>
+ </element>
+ </define>
+ <define name="graphical_symbol_designation">
+ <element name="graphical-symbol">
+ <optional>
+ <attribute name="isInternational">
+ <data type="boolean"/>
</attribute>
</optional>
- <oneOrMore>
- <ref name="TextElement"/>
- </oneOrMore>
+ <ref name="figure"/>
</element>
</define>
- <define name="deprecates">
- <element name="deprecates">
- <oneOrMore>
- <ref name="TextElement"/>
- </oneOrMore>
+ <define name="expression_designation">
+ <element name="expression">
+ <optional>
+ <attribute name="language">
+ <a:documentation>ISO-639</a:documentation>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="script">
+ <a:documentation>ISO-15924</a:documentation>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="type">
+ <ref name="ExpressionDesignationType"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="isInternational">
+ <data type="boolean"/>
+ </attribute>
+ </optional>
+ <element name="name">
+ <zeroOrMore>
+ <ref name="PureTextElement"/>
+ </zeroOrMore>
+ </element>
+ <optional>
+ <element name="abbreviationType">
+ <ref name="AbbreviationType"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="pronunciation">
+ <ref name="LocalizedString"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="grammarInfo">
+ <ref name="Grammar"/>
+ </element>
+ </optional>
</element>
</define>
+ <define name="ExpressionDesignationType">
+ <choice>
+ <value>prefix</value>
+ <value>suffix</value>
+ <value>abbreviation</value>
+ <value>full</value>
+ </choice>
+ </define>
+ <define name="AbbreviationType">
+ <choice>
+ <value>truncation</value>
+ <value>acronym</value>
+ <value>initialism</value>
+ </choice>
+ </define>
+ <define name="Grammar">
+ <zeroOrMore>
+ <element name="gender">
+ <ref name="GrammarGender"/>
+ </element>
+ </zeroOrMore>
+ <optional>
+ <element name="isPreposition">
+ <data type="boolean"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="isParticiple">
+ <data type="boolean"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="isAdjective">
+ <data type="boolean"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="isVerb">
+ <data type="boolean"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="isAdverb">
+ <data type="boolean"/>
+ </element>
+ </optional>
+ <optional>
+ <element name="isNoun">
+ <data type="boolean"/>
+ </element>
+ </optional>
+ <zeroOrMore>
+ <element name="grammarvalue">
+ <text/>
+ </element>
+ </zeroOrMore>
+ </define>
+ <define name="GrammarGender">
+ <choice>
+ <value>masculine</value>
+ <value>feminine</value>
+ <value>neuter</value>
+ <value>common</value>
+ </choice>
+ </define>
<define name="termdomain">
<element name="domain">
<oneOrMore>
<ref name="TextElement"/>
</oneOrMore>
</element>
</define>
- <define name="termgrammar">
- <element name="grammar">
+ <define name="termsubject">
+ <element name="subject">
<oneOrMore>
<ref name="TextElement"/>
</oneOrMore>
</element>
</define>
+ <define name="termusage">
+ <element name="usageinfo">
+ <oneOrMore>
+ <ref name="BasicBlock"/>
+ </oneOrMore>
+ </element>
+ </define>
<define name="termdefinition">
<element name="definition">
+ <choice>
+ <ref name="verbaldefinition"/>
+ <ref name="nonverbalrep"/>
+ <group>
+ <ref name="verbaldefinition"/>
+ <ref name="nonverbalrep"/>
+ </group>
+ </choice>
+ </element>
+ </define>
+ <define name="verbaldefinition">
+ <element name="verbaldefinition">
<oneOrMore>
+ <ref name="paragraph"/>
+ </oneOrMore>
+ <zeroOrMore>
+ <ref name="termsource"/>
+ </zeroOrMore>
+ </element>
+ </define>
+ <define name="nonverbalrep">
+ <element name="nonverbalrepresentation">
+ <oneOrMore>
<choice>
- <ref name="paragraph"/>
+ <ref name="table"/>
<ref name="figure"/>
<ref name="formula"/>
</choice>
</oneOrMore>
<zeroOrMore>