<?xml version="1.0" encoding="UTF-8"?> <grammar xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes"> <!-- 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 csand additions. And we do not want that. --> <include href="isodoc.rng"> <start> <ref name="itu"/> </start> <define name="ol"> <element name="ol"> <attribute name="id"> <data type="ID"/> </attribute> <optional> <attribute name="class"> <value>steps</value> </attribute> </optional> <oneOrMore> <ref name="li"/> </oneOrMore> <zeroOrMore> <ref name="note"/> </zeroOrMore> </element> </define> <define name="DocumentType"> <choice> <value>recommendation</value> <value>recommendation-supplement</value> <value>recommendation-amendment</value> <value>recommendation-corrigendum</value> <value>recommendation-errata</value> <value>recommendation-annex</value> <value>focus-group</value> <value>implementers-guide</value> <value>technical-paper</value> <value>technical-report</value> <value>joint-itu-iso-iec</value> <value>resolution</value> <value>service-publication</value> <value>handbook</value> <value>question</value> </choice> </define> <define name="editorialgroup"> <element name="editorialgroup"> <ref name="bureau"/> <optional> <ref name="group"/> </optional> <optional> <ref name="subgroup"/> </optional> <optional> <ref name="workgroup"/> </optional> </element> </define> <define name="structuredidentifier"> <element name="structuredidentifier"> <ref name="bureau"/> <element name="docnumber"> <text/> </element> <optional> <element name="annexid"> <text/> </element> </optional> <optional> <element name="amendment"> <data type="int"/> </element> </optional> <optional> <element name="corrigendum"> <data type="int"/> </element> </optional> </element> </define> <define name="BibDataExtensionType"> <optional> <ref name="doctype"/> </optional> <optional> <ref name="docsubtype"/> </optional> <ref name="editorialgroup"/> <zeroOrMore> <ref name="ics"/> </zeroOrMore> <optional> <ref name="recommendationstatus"/> </optional> <optional> <ref name="ipnoticereceived"/> </optional> <optional> <ref name="meeting"/> </optional> <optional> <ref name="meeting-place"/> </optional> <optional> <ref name="meeting-date"/> </optional> <optional> <ref name="intended-type"/> </optional> <optional> <ref name="ext_source"/> </optional> <optional> <ref name="structuredidentifier"/> </optional> </define> <define name="preface"> <element name="preface"> <oneOrMore> <choice> <ref name="content"/> <ref name="abstract"/> <ref name="foreword"/> <ref name="introduction"/> <ref name="acknowledgements"/> <ref name="clause"/> </choice> </oneOrMore> </element> </define> <define name="Clause-Section"> <optional> <attribute name="id"> <data type="ID"/> </attribute> </optional> <optional> <attribute name="language"/> </optional> <optional> <attribute name="script"/> </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> <attribute name="type"/> </optional> <optional> <attribute name="unnumbered"> <data type="boolean"/> </attribute> </optional> <optional> <ref name="section-title"/> </optional> <group> <choice> <zeroOrMore> <ref name="BasicBlock"/> </zeroOrMore> <ref name="amend"/> </choice> <zeroOrMore> <choice> <ref name="clause-subsection"/> <ref name="terms"/> <ref name="definitions"/> <ref name="floating-title"/> </choice> </zeroOrMore> </group> </define> </include> <define name="meeting"> <element name="meeting"> <optional> <attribute name="acronym"/> </optional> <text/> </element> </define> <define name="meeting-place"> <element name="meeting-place"> <text/> </element> </define> <define name="meeting-date"> <element name="meeting-date"> <choice> <group> <element name="from"> <ref name="ISO8601Date"/> </element> <optional> <element name="to"> <ref name="ISO8601Date"/> </element> </optional> </group> <element name="on"> <ref name="ISO8601Date"/> </element> </choice> </element> </define> <define name="intended-type"> <element name="intended-type"> <choice> <value>R</value> <value>C</value> <value>TD</value> </choice> </element> </define> <define name="ext_source"> <element name="source"> <text/> </element> </define> <define name="ipnoticereceived"> <element name="ip-notice-received"> <data type="boolean"/> </element> </define> <define name="recommendationstatus"> <element name="recommendationstatus"> <element name="from"> <ref name="ISO8601Date"/> </element> <element name="to"> <ref name="ISO8601Date"/> </element> <optional> <ref name="approvalstage"/> </optional> </element> </define> <define name="approvalstage"> <element name="approvalstage"> <attribute name="process"> <choice> <value>tap</value> <value>aap</value> </choice> </attribute> <choice> <value>determined</value> <value>in-force</value> <value>a</value> <value>lc</value> <value>ac</value> <value>lj</value> <value>aj</value> <value>na</value> <value>ar</value> <value>ri</value> <value>at</value> <value>sg</value> <value>c</value> <value>tap</value> </choice> </element> </define> <define name="bureau"> <element name="bureau"> <choice> <value>T</value> <value>D</value> <value>R</value> </choice> </element> </define> <define name="group"> <element name="group"> <ref name="ItuGroup"/> </element> </define> <define name="subgroup"> <element name="subgroup"> <ref name="ItuGroup"/> </element> </define> <define name="ItuGroup"> <optional> <attribute name="type"> <choice> <value>tsag</value> <value>study-group</value> <value>work-group</value> </choice> </attribute> </optional> <ref name="tname"/> <optional> <ref name="groupacronym"/> </optional> <optional> <ref name="groupperiod"/> </optional> </define> <define name="groupacronym"> <element name="acronym"> <text/> </element> </define> <define name="groupperiod"> <element name="period"> <ref name="groupperiodstart"/> <optional> <ref name="groupperiodend"/> </optional> </element> </define> <define name="groupperiodstart"> <element name="start"> <data type="gYear"/> </element> </define> <define name="groupperiodend"> <element name="end"> <data type="gYear"/> </element> </define> <define name="workgroup"> <element name="workgroup"> <ref name="ItuGroup"/> </element> </define> <define name="itu"> <element name="itu-standard"> <attribute name="version"/> <attribute name="type"> <choice> <value>semantic</value> <value>presentation</value> </choice> </attribute> <ref name="bibdata"/> <zeroOrMore> <ref name="termdocsource"/> </zeroOrMore> <optional> <ref name="misccontainer"/> </optional> <optional> <ref name="boilerplate"/> </optional> <ref name="preface"/> <oneOrMore> <ref name="sections"/> </oneOrMore> <zeroOrMore> <ref name="annex"/> </zeroOrMore> <ref name="bibliography"/> <zeroOrMore> <ref name="indexsect"/> </zeroOrMore> </element> </define> </grammar>