<?xml version="1.0" encoding="utf-8"?>
<!--

    Copyright (c) 2002, 2018 Oracle and/or its affiliates. All rights reserved.

    This program and the accompanying materials are made available under the
    terms of the Eclipse Public License v. 2.0, which is available at
    http://www.eclipse.org/legal/epl-2.0.

    This Source Code may also be made available under the following Secondary
    Licenses when the conditions for such availability set forth in the
    Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
    version 2 with the GNU Classpath Exception, which is available at
    https://www.gnu.org/software/classpath/license.html.

    SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0

-->

<xs:schema 
  targetNamespace="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configuration.xsd" 
  xmlns:xs="http://www.w3.org/2001/XMLSchema" 
  xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" 
  xmlns:tns="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configuration.xsd" 
  elementFormDefault="qualified">
  <xs:import namespace="http://schemas.xmlsoap.org/soap/envelope/" 
             schemaLocation="http://schemas.xmlsoap.org/soap/envelope/" />
	<xs:annotation>
	  <xs:documentation>
        This schema describes the types needed to describe the header common to all services. This
        header is used to pass the configuration of the demo to the various web services, and does not convey
        meaning required to implement a Supply Chain Management System.
    	  </xs:documentation>
	</xs:annotation>
	<xs:simpleType name="ConfigurationEndpointRole">
		<xs:restriction base="xs:NMTOKEN">
			<xs:enumeration value="LoggingFacility"/>
			<xs:enumeration value="Retailer"/>
			<xs:enumeration value="WarehouseA"/>
			<xs:enumeration value="WarehouseB"/>
			<xs:enumeration value="WarehouseC"/>
			<xs:enumeration value="ManufacturerA"/>
			<xs:enumeration value="ManufacturerB"/>
			<xs:enumeration value="ManufacturerC"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="ConfigurationEndpointType">
		<xs:simpleContent>
			<xs:extension base="xs:anyURI">
				<xs:attribute name="Role" type="tns:ConfigurationEndpointRole" use="required"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:element name="Configuration" type="tns:ConfigurationType"/>
	<xs:complexType name="ConfigurationType">
		<xs:sequence>
			<xs:annotation>
	  		  <xs:documentation>
            It is left to the application to make sure that this array contains one of each of the
            role values enumerated in ConfigurationEndpointType.
        		  </xs:documentation>
			</xs:annotation>
			<xs:element name="UserId" type="xs:string" nillable="false"/>
			<xs:element name="ServiceUrl" type="tns:ConfigurationEndpointType" nillable="false" minOccurs="8" maxOccurs="8"/>
		</xs:sequence>
		<xs:attribute ref="s:mustUnderstand" use="optional"/>
	</xs:complexType>
	<xs:element name="ConfigurationFault" type="tns:ConfigurationFaultType" />
	<xs:complexType name="ConfigurationFaultType">
		<xs:sequence>
			<xs:annotation>
				<xs:documentation>
            It is required that every ServiceUrl that is missing, contains a duplicate, or does not resolve to a
            reachable service will be indicated in the ErroneousElement array.
        			</xs:documentation>
			</xs:annotation>
			<xs:element name="Message" type="xs:string"/>
			<xs:element name="ErroneousElement" type="tns:ConfigurationEndpointRole" minOccurs="0" maxOccurs="8"/>
		</xs:sequence>
		<xs:attribute ref="s:mustUnderstand"/>
	</xs:complexType>
</xs:schema>
