<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright (c) 2003 World Wide Web Consortium,

 (Massachusetts Institute of Technology, European Research Consortium
 for Informatics and Mathematics, Keio University). All Rights
 Reserved. This work is distributed under the W3C(r) Software License
 [1] 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.

 [1] http://www.w3.org/Consortium/Legal/2002/copyright-software-20021231
-->

<!DOCTYPE xs:schema PUBLIC "-//W3C//DTD XMLSCHEMA 200102//EN"
                           "http://www.w3.org/2001/XMLSchema.dtd" [
]>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns:xi="http://www.w3.org/2003/XInclude"
           targetNamespace="http://www.w3.org/2003/XInclude"
           finalDefault="extension">

  <xs:annotation>
    <xs:documentation
		      source='http://www.w3.org/XML/Group/2003/10/WD-xinclude-20031029/'
		      xml:lang='en'>
	Note this schema is NOT a normative schema - -
	
	It contains the non-normative schema found in the XInclude
        specification
         http://www.w3.org/XML/Group/2003/10/WD-xinclude-20031029/
    </xs:documentation>
  </xs:annotation>
  <xs:element name="include" type="xi:includeType" />
  
  <xs:complexType name="includeType" mixed="true">
    <xs:choice minOccurs='0' maxOccurs='unbounded' >
      <xs:element ref='xi:fallback' />
      <xs:any namespace='##other' processContents='lax' />
      <xs:any namespace='##local' processContents='lax' />
    </xs:choice>
    <xs:attribute name="href" type="xs:anyURI" use="required"/>
    <xs:attribute name="parse" use="optional" default="xml"
                  type="xi:parseType" />
    <xs:attribute name="encoding" type="xs:string" use="optional"/>
    <xs:attribute name="xpointer" use="optional" type="xs:string"/>
    <xs:attribute name="accept" use="optional" type="xs:string"/>
    <xs:attribute name="accept-language" use="optional" type="xs:string"/>
    <xs:attribute name="accept-charset" use="optional" type="xs:string"/>
   <xs:anyAttribute namespace="##other" processContents="lax"/>
  </xs:complexType>
  
  <xs:simpleType name="parseType">
    <xs:restriction base="xs:token">
      <xs:enumeration value="xml"/>
      <xs:enumeration value="text"/>
    </xs:restriction>
  </xs:simpleType>
  
  <xs:element name="fallback" type="xi:fallbackType" />
  
  <xs:complexType name="fallbackType" mixed="true">
    <xs:choice minOccurs="0" maxOccurs="unbounded">
      <xs:element ref="xi:include"/>
      <xs:any namespace="##other" processContents="lax"/>
      <xs:any namespace="##local" processContents="lax"/>
    </xs:choice>
    <xs:anyAttribute namespace="##other" processContents="lax" />
  </xs:complexType>

</xs:schema>
