<?xml version="1.0" encoding="UTF-8"?>

<xsd:schema
        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns:tns="http://java.sun.com/xml/ns/jax-rpc/ri/config"
        targetNamespace="http://java.sun.com/xml/ns/jax-rpc/ri/config"
        elementFormDefault="qualified"
        attributeFormDefault="unqualified"
        version="1.0">

    <xsd:annotation>
        <xsd:documentation>
        This is the schema for wscompile configuration files.
        The only allowed top-level element is "configuration".
        </xsd:documentation>
    </xsd:annotation>

    <xsd:element name="configuration">
        <xsd:annotation>
            <xsd:documentation>
            The top-level element. It must contain one out of three possible elements,
            corresponding to three different ways to feed service information to the tool.
            
            Elements: (mutually exclusive)
                "service" - a service description based on a set of service endpoint interfaces;
                "wsdl" - a WSDL document to import and process;
                "modelfile" - a previously saved model file (-model option in wscompile).
                "j2eeMappingFile" - J2EE mapping information defined by JSR 109
            </xsd:documentation>
        </xsd:annotation>
        <xsd:complexType>
            <xsd:sequence>
                <xsd:choice>
                    <xsd:element name="service" type="tns:serviceType"/>
                    <xsd:element name="wsdl" type="tns:wsdlType"/>
                    <xsd:element name="modelfile" type="tns:modelfileType"/>
			  <xsd:element name="j2eeMappingFile" type="tns:j2eeMappingFileType"/>
                </xsd:choice>
            </xsd:sequence>
        </xsd:complexType>
    </xsd:element>

    <xsd:complexType name="serviceType">
        <xsd:annotation>
            <xsd:documentation>
            A description of a service based on a set of Java interfaces (called "service endpoint
            interfaces" in the spec).
            
            Attributes:
                "name" - service name;
                "targetNamespace" - target namespace for the generated WSDL document;
                "typeNamespace" - target namespace for the XML Schema embedded in the generated WSDL document;
                "packageName" - name of the Java package to use by default.
                
            Elements:
                "interface"* - a sequence of service endpoint interface descriptions;
                "typeMappingRegistry"? - the type mapping registry to use for this service;
                "handlerChains"? - default handler chains for the endpoints in this service;
                "namespaceMappingRegistry"? - XML namespace to Java package mapping information.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="interface" type="tns:interfaceType" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element name="typeMappingRegistry" type="tns:typeMappingRegistryType" minOccurs="0"/>
            <xsd:element name="handlerChains" type="tns:handlerChainsType" minOccurs="0"/>
            <xsd:element name="namespaceMappingRegistry" type="tns:namespaceMappingRegistryType" minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="targetNamespace" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="typeNamespace" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="packageName" type="xsd:string" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="interfaceType">
        <xsd:annotation>
            <xsd:documentation>
            An endpoint definition based on a service endpoint interface.
            
            Attributes:
                "name" - name of the service endpoint interface (a Java interface);
                "servantName" (optional) - name of the service endpoint implementation class;
                "soapAction" (optional) - SOAPAction string to use for all operations in the interface;
                "soapActionBase" (optional) - base URI for the SOAPAction string; the SOAPAction for
                    a given operation will be obtained by appending the operation name to the value provided
                    here; this attribute is exclusive with the "soapAction" one.
                    
            Elements:
                "handlerChains" - specifies the handler chains for this endpoint.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="handlerChains" type="tns:handlerChainsType" minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="servantName" type="xsd:string"/>
        <xsd:attribute name="soapAction" type="xsd:string"/>
        <xsd:attribute name="soapActionBase" type="xsd:string"/>
    </xsd:complexType>

    <xsd:complexType name="wsdlType">
        <xsd:annotation>
            <xsd:documentation>
            A description of a service based on an existing WSDL document.
            
            Attributes:
                "location" - URL of the WSDL document;
                "packageName" - name of the Java package to use by default.
                
            Elements:
                "typeMappingRegistry"? - the type mapping registry to use for this service;
                "handlerChains"? - default handler chains for the endpoints in this service;
                "namespaceMappingRegistry"? - XML namespace to Java package mapping information.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="typeMappingRegistry" type="tns:typeMappingRegistryType" minOccurs="0"/>
            <xsd:element name="handlerChains" type="tns:handlerChainsType" minOccurs="0"/>
            <xsd:element name="namespaceMappingRegistry" type="tns:namespaceMappingRegistryType" minOccurs="0"/>
        </xsd:sequence>
        <xsd:attribute name="location" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="packageName" type="xsd:string" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="modelfileType">
        <xsd:annotation>
            <xsd:documentation>
            A description of a service based on an existing model file.
            
            Attributes:
                "location" - URL of the model file (typically ending in .xml.gz);
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
        </xsd:sequence>
        <xsd:attribute name="location" type="xsd:anyURI" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="j2eeMappingFileType">
        <xsd:annotation>
            <xsd:documentation>
            
            Attirbutes:
                "location" - the J2EE mapping file URL
                "wsdlLocation" - the wsdl file URL
                
            </xsd:documentation>
        </xsd:annotation>

        <xsd:attribute name="location" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="wsdlLocation" type="xsd:anyURI" use="required"/>
    </xsd:complexType>


    <xsd:complexType name="handlerChainsType">
        <xsd:annotation>
            <xsd:documentation>
            A set of handlerChains.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="chain" type="tns:chainType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="chainType">
        <xsd:annotation>
            <xsd:documentation>
            A handler chain.
            
            Attributes:
                "runAt" - specifies whether the chain must run on the client or the server;
                "roles" - the SOAP roles for the chain.
                
            Elements:
                "handler"* - a sequence of handlers that form this chain.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="handler" type="tns:handlerType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="runAt" type="tns:runAtType" use="required"/>
        <xsd:attribute name="roles" type="tns:roleListType"/>
    </xsd:complexType>

    <xsd:simpleType name="roleListType">
        <xsd:annotation>
            <xsd:documentation>
            A list of SOAP roles, i.e. a list of URIs.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:list itemType="xsd:anyURI"/>
    </xsd:simpleType>

    <xsd:complexType name="handlerType">
        <xsd:annotation>
            <xsd:documentation>
            A handler description.
            
            Attributes:
                "className" - the name of the handler's class;
                "headers" - the names of the headers consumed by this handler.
            
            Elements:
                "property"* - initialization properties for this handler.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="property" type="tns:propertyType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="className" type="xsd:string" use="required"/>
        <xsd:attribute name="headers" type="tns:headerListType"/>
    </xsd:complexType>

    <xsd:simpleType name="headerListType">
        <xsd:annotation>
            <xsd:documentation>
            A list of header names, i.e. a list of QNames.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:list itemType="xsd:QName"/>
    </xsd:simpleType>

    <xsd:complexType name="propertyType">
        <xsd:annotation>
            <xsd:documentation>
            An initialization property for a handler.
            
            Attributes:
                "name" - the name of the property;
                "value" - its value.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
        <xsd:attribute name="value" type="xsd:string" use="required"/>
    </xsd:complexType>

    <xsd:simpleType name ="runAtType">
        <xsd:annotation>
            <xsd:documentation>
            The places a handler chain can run at, one of "client" or "server".
            </xsd:documentation>
        </xsd:annotation>

        <xsd:restriction base="xsd:string">
            <xsd:enumeration value="client"/>
            <xsd:enumeration value="server"/>
        </xsd:restriction>
    </xsd:simpleType>

    <xsd:complexType name="typeMappingRegistryType">
        <xsd:annotation>
            <xsd:documentation>
            A type mapping registry.
            
            Elements:
                "import"? - a list of XML Schema documents that describe user-defined types.
                "typeMapping"* - a sequence of type mappings, one per encoding.
                "additionalTypes"? - a list of additional Java types that should be processed even if
                    don't appear in the interfaces for the service.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="import" type="tns:importType" minOccurs="0"/>
            <xsd:element name="typeMapping" type="tns:typeMappingType" minOccurs="0" maxOccurs="unbounded"/>
            <xsd:element name="additionalTypes" type="tns:additionalTypesType" minOccurs="0"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="importType">
            <xsd:annotation>
            <xsd:documentation>
            A list of schema documents to import, usually describing schema types used
            by pluggable serializers.
            
            Elements:
                "schema"* - a list of schema documents to import.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="schema" type="tns:schemaType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="schemaType">
        <xsd:annotation>
            <xsd:documentation>
            One schema document to be imported.
            Attributes:
                "namespace" - the namespace that the document describes;
                "location" - a URL pointing to the schema document.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
        </xsd:sequence>
        <xsd:attribute name="namespace" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="location" type="xsd:anyURI" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="typeMappingType">
        <xsd:annotation>
            <xsd:documentation>
            A type mapping for a particular encoding.
            
            Attributes:
                "encodingStyle" - the URI denoting the encoding.
            
            Elements:
                "entry"* - a list of type mapping entries.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="entry" type="tns:entryType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
        <xsd:attribute name="encodingStyle" type="xsd:anyURI" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="entryType">
        <xsd:annotation>
            <xsd:documentation>
            An entry in a type mapping.
            
            Attributes:
                "schemaType" - the name of a schema type;
                "javaType" - the name of the corresponding Java class;
                "serializerFactory" - the name of the serializer factory class to use for this type;
                "deserializerFactory" - the name of the deserializer factory class to use for this type.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
        </xsd:sequence>
        <xsd:attribute name="schemaType" type="xsd:QName" use="required"/>
        <xsd:attribute name="javaType" type="xsd:string" use="required"/>
        <xsd:attribute name="serializerFactory" type="xsd:string" use="required"/>
        <xsd:attribute name="deserializerFactory" type="xsd:string" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="additionalTypesType">
        <xsd:annotation>
            <xsd:documentation>
            A list of additional Java types to be processed by the tool..
            
            Elements:
                "class"* - a list of classes to be processed.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
            <xsd:element name="class" type="tns:classType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="classType">
        <xsd:annotation>
            <xsd:documentation>
            A Java class description.
            
            Attributes:
                "class" - the name of the class.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
        </xsd:sequence>
        <xsd:attribute name="name" type="xsd:string" use="required"/>
    </xsd:complexType>

    <xsd:complexType name="namespaceMappingRegistryType">
        <xsd:annotation>
            <xsd:documentation>
            A registry mapping XML namespace to/from Java packages.
            
            Elements:
                "namespaceMapping"* - a list of mappings.
            </xsd:documentation>
        </xsd:annotation>
        
        <xsd:sequence>
            <xsd:element name="namespaceMapping" type="tns:namespaceMappingType" minOccurs="0" maxOccurs="unbounded"/>
        </xsd:sequence>
    </xsd:complexType>

    <xsd:complexType name="namespaceMappingType">
        <xsd:annotation>
            <xsd:documentation>
            One XML namespace to/from Java package mapping.
            
            Attributes:
                "namespace" - XML namespace name;
                "packageName" - Java package name.
            </xsd:documentation>
        </xsd:annotation>

        <xsd:sequence>
        </xsd:sequence>
        <xsd:attribute name="namespace" type="xsd:anyURI" use="required"/>
        <xsd:attribute name="packageName" type="xsd:string" use="required"/>
    </xsd:complexType>

</xsd:schema>
