diff options
author | Karl Berry <karl@freefriends.org> | 2012-03-30 23:23:02 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2012-03-30 23:23:02 +0000 |
commit | 849996eca72af498b48b10fbea7f14c4b9d21b8f (patch) | |
tree | 2d40d42dfc9fc0b0622212cc220868f98345305f /Master/texmf-dist/source/latex/stex/schema/rng/omdocext.rng | |
parent | d82e1c23973fd0271f93686f487bd1cee8dcd947 (diff) |
restore stex (ca. 28jan12)
git-svn-id: svn://tug.org/texlive/trunk@25792 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/stex/schema/rng/omdocext.rng')
-rw-r--r-- | Master/texmf-dist/source/latex/stex/schema/rng/omdocext.rng | 330 |
1 files changed, 330 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/stex/schema/rng/omdocext.rng b/Master/texmf-dist/source/latex/stex/schema/rng/omdocext.rng new file mode 100644 index 00000000000..b7672c89a65 --- /dev/null +++ b/Master/texmf-dist/source/latex/stex/schema/rng/omdocext.rng @@ -0,0 +1,330 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + A RelaxNG schema for Open Mathematical documents (OMDoc 1.3) Module EXT + $Id: omdocext.rnc 8958 2011-09-02 06:01:13Z kohlhase $ + $HeadURL: https://svn.omdoc.org/repos/omdoc/branches/omdoc-1.3/schema/rnc/omdocext.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="plike.class" combine="interleave"> + <zeroOrMore> + <ref name="omlet"/> + </zeroOrMore> + </define> + <define name="omdoc.class" combine="interleave"> + <interleave> + <zeroOrMore> + <ref name="private"/> + </zeroOrMore> + <zeroOrMore> + <ref name="code"/> + </zeroOrMore> + </interleave> + </define> + <define name="private.attribs"> + <interleave> + <ref name="toplevel.attribs"/> + <optional> + <ref name="for.attrib"/> + </optional> + <optional> + <attribute name="requires"> + <ref name="omdocref"/> + </attribute> + </optional> + <optional> + <attribute name="reformulates"> + <ref name="omdocref"/> + </attribute> + </optional> + </interleave> + </define> + <define name="private.model"> + <interleave> + <ref name="metadata.class"/> + <oneOrMore> + <ref name="data"/> + </oneOrMore> + </interleave> + </define> + <define name="private"> + <element name="private"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="private.attribs"/> + <ref name="private.model"/> + </interleave> + </choice> + </element> + </define> + <!-- + reformulates is a URIref to the omdoc elements that are reformulated by the + system-specific information in this element + --> + <define name="code.attribs"> + <ref name="private.attribs"/> + </define> + <define name="code.model"> + <interleave> + <ref name="metadata.class"/> + <zeroOrMore> + <ref name="data"/> + </zeroOrMore> + <zeroOrMore> + <ref name="input"/> + </zeroOrMore> + <zeroOrMore> + <ref name="output"/> + </zeroOrMore> + <zeroOrMore> + <ref name="effect"/> + </zeroOrMore> + </interleave> + </define> + <define name="code"> + <element name="code"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="code.attribs"/> + <ref name="code.model"/> + </interleave> + </choice> + </element> + </define> + <define name="input.attribs"> + <ref name="id.attribs"/> + </define> + <define name="input.model"> + <ref name="mcf.class"/> + </define> + <define name="input"> + <element name="input"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="input.attribs"/> + <ref name="input.model"/> + </interleave> + </choice> + </element> + </define> + <define name="output.attribs"> + <ref name="id.attribs"/> + </define> + <define name="output.model"> + <ref name="mcf.class"/> + </define> + <define name="output"> + <element name="output"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="output.attribs"/> + <ref name="output.model"/> + </interleave> + </choice> + </element> + </define> + <define name="effect.attribs"> + <ref name="id.attribs"/> + </define> + <define name="effect.model"> + <ref name="mcf.class"/> + </define> + <define name="effect"> + <element name="effect"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="effect.attribs"/> + <ref name="effect.model"/> + </interleave> + </choice> + </element> + </define> + <define name="data.attribs"> + <interleave> + <ref name="id.attribs"/> + <optional> + <attribute name="href"> + <data type="anyURI"/> + </attribute> + </optional> + <optional> + <attribute name="size"> + <data type="string"/> + </attribute> + </optional> + <optional> + <attribute name="pto"> + <data type="string"/> + </attribute> + </optional> + <optional> + <attribute name="pto-version"> + <data type="string"/> + </attribute> + </optional> + <optional> + <attribute name="original"> + <choice> + <value>external</value> + <value>local</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="data.textformat"> + <value>TeX</value> + </define> + <define name="data.text"> + <interleave> + <ref name="data.attribs"/> + <optional> + <attribute name="format"> + <ref name="data.textformat"/> + </attribute> + </optional> + <text/> + </interleave> + </define> + <define name="data.any"> + <interleave> + <ref name="data.attribs"/> + <optional> + <attribute name="format"> + <data type="anyURI"/> + </attribute> + </optional> + <ref name="Anything"/> + </interleave> + </define> + <define name="data.model"> + <choice> + <ref name="data.text"/> + <ref name="data.any"/> + </choice> + </define> + <define name="data"> + <element name="data"> + <choice> + <ref name="tref"/> + <ref name="data.model"/> + </choice> + </element> + </define> + <define name="omlet.attribs"> + <interleave> + <ref name="id.attribs"/> + <optional> + <attribute name="action"> + <choice> + <value>display</value> + <value>execute</value> + <value>other</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="show"> + <choice> + <value>new</value> + <value>replace</value> + <value>embed</value> + <value>other</value> + </choice> + </attribute> + </optional> + <optional> + <attribute name="actuate"> + <choice> + <value>onPresent</value> + <value>onLoad</value> + <value>onRequest</value> + <value>other</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="omlet.param"> + <interleave> + <text/> + <ref name="inline.class"/> + <zeroOrMore> + <ref name="param"/> + </zeroOrMore> + </interleave> + </define> + <define name="omlet.data"> + <choice> + <attribute name="data"> + <data type="anyURI"/> + </attribute> + <choice> + <ref name="private"/> + <ref name="code"/> + </choice> + </choice> + </define> + <define name="omlet.model"> + <interleave> + <ref name="metadata.class"/> + <ref name="omlet.param"/> + <ref name="omlet.data"/> + </interleave> + </define> + <define name="omlet"> + <element name="omlet"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="omlet.attribs"/> + <ref name="omlet.model"/> + </interleave> + </choice> + </element> + </define> + <define name="param.attribs"> + <interleave> + <ref name="id.attribs"/> + <attribute name="name"> + <data type="string"/> + </attribute> + <optional> + <attribute name="value"> + <data type="string"/> + </attribute> + </optional> + <optional> + <attribute name="valuetype"> + <choice> + <value>data</value> + <value>ref</value> + <value>object</value> + </choice> + </attribute> + </optional> + </interleave> + </define> + <define name="param.model"> + <optional> + <ref name="mobj"/> + </optional> + </define> + <define name="param"> + <element name="param"> + <choice> + <ref name="tref"/> + <interleave> + <ref name="param.attribs"/> + <ref name="param.model"/> + </interleave> + </choice> + </element> + </define> +</grammar> |