<?xml version="1.0" encoding="utf-8"?>
<definitions
  name="lp"
  targetNamespace="urn:lp"
  xmlns:tns="urn:lp"
  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
  xmlns="http://schemas.xmlsoap.org/wsdl/">
  <types>
    <schema xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:lp">
      <element name="Pack">
        <complexType>
          <sequence>
            <element name="Header">
              <complexType>
                <sequence>
                  <element name="Header1" type="xsd:string"/>
                </sequence>
              </complexType>
            </element>
          </sequence>
        </complexType>
      </element>

      <element name="Envelope">
        <complexType>
          <sequence>
            <element name="Header">
              <complexType>
                <sequence>
                  <element name="Header2" type="xsd:string"/>
                </sequence>
              </complexType>
            </element>
          </sequence>
        </complexType>
      </element>

      <complexType name="Header">
        <sequence>
          <element name="Header3" type="xsd:string"/>
        </sequence>
      </complexType>

      <complexType name="ExtraInfo">
        <annotation>
          <documentation>Service specific information.</documentation>
        </annotation>
        <sequence>
          <element maxOccurs="unbounded" name="Entry">
            <complexType>
              <sequence>
                <element name="Key" type="xsd:string"/>
                <element name="Value" type="xsd:string"/>
              </sequence>
            </complexType>
          </element>
        </sequence>
      </complexType>

      <element name="login">
        <complexType>
          <sequence>
            <element name="loginRequest">
              <complexType>
                <sequence>
                  <element name="username" type="xsd:string"/>
                  <element name="password" type="xsd:string"/>
                  <element name="timezone" type="xsd:string" minOccurs="0" maxOccurs="1"/>
                </sequence>
              </complexType>
            </element>
          </sequence>
        </complexType>
      </element>

      <complexType name="loginResponse">
        <sequence>
          <element name="loginResult">
            <complexType>
              <sequence>
                <element name="sessionID" type="xsd:string"/>
              </sequence>
            </complexType>
          </element>
        </sequence>
      </complexType>

      <element name="loginResponse" type="tns:loginResponse"/>
    </schema>
  </types>

  <message name="login_in">
    <part name="parameters" element="tns:login" />
  </message>
  <message name="login_out">
    <part name="parameters" element="tns:loginResponse" />
  </message>

  <message name="echo_in">
    <part name="parameters" element="tns:Pack" />
  </message>
  <message name="echo_out">
    <part name="parameters" element="tns:Envelope" />
  </message>

  <portType name="lp_porttype">
    <operation name="login">
      <input message="tns:login_in" />
      <output message="tns:login_out" />
    </operation>

    <operation name="echo">
      <input message="tns:echo_in" />
      <output message="tns:echo_out" />
    </operation>
  </portType>

  <binding name="lp_binding" type="tns:lp_porttype">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    <operation name="login">
      <soap:operation soapAction="urn:lp:login" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>

    <operation name="echo">
      <soap:operation soapAction="urn:lp:echo" style="document" />
      <input>
        <soap:body use="literal" />
      </input>
      <output>
        <soap:body use="literal" />
      </output>
    </operation>
  </binding>

  <service name="lp_service">
    <port name="lp_service_port" binding="tns:lp_binding">
      <soap:address location="http://localhost:17171/" />
    </port>
  </service>
</definitions>
