<?xml version="1.0" encoding="UTF-8"?>
<!--
	September 14, 2002

	(c) Copyright 2002, The Web Services-Interoperability Organization (WS-I)
	Download or use of this file is governed by the Policies and Bylaws of WS-I.

	For more information, send email info@ws-i.org. 	
-->
<wsdl:definitions name="SampleConfigurator" 
	targetNamespace="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.wsdl" 
	xmlns="http://schemas.xmlsoap.org/wsdl/" 
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" 
	xmlns:tns="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.wsdl" 
	xmlns:cfg="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.xsd" 
	xmlns:cfgn="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configuration.xsd" 
      xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
     xmlns:wsi="http://ws-i.org/schemas/conformanceClaim/">

	<wsdl:types>
		<xs:schema>
			<xs:import namespace="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.xsd" 
				schemaLocation="Configurator.xsd"/>
			<xs:import namespace="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configuration.xsd" 
				schemaLocation="Configuration.xsd"/>
		</xs:schema>
	</wsdl:types>

	<wsdl:message name="getConfigurationOptionsRequest">
		<wsdl:documentation>
		This message is used to obtain all of the discovered showcase implementations of 
		the WS-I services.  It contains useful information on which selections can be made, 
		such as platform, in addition to vital information about the choices, such as the
		endpoints.  The service may perform discovery in response to this message or may
		return cached information.  When the refresh bit is on, the implementation must
		perform (re)discovery.
  		</wsdl:documentation>
		<wsdl:part name="refresh" element="cfg:refresh"/>
	</wsdl:message>

	<wsdl:message name="getConfigurationOptionsResponse">
		<wsdl:documentation>
		This message is returned in response to getConfigurationOptions and contains 
		a list of alternative showcase implementations of the WS-I Basic Sample Application
		Web services.  The endpoints for the services and information about the service is
		provided to aid in selection.
		</wsdl:documentation>
		<wsdl:part name="configOptions" element="cfg:configOptions"/>
	</wsdl:message>

	<wsdl:message name="configuratorFailedFault">
		<wsdl:documentation>
		This message is used to indicate the configurator was unable to obtain configuration options.
		</wsdl:documentation>
		<wsdl:part name="configError" element="cfg:configError"/>
	</wsdl:message>

	<wsdl:portType name="ConfiguratorPortType">
		<wsdl:operation name="getConfigurationOptions">
			<wsdl:input message="tns:getConfigurationOptionsRequest"/>
			<wsdl:output message="tns:getConfigurationOptionsResponse"/>
			<wsdl:fault message="tns:configuratorFailedFault" name="configuratorFailedFault"/>
		</wsdl:operation>
	</wsdl:portType>

	<wsdl:binding name="ConfiguratorBinding" type="tns:ConfiguratorPortType">
		<wsdl:documentation>
		        <wsi:Claim conformsTo="http://ws-i.org/profiles/basic1.0/" />
    	        </wsdl:documentation>
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
		<wsdl:operation name="getConfigurationOptions">
			<soap:operation soapAction="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.wsdl/getConfigurationOptions"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
			<wsdl:fault name="configuratorFailedFault">
				<soap:fault name="configuratorFailedFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
	</wsdl:binding>
</wsdl:definitions>
<!--
The following is an example of a SOAP message compliant with the above WSDL for the getConfigurationOptions request:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/envelope/">
  <s:Body>
    <m:refresh xmlns:m="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.xsd">false</m:refresh>
  </s:Body>
</s:Envelope>


The following is an example of a SOAP message compliant with the above WSDL for the getConfigurationOptions response:

<s:Envelope xmlns:s="http://schemas.xmlsoap.org/envelope/">
  <s:Body>
    <Q1:configOptions 
	xmlns:Q1="http://www.ws-i.org/SampleApplications/SupplyChainManagement/2002-08/Configurator.xsd">
      <Q1:configOption>
        <Q1:name>MyCo Retailer</Q1:name>
        <Q1:selectionParms>platform=WebSphere;OS=Linux</Q1:selectionParms>
        <Q1:configurationEndpoint Role="Retailer">http://www.myco.com/services/WS-I/Retailer<Q1:configurationEndpoint>
      </Q1:configOption>
      <Q1:configOption>
        <Q1:name>OtherCo Retailer</Q1:name>
        <Q1:selectionParms>platform=WebSphere;OS=Windows</Q1:selectionParms>
        <Q1:configurationEndpoint Role="Retailer">http://www.otherco.com/services/WS-I/Retailer<Q1:configurationEndpoint>
      </Q1:configOption>
    </Q1:configOptions>
  </s:Body>
</s:Envelope>

-->