251 lines
7.4 KiB
XML
251 lines
7.4 KiB
XML
<!--
|
|
|
|
Copyright (c) 2001-2004 World Wide Web Consortium,
|
|
(Massachusetts Institute of Technology, Institut National de
|
|
Recherche en Informatique et en Automatique, Keio University). All
|
|
Rights Reserved. This program is distributed under the W3C's Software
|
|
Intellectual Property License. This program is distributed in the
|
|
hope that it will be useful, but WITHOUT ANY WARRANTY; without even
|
|
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
PURPOSE.
|
|
|
|
See W3C License http://www.w3.org/Consortium/Legal/ for more details.
|
|
|
|
-->
|
|
|
|
<!--
|
|
|
|
This schema is attempts to use every construct that could
|
|
be interrogated by DOM Level 3 and is no way intended to
|
|
be a general purpose schema for XHTML
|
|
|
|
-->
|
|
|
|
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
targetNamespace="http://www.w3.org/1999/xhtml"
|
|
xmlns="http://www.w3.org/1999/xhtml">
|
|
|
|
<xsd:element name="html">
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="head"/>
|
|
<xsd:element ref="body"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="head">
|
|
<xsd:complexType>
|
|
<xsd:sequence>
|
|
<xsd:element ref="meta"/>
|
|
<xsd:element ref="title"/>
|
|
<xsd:element ref="script" minOccurs="0" maxOccurs="unbounded"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="meta">
|
|
<xsd:complexType>
|
|
<xsd:attribute name="http-equiv" type="xsd:string" use="required"/>
|
|
<xsd:attribute name="content" type="xsd:string" use="required"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="script">
|
|
<xsd:complexType>
|
|
<xsd:simpleContent>
|
|
<xsd:extension base="xsd:string">
|
|
<xsd:attribute name="src" type="xsd:string" use="optional"/>
|
|
<xsd:attribute name="charset" type="xsd:string" use="optional"/>
|
|
<xsd:attribute name="type" type="xsd:string" use="required"/>
|
|
</xsd:extension>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:element name="title" type="xsd:string"/>
|
|
|
|
<xsd:element name="body">
|
|
<xsd:complexType>
|
|
<xsd:sequence minOccurs="0" maxOccurs="unbounded">
|
|
<xsd:element ref="p"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="onload" type="xsd:string" use="optional"/>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:simpleType name="classType">
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Yes"/>
|
|
<xsd:enumeration value="No"/>
|
|
<xsd:enumeration value="Yα"/>
|
|
<xsd:enumeration value="Y"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:complexType name="part1">
|
|
<xsd:sequence>
|
|
<xsd:element ref="em"/>
|
|
<xsd:element ref="strong"/>
|
|
<xsd:element ref="code"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:complexType name="pType">
|
|
<xsd:complexContent>
|
|
<xsd:extension base="part1">
|
|
<xsd:sequence>
|
|
<xsd:element ref="sup"/>
|
|
<xsd:element ref="var"/>
|
|
<xsd:element ref="acronym"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="title" type="xsd:string" use="optional"/>
|
|
<xsd:attribute name="class" type="classType" use="optional"/>
|
|
<xsd:attribute name="dir" type="dirType" use="optional" default="rtl"/>
|
|
<xsd:attribute name="foo" type="xsd:string" use="optional"/>
|
|
</xsd:extension>
|
|
</xsd:complexContent>
|
|
</xsd:complexType>
|
|
|
|
|
|
<xsd:element name="p">
|
|
<xsd:complexType>
|
|
<xsd:complexContent>
|
|
<xsd:restriction base="pType">
|
|
<xsd:sequence>
|
|
<xsd:element ref="em"/>
|
|
<xsd:element ref="strong"/>
|
|
<xsd:element ref="code"/>
|
|
<xsd:element ref="sup"/>
|
|
<xsd:element ref="var"/>
|
|
<xsd:element ref="acronym"/>
|
|
</xsd:sequence>
|
|
<xsd:attribute name="title" type="xsd:string" use="optional"/>
|
|
<xsd:attribute name="class" type="classType" use="optional"/>
|
|
<xsd:attribute name="dir" type="dirType" use="optional" default="rtl"/>
|
|
<xsd:attribute name="foo" type="xsd:string" use="prohibited"/>
|
|
</xsd:restriction>
|
|
</xsd:complexContent>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
|
|
<xsd:simpleType name="emp0001_3Type">
|
|
<xsd:restriction base="xsd:ID">
|
|
<xsd:enumeration value="EMP0001"/>
|
|
<xsd:enumeration value="EMP0002"/>
|
|
<xsd:enumeration value="EMP0003"/>
|
|
<xsd:enumeration value="EMP0004"/>
|
|
<xsd:enumeration value="EMP0005"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="emp0004_5Type">
|
|
<xsd:restriction base="xsd:ID">
|
|
<xsd:enumeration value="EMP0006"/>
|
|
<xsd:enumeration value="EMP0007"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="unboundedEmType">
|
|
<xsd:union memberTypes="emp0001_3Type emp0004_5Type"/>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="emType">
|
|
<xsd:restriction base="unboundedEmType">
|
|
<xsd:pattern value="EMP[0-9]*"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
|
|
<xsd:element name="em" type="emType"/>
|
|
|
|
<xsd:simpleType name="unboundedStrongType">
|
|
<xsd:list itemType="xsd:string"/>
|
|
</xsd:simpleType>
|
|
|
|
|
|
<xsd:simpleType name="strongType">
|
|
<xsd:restriction base="unboundedStrongType">
|
|
<xsd:maxLength value="100"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:element name="strong" type="strongType"/>
|
|
|
|
<!-- union of union and union of list -->
|
|
<xsd:simpleType name="integers">
|
|
<xsd:list itemType="xsd:integer"/>
|
|
</xsd:simpleType>
|
|
|
|
|
|
<xsd:simpleType name="sup">
|
|
<xsd:union memberTypes="emType integers xsd:string"/>
|
|
</xsd:simpleType>
|
|
<xsd:element name="sup" type="sup"/>
|
|
|
|
<!-- list of union of union -->
|
|
<xsd:simpleType name="supervisoryTitle">
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Specialist"/>
|
|
<xsd:enumeration value="Director"/>
|
|
<xsd:enumeration value="Manager"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="nonSupervisoryTitle">
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Accountant"/>
|
|
<xsd:enumeration value="Secretary"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="title">
|
|
<xsd:union memberTypes="supervisoryTitle nonSupervisoryTitle"/>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="field">
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="Department"/>
|
|
<xsd:enumeration value="Personnel"/>
|
|
<xsd:enumeration value="Computer"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:simpleType name="codeItem">
|
|
<xsd:union memberTypes="field title"/>
|
|
</xsd:simpleType>
|
|
<xsd:simpleType name="code">
|
|
<xsd:list itemType="codeItem"/>
|
|
</xsd:simpleType>
|
|
<xsd:element name="code" type="code"/>
|
|
|
|
<xsd:element name="span" type="xsd:string"/>
|
|
|
|
<xsd:complexType name="var" mixed="true">
|
|
<xsd:sequence>
|
|
<xsd:element ref="span" minOccurs="0"/>
|
|
</xsd:sequence>
|
|
</xsd:complexType>
|
|
|
|
<xsd:element name="var" type="var"/>
|
|
|
|
<xsd:simpleType name="dirType">
|
|
<xsd:restriction base="xsd:string">
|
|
<xsd:enumeration value="ltr"/>
|
|
<xsd:enumeration value="rtl"/>
|
|
</xsd:restriction>
|
|
</xsd:simpleType>
|
|
|
|
<xsd:element name="acronym">
|
|
<xsd:complexType>
|
|
<xsd:simpleContent>
|
|
<xsd:extension base="xsd:string">
|
|
<xsd:attribute name="class" type="classType" use="optional"/>
|
|
<xsd:attribute name="title" type="xsd:string" use="optional"/>
|
|
<xsd:attribute name="id" type="xsd:ID" use="optional"/>
|
|
</xsd:extension>
|
|
</xsd:simpleContent>
|
|
</xsd:complexType>
|
|
</xsd:element>
|
|
</xsd:schema>
|