<wsdl:definitions name="AppointmentService2"
                  targetNamespace="urn://epages.de/WebService/AppointmentService/2009/06"
                  xmlns:tns="urn://epages.de/WebService/AppointmentService/2009/06"
                  xmlns:appointmenttypes="urn://epages.de/WebService/AppointmentTypes/2009/06"
                  xmlns:xs="http://www.w3.org/2001/XMLSchema"
                  xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
                  xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
                  xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
                  xmlns="http://schemas.xmlsoap.org/wsdl/">
  <documentation>
    this is a web service for an epages e-commerce system.
    this service is a container for all methods in the appointment context.
    needs ePages 6.06 or higher
  </documentation>
  <wsdl:types>
    <xs:schema xmlns="http://www.w3.org/2001/XMLSchema"
               targetNamespace="urn://epages.de/WebService/AppointmentService/2009/06">
      <xs:import namespace="urn://epages.de/WebService/AppointmentTypes/2009/06"  schemaLocation="AppointmentTypes.xsd"/>
      <!-- GETINFO -->
      <xs:complexType name="type_GetInfo_In">
        <xs:annotation>
          <xs:documentation>
            input structure of an getInfo() appointment call.
            a simple list of appointment paths.
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="xs:string[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_GetInfo_Out">
        <xs:annotation>
          <xs:documentation>
            output structure of an getInfo() appointment call.
            see appointmenttypes:TGetInfo_Return??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TGetInfo_Return[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_AttributeNames_In">
        <xs:annotation>
          <xs:documentation>
            additional input of a getInfo() appointment call.
            a simple list of attribute names.
            defines the content of the returned attribute name-value list.
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="xs:string[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_LanguageCodes_In">
        <xs:annotation>
          <xs:documentation>
            additional input of a getInfo() appointment call.
            a simple list of language codes (e.g. 'en').
            defines the content of the returned localized values.
            this list is optional (all shop languages will be used if not provided).
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="xs:string[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>

      <!-- EXISTS -->
      <xs:complexType name="type_Exists_In">
        <xs:annotation>
          <xs:documentation>
            input structure of an exists() appointment call.
            a simple list of appointment paths.
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="xs:string[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_Exists_Out">
        <xs:annotation>
          <xs:documentation>
            output structure of an exists() appointment call.
            see appointmenttypes:TExists_Return??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TExists_Return[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <!-- DELETE -->
      <xs:complexType name="type_Delete_In">
        <xs:annotation>
          <xs:documentation>
            input structure of an delete() appointment call.
            a simple list of appointment paths.
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="xs:string[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_Delete_Out">
        <xs:annotation>
          <xs:documentation>
            output structure of an delete() appointment call.
            see appointmenttypes:TGetInfo_Return??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TDelete_Return[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <!-- UPDATE -->
      <xs:complexType name="type_Update_In">
        <xs:annotation>
          <xs:documentation>
            input structure of an update() appointment call.
            see appointmenttypes:TUpdate_Input??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TUpdate_Input[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_Update_Out">
        <xs:annotation>
          <xs:documentation>
            output structure of an update() appointment call.
            see appointmenttypes:TUpdate_Return??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TUpdate_Return[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <!-- CREATE -->
      <xs:complexType name="type_Create_In">
        <xs:annotation>
          <xs:documentation>
            input structure of an create() appointment call.
            see appointmenttypes:TCreate_Input??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TCreate_Input[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
      <xs:complexType name="type_Create_Out">
        <xs:annotation>
          <xs:documentation>
            output structure of an create() appointment call.
            see appointmenttypes:TCreate_Return??
          </xs:documentation>
        </xs:annotation>
        <xs:complexContent>
          <xs:restriction base="soapenc:Array">
            <xs:attribute ref="soapenc:arrayType"
                          wsdl:arrayType="appointmenttypes:TCreate_Return[]" />
          </xs:restriction>
        </xs:complexContent>
      </xs:complexType>
    </xs:schema>
  </wsdl:types>
  <message name="msg_GetInfo_Input">
    <part name="Appointments"
          type="tns:type_GetInfo_In" />
    <part name="Attributes"
          type="tns:type_AttributeNames_In" />
    <part name="LanguageCodes"
          type="tns:type_LanguageCodes_In" />
  </message>
  <message name="msg_GetInfo_Output">
    <part name="Appointments"
          type="tns:type_GetInfo_Out" />
  </message>
  <message name="msg_Exists_Input">
    <part name="Appointments"
          type="tns:type_Exists_In" />
  </message>
  <message name="msg_Exists_Output">
    <part name="Appointments"
          type="tns:type_Exists_Out" />
  </message>
  <message name="msg_Delete_Input">
    <part name="Appointments"
          type="tns:type_Delete_In" />
  </message>
  <message name="msg_Delete_Output">
    <part name="Appointments"
          type="tns:type_Delete_Out" />
  </message>
  <message name="msg_Update_Input">
    <part name="Appointments"
          type="tns:type_Update_In" />
  </message>
  <message name="msg_Update_Output">
    <part name="Appointments"
          type="tns:type_Update_Out" />
  </message>
  <message name="msg_Create_Input">
    <part name="Appointments"
          type="tns:type_Create_In" />
  </message>
  <message name="msg_Create_Output">
    <part name="Appointments"
          type="tns:type_Create_Out" />
  </message>
  <portType name="port_Appointment">
    <operation name="getInfo">
      <documentation>get information about a list of appointments</documentation>
      <input message="tns:msg_GetInfo_Input" />
      <output message="tns:msg_GetInfo_Output" />
    </operation>
    <operation name="exists">
      <documentation>check if a list of appointments exist.</documentation>
      <input message="tns:msg_Exists_Input" />
      <output message="tns:msg_Exists_Output" />
    </operation>
    <operation name="delete">
      <documentation>delete a list of appointments</documentation>
      <input message="tns:msg_Delete_Input" />
      <output message="tns:msg_Delete_Output" />
    </operation>
    <operation name="update">
      <documentation>update a list of appointments</documentation>
      <input message="tns:msg_Update_Input" />
      <output message="tns:msg_Update_Output" />
    </operation>
    <operation name="create">
      <documentation>create new appointments</documentation>
      <input message="tns:msg_Create_Input" />
      <output message="tns:msg_Create_Output" />
    </operation>
  </portType>
  <binding name="bind_Appointment_SOAP"
           type="tns:port_Appointment">
    <soap:binding style="rpc"
                  transport="http://schemas.xmlsoap.org/soap/http" />
    <operation name="getInfo">
      <soap:operation soapAction="urn://epages.de/WebService/AppointmentService/2009/06#getInfo" />
      <input>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
    <operation name="exists">
      <soap:operation soapAction="urn://epages.de/WebService/AppointmentService/2009/06#exists" />
      <input>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
    <operation name="delete">
      <soap:operation soapAction="urn://epages.de/WebService/AppointmentService/2009/06#delete" />
      <input>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
    <operation name="update">
      <soap:operation soapAction="urn://epages.de/WebService/AppointmentService/2009/06#update" />
      <input>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
    <operation name="create">
      <soap:operation soapAction="urn://epages.de/WebService/AppointmentService/2009/06#create" />
      <input>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </input>
      <output>
        <soap:body use="encoded"
                   namespace="urn://epages.de/WebService/AppointmentService/2009/06"
                   encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
      </output>
    </operation>
  </binding>
  <service name="AppointmentService">
    <documentation>epages Appointment Service</documentation>
    <port name="port_Appointment"
          binding="tns:bind_Appointment_SOAP">
      <soap:address location="http://localhost/epages/Store.soap" />
    </port>
  </service>
</wsdl:definitions>
