<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Paul Harrison (Jodrell Bank Observatory) -->
<wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:agpd="http://www.ivoa.net/xml/CEA/parameters/v0.2" xmlns:cea="http://www.ivoa.net/xml/CEA/base/v0.2" xmlns:ceat="http://www.ivoa.net/xml/CEA/types/v0.2" xmlns:impl="urn:cea:ws:connector:impl:v0-2" xmlns:intf="urn:cea:ws:connector:intf:v0-2" xmlns:ns="http://www.ivoa.net/xml/CEA/ExecutionRecord/v0.2" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.astrogrid.org/schema/Credentials/v1" targetNamespace="urn:cea:ws:connector:intf:v0-2" name="CommonExecutionConnector">
	<wsdl:types>
		<xsd:schema targetNamespace="urn:cea:ws:connector:impl:v0-2" xmlns:ceapd="http://www.ivoa.net/xml/CEA/parameters/v0.2" xmlns="http://schemas.xmlsoap.org/wsdl/" elementFormDefault="qualified" attributeFormDefault="unqualified">
			<xsd:annotation>
				<xsd:documentation>AGApplictionBase needed for the application descriptions</xsd:documentation>
			</xsd:annotation>
			<xsd:import namespace="http://www.ivoa.net/xml/CEA/base/v0.2" schemaLocation="../schema/AGApplicationBase.xsd"/>
			<xsd:import namespace="http://www.ivoa.net/xml/CEA/types/v0.2" schemaLocation="../schema/CEATypes.xsd"/>
			<xsd:annotation>
				<xsd:documentation>The following types are all needed for the wrapped style of the interface</xsd:documentation>
			</xsd:annotation>
			<xsd:element name="ApplicationNameList">
				<xsd:annotation>
					<xsd:documentation>This is to be used to return a simple name list</xsd:documentation>
				</xsd:annotation>
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="ApplicationName" type="xsd:string" maxOccurs="unbounded"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="init">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element ref="ceapd:tool"/>
						<xsd:element name="jobstepID" type="ceat:job-identifier-type">
							<xsd:annotation>
								<xsd:documentation>The identifier for the job step being executed</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="initResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="initReturn" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The idetifier that can be used to track this particular execution instance of the application</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="abort">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be aborted.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="abortResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="abortReturn" type="xsd:boolean">
							<xsd:annotation>
								<xsd:documentation>returns true if the application was successfully aborted</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="registerProgressListener">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be executed.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="endpoint" type="xsd:anyURI">
							<xsd:annotation>
								<xsd:documentation>the endpoint of the listener interface to register</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="registerProgressListenerResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="registerReturn" type="xsd:boolean">
							<xsd:annotation>
								<xsd:documentation>returns true if the listener was successfully registered</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="registerResultsListener">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be executed.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
						<xsd:element name="endpoint" type="xsd:anyURI">
							<xsd:annotation>
								<xsd:documentation>the endpoint of the listener interface to register</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="registerResultsListenerResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="registerReturn" type="xsd:boolean">
							<xsd:annotation>
								<xsd:documentation>returns true if the listener was successfully registered</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="execute">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be executed.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="executeResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="abortReturn" type="xsd:boolean">
							<xsd:annotation>
								<xsd:documentation>returns true if the application execution was successfully started</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="queryExecutionStatus">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be queried</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="queryExecutionStatusResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="queryExecutionStatusReturn" type="ceat:message-type">
							<xsd:annotation>
								<xsd:documentation>This is the standard execution status message</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="getExecutionSummary">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be queried</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="getExecutionSummaryResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="getExecutionSummaryReturn" type="ceat:execution-summary-type">
							<xsd:annotation>
								<xsd:documentation>This is the standard execution status message</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="returnRegistryEntry">
				<xsd:complexType/>
			</xsd:element>
			<xsd:element name="returnRegistryEntryResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="returnRegistryEntryReturn" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>This should probably be a proper xml type when registry schema extension is defined.</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="ceaElmFault">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="mess" type="xsd:string"/>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="getResults">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="executionId" type="xsd:string">
							<xsd:annotation>
								<xsd:documentation>The identifier for the execution instance that is to be queried</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="getResultsResponse">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="getResultsReturn" type="ceat:result-list-type">
							<xsd:annotation>
								<xsd:documentation>A list of results</xsd:documentation>
							</xsd:annotation>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
		</xsd:schema>
	</wsdl:types>
	<wsdl:message name="initRequest">
		<wsdl:part name="parameters" element="impl:init"/>
	</wsdl:message>
	<wsdl:message name="executeRequest">
		<wsdl:part name="parameters" element="impl:execute"/>
	</wsdl:message>
	<wsdl:message name="ceaFault">
		<wsdl:part name="message" type="xsd:string"/>
	</wsdl:message>
	<wsdl:message name="getResultsResponse">
		<wsdl:part name="parameters" element="impl:getResultsResponse"/>
	</wsdl:message>
	<wsdl:message name="queryExecutionStatusRequest">
		<wsdl:part name="parameters" element="impl:queryExecutionStatus"/>
	</wsdl:message>
	<wsdl:message name="getExecutionSummaryRequest">
		<wsdl:part name="parameters" element="impl:getExecutionSummary"/>
	</wsdl:message>
	<wsdl:message name="abortRequest">
		<wsdl:part name="parameters" element="impl:abort"/>
	</wsdl:message>
	<wsdl:message name="registerResultsListenerRequest">
		<wsdl:part name="parameters" element="impl:registerResultsListener"/>
	</wsdl:message>
	<wsdl:message name="registerResultsListenerResponse">
		<wsdl:part name="parameters" element="impl:registerResultsListenerResponse"/>
	</wsdl:message>
	<wsdl:message name="registerProgressListenerRequest">
		<wsdl:part name="parameters" element="impl:registerProgressListener"/>
	</wsdl:message>
	<wsdl:message name="registerProgressListenerResponse">
		<wsdl:part name="parameters" element="impl:registerProgressListenerResponse"/>
	</wsdl:message>
	<wsdl:message name="returnRegistryEntryRequest">
		<wsdl:part name="parameters" element="impl:returnRegistryEntry"/>
	</wsdl:message>
	<wsdl:message name="getResultsRequest">
		<wsdl:part name="parameters" element="impl:getResults"/>
	</wsdl:message>
	<wsdl:message name="initResponse">
		<wsdl:part name="parameters" element="impl:initResponse"/>
	</wsdl:message>
	<wsdl:message name="returnRegistryEntryResponse">
		<wsdl:part name="parameters" element="impl:returnRegistryEntryResponse"/>
	</wsdl:message>
	<wsdl:message name="queryExecutionStatusResponse">
		<wsdl:part name="parameters" element="impl:queryExecutionStatusResponse"/>
	</wsdl:message>
	<wsdl:message name="getExecutionSummaryResponse">
		<wsdl:part name="parameters" element="impl:getExecutionSummaryResponse"/>
	</wsdl:message>
	<wsdl:message name="abortResponse">
		<wsdl:part name="parameters" element="impl:abortResponse"/>
	</wsdl:message>
	<wsdl:message name="executeResponse">
		<wsdl:part name="parameters" element="impl:executeResponse"/>
	</wsdl:message>
	<wsdl:portType name="CommonExecutionConnector">
		<wsdl:operation name="init" parameterOrder="">
			<wsdl:input name="initRequest" message="intf:initRequest"/>
			<wsdl:output name="initResponse" message="intf:initResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="execute" parameterOrder="">
			<wsdl:input name="executeRequest" message="intf:executeRequest"/>
			<wsdl:output name="executeResponse" message="intf:executeResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="abort" parameterOrder="">
			<wsdl:input name="abortRequest" message="intf:abortRequest"/>
			<wsdl:output name="abortResponse" message="intf:abortResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="registerResultsListener" parameterOrder="">
			<wsdl:input name="registerResultsListenerRequest" message="intf:registerResultsListenerRequest"/>
			<wsdl:output name="registerResultsListenerResponse" message="intf:registerResultsListenerResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="registerProgressListener" parameterOrder="">
			<wsdl:input name="registerProgressListenerRequest" message="intf:registerProgressListenerRequest"/>
			<wsdl:output name="registerProgressListenerResponse" message="intf:registerProgressListenerResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="queryExecutionStatus" parameterOrder="">
			<wsdl:input name="queryExecutionStatusRequest" message="intf:queryExecutionStatusRequest"/>
			<wsdl:output name="queryExecutionStatusResponse" message="intf:queryExecutionStatusResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="getExecutionSummary" parameterOrder="">
			<wsdl:input name="getExecutionSummaryRequest" message="intf:getExecutionSummaryRequest"/>
			<wsdl:output name="getExecutionSummaryResponse" message="intf:getExecutionSummaryResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
		<wsdl:operation name="returnRegistryEntry">
			<wsdl:input name="returnRegistryEntryRequest" message="intf:returnRegistryEntryRequest"/>
			<wsdl:output name="returnRegistryEntryResponse" message="intf:returnRegistryEntryResponse"/>
		</wsdl:operation>
		<wsdl:operation name="getResults">
			<wsdl:input message="intf:getResultsRequest"/>
			<wsdl:output message="intf:getResultsResponse"/>
			<wsdl:fault name="ceaFault" message="intf:ceaFault"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="CommonExecutionConnectorServiceSoapBinding" type="intf:CommonExecutionConnector">
		<wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="init">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="abort">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="registerResultsListener">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="registerProgressListener">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="execute">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="queryExecutionStatus">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="getExecutionSummary">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
		<wsdl:operation name="returnRegistryEntry">
			<wsdlsoap:operation/>
			<wsdl:input>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body parts="parameters" use="literal" namespace="urn:cea:ws:connector:intf:v0-2"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="getResults">
			<wsdlsoap:operation soapAction="capeconnect:CommonExecutionConnectorService:CommonExecutionConnector#getResults"/>
			<wsdl:input>
				<wsdlsoap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<wsdlsoap:body use="literal"/>
			</wsdl:output>
			<wsdl:fault name="ceaFault">
				<wsdlsoap:fault name="ceaFault" use="literal"/>
			</wsdl:fault>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="CommonExecutionConnectorService">
		<wsdl:port name="CommonExecutionConnectorService" binding="intf:CommonExecutionConnectorServiceSoapBinding">
			<wsdlsoap:address location="http://localhost:8080/cea/services/CommonExecutionConnectorService"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>
