<?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 = "http://riboseinc.com/csd" Currently we inherit from a namespaced grammar, isostandard. Until we inherit from isodoc, we cannot have a new default namespace: we will end up with a grammar with two different namespaces, one for isostandard and one for csd additions. And we do not want that. --> <include href="isostandard.rng"> <start> <ref name="csd-standard"/> </start> <define name="language"> <element name="language"> <value>en</value> </element> </define> <define name="docidentifier"> <element name="docidentifier"> <optional> <attribute name="type"/> </optional> <text/> </element> </define> <define name="btitle"> <element name="title"> <ref name="FormattedString"/> </element> </define> <define name="status"> <element name="status"> <choice> <value>proposal</value> <value>working-draft</value> <value>committee-draft</value> <value>draft-standard</value> <value>final-draft</value> <value>published</value> <value>withdrawn</value> <ref name="LocalizedString"/> </choice> </element> </define> <define name="figure"> <element name="figure"> <attribute name="id"> <data type="ID"/> </attribute> <optional> <ref name="source"/> </optional> <optional> <ref name="tname"/> </optional> <choice> <oneOrMore> <ref name="figure"/> </oneOrMore> <group> <choice> <zeroOrMore> <ref name="TextElement"/> </zeroOrMore> <ref name="pre"/> </choice> <zeroOrMore> <ref name="note"/> </zeroOrMore> <optional> <ref name="dl"/> </optional> </group> </choice> </element> </define> <define name="BibItemType"> <choice> <value>directive</value> <value>guide</value> <value>specification</value> <value>standard</value> <value>report</value> <value>administrative</value> <value>amendment</value> <value>technical corrigendum</value> <value>advisory</value> </choice> </define> <define name="BibliographicItem"> <optional> <attribute name="type"> <ref name="BibItemType"/> </attribute> </optional> <optional> <ref name="fetched"/> </optional> <choice> <oneOrMore> <ref name="btitle"/> </oneOrMore> <ref name="formattedref"/> </choice> <zeroOrMore> <ref name="bsource"/> </zeroOrMore> <zeroOrMore> <ref name="docidentifier"/> </zeroOrMore> <optional> <ref name="docnumber"/> </optional> <zeroOrMore> <ref name="bdate"/> </zeroOrMore> <zeroOrMore> <ref name="contributor"/> </zeroOrMore> <optional> <ref name="edition"/> </optional> <zeroOrMore> <ref name="biblionote"/> </zeroOrMore> <zeroOrMore> <ref name="language"/> </zeroOrMore> <zeroOrMore> <ref name="script"/> </zeroOrMore> <zeroOrMore> <ref name="abstract"/> </zeroOrMore> <optional> <ref name="status"/> </optional> <optional> <ref name="copyright"/> </optional> <zeroOrMore> <ref name="docrelation"/> </zeroOrMore> <zeroOrMore> <ref name="series"/> </zeroOrMore> <optional> <ref name="medium"/> </optional> <zeroOrMore> <ref name="bplace"/> </zeroOrMore> <zeroOrMore> <ref name="extent"/> </zeroOrMore> <zeroOrMore> <ref name="accesslocation"/> </zeroOrMore> <optional> <ref name="bclassification"/> </optional> <optional> <ref name="validity"/> </optional> <optional> <ref name="editorialgroup"/> </optional> <zeroOrMore> <ref name="ics"/> </zeroOrMore> <optional> <ref name="allParts"/> </optional> </define> <define name="BibData"> <optional> <attribute name="type"> <ref name="BibItemType"/> </attribute> </optional> <oneOrMore> <ref name="btitle"/> </oneOrMore> <optional> <ref name="formattedref"/> </optional> <zeroOrMore> <ref name="bsource"/> </zeroOrMore> <zeroOrMore> <ref name="docidentifier"/> </zeroOrMore> <optional> <ref name="docnumber"/> </optional> <zeroOrMore> <ref name="bdate"/> </zeroOrMore> <zeroOrMore> <ref name="contributor"/> </zeroOrMore> <optional> <ref name="edition"/> </optional> <zeroOrMore> <ref name="biblionote"/> </zeroOrMore> <zeroOrMore> <ref name="language"/> </zeroOrMore> <zeroOrMore> <ref name="script"/> </zeroOrMore> <zeroOrMore> <ref name="abstract"/> </zeroOrMore> <optional> <ref name="status"/> </optional> <ref name="copyright"/> <zeroOrMore> <ref name="docrelation"/> </zeroOrMore> <zeroOrMore> <ref name="series"/> </zeroOrMore> <optional> <ref name="medium"/> </optional> <zeroOrMore> <ref name="bplace"/> </zeroOrMore> <zeroOrMore> <ref name="extent"/> </zeroOrMore> <zeroOrMore> <ref name="accesslocation"/> </zeroOrMore> <optional> <ref name="bclassification"/> </optional> <optional> <ref name="validity"/> </optional> <ref name="editorialgroup"/> <zeroOrMore> <ref name="ics"/> </zeroOrMore> <optional> <ref name="allParts"/> </optional> </define> <define name="editorialgroup"> <element name="editorialgroup"> <oneOrMore> <ref name="technical-committee"/> </oneOrMore> </element> </define> <define name="technical-committee"> <element name="technical-committee"> <optional> <attribute name="type"/> </optional> <text/> </element> </define> </include> <define name="csd-standard"> <element name="csd-standard"> <ref name="bibdata"/> <optional> <ref name="version"/> </optional> <zeroOrMore> <ref name="termdocsource"/> </zeroOrMore> <ref name="preface"/> <oneOrMore> <ref name="sections"/> </oneOrMore> <zeroOrMore> <ref name="annex"/> </zeroOrMore> <ref name="bibliography"/> </element> </define> </grammar>