<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions name="SynXis" targetNamespace="http://www.Enablez.com/ws/SynXis" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:htng="http://htng.org/1.1/Header/" xmlns:tns="http://www.Enablez.com/ws/SynXis" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:ota="http://www.opentravel.org/OTA/2003/05" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/">
  <wsdl:types>
    <xsd:schema elementFormDefault="qualified" targetNamespace="http://htng.org/1.1/Header/"> 
		  <xsd:element name="HTNGHeader" type="htng:HTNGHeader"/> 
		  <xsd:complexType name="HTNGHeader"> 
			  <xsd:sequence> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="From" type="htng:AuthenticatedEndPoint"/> 
				  <xsd:element maxOccurs="unbounded" minOccurs="0" name="To" type="htng:EndPoint"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="ReplyTo" type="htng:EndPoint"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="FaultTo" type="htng:EndPoint"/> 
				  <xsd:element maxOccurs="1" minOccurs="1" name="TimeStamp" type="xsd:dateTime"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="EchoToken" type="xsd:string"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="TransactionId" type="xsd:string"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="Action" type="xsd:string"/> 
			  </xsd:sequence> 
			  <xsd:anyAttribute/> 
		  </xsd:complexType> 
		  <xsd:complexType name="AuthenticatedEndPoint"> 
			  <xsd:complexContent mixed="false"> 
				  <xsd:extension base="htng:EndPoint"> 
					  <xsd:sequence> 
						  <xsd:element maxOccurs="1" minOccurs="0" name="Credential" type="htng:Credential"/> 
						  <xsd:element maxOccurs="1" minOccurs="0" name="AuthToken" type="xsd:string"/> 
					  </xsd:sequence> 
				  </xsd:extension> 
			  </xsd:complexContent> 
		  </xsd:complexType> 
		  <xsd:complexType name="EndPoint"> 
			  <xsd:sequence> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="SystemId" type="xsd:string"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="Address" type="xsd:anyURI"/> 
			  </xsd:sequence> 
		  </xsd:complexType> 
		  <xsd:complexType name="Credential"> 
			  <xsd:sequence> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="userName" type="xsd:string"/> 
				  <xsd:element maxOccurs="1" minOccurs="0" name="password" type="xsd:string"/> 
			  </xsd:sequence> 
		  </xsd:complexType> 
	  </xsd:schema>
    <xs:schema elementFormDefault="qualified" id="OTA2003A" targetNamespace="http://www.opentravel.org/OTA/2003/05" version="1.000" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:xs="http://www.w3.org/2001/XMLSchema">

      <xs:include schemaLocation="SynXis?xsd=OTA_CommonTypes.xsd"/>
      <xs:include schemaLocation="SynXis?xsd=OTA_HotelReservation.xsd"/>

      <xs:element name="OTA_CancelRQ"> 
				<xs:annotation> 
					<xs:documentation xml:lang="en"> 
						A generic message, available as an action on several OTA services which requests a server to cancel the booking identified by the UniqueID element.	
					</xs:documentation> 
				</xs:annotation> 
				<xs:complexType> 
					<xs:sequence> 
						<xs:element maxOccurs="5" name="UniqueID" type="UniqueID_Type"> 
							<xs:annotation> 
								<xs:documentation>
									This allows a user to send more than one UniqueID where there is more than one UniqueID associated to a single reservation 
									(e.g. confirmation number and PNR record locator).
								</xs:documentation> 
							</xs:annotation> 
						</xs:element> 
						<xs:element minOccurs="0" name="Verification" type="VerificationType"> 
							<xs:annotation> 
								<xs:documentation>
									This is to be used for verification that the record being canceled is the specific record requested. 
									This is optional and is intended to provide a more secure mechanism to ensure the correct record is being canceled. 
								</xs:documentation> 
							</xs:annotation> 
						</xs:element> 
						<xs:element minOccurs="0" ref="TPA_Extensions"/> 
					</xs:sequence> 
					<xs:attributeGroup ref="OTA_PayloadStdAttributes"/> 
					<!--<xs:attributeGroup ref="ReqRespVersion"/>--> 
					<xs:attribute name="CancelType" type="TransactionActionType" use="required"/> 
				</xs:complexType> 
			</xs:element>
			<xs:element name="OTA_CancelRS"> 
				<xs:complexType> 
					<xs:choice> 
						<xs:sequence> 
							<xs:element name="Success" type="SuccessType"/> 
							<xs:element maxOccurs="5" name="UniqueID" type="UniqueID_Type"> 
								<xs:annotation> 
									<xs:documentation>Contains the reference(s) of the items being cancelled.</xs:documentation> 
								</xs:annotation> 
							</xs:element> 
							<xs:element minOccurs="0" name="CancelInfoRS" type="CancelInfoRSType"> 
								<xs:annotation> 
									<xs:documentation>May contain rules associated with canceling a reservation as well as the supplier's cancellation number.</xs:documentation> 
								</xs:annotation> 
							</xs:element> 
						</xs:sequence> 
						<xs:element name="Warnings" type="WarningsType"/> 
					</xs:choice> 
					<xs:attributeGroup ref="OTA_PayloadStdAttributes"/> 
					<xs:attribute name="CancelType" type="TransactionStatusType" use="required"/> 
				</xs:complexType> 
			</xs:element>
      <xs:element name="OTA_HotelResModifyNotifRQ">
        <xs:annotation>
          <xs:documentation>
            This is a request message for modifying a reservation. It is used for a full overlay of the reservation.
            When changing data that requires an availability check, this message assumes the availability is known
            (if availability is not known an availability check containing the reservation ID may be useful).
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <!--<xs:element maxOccurs="2" minOccurs="0" name="UniqueID" type="UniqueID_Type">
              <xs:annotation>
                <xs:documentation>This represents the batch ID for a group of modified items.</xs:documentation>
              </xs:annotation>
            </xs:element>-->
            <xs:element minOccurs="0" name="HotelResModifies" type="HotelResModifyType">
              <xs:annotation>
                <xs:documentation>A collection of reservations to be modified.</xs:documentation>
              </xs:annotation>
            </xs:element>
            <xs:element minOccurs="0" name="Services" type="ServicesType"/>
          </xs:sequence>
          <xs:attributeGroup ref="OTA_PayloadStdAttributes"/>
          <xs:attribute name="ResStatus" type="TransactionActionType" use="optional">
            <xs:annotation>
              <xs:documentation xml:lang="en">
                Indicates the status of the reservation represented by the message.  This value will always be Book.
              </xs:documentation>
            </xs:annotation>
          </xs:attribute>
        </xs:complexType>
      </xs:element>
      <xs:element name="OTA_HotelResModifyNotifRS">
        <xs:annotation>
          <xs:documentation>
            This is the response message for a full overlay modification to a reservation.
            The response could be as simple as indicating the modification was made or as complex
            as echoing back all reservation information.
          </xs:documentation>
        </xs:annotation>
        <xs:complexType>
          <xs:sequence>
            <xs:choice>
              <xs:sequence>
                <xs:element name="Success" type="SuccessType"/>
                <xs:element minOccurs="0" name="Warnings" type="WarningsType">
                  <xs:annotation>
                    <xs:documentation>This is a place to list any non-fatal errors.</xs:documentation>
                  </xs:annotation>
                </xs:element>
                <xs:element minOccurs="0" name="HotelResModifies" type="HotelResModifyType">
                  <xs:annotation>
                    <xs:documentation>A collection of reservations  which have been modified.</xs:documentation>
                  </xs:annotation>
                </xs:element>
              </xs:sequence>
              <xs:element name="Errors" type="ErrorsType"/>
            </xs:choice>
          </xs:sequence>
          <xs:attributeGroup ref="OTA_PayloadStdAttributes"/>
        </xs:complexType>
      </xs:element>
      <xs:element name="OTA_HotelResNotifRQ">
				<xs:annotation> 
					<xs:documentation>
						Hotel Reservation Notif Request supports the functionality of updating other systems with reservation data. 
						The message assumes a push model, with the originating system pushing the data to another system.  
						The originating system would usually be a booking source, such as a Global Distribution System (GDS),
					       	a Central Reservation System (CRS) or some other agent of the hotel.
					</xs:documentation> 
				</xs:annotation> 
				<xs:complexType> 
					<xs:sequence> 
						<xs:element minOccurs="0" name="HotelReservations" type="HotelReservationsType"/>
            <xs:element minOccurs="0" name="Services" type="ServicesType"/>
          </xs:sequence> 
					<xs:attributeGroup ref="OTA_PayloadStdAttributes"/> 
					<xs:attribute name="ResStatus" type="TransactionActionType" use="optional"/> 
				</xs:complexType> 
			</xs:element>
			<xs:element name="OTA_HotelResNotifRS"> 
				<xs:annotation> 
					<xs:documentation>
						Returns acknowledgement that the reservation has been successfully received, or includes warnings from business 
						processing rules or errors if the request did not succeed. It may optionally include the updated reservation data.
					</xs:documentation> 
				</xs:annotation> 
				<xs:complexType>
          <xs:choice>
            <xs:sequence>
              <xs:element name="Success" type="SuccessType"/>
              <xs:element minOccurs="0" name="Warnings" type="WarningsType"/>
              <xs:element minOccurs="0" name="HotelReservations" type="HotelReservationsType"/>
            </xs:sequence>
            <xs:element name="Errors" type="ErrorsType"/>
          </xs:choice>
          <!--<xs:sequence> 
						<xs:choice> 
							<xs:sequence> 
								<xs:element name="Success" type="SuccessType"/> 
								<xs:element minOccurs="0" name="Warnings" type="WarningsType"/> 
								<xs:element minOccurs="0" name="HotelReservations" type="HotelReservationsType"/> 
							</xs:sequence> 
							<xs:element name="Errors" type="ErrorsType"/> 
						</xs:choice> 
						<xs:element minOccurs="0" name="POS" type="POS_Type"/> 
					</xs:sequence>--> 
					<xs:attributeGroup ref="OTA_PayloadStdAttributes"/> 
				</xs:complexType> 
			</xs:element> 
		</xs:schema>
  </wsdl:types>
  <wsdl:message name="ResModifyNotifResponse">
    <wsdl:part name="OTA_HotelResModifyNotifRS" element="ota:OTA_HotelResModifyNotifRS">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ResCancelResponse">
    <wsdl:part name="OTA_CancelRS" element="ota:OTA_CancelRS">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ResNotifResponse">
    <wsdl:part name="OTA_HotelResNotifRS" element="ota:OTA_HotelResNotifRS">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ResCancel">
    <wsdl:part name="OTA_CancelRQ" element="ota:OTA_CancelRQ">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ResModifyNotif">
    <wsdl:part name="OTA_HotelResModifyNotifRQ" element="ota:OTA_HotelResModifyNotifRQ">
    </wsdl:part>
  </wsdl:message>
  <wsdl:message name="ResNotif">
    <wsdl:part name="OTA_HotelResNotifRQ" element="ota:OTA_HotelResNotifRQ">
    </wsdl:part>
  </wsdl:message>
  <wsdl:portType name="SynXisPortType">
    <wsdl:operation name="ResCancel">
<wsdl:documentation/>
      <wsdl:input name="ResCancel" message="tns:ResCancel">
    </wsdl:input>
      <wsdl:output name="ResCancelResponse" message="tns:ResCancelResponse">
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ResModifyNotif">
<wsdl:documentation/>
      <wsdl:input name="ResModifyNotif" message="tns:ResModifyNotif">
    </wsdl:input>
      <wsdl:output name="ResModifyNotifResponse" message="tns:ResModifyNotifResponse">
    </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ResNotif">
<wsdl:documentation/>
      <wsdl:input name="ResNotif" message="tns:ResNotif">
    </wsdl:input>
      <wsdl:output name="ResNotifResponse" message="tns:ResNotifResponse">
    </wsdl:output>
    </wsdl:operation>
  </wsdl:portType>
  <wsdl:binding name="SynXis" type="tns:SynXisPortType">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
    <wsdl:operation name="ResCancel">
      <soap:operation soapAction="http://localhost/ws/SynXis/SynXis.asp#ResCancel" style="document"/>
      <wsdl:input name="ResCancel">
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="ResCancelResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ResModifyNotif">
      <soap:operation soapAction="http://localhost/ws/SynXis/SynXis.asp#ResModifyNotif" style="document"/>
      <wsdl:input name="ResModifyNotif">
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="ResModifyNotifResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ResNotif">
      <soap:operation soapAction="http://localhost/ws/SynXis/SynXis.asp#ResNotif" style="document"/>
      <wsdl:input name="ResNotif">
        <soap:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="ResNotifResponse">
        <soap:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:binding name="SynXis_soap12" type="tns:SynXisPortType">
    <soap12:binding transport="http://schemas.xmlsoap.org/soap/http "/>
    <wsdl:operation name="ResCancel">
      <soap12:operation soapAction="http://localhost/ws/SynXis/SynXis.asp#ResCancel" style="document"/>
      <wsdl:input name="ResCancel">
        <soap12:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="ResCancelResponse">
        <soap12:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ResModifyNotif">
      <soap12:operation soapAction="http://localhost/ws/SynXis/SynXis.asp#ResModifyNotif" style="document"/>
      <wsdl:input name="ResModifyNotif">
        <soap12:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="ResModifyNotifResponse">
        <soap12:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
    <wsdl:operation name="ResNotif">
      <soap12:operation soapAction="http://localhost/ws/SynXis/SynXis.asp#ResNotif" style="document"/>
      <wsdl:input name="ResNotif">
        <soap12:body use="literal"/>
      </wsdl:input>
      <wsdl:output name="ResNotifResponse">
        <soap12:body use="literal"/>
      </wsdl:output>
    </wsdl:operation>
  </wsdl:binding>
  <wsdl:service name="SynXis">
<wsdl:documentation/>
    <wsdl:port name="SynXisPort_soap12" binding="tns:SynXis_soap12">
      <soap12:address location="http://127.0.0.1/wso2wsas/services/SynXis.SynXisPort_soap12/"/>
    </wsdl:port>
    <wsdl:port name="SynXisPort" binding="tns:SynXis">
      <soap:address location="http://127.0.0.1/wso2wsas/services/SynXis.SynXisPort/"/>
    </wsdl:port>
  </wsdl:service>
</wsdl:definitions>
