ABE Broker WSDL

From Gcube Wiki
Jump to: navigation, search


<?xml version="1.0" encoding="UTF-8"?>
<definitions name="Broker"
	targetNamespace="http://gcube-system.org/namespaces/annotationmanagement/abe"
    xmlns:tns="http://gcube-system.org/namespaces/annotationmanagement/abe"
    xmlns:common="http://gcube-system.org/namespaces/annotationmanagement/abe/common"
 	xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:wsdlpp="http://www.globus.org/namespaces/2004/10/WSDLPreprocessor"
    xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd"
    xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"
    xmlns:coretypes="http://gcube-system.org/namespaces/common/core/types"   
    xmlns:corefaults="http://gcube-system.org/namespaces/common/core/faults"
  
    xmlns:provider="http://gcube-system.org/namespaces/common/core/porttypes/GCUBEProvider">
 

	<import namespace="http://gcube-system.org/namespaces/common/core/porttypes/GCUBEProvider" location="../gcube/common/core/providers/GCUBEProvider.wsdl"/>
    <import namespace="http://gcube-system.org/namespaces/common/core/faults" location="../gcube/common/core/faults/GCUBEFaults.wsdl"/> 


	<types>
		<xsd:schema targetNamespace="http://gcube-system.org/namespaces/annotationmanagement/abe">	
		<xsd:import namespace="http://gcube-system.org/namespaces/common/core/types" schemaLocation="../gcube/common/core/types/GCUBETypes.xsd"/>
		<xsd:import namespace="http://gcube-system.org/namespaces/annotationmanagement/abe/common" schemaLocation="CommonTypes.xsd"/>
				
		<xsd:element name="getCollectionIDs" type="coretypes:VOID" />
			<xsd:element name="getCollectionIDsResponse" type="coretypes:stringArray"/>
			
			<xsd:element name="getBAnnotationRS" type="xsd:string" />
			<xsd:element name="getBAnnotationRSResponse" type="xsd:string" />
				
			<xsd:element name="getBAnnotations">
				<xsd:complexType>
			 		<xsd:sequence>
			 			<xsd:element name="items" maxOccurs="unbounded">
							 	<xsd:complexType>
							 		<xsd:sequence>
								 		<xsd:element name="collID" type="coretypes:OID"/>
										<xsd:element name="objectIDs" type="coretypes:stringArray"/>
							 		</xsd:sequence>
			              		</xsd:complexType>		
			 			</xsd:element>				
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			
			<xsd:element name="getBAnnotationsResponse">
				<xsd:complexType>
			 		<xsd:sequence>
					 	<xsd:element name="items" maxOccurs="unbounded">
						 	<xsd:complexType>
						 		<xsd:sequence>
							 		<xsd:element name="collID" type="coretypes:OID"/>
									<xsd:element name="annotationsCollections" type="common:annotationCollectionMap"/>
						 		</xsd:sequence>
			            		</xsd:complexType>		
			 			</xsd:element>		
		 			</xsd:sequence>
				</xsd:complexType>
			 </xsd:element>
			
			<xsd:element name="getAnnotationManagers" type="coretypes:VOID" />
			<xsd:element name="getAnnotationManagersResponse">
				<xsd:complexType>
		 		<xsd:sequence>
			 		<xsd:element name="items" maxOccurs="unbounded">
						<xsd:complexType>
				 		<xsd:sequence>
					 		<xsd:element name="collID" type="coretypes:OID"/>
							<xsd:element name="epr" type="wsa:EndpointReferenceType"/>
						</xsd:sequence>
						</xsd:complexType>
					</xsd:element>
				</xsd:sequence>
				</xsd:complexType>	
			</xsd:element>
			
			<xsd:element name="addCollection" type="coretypes:OID" />
			<xsd:element name="addCollectionResponse" type="coretypes:VOID" />
				
			<!-- RESOURCE PROPERTIES -->
			
			<xsd:element name="AnnotationBrokerResourceProperties">
			<xsd:complexType>
				<xsd:sequence>
					<xsd:element name="CollectionIDs" type="coretypes:OID" minOccurs="1" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:complexType>
			</xsd:element> 	
	      
		</xsd:schema>
	</types>
	
	<message name="getAnnotationsInputMessage">
		<part name="parameters" element="tns:getBAnnotations"/>
	</message>
	<message name="getAnnotationsOutputMessage">
		<part name="parameters" element="tns:getBAnnotationsResponse"/>
	</message>

	<message name="getAnnotationRSInputMessage">
		<part name="parameters" element="tns:getBAnnotationRS"/>
	</message>
	<message name="getAnnotationRSOutputMessage">
		<part name="parameters" element="tns:getBAnnotationRSResponse"/>
	</message>
		
	<message name="getCollectionIDsInputMessage">
		<part name="parameters" element="tns:getCollectionIDs"/>
	</message>
	<message name="getCollectionIDsOutputMessage">
		<part name="parameters" element="tns:getCollectionIDsResponse"/>
	</message>
	
	<message name="getAnnotationManagersInputMessage">
		<part name="parameters" element="tns:getAnnotationManagers"/>
	</message>
	<message name="getAnnotationManagersOutputMessage">
		<part name="parameters" element="tns:getAnnotationManagersResponse"/>
	</message>
	
	<message name="addCollectionInputMessage">
	<part name="parameters" element="tns:addCollection"/>
	</message>
	<message name="addCollectionOutputMessage">
		<part name="parameters" element="tns:addCollectionResponse"/>
	</message>
	
	
	<portType name="BrokerPortType" 
	    wsdlpp:extends="provider:GCUBEProvider"
	    wsrpw:ResourceProperties="tns:AnnotationBrokerResourceProperties">
	    
		<operation name="getAnnotations">
			<documentation>
			</documentation>	
			<input message="tns:getAnnotationsInputMessage"/>
			<output message="tns:getAnnotationsOutputMessage"/>
			<fault name="fault" message="corefaults:GCUBEFaultMessage"></fault>
		</operation>
		
		<operation name="getAnnotationRS">
			<documentation>
			</documentation>	
			<input message="tns:getAnnotationRSInputMessage"/>
			<output message="tns:getAnnotationRSOutputMessage"/>
			<fault name="fault" message="corefaults:GCUBEFaultMessage"></fault>
		</operation>
		
		<operation name="getCollectionIDs">
			<documentation>
			</documentation>	
			<input message="tns:getCollectionIDsInputMessage"/>
			<output message="tns:getCollectionIDsOutputMessage"/>
			<fault name="fault" message="corefaults:GCUBEFaultMessage"></fault>
		</operation>
		
		<operation name="getAnnotationManagers">
			<documentation>
			</documentation>	
			<input message="tns:getAnnotationManagersInputMessage"/>
			<output message="tns:getAnnotationManagersOutputMessage"/>
			<fault name="fault" message="corefaults:GCUBEFaultMessage"></fault>
		</operation>
		
		<operation name="addCollection">
			<documentation>Adds a collection to the bound collection set.</documentation>
		<input message="tns:addCollectionInputMessage"/>
		<output message="tns:addCollectionOutputMessage"/>
		<fault name="fault" message="corefaults:GCUBEFaultMessage"></fault>
	</operation>
	
	</portType>

</definitions>