summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/stex/schema/rng/omdocmtxt.rng
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/stex/schema/rng/omdocmtxt.rng')
-rw-r--r--Master/texmf-dist/source/latex/stex/schema/rng/omdocmtxt.rng502
1 files changed, 502 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/stex/schema/rng/omdocmtxt.rng b/Master/texmf-dist/source/latex/stex/schema/rng/omdocmtxt.rng
new file mode 100644
index 00000000000..77d51f527a6
--- /dev/null
+++ b/Master/texmf-dist/source/latex/stex/schema/rng/omdocmtxt.rng
@@ -0,0 +1,502 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ A RelaxNG schema for Open Mathematical documents (OMDoc 1.3) Module MTXT
+ $Id: omdocmtxt.rnc 8967 2011-09-02 12:41:47Z kohlhase $
+ $HeadURL: https://svn.omdoc.org/repos/omdoc/branches/omdoc-1.3/schema/rnc/omdocmtxt.rnc $
+ See the documentation and examples at http://www.omdoc.org
+ Copyright (c) 2004-2007 Michael Kohlhase, released under the GNU Public License (GPL)
+-->
+<grammar ns="http://omdoc.org/ns" xmlns="http://relaxng.org/ns/structure/1.0" datatypeLibrary="http://www.w3.org/2001/XMLSchema-datatypes">
+ <define name="omdoc.class" combine="interleave">
+ <zeroOrMore>
+ <ref name="omtext"/>
+ </zeroOrMore>
+ </define>
+ <!-- attribute for is a whitespace-separated list of URIrefs -->
+ <define name="for.attrib">
+ <attribute name="for">
+ <ref name="omdocrefs"/>
+ </attribute>
+ </define>
+ <define name="from.attrib">
+ <attribute name="from">
+ <ref name="omdocref"/>
+ </attribute>
+ </define>
+ <define name="mc.class">
+ <interleave>
+ <ref name="metadata.class"/>
+ <zeroOrMore>
+ <ref name="CMP"/>
+ </zeroOrMore>
+ </interleave>
+ </define>
+ <define name="mcf.class">
+ <interleave>
+ <ref name="mc.class"/>
+ <zeroOrMore>
+ <ref name="FMP"/>
+ </zeroOrMore>
+ </interleave>
+ </define>
+ <define name="rsttype">
+ <choice>
+ <value>abstract</value>
+ <value>introduction</value>
+ <value>annote</value>
+ <value>conclusion</value>
+ <value>thesis</value>
+ <value>comment</value>
+ <value>antithesis</value>
+ <value>elaboration</value>
+ <value>motivation</value>
+ <value>evidence</value>
+ <value>note</value>
+ <value>warning</value>
+ <value>question</value>
+ <value>answer</value>
+ <value>transition</value>
+ </choice>
+ </define>
+ <define name="statementtype">
+ <choice>
+ <value>axiom</value>
+ <value>definition</value>
+ <value>example</value>
+ <value>proof</value>
+ <value>derive</value>
+ <value>hypothesis</value>
+ <value>notation</value>
+ </choice>
+ </define>
+ <define name="assertiontype">
+ <choice>
+ <value>assertion</value>
+ <value>theorem</value>
+ <value>lemma</value>
+ <value>corollary</value>
+ <value>proposition</value>
+ <value>conjecture</value>
+ <value>false-conjecture</value>
+ <value>obligation</value>
+ <value>postulate</value>
+ <value>formula</value>
+ <value>assumption</value>
+ <value>rule</value>
+ </choice>
+ </define>
+ <define name="verbalizes.attrib">
+ <attribute name="verbalizes">
+ <ref name="omdocrefs"/>
+ </attribute>
+ </define>
+ <define name="omtext.type.attrib">
+ <attribute name="type">
+ <choice>
+ <ref name="rsttype"/>
+ <ref name="statementtype"/>
+ <ref name="assertiontype"/>
+ <data type="anyURI"/>
+ </choice>
+ </attribute>
+ </define>
+ <define name="index.attrib">
+ <attribute name="index">
+ <data type="NMTOKEN"/>
+ </attribute>
+ </define>
+ <define name="parallel.attribs">
+ <interleave>
+ <optional>
+ <ref name="verbalizes.attrib"/>
+ </optional>
+ <optional>
+ <ref name="index.attrib"/>
+ </optional>
+ <optional>
+ <ref name="omtext.type.attrib"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="omtext.attribs">
+ <interleave>
+ <ref name="toplevel.attribs"/>
+ <optional>
+ <ref name="omtext.type.attrib"/>
+ </optional>
+ <optional>
+ <attribute name="for">
+ <ref name="omdocref"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="from">
+ <ref name="omdocref"/>
+ </attribute>
+ </optional>
+ <optional>
+ <ref name="verbalizes.attrib"/>
+ </optional>
+ </interleave>
+ </define>
+ <define name="omtext.model">
+ <ref name="mcf.class"/>
+ </define>
+ <define name="omtext">
+ <element name="omtext">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="omtext.attribs"/>
+ <ref name="omtext.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="CMP.attribs">
+ <interleave>
+ <ref name="xml.lang.attrib"/>
+ <ref name="id.attribs"/>
+ </interleave>
+ </define>
+ <define name="CMP.model">
+ <ref name="plike.class"/>
+ </define>
+ <define name="CMP">
+ <element name="CMP">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="CMP.attribs"/>
+ <ref name="CMP.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="term.attribs">
+ <interleave>
+ <ref name="id.attribs"/>
+ <optional>
+ <attribute name="role"/>
+ </optional>
+ <optional>
+ <attribute name="cdbase">
+ <data type="anyURI"/>
+ </attribute>
+ </optional>
+ <attribute name="cd">
+ <data type="NCName"/>
+ </attribute>
+ <attribute name="name">
+ <data type="NCName"/>
+ </attribute>
+ </interleave>
+ </define>
+ <define name="term.model">
+ <ref name="inline.model"/>
+ </define>
+ <define name="term">
+ <element name="term">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="term.attribs"/>
+ <ref name="term.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="FMP.attribs">
+ <interleave>
+ <ref name="id.attribs"/>
+ <optional>
+ <attribute name="logic">
+ <data type="NMTOKEN"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="FMP.model">
+ <choice>
+ <group>
+ <zeroOrMore>
+ <ref name="assumption"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="conclusion"/>
+ </zeroOrMore>
+ </group>
+ <ref name="mobj"/>
+ </choice>
+ </define>
+ <define name="FMP">
+ <element name="FMP">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="FMP.attribs"/>
+ <ref name="FMP.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="assumption.attribs">
+ <interleave>
+ <ref name="id.attribs"/>
+ <optional>
+ <attribute name="inductive">
+ <choice>
+ <value>yes</value>
+ <value>no</value>
+ </choice>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="assumption.model">
+ <ref name="mobj"/>
+ </define>
+ <define name="assumption">
+ <element name="assumption">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="assumption.attribs"/>
+ <ref name="assumption.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="conclusion.attribs">
+ <ref name="id.attribs"/>
+ </define>
+ <define name="conclusion.model">
+ <ref name="mobj"/>
+ </define>
+ <define name="conclusion">
+ <element name="conclusion">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="conclusion.attribs"/>
+ <ref name="conclusion.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="note.attribs">
+ <interleave>
+ <ref name="id.attribs"/>
+ <optional>
+ <ref name="for.attrib"/>
+ </optional>
+ <ref name="parallel.attribs"/>
+ <optional>
+ <attribute name="type">
+ <data type="NMTOKEN"/>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="note.model">
+ <ref name="inline.model"/>
+ </define>
+ <define name="note">
+ <element name="note">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="note.attribs"/>
+ <ref name="note.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <!-- index -->
+ <define name="index.att">
+ <interleave>
+ <optional>
+ <attribute name="sort-by"/>
+ </optional>
+ <optional>
+ <attribute name="see">
+ <ref name="omdocrefs"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="seealso">
+ <ref name="omdocrefs"/>
+ </attribute>
+ </optional>
+ <optional>
+ <attribute name="links">
+ <list>
+ <zeroOrMore>
+ <data type="anyURI"/>
+ </zeroOrMore>
+ </list>
+ </attribute>
+ </optional>
+ </interleave>
+ </define>
+ <define name="idx.attribs">
+ <choice>
+ <ref name="id.attribs"/>
+ <ref name="xref.attrib"/>
+ </choice>
+ </define>
+ <define name="idx.model">
+ <interleave>
+ <optional>
+ <ref name="idt"/>
+ </optional>
+ <oneOrMore>
+ <ref name="ide"/>
+ </oneOrMore>
+ </interleave>
+ </define>
+ <define name="idx">
+ <element name="idx">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="idx.attribs"/>
+ <ref name="idx.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="ide.attribs">
+ <choice>
+ <interleave>
+ <ref name="id.attribs"/>
+ <ref name="index.att"/>
+ <ref name="index.attrib"/>
+ </interleave>
+ <ref name="xref.attrib"/>
+ </choice>
+ </define>
+ <define name="ide.model">
+ <zeroOrMore>
+ <ref name="idp"/>
+ </zeroOrMore>
+ </define>
+ <define name="ide">
+ <element name="ide">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="ide.attribs"/>
+ <ref name="ide.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="idt.attribs">
+ <choice>
+ <ref name="id.attribs"/>
+ <ref name="xref.attrib"/>
+ </choice>
+ </define>
+ <define name="idt.model">
+ <ref name="inline.model"/>
+ </define>
+ <define name="idt">
+ <element name="idt">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="idt.attribs"/>
+ <ref name="idt.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <define name="idp.attribs">
+ <ref name="index.att"/>
+ </define>
+ <define name="idp.model">
+ <ref name="inline.model"/>
+ </define>
+ <define name="idp">
+ <element name="idp">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="idp.attribs"/>
+ <ref name="idp.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <!-- citations -->
+ <define name="citation.attribs">
+ <interleave>
+ <ref name="id.attribs"/>
+ <attribute name="bibrefs"/>
+ </interleave>
+ </define>
+ <define name="citation.model">
+ <empty/>
+ </define>
+ <define name="citation">
+ <element name="citation">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="citation.attribs"/>
+ <ref name="citation.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <!-- citations -->
+ <define name="oref.attribs">
+ <interleave>
+ <ref name="id.attribs"/>
+ <attribute name="href">
+ <data type="anyURI"/>
+ </attribute>
+ </interleave>
+ </define>
+ <define name="oref.model">
+ <empty/>
+ </define>
+ <define name="oref">
+ <element name="oref">
+ <choice>
+ <ref name="tref"/>
+ <interleave>
+ <ref name="oref.attribs"/>
+ <ref name="oref.model"/>
+ </interleave>
+ </choice>
+ </element>
+ </define>
+ <!-- what can go into a mathematical text -->
+ <define name="op.class">
+ <interleave>
+ <zeroOrMore>
+ <ref name="term"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="mobj"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="note"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="idx"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="citation"/>
+ </zeroOrMore>
+ <zeroOrMore>
+ <ref name="oref"/>
+ </zeroOrMore>
+ </interleave>
+ </define>
+ <define name="inline.class" combine="interleave">
+ <ref name="op.class"/>
+ </define>
+</grammar>