<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2004 The Apache Software 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. -->

<xs:schema
   xmlns:xs='http://www.w3.org/2001/XMLSchema'
   xmlns='http://xml.apache.org/test/selectChldAtt'
   targetNamespace='http://xml.apache.org/test/selectChldAtt'
   elementFormDefault='qualified'>

  <xs:element name='doc'>
    <xs:complexType>
      <xs:sequence>
        <xs:choice minOccurs='0' maxOccurs='unbounded'>
          <xs:element name='int' type='xs:int' />
          <xs:element name='string' type='xs:string' />
          <xs:element name='elemA' type='typeA' />
          <xs:element name='elemB' type='typeB' />
          <xs:element name='elemC' type='typeC' />
        </xs:choice>
      </xs:sequence>
    </xs:complexType>
  </xs:element>

  <xs:complexType name="typeA">
    <xs:sequence>
      <xs:any namespace="##any" processContents="lax" minOccurs='0' maxOccurs='unbounded' />
    </xs:sequence>
    <xs:anyAttribute namespace="##any" processContents="lax" />
  </xs:complexType>

  <xs:complexType name="typeB">
    <xs:sequence>
      <xs:element name="someElement" type='xs:int' />

      <xs:any namespace="##other" processContents="lax" minOccurs='0' maxOccurs='unbounded' />
    </xs:sequence>

	<xs:attribute name='att1' type='xs:string' />

    <xs:anyAttribute namespace="##other" processContents="lax" />
  </xs:complexType>

  <xs:complexType name="typeC">
    <xs:sequence>
      <xs:element name="someElement" type='xs:string' />

      <xs:any namespace="##other" processContents="lax" minOccurs='0' maxOccurs='unbounded'  />
    </xs:sequence>
	<xs:attribute name='att1' type='xs:string' />

    <xs:anyAttribute namespace="##other" processContents="lax" />
  </xs:complexType>

  <xs:complexType name="typeExtendedC">
    <xs:complexContent>
      <xs:extension base='typeC'>
        <xs:sequence>
          <xs:element name="aditionalElement" type='xs:string' />
        </xs:sequence>
        <xs:attribute name='aditionalAtt' type='xs:string' />
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

  <xs:element name='topLevelElement' type='xs:string' />

  <xs:attribute name='price' type='xs:float' />
  <xs:attribute name='quant' type='xs:byte' />

</xs:schema>