<?xml version="1.0" encoding="UTF-8"?>
<definitions name="whu_wps_chain"
             targetNamespace="http://xmlns.oracle.com/whu_wps_chain"
             xmlns="http://schemas.xmlsoap.org/wsdl/"
             xmlns:client="http://xmlns.oracle.com/whu_wps_chain"
             xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/">

	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	TYPE DEFINITION - List of services participating in this BPEL process
	The default output of the BPEL designer uses strings as input and 
	output to the BPEL Process. But you can define or import any XML 
	Schema type and us them as part of the message types.
	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->   
	<types>
		<schema attributeFormDefault="qualified"
			elementFormDefault="qualified"
			targetNamespace="http://xmlns.oracle.com/whu_wps_chain"
			xmlns="http://www.w3.org/2001/XMLSchema">
			<element name="whu_wps_chainProcessRequest">
   <complexType>
    <sequence>
    <element name="buffer1_data" type="string"/>
    <element name="buffer1_distance" type="double"/>
    <element name="buffer2_data" type="string"/>
    <element name="buffer2_distance" type="double"/>
    </sequence>
    </complexType>
   </element>

			<element name="whu_wps_chainProcessResponse">
				<complexType>
					<sequence>
						<element name="result" type="string"/>
					</sequence>
				</complexType>
			</element>
		</schema>
	</types>

	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	MESSAGE TYPE DEFINITION - Definition of the message types used as 
	part of the port type defintions
	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->      
	<message name="whu_wps_chainRequestMessage">
		<part name="payload" element="client:whu_wps_chainProcessRequest"/>
	</message>

	<message name="whu_wps_chainResponseMessage">
		<part name="payload" element="client:whu_wps_chainProcessResponse"/>
	</message>


	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	PORT TYPE DEFINITION - A port type groups a set of operations into
	a logical service unit.
	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<!-- portType implemented by the whu_wps_chain BPEL process -->
	<portType name="whu_wps_chain">
		<operation name="initiate">
			<input message="client:whu_wps_chainRequestMessage"/>
		</operation>
	</portType>

	<!-- portType implemented by the requester of whu_wps_chain BPEL process
	for asynchronous callback purposes
	-->
	<portType name="whu_wps_chainCallback">
		<operation name="onResult">
			<input message="client:whu_wps_chainResponseMessage"/>
		</operation>
	</portType>

	<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	PARTNER LINK TYPE DEFINITION
	the whu_wps_chain partnerLinkType binds the provider and
	requester portType into an asynchronous conversation.
	~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
	<plnk:partnerLinkType name="whu_wps_chain">
		<plnk:role name="whu_wps_chainProvider">
			<plnk:portType name="client:whu_wps_chain"/>
		</plnk:role>
		<plnk:role name="whu_wps_chainRequester">
			<plnk:portType name="client:whu_wps_chainCallback"/>
		</plnk:role>
	</plnk:partnerLinkType>
</definitions>
