summaryrefslogtreecommitdiff
path: root/Build/cdbuild/tpm2/tpm2.rng
diff options
context:
space:
mode:
Diffstat (limited to 'Build/cdbuild/tpm2/tpm2.rng')
-rw-r--r--Build/cdbuild/tpm2/tpm2.rng404
1 files changed, 404 insertions, 0 deletions
diff --git a/Build/cdbuild/tpm2/tpm2.rng b/Build/cdbuild/tpm2/tpm2.rng
new file mode 100644
index 00000000000..c759723468a
--- /dev/null
+++ b/Build/cdbuild/tpm2/tpm2.rng
@@ -0,0 +1,404 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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">
+ <define name="TPM">
+ <element name="TPM">
+ <ref name="attlist.TPM"/>
+ <ref name="Name"/>
+ <ref name="Title"/>
+ <ref name="Source"/>
+ <ref name="Classification"/>
+ <ref name="Build"/>
+ <ref name="Install"/>
+ <ref name="Remove"/>
+ <optional>
+ <ref name="CTAN"/>
+ </optional>
+ </element>
+ </define>
+ <define name="attlist.TPM" combine="interleave">
+ <attribute name="id">
+ <data type="ID"/>
+ </attribute>
+ </define>
+
+ <define name="Title">
+ <element name="Title">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Name">
+ <element name="Name">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Source">
+ <element name="Source">
+ <ref name="Authorgroup"/>
+ <ref name="License"/>
+ <ref name="Date"/>
+ <ref name="Version"/>
+ <optional>
+ <ref name="Home"/>
+ </optional>
+ <ref name="Description"/>
+ </element>
+ </define>
+
+ <define name="Description">
+ <element name="Description">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Authorgroup">
+ <element name="Authorgroup">
+ <oneOrMore>
+ <ref name="Author"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ <define name="Author">
+ <element name="Author">
+ <optional>
+ <ref name="Forename"/>
+ </optional>
+ <ref name="Surname"/>
+ <optional>
+ <ref name="Email"/>
+ </optional>
+ </element>
+ </define>
+
+ <define name="Forename">
+ <element name="Forename">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Surname">
+ <element name="Surname">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Email">
+ <element name="Email">
+ <text/>
+ </element>
+ </define>
+
+ <define name="License">
+ <element name="License">
+ <ref name="attlist.License"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="attlist.License" combine="interleave">
+ <optional>
+ <attribute name="type" a:defaultValue="unknown">
+ <choice>
+ <value>artistic</value>
+ <value>bsd</value>
+ <value>dfsg</value>
+ <value>gfdl</value>
+ <value>gpl</value>
+ <value>knuth</value>
+ <value>lgpl</value>
+ <value>lppl</value>
+ <value>nocommercial</value>
+ <value>nosell</value>
+ <value>nosource</value>
+ <value>other</value>
+ <value>pd</value>
+ <value>shareware</value>
+ <value>unknown</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+ <define name="Date">
+ <element name="Date">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Version">
+ <element name="Version">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Home">
+ <element name="Home">
+ <zeroOrMore>
+ <ref name="Link"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="CTAN">
+ <element name="CTAN">
+ <ref name="Location"/>
+ <optional>
+ <ref name="Date"/>
+ <ref name="Version"/>
+ </optional>
+ </element>
+ </define>
+
+ <define name="Location">
+ <element name="Location">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Classification">
+ <element name="Classification">
+ <ref name="Status"/>
+ <optional>
+ <oneOrMore>
+ <ref name="Platform"/>
+ </oneOrMore>
+ </optional>
+ <ref name="Categories"/>
+ <optional>
+ <ref name="Keywords"/>
+ </optional>
+ <optional>
+ <ref name="Pointers"/>
+ </optional>
+ <optional>
+ <ref name="XPointers"/>
+ </optional>
+ <ref name="Documentation"/>
+ </element>
+ </define>
+
+ <define name="Categories">
+ <element name="Categories">
+ <oneOrMore>
+ <ref name="Category"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ <define name="Documentation">
+ <element name="Documentation">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Category">
+ <element name="Category">
+ <ref name="attlist.Category"/>
+ <text/>
+ </element>
+ </define>
+ <define name="attlist.Category" combine="interleave">
+ <optional>
+ <attribute name="type">
+ <choice>
+ <value>biblio</value>
+ <value>collection</value>
+ <value>config</value>
+ <value>distribution</value>
+ <value>system</value>
+ <value>documentation</value>
+ <value>dvips-tool</value>
+ <value>font-tool</value>
+ <value>fonts</value>
+ <value>graphics</value>
+ <value>language</value>
+ <value>library</value>
+ <value>macros</value>
+ <value>metapost</value>
+ <value>omega</value>
+ <value>source</value>
+ <value>tex-tool</value>
+ <value>tool</value>
+ <value>usergroup</value>
+ </choice>
+ </attribute>
+ </optional>
+ </define>
+ <define name="Status">
+ <element name="Status">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Platform">
+ <element name="Platform">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Keywords">
+ <element name="Keywords">
+ <oneOrMore>
+ <ref name="Keyword"/>
+ </oneOrMore>
+ </element>
+ </define>
+
+ <define name="Keyword">
+ <element name="Keyword">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Build">
+ <element name="Build">
+ <optional><ref name="Ins"/></optional>
+ <ref name="Run"/>
+ <ref name="Doc"/>
+ </element>
+ </define>
+
+ <define name="Ins">
+ <element name="Ins">
+ <zeroOrMore>
+ <ref name="Pattern"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="Run">
+ <element name="Run">
+ <zeroOrMore>
+ <ref name="Pattern"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="Doc">
+ <element name="Doc">
+ <zeroOrMore>
+ <ref name="Pattern"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="Pattern">
+ <element name="Pattern">
+ <text/>
+ </element>
+ </define>
+
+ <define name="Pointers">
+ <element name="Pointers">
+ <zeroOrMore>
+ <ref name="Needs"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="Relates"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="Opposes"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="XPointers">
+ <element name="XPointers">
+ <zeroOrMore>
+ <ref name="Link"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="Link">
+ <element name="Link">
+ <ref name="attlist.Link"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="attlist.Link" combine="interleave">
+ <attribute name="url"/>
+ </define>
+ <define name="Needs">
+ <element name="Needs">
+ <ref name="attlist.Needs"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="attlist.Needs" combine="interleave">
+ <attribute name="name"/>
+ </define>
+ <define name="Relates">
+ <element name="Relates">
+ <ref name="attlist.Relates"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="attlist.Relates" combine="interleave">
+ <attribute name="name"/>
+ </define>
+ <define name="Opposes">
+ <element name="Opposes">
+ <ref name="attlist.Opposes"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="attlist.Opposes" combine="interleave">
+ <attribute name="name"/>
+ </define>
+ <define name="Install">
+ <element name="Install">
+ <ref name="Before"/>
+ <ref name="After"/>
+ </element>
+ </define>
+
+ <define name="Remove">
+ <element name="Remove">
+ <ref name="Before"/>
+ <ref name="After"/>
+ </element>
+ </define>
+
+ <define name="Before">
+ <element name="Before">
+ <zeroOrMore>
+ <ref name="Execute"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="After">
+ <element name="After">
+ <zeroOrMore>
+ <ref name="Execute"/>
+ </zeroOrMore>
+ </element>
+ </define>
+
+ <define name="Execute">
+ <element name="Execute">
+ <ref name="attlist.Execute"/>
+ <empty/>
+ </element>
+ </define>
+ <define name="attlist.Execute" combine="interleave">
+ <attribute name="function"/>
+ <attribute name="parameter"/>
+ </define>
+
+<define name="TPMS">
+<element name="TPMS">
+ <oneOrMore>
+ <ref name="TPM"/>
+ </oneOrMore>
+ </element>
+</define>
+
+ <start>
+ <choice>
+ <ref name="TPM"/>
+ <ref name="TPMS"/>
+ </choice>
+ </start>
+</grammar>