<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/" 
	xmlns:tns="http://sgrid.cc.gatech.edu/namespaces/trafficapp/colordetect/ColorDetectService" 
	xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing" 
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" 
	xmlns:wsdlpp="http://www.globus.org/namespaces/2004/10/WSDLPreprocessor" 
	xmlns:wsrlw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.wsdl" 
	xmlns:wsrp="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.xsd" 
	xmlns:wsrpw="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl" 
	xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
	name="ColorDetectService" 
	targetNamespace="http://sgrid.cc.gatech.edu/namespaces/trafficapp/colordetect/ColorDetectService">


<wsdl:import location="../../wsrf/properties/WS-ResourceProperties.wsdl" 
	namespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl"/>

<wsdl:import location="../../wsrf/lifetime/WS-ResourceLifetime.wsdl" 
	namespace="http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceLifetime-1.2-draft-01.wsdl"/>


<types>
<xsd:schema targetNamespace="http://sgrid.cc.gatech.edu/namespaces/trafficapp/colordetect/ColorDetectService"
	xmlns:tns="http://sgrid.cc.gatech.edu/namespaces/trafficapp/colordetect/ColorDetectService" 
    xmlns:xsd="http://www.w3.org/2001/XMLSchema">

	<!-- Requests and responses -->
	

	<!-- Define your Resource Properties here. For example:

	<xsd:element name="Value" type="xsd:int"/>

	<xsd:element name="ColorDetectResourceProperties">
	<xsd:complexType>
		<xsd:sequence>
			<xsd:element ref="tns:Value" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	</xsd:element>
	-->
	<xsd:element name="SourceURI" type="xsd:string"/>
	<xsd:element name="ProcTime" type="xsd:int"/>

	<xsd:element name="ColorDetectResourceProperties">
	<xsd:complexType>
		<xsd:sequence>
			<xsd:element ref="tns:SourceURI" minOccurs="1" maxOccurs="1"/>
			<xsd:element maxOccurs="1" minOccurs="1" ref="tns:ProcTime"/>
		</xsd:sequence>
	</xsd:complexType>
	</xsd:element>
	
	<!--BEGIN ELEMENT DEFINITIONS - DO NOT MODIFY THIS BLOCK!!! -->
	<xsd:element name="getProcessedItem">
		<xsd:complexType/>
	</xsd:element>
	<xsd:element name="getProcessedItemResponse">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="processedImage" type="xsd:string"/>
				<xsd:element name="latestTS" type="xsd:int"/>
				<xsd:element name="detectionFlag" type="xsd:int"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
		<xsd:element name="startProcessing">
		<xsd:complexType/>
	</xsd:element>
		<xsd:element name="startProcessingResponse">
		<xsd:complexType/>
	</xsd:element>
		<xsd:element name="stopProcessing">
		<xsd:complexType/>
	</xsd:element>
		<xsd:element name="stopProcessingResponse">
		<xsd:complexType/>
	</xsd:element>
	<!--END ELEMENT DEFINITIONS -->
</xsd:schema>
</types>

<!--BEGIN MESSAGE DEFINITIONS - DO NOT MODIFY THIS BLOCK!!! -->

<message name="getProcessedItemInputMessage">
	<part element="tns:getProcessedItem" name="parameters"/>
</message>

<message name="getProcessedItemOutputMessage">
	<part element="tns:getProcessedItemResponse" name="parameters"/>
</message>

<message name="startProcessingInputMessage">
	<part element="tns:startProcessing" name="parameters"/>
</message>

<message name="startProcessingOutputMessage">
	<part element="tns:startProcessingResponse" name="parameters"/>
</message>

<message name="stopProcessingInputMessage">
	<part element="tns:stopProcessing" name="parameters"/>
</message>

<message name="stopProcessingOutputMessage">
	<part element="tns:stopProcessingResponse" name="parameters"/>
</message>

<!--END MESSAGE DEFINITIONS -->

<!-- Don't forget to specify your Resource Properties. For example:
<portType name="ColorDetectPortType">
-->

<portType name="ColorDetectPortType" 
    wsdlpp:extends="wsrpw:GetResourceProperty 
                    wsrpw:GetMultipleResourceProperties 
                    wsrpw:SetResourceProperties
                    wsrpw:QueryResourceProperties"
                    
    wsrp:ResourceProperties="tns:ColorDetectResourceProperties">
	<!--BEGIN OPERATION DEFINITIONS - DO NOT MODIFY THIS BLOCK!!! -->
	<operation name="getProcessedItem">
		<input message="tns:getProcessedItemInputMessage"/>
		<output message="tns:getProcessedItemOutputMessage"/>	
	</operation>
	<operation name="startProcessing">
		<input message="tns:startProcessingInputMessage"/>
		<output message="tns:startProcessingOutputMessage"/>	
	</operation>
	<operation name="stopProcessing">
		<input message="tns:stopProcessingInputMessage"/>
		<output message="tns:stopProcessingOutputMessage"/>	
	</operation>
	
	<!--END OPERATION DEFINITIONS -->
</portType>
</definitions>
