<?xml version="1.0" encoding="UTF-8"?>
<definitions
targetNamespace="http://device/def/"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://device/def/"
xmlns:xs="http://www.w3.org/2001/XMLSchema">
<types>
<xs:schema targetNamespace="http://device/def/" xmlns="http://device/def/">
<xs:complexType name="Passcode">
<xs:sequence>
<xs:element name="data" type="xs:unsignedByte" minOccurs="16" maxOccurs="16"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ConnectParameters">
<xs:sequence>
<xs:element name="user" type="xs:string"/>
<xs:element name="pass" type="Passcode"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ConnectResponse">
<xs:sequence>
<xs:element name="result" type="xs:boolean"/>
<xs:element name="pass" type="Passcode"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Connect" type="ConnectParameters"/>
<xs:element name="ConnectResp" type="ConnectResponse"/>
<xs:complexType name="GetParameters">
<xs:sequence>
<xs:element name="id" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="GetShortResponse">
<xs:sequence>
<xs:element name="id" type="xs:short"/>
<xs:element name="value" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:element name="GetShort" type="GetParameters"/>
<xs:element name="GetShortResp" type="GetShortResponse"/>
<xs:complexType name="SetShortParameters">
<xs:sequence>
<xs:element name="id" type="xs:short"/>
<xs:element name="value" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SetResponse">
<xs:sequence>
<xs:element name="id" type="xs:short"/>
<xs:element name="result" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
<xs:element name="SetShort" type="SetShortParameters"/>
<xs:element name="SetShortResp" type="SetResponse"/>
<xs:complexType name="StartStopParameters">
<xs:sequence>
<xs:element name="op_code" type="xs:short"/>
<xs:element name="param" type="xs:short"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="StartStopResponse">
<xs:sequence>
<xs:element name="op_code" type="xs:short"/>
<xs:element name="result" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
<xs:element name="Start" type="StartStopParameters"/>
<xs:element name="StartResp" type="StartStopResponse"/>
<xs:element name="Stop" type="StartStopParameters"/>
<xs:element name="StopResp" type="StartStopResponse"/>
</xs:schema>
</types>
<message name="ConnectResponseMessage">
<part element="tns:ConnectResp" name="parameters"/>
</message>
<message name="ConnectMessage">
<part element="tns:Connect" name="parameters"/>
</message>
<message name="GetShortResponseMessage">
<part element="tns:GetShortResp" name="parameters"/>
</message>
<message name="GetShortMessage">
<part element="tns:GetShort" name="parameters"/>
</message>
<message name="SetShortResponseMessage">
<part element="tns:SetShortResp" name="parameters"/>
</message>
<message name="SetShortMessage">
<part element="tns:SetShort" name="parameters"/>
</message>
<message name="StartResponseMessage">
<part element="tns:StartResp" name="parameters"/>
</message>
<message name="StartMessage">
<part element="tns:Start" name="parameters"/>
</message>
<message name="StopResponseMessage">
<part element="tns:StopResp" name="parameters"/>
</message>
<message name="StopMessage">
<part element="tns:Stop" name="parameters"/>
</message>
<portType name="DeviceIO">
<operation name="Connect">
<input message="tns:ConnectMessage"/>
<output message="tns:ConnectResponseMessage"/>
</operation>
<operation name="GetShort">
<input message="tns:GetShortMessage"/>
<output message="tns:GetShortResponseMessage"/>
</operation>
<operation name="SetShort">
<input message="tns:SetShortMessage"/>
<output message="tns:SetShortResponseMessage"/>
</operation>
<operation name="StartCmd">
<input message="tns:StartMessage"/>
<output message="tns:StartResponseMessage"/>
</operation>
<operation name="StopCmd">
<input message="tns:StopMessage"/>
<output message="tns:StopResponseMessage"/>
</operation>
</portType>
<binding name="DeviceIOBinding" type="tns:DeviceIO">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="Connect">
<soap:operation soapAction="DeviceIO#Connect"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="GetShort">
<soap:operation soapAction="DeviceIO#GetShort"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="SetShort">
<soap:operation soapAction="DeviceIO#SetShort"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="StartCmd">
<soap:operation soapAction="DeviceIO#Start"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
<operation name="StopCmd">
<soap:operation soapAction="DeviceIO#Stop"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="Service">
<port binding="tns:DeviceIOBinding" name="DevicePort">
<soap:address location="http://localhost:2000/DeviceIO"/>
</port>
</service>
</definitions>