<?xml version="1.0"?>
<!--
 - Copyright 2006-2012 The FLWOR Foundation.
 -
 - Licensed under the Apache License, Version 2.0 (the "License");
 - you may not use this file except in compliance with the License.
 - You may obtain a copy of the License at
 -
 - http://www.apache.org/licenses/LICENSE-2.0
 -
 - Unless required by applicable law or agreed to in writing, software
 - distributed under the License is distributed on an "AS IS" BASIS,
 - WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 - See the License for the specific language governing permissions and
 - limitations under the License.
-->
<schema xmlns="http://www.w3.org/2001/XMLSchema"
           targetNamespace="http://zorba.io/modules/xml-options"
           elementFormDefault="qualified" attributeFormDefault="qualified">
           
  <element name="options">
    <complexType>
      <all>
      
        <element name="base-uri" minOccurs="0" maxOccurs="1">
          <complexType>            
            <attribute name="value" type="anyURI" use="required"/>
          </complexType>
        </element>
        <element name="no-error" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="schema-validate" minOccurs="0" maxOccurs="1">
          <complexType>
            <attribute name="mode" default="strict">
              <simpleType>
                <restriction base="string">
                  <enumeration value="strict"/>
                  <enumeration value="lax"/>
                </restriction>
              </simpleType>           
            </attribute>
          </complexType>
        </element>      
        <element name="DTD-validate" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="DTD-load" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="default-DTD-attributes" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="parse-external-parsed-entity" minOccurs="0" maxOccurs="1">
          <complexType>
            <attribute name="skip-root-nodes" use="optional">
              <simpleType>
                <restriction base="int">
                  <minInclusive value="0"/>
                </restriction>
              </simpleType>
            </attribute>            
            <attribute name="skip-top-level-text-nodes" type="boolean" use="optional"/>
            <attribute name="error-on-doctype" type="boolean" use="optional"/>
          </complexType>
        </element>
        <element name="substitute-entities" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="xinclude-substitutions" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="remove-redundant-ns" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="no-CDATA" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="no-xinclude-nodes" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
        <element name="no-network-access" minOccurs="0" maxOccurs="1">
          <complexType/>
        </element>
      </all>
    </complexType>
  </element>


</schema>
