Purpose

The XSD Message Validation service (MVS) checks incoming messages and validates if these messages are in line with our API standard formally.



The XML schema validation of inbound OTA/IO/HTNG message is a part of the certification.

Please validate all of your inbound messages (3rd party → protel) with that tool before starting the testing with your Protel integration specialist.

Instructions

Setup

To connect MVS to the integration partner service both have to installed into a test hotel in ESB environment (see Bob - Help).

The MVS manifest is available under name:

io.protel.message_validation

or io.protel.xsd_validation

Usage

For each OTA/IO/HTNG request message you have sent to protel.I/O you will receive asynchronous OTA/IO/HTNG result message.

This pattern follows the usual way of asynchronous messaging done through ESB (see Exchanging Data).

Validation results

The result (RS) messages you receive resemble the expected OTA/IO/HTNG message but will not hold information from the operational use case.

Case 1: Integration partner sent a message that has the wrong structure

All found validation problems with the message structure come back in <Error> elements with description of the issue as well as a position.


<?xml version='1.0' encoding='utf-8'?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:htng="http://htng.org/PWSWG/2007/02/AsyncHeaders">
	<soapenv:Header xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
		<htng:CorrelationID>TEST_Val_135-1</htng:CorrelationID>
		<wsa:To>https://webhook.site/64b0a35d-e9c3-4d5c-b474-252db6777ac9</wsa:To>
		<wsa:Action>http://htng.org/PWSWG/2010/12/OTA_HotelResNotifRS_SubmitResult</wsa:Action>
	</soapenv:Header>
	<env:Body>
		<OTA_HotelResNotifRS xmlns:ns2="http://htng.org/2014B" xmlns:ns3="http://protel.io/soap">
			<Errors>
				<Error Type="ELEMENT" ShortText="Invalid content was found starting with element 'Test'. One of '{"http://protel.io/htng/extensions":POSExtensions, "http://protel.io/htng/extensions":InvBlockExtensions, "http://protel.io/htng/extensions":ReservationExtensions, "http://protel.io/htng/extensions":RateAmountExtensions, "http://protel.io/htng/extensions":FixedChargesAmountsExtensions, "http://protel.io/htng/extensions":NotificationExtensions, "http://protel.io/htng/extensions":GuestStayExtensions, "http://protel.io/htng/extensions":ProfileInfoExtensions, "http://protel.io/htng/extensions":UserDefinedFieldExtensions, "http://protel.io/htng/extensions":WakeupInfoExtensions, "http://protel.io/htng/extensions":RoomStatusExtensions, "http://protel.io/htng/extensions":FolioExtensions}' is expected." Code="cvc-complex-type.2.4.a" RecordID="line: 7, column: 15"/>
			</Errors>
		</OTA_HotelResNotifRS>
	</env:Body>
</env:Envelope>

Case 2: Integration partner sent a message that has the correct structure

The absence of an <Error> element indicates success in validation.


<?xml version='1.0' encoding='utf-8'?>
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope" xmlns="http://www.opentravel.org/OTA/2003/05" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:htng="http://htng.org/PWSWG/2007/02/AsyncHeaders">
	<soapenv:Header xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope">
		<htng:CorrelationID>TEST_Val_141</htng:CorrelationID>
		<wsa:To>https://webhook.site/64b0a35d-e9c3-4d5c-b474-252db6777ac9</wsa:To>
		<wsa:Action>http://htng.org/PWSWG/2010/12/OTA_HotelResNotifRS_SubmitResult</wsa:Action>
	</soapenv:Header>
	<env:Body>
		<OTA_HotelResNotifRS xmlns:ns2="http://htng.org/2014B" xmlns:ns3="http://protel.io/soap"/>
	</env:Body>
</env:Envelope>


Reporting the results

Once you have successfully validated your messages, please provide the CorrelationIDs to your protel.I/O Integration Specialist for confirmation!


  • Keine Stichwörter