diff options
author | Michael Stahl <Michael.Stahl@cib.de> | 2018-06-22 18:20:46 +0200 |
---|---|---|
committer | Thorsten Behrens <Thorsten.Behrens@CIB.de> | 2018-06-26 12:20:31 +0200 |
commit | a09ed7100e07c0416017c06de9e22fa888377d15 (patch) | |
tree | 146739719a89a7ca98dd3fad1afe619c242fd011 /schema/mathml2/common | |
parent | b88706f98b0859a40b5e50596c9fa75398c90c2f (diff) |
schema: add MathML2 XSD
These are needed to invoke the ODF validator with custom ODF schemas.
Change-Id: I231b5d8a8573e9ac6171a331362a31aceae08d80
Reviewed-on: https://gerrit.libreoffice.org/56399
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Diffstat (limited to 'schema/mathml2/common')
-rw-r--r-- | schema/mathml2/common/common-attribs.xsd | 41 | ||||
-rw-r--r-- | schema/mathml2/common/math.xsd | 126 | ||||
-rw-r--r-- | schema/mathml2/common/xlink-href.xsd | 20 |
3 files changed, 187 insertions, 0 deletions
diff --git a/schema/mathml2/common/common-attribs.xsd b/schema/mathml2/common/common-attribs.xsd new file mode 100644 index 000000000000..33698b8f86d6 --- /dev/null +++ b/schema/mathml2/common/common-attribs.xsd @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<xs:schema + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns="http://www.w3.org/1998/Math/MathML" + xmlns:xlink="http://www.w3.org/1999/xlink" + targetNamespace="http://www.w3.org/1998/Math/MathML" + elementFormDefault="qualified" +> + +<xs:annotation> + <xs:documentation> + This is the common attributes module for MathML. + Author: Stéphane Dalmas, INRIA. + </xs:documentation> +</xs:annotation> + + +<xs:import namespace="http://www.w3.org/1999/xlink" schemaLocation="xlink-href.xsd"/> +<xs:import/> <!-- import any foreign namespace --> + + +<!-- The type of "class" is from the XHTML modularization with Schema + document --> +<xs:attributeGroup name="Common.attrib"> + <xs:attribute name="class" type="xs:NMTOKENS"/> + <xs:attribute name="style" type="xs:string"/> + <xs:attribute name="xref" type="xs:IDREF"/> + <xs:attribute name="id" type="xs:ID"/> + <xs:attribute ref="xlink:href"/> + <!-- allow attributes from foreign namespaces, and don't check them --> + <xs:anyAttribute namespace="##other" processContents="skip"/> +</xs:attributeGroup> + +</xs:schema> +<!-- + Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute + of Technology, Institut National de Recherche en Informatique et en + Automatique, Keio University). All Rights Reserved. See + http://www.w3.org/Consortium/Legal/. + --> diff --git a/schema/mathml2/common/math.xsd b/schema/mathml2/common/math.xsd new file mode 100644 index 000000000000..51eb51c87d5b --- /dev/null +++ b/schema/mathml2/common/math.xsd @@ -0,0 +1,126 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<xs:schema + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns="http://www.w3.org/1998/Math/MathML" + targetNamespace="http://www.w3.org/1998/Math/MathML" + elementFormDefault="qualified" + > + +<xs:annotation> + <xs:documentation> + This is an XML Schema module defining the "math" element of MathML. + Author: Stéphane Dalmas, INRIA. + </xs:documentation> +</xs:annotation> + +<!-- The four groups that govern a lot of things --> + +<!-- currently very lax. Should be tightened from Chapter 5 --> + +<xs:group name="Presentation-expr.class"> + <xs:choice> + <xs:group ref="PresExpr.class"/> + <xs:group ref="ContExpr.class"/> + </xs:choice> +</xs:group> + +<xs:group name="Content-expr.class"> + <xs:choice> + <xs:group ref="ContExpr.class"/> + <xs:group ref="PresExpr.class"/> + </xs:choice> +</xs:group> + +<xs:group name="PresExpr.class"> + <xs:choice> + <xs:group ref="Presentation-token.class"/> + <xs:group ref="Presentation-layout.class"/> + <xs:group ref="Presentation-script.class"/> + <xs:group ref="Presentation-table.class"/> + <xs:element ref="mspace"/> + <xs:element ref="maction"/> + <xs:element ref="merror"/> + <xs:element ref="mstyle"/> + </xs:choice> +</xs:group> + +<xs:group name="ContExpr.class"> + <xs:choice> + <xs:group ref="Content-tokens.class"/> + <xs:group ref="Content-arith.class"/> + <xs:group ref="Content-functions.class"/> + <xs:group ref="Content-logic.class"/> + <xs:group ref="Content-constants.class"/> + <xs:group ref="Content-sets.class"/> + <xs:group ref="Content-relations.class"/> + <xs:group ref="Content-elementary-functions.class"/> + <xs:group ref="Content-calculus.class"/> + <xs:group ref="Content-linear-algebra.class"/> + <xs:group ref="Content-vector-calculus.class"/> + <xs:group ref="Content-statistics.class"/> + <xs:group ref="Content-constructs.class"/> + <xs:element ref="semantics"/> + </xs:choice> +</xs:group> + +<!-- "math" --> + +<xs:attributeGroup name="Browser-interface.attrib"> + <xs:attribute name="baseline" type="xs:string"/> + <xs:attribute name="overflow" default="scroll"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="scroll"/> + <xs:enumeration value="elide"/> + <xs:enumeration value="truncate"/> + <xs:enumeration value="scale"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attribute name="altimg" type="xs:anyURI"/> + <xs:attribute name="alttext" type="xs:string"/> + <xs:attribute name="type" type="xs:string"/> + <xs:attribute name="name" type="xs:string"/> + <xs:attribute name="height" type="xs:string"/> + <xs:attribute name="width" type="xs:string"/> +</xs:attributeGroup> + +<xs:attributeGroup name="math.attlist"> + <xs:attributeGroup ref="Browser-interface.attrib"/> + <xs:attribute name="macros" type="xs:string"/> +<!-- deprecated + <xs:attribute name="mode" type="xs:string"/> +--> + <xs:attribute name="display" default="inline"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="block"/> + <xs:enumeration value="inline"/> + </xs:restriction> + </xs:simpleType> + </xs:attribute> + <xs:attributeGroup ref="Common.attrib"/> +</xs:attributeGroup> + +<xs:group name="math.content"> + <xs:choice> + <xs:group ref="PresExpr.class"/> + <xs:group ref="ContExpr.class"/> + </xs:choice> +</xs:group> + +<xs:complexType name="math.type"> + <xs:group ref="math.content" minOccurs="0" maxOccurs="unbounded"/> + <xs:attributeGroup ref="math.attlist"/> +</xs:complexType> + +<xs:element name="math" type="math.type"/> + +</xs:schema> +<!-- + Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute + of Technology, Institut National de Recherche en Informatique et en + Automatique, Keio University). All Rights Reserved. See + http://www.w3.org/Consortium/Legal/. + --> diff --git a/schema/mathml2/common/xlink-href.xsd b/schema/mathml2/common/xlink-href.xsd new file mode 100644 index 000000000000..a386bc9fba5e --- /dev/null +++ b/schema/mathml2/common/xlink-href.xsd @@ -0,0 +1,20 @@ +<schema targetNamespace="http://www.w3.org/1999/xlink" + xmlns:xlink="http://www.w3.org/1999/xlink" + xmlns="http://www.w3.org/2001/XMLSchema"> + <annotation> + <documentation xml:lang="en"> + This schema provides the XLink href attribute for use in the MathML2 + schema. Written by Max Froumentin, W3C. + </documentation> + </annotation> + + <attribute name="href" type="anyURI"/> +</schema> + + +<!-- + Copyright û 2002 World Wide Web Consortium, (Massachusetts Institute + of Technology, Institut National de Recherche en Informatique et en + Automatique, Keio University). All Rights Reserved. See + http://www.w3.org/Consortium/Legal/. + --> |