diff options
Diffstat (limited to 'data/doc/sisu/model/xml/input/xsd/dom.xsd')
-rw-r--r-- | data/doc/sisu/model/xml/input/xsd/dom.xsd | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/data/doc/sisu/model/xml/input/xsd/dom.xsd b/data/doc/sisu/model/xml/input/xsd/dom.xsd new file mode 100644 index 00000000..8de8999a --- /dev/null +++ b/data/doc/sisu/model/xml/input/xsd/dom.xsd @@ -0,0 +1,181 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- dom input model, part of SiSU and under the same license --> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> + <xs:element name="document"> + <xs:complexType> + <xs:sequence> + <xs:element ref="head"/> + <xs:element ref="body"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="head"> + <xs:complexType> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="header"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="header"> + <xs:complexType> + <xs:choice> + <xs:element ref="creator"/> + <xs:element ref="date"/> + <xs:element ref="date.available"/> + <xs:element ref="date.created"/> + <xs:element ref="date.issued"/> + <xs:element ref="date.modified"/> + <xs:element ref="date.valid"/> + <xs:element ref="italicize"/> + <xs:element ref="language"/> + <xs:element ref="links"/> + <xs:element ref="markup"/> + <xs:element ref="rights"/> + <xs:element ref="skin"/> + <xs:element ref="subject"/> + <xs:element ref="title"/> + <xs:element ref="type"/> + <xs:element ref="vocabulary"/> + </xs:choice> + <xs:attribute name="class" use="required" type="xs:NCName"/> + </xs:complexType> + </xs:element> + <xs:element name="creator" type="xs:string"/> + <xs:element name="date" type="xs:NMTOKEN"/> + <xs:element name="date.available" type="xs:NMTOKEN"/> + <xs:element name="date.created" type="xs:NMTOKEN"/> + <xs:element name="date.issued" type="xs:NMTOKEN"/> + <xs:element name="date.modified" type="xs:NMTOKEN"/> + <xs:element name="date.valid" type="xs:NMTOKEN"/> + <xs:element name="italicize" type="xs:string"/> + <xs:element name="language" type="xs:NCName"/> + <xs:element name="links" type="xs:string"/> + <xs:element name="markup" type="xs:string"/> + <xs:element name="rights" type="xs:string"/> + <xs:element name="skin" type="xs:NCName"/> + <xs:element name="subject" type="xs:string"/> + <xs:element name="title" type="xs:string"/> + <xs:element name="type" type="xs:NCName"/> + <xs:element name="vocabulary" type="xs:NCName"/> + <xs:element name="body"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading1"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="heading1"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading"/> + <xs:element ref="heading2"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="heading2"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading"/> + <xs:element maxOccurs="unbounded" ref="contents1"/> + <xs:element maxOccurs="unbounded" ref="heading3"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="heading3"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading"/> + <xs:element maxOccurs="unbounded" ref="contents1"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="heading"> + <xs:complexType> + <xs:sequence> + <xs:element ref="object"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="contents1"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading"/> + <xs:element ref="content"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="contents2"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="contents2"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading"/> + <xs:element ref="content"/> + <xs:element minOccurs="0" maxOccurs="unbounded" ref="contents3"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="contents3"> + <xs:complexType> + <xs:sequence> + <xs:element ref="heading"/> + <xs:element ref="content"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="object"> + <xs:complexType> + <xs:sequence> + <xs:element ref="text"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="text"> + <xs:complexType mixed="true"> + <xs:choice minOccurs="0" maxOccurs="unbounded"> + <xs:element ref="italic"/> + <xs:element ref="bold"/> + <xs:element ref="endnote"/> + <xs:element ref="underscore"/> + <xs:element ref="image.path"/> + <xs:element ref="italic"/> + </xs:choice> + </xs:complexType> + </xs:element> + <xs:element name="bold" type="xs:NMTOKEN"/> + <xs:element name="endnote"> + <xs:complexType> + <xs:sequence> + <xs:element minOccurs="0" ref="symbol"/> + <xs:element ref="note"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="symbol" type="xs:string"/> + <xs:element name="note"> + <xs:complexType mixed="true"> + <xs:choice minOccurs="0" maxOccurs="unbounded"> + <xs:element ref="italic"/> + <xs:element ref="br"/> + </xs:choice> + </xs:complexType> + </xs:element> + <xs:element name="br"> + <xs:complexType/> + </xs:element> + <xs:element name="underscore"> + <xs:complexType> + <xs:sequence> + <xs:element ref="italic"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="image.path" type="xs:string"/> + <xs:element name="italic" type="xs:string"/> + <xs:element name="content"> + <xs:complexType> + <xs:sequence> + <xs:element maxOccurs="unbounded" ref="object"/> + </xs:sequence> + </xs:complexType> + </xs:element> +</xs:schema> |