<?xml version="1.0"?>
<!--
  ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements. See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership. The ASF licenses this file
  ~ to you 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 elementFormDefault="qualified"
        xmlns="http://www.w3.org/2001/XMLSchema"
        xmlns:tns="http://apache.org/axis2/schema/names"
        targetNamespace="http://apache.org/axis2/schema/names">
    
    <!-- Test Java language keywords and literals.
         See http://java.sun.com/docs/books/tutorial/java/nutsandbolts/_keywords.html
         for the complete list. -->
    <element name="TestLowerCaseLanguageKeywordsInSequence">
        <complexType>
            <sequence>
                <element name="abstract" type="string"/>
                <element name="assert" type="string"/>
                <element name="boolean" type="string"/>
                <element name="break" type="string"/>
                <element name="byte" type="string"/>
                <element name="case" type="string"/>
                <element name="catch" type="string"/>
                <element name="char" type="string"/>
                <element name="class" type="string"/>
                <element name="const" type="string"/>
                <element name="continue" type="string"/>
                <element name="default" type="string"/>
                <element name="do" type="string"/>
                <element name="double" type="string"/>
                <element name="else" type="string"/>
                <element name="enum" type="string"/>
                <element name="extends" type="string"/>
                <element name="final" type="string"/>
                <element name="finally" type="string"/>
                <element name="float" type="string"/>
                <element name="goto" type="string"/>
                <element name="if" type="string"/>
                <element name="implements" type="string"/>
                <element name="import" type="string"/>
                <element name="instanceof" type="string"/>
                <element name="int" type="string"/>
                <element name="interface" type="string"/>
                <element name="long" type="string"/>
                <element name="native" type="string"/>
                <element name="package" type="string"/>
                <element name="private" type="string"/>
                <element name="protected" type="string"/>
                <element name="public" type="string"/>
                <element name="return" type="string"/>
                <element name="short" type="string"/>
                <element name="static" type="string"/>
                <element name="strictfp" type="string"/>
                <element name="super" type="string"/>
                <element name="synchronized" type="string"/>
                <element name="this" type="string"/>
                <element name="throw" type="string"/>
                <element name="throws" type="string"/>
                <element name="transient" type="string"/>
                <element name="try" type="string"/>
                <element name="void" type="string"/>
                <element name="volatile" type="string"/>
                <element name="while" type="string"/>
            </sequence>
        </complexType>
    </element>
    <element name="TestCapitalizedLanguageKeywordsInSequence">
        <complexType>
            <sequence>
                <element name="Abstract" type="string"/>
                <element name="Assert" type="string"/>
                <element name="Boolean" type="string"/>
                <element name="Break" type="string"/>
                <element name="Byte" type="string"/>
                <element name="Case" type="string"/>
                <element name="Catch" type="string"/>
                <element name="Char" type="string"/>
                <!-- element name="Class" type="string"/ --> <!-- TODO: this fails -->
                <element name="Const" type="string"/>
                <element name="Continue" type="string"/>
                <element name="Default" type="string"/>
                <element name="Do" type="string"/>
                <element name="Double" type="string"/>
                <element name="Else" type="string"/>
                <element name="Enum" type="string"/>
                <element name="Extends" type="string"/>
                <element name="Final" type="string"/>
                <element name="Finally" type="string"/>
                <element name="Float" type="string"/>
                <element name="Goto" type="string"/>
                <element name="If" type="string"/>
                <element name="Implements" type="string"/>
                <element name="Import" type="string"/>
                <element name="Instanceof" type="string"/>
                <element name="Int" type="string"/>
                <element name="Interface" type="string"/>
                <element name="Long" type="string"/>
                <element name="Native" type="string"/>
                <element name="Package" type="string"/>
                <element name="Private" type="string"/>
                <element name="Protected" type="string"/>
                <element name="Public" type="string"/>
                <element name="Return" type="string"/>
                <element name="Short" type="string"/>
                <element name="Static" type="string"/>
                <element name="Strictfp" type="string"/>
                <element name="Super" type="string"/>
                <element name="Synchronized" type="string"/>
                <element name="This" type="string"/>
                <element name="Throw" type="string"/>
                <element name="Throws" type="string"/>
                <element name="Transient" type="string"/>
                <element name="Try" type="string"/>
                <element name="Void" type="string"/>
                <element name="Volatile" type="string"/>
                <element name="While" type="string"/>
            </sequence>
        </complexType>
    </element>
    <element name="TestLowerCaseLiteralsInSequence">
        <complexType>
            <sequence>
                <element name="null" type="string"/>
                <element name="true" type="string"/>
                <element name="false" type="string"/>
            </sequence>
        </complexType>
    </element>
    <element name="TestCapitalizedLiteralsInSequence">
        <complexType>
            <sequence>
                <element name="Null" type="string"/>
                <element name="True" type="string"/>
                <element name="False" type="string"/>
            </sequence>
        </complexType>
    </element>
    <element name="abstract" type="string"/>
    <element name="assert" type="string"/>
    <element name="boolean" type="string"/>
    <element name="break" type="string"/>
    <element name="byte" type="string"/>
    <element name="case" type="string"/>
    <element name="catch" type="string"/>
    <element name="char" type="string"/>
    <element name="class" type="string"/>
    <element name="const" type="string"/>
    <element name="continue" type="string"/>
    <element name="default" type="string"/>
    <element name="do" type="string"/>
    <element name="double" type="string"/>
    <element name="else" type="string"/>
    <element name="enum" type="string"/>
    <element name="extends" type="string"/>
    <element name="final" type="string"/>
    <element name="finally" type="string"/>
    <element name="float" type="string"/>
    <element name="goto" type="string"/>
    <element name="if" type="string"/>
    <element name="implements" type="string"/>
    <element name="import" type="string"/>
    <element name="instanceof" type="string"/>
    <element name="int" type="string"/>
    <element name="interface" type="string"/>
    <element name="long" type="string"/>
    <element name="native" type="string"/>
    <element name="package" type="string"/>
    <element name="private" type="string"/>
    <element name="protected" type="string"/>
    <element name="public" type="string"/>
    <element name="return" type="string"/>
    <element name="short" type="string"/>
    <element name="static" type="string"/>
    <element name="strictfp" type="string"/>
    <element name="super" type="string"/>
    <element name="synchronized" type="string"/>
    <element name="this" type="string"/>
    <element name="throw" type="string"/>
    <element name="throws" type="string"/>
    <element name="transient" type="string"/>
    <element name="try" type="string"/>
    <element name="void" type="string"/>
    <element name="volatile" type="string"/>
    <element name="while" type="string"/>
    
    <!-- Test some names of classes in java.lang. Note that some are already covered by the
         tests above (because ADB capitalizes XML names when generating class names). -->
    <element name="Integer" type="string"/>
    <element name="Character" type="string"/>
    <element name="Number" type="string"/>
    <element name="Object" type="string"/>
    <element name="String" type="string"/>
    <element name="System" type="string"/>
    <element name="Thread" type="string"/>
    
    <!-- Test potential collisions by case changing transformations and
         case insensitive file systems. -->
    <element name="CasecollisionelementA" type="string"/>
    <element name="casecollisionelementA" type="string"/>
    <element name="CaseCollisionElementB" type="string"/>
    <element name="CasecollisionelementB" type="string"/>
    <element name="TestCollisionElement">
        <complexType>
            <sequence>
                <element name="Param" type="string"/>
                <element name="param" type="string"/>
            </sequence>
        </complexType>
    </element>
</schema>