<!--

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 intended to support specific DOM L3 tests 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:sequence>
  	</xsd:complexType>
  </xsd:element>
  
  <xsd:element name="title" type="xsd:string"/>
  <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="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:element name="p">
	  <xsd:complexType>
  	  		<xsd:choice minOccurs="0" maxOccurs="unbounded">
	  	  		<xsd:element ref="em"/>
	  	  		<xsd:element ref="code"/>
  	  	  		<xsd:element ref="sup"/>
  	  	  		<xsd:element ref="acronym"/>
  	  	  	</xsd:choice>
  	  </xsd:complexType>
  </xsd:element>
  
  <xsd:element name="em" type="xsd:string"/>
  
  <xsd:simpleType name="acronym">
  	  <xsd:restriction base="xsd:string">
  	  	  	  <xsd:whiteSpace value="preserve"/>
  	  </xsd:restriction>
  </xsd:simpleType>
  
  <xsd:element name="acronym" type="acronym"/>
  
  <xsd:simpleType name="code">
  	  	  	  <xsd:restriction base="xsd:string">
  	  	  	  	  <xsd:whiteSpace value="collapse"/>
  	  	  	  </xsd:restriction>
  </xsd:simpleType>

  <xsd:element name="code" type="code"/>
    
  <xsd:simpleType name="sup">
  	  	  	  <xsd:restriction base="xsd:string">
  	  	  	  	  <xsd:whiteSpace value="replace"/>
  	  	  	  </xsd:restriction>
  </xsd:simpleType>
  
  <xsd:element name="sup" type="sup"/>
  
</xsd:schema>
