Why is the xml not modified? - xquery

I have a series of Query that in BaseX work and show me that they really mock the xml, but when I go to my xml it has not been modified.
this is my query
insert nodes <evaluacion>10</evaluacion> as last into doc(/"../BD/colecciones.xml")//libro[#publicacion=2007]
I have tried 2 ways as above and this way
insert nodes <evaluacion>10</evaluacion> as last into //libro[#publicacion=2007]
both ways work X-based on the results if it shows it but then I go to the xml and it hasn't changed for me.
I put the XML in case you want to test
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!-- Fichero: libros.xml -->
<biblioteca>
<libros>
<libro publicacion="2003" edicion="2">
<titulo>Learning XML</titulo>
<autor>
<apellido>Ray</apellido>
<nombre>Erik T.</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>416</paginas>
</libro>
<libro publicacion="2003" edicion="2">
<titulo>XML Imprescindible</titulo>
<autor>
<apellido>Harold</apellido>
<nombre>Elliot Rusty</nombre>
</autor>
<autor>
<apellido>Means</apellido>
<nombre>W. Scott</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>832</paginas>
</libro>
<libro publicacion="2002">
<titulo>XML Schema</titulo>
<autor>
<apellido>van der Vlist</apellido>
<nombre>Eric</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>400</paginas>
</libro>
<libro publicacion="2002">
<titulo>XPath Essentials</titulo>
<autor>
<apellido>Watt</apellido>
<nombre>Adrew</nombre>
</autor>
<editorial>Wiley</editorial>
<paginas>516</paginas>
</libro>
<libro publicacion="2005">
<titulo> Beginning XSLT 2.0: Form Novice to Professional</titulo>
<autor>
<apellido>Tennison</apellido>
<nombre>Jeni</nombre>
</autor>
<editorial>Apress</editorial>
<paginas>797</paginas>
</libro>
<libro publicacion="2007">
<titulo> XQuery</titulo>
<autor>
<apellido>Walmsley</apellido>
<nombre>Priscilla</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>491</paginas>
</libro>
</libros>
<!-- Tabla prestamos -->
<prestamos>
<entrada>
<titulo>XML Imprescindible</titulo>
<prestamo>
<inicio>2011-05-02</inicio>
<lector>
<nombre>Pepito</nombre>
<apellidos>Grillo</apellidos>
<direccion>Rue Percebe, 13</direccion>
<telefono>972987654</telefono>
</lector>
</prestamo>
</entrada>
<entrada>
<titulo>XML Imprescindible</titulo>
<prestamo>
<inicio>2011-02-12</inicio>
<devolucion>2011-02-16</devolucion>
<lector>
<nombre>Jose</nombre>
<apellidos>Gutiérrez González</apellidos>
<direccion>Rue Percebe, 13</direccion>
<telefono>919485432</telefono>
</lector>
</prestamo>
</entrada>
<entrada>
<titulo>XPath Essentials</titulo>
<prestamo>
<inicio>2011-02-23</inicio>
<devolucion>2011-03-10</devolucion>
<lector>
<nombre>Pepito</nombre>
<apellidos>Grillo</apellidos>
<direccion>Rue Percebe, 13</direccion>
<telefono>972987654</telefono>
</lector>
</prestamo>
</entrada>
</prestamos>
</biblioteca>
the query says the following: Insert the evaluation node and whose content is 10 as the last node in the publication = 2007

This is what i did:
for $i in //libros/libro where $i/#publicacion = 2007 return insert node <evaluacion>10</evaluacion> as last into $i

Related

The query does not show me the pages of the books or the titles

I have been trying to query for a while and I am not able. The examples you have given me are very simple. Title, first author and pages of the borrowed books. that's the exercise. This is what I have tried but I did not get anything back.
This is my query
let $b := //biblioteca
for $c in $b/prestamos/entrada/titulo
for $d in $b/libros/libro[/titulo=$c]
return $c and $d/paginas and $d/autor
This is the XML file:
<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>
<!-- Fichero: libros.xml -->
<biblioteca>
<libros>
<libro publicacion="2003" edicion="2">
<titulo>Learning XML</titulo>
<autor>
<apellido>Ray</apellido>
<nombre>Erik T.</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>416</paginas>
</libro>
<libro publicacion="2003" edicion="2">
<titulo>XML Imprescindible</titulo>
<autor>
<apellido>Harold</apellido>
<nombre>Elliot Rusty</nombre>
</autor>
<autor>
<apellido>Means</apellido>
<nombre>W. Scott</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>832</paginas>
</libro>
<libro publicacion="2002">
<titulo>XML Schema</titulo>
<autor>
<apellido>van der Vlist</apellido>
<nombre>Eric</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>400</paginas>
</libro>
<libro publicacion="2002">
<titulo>XPath Essentials</titulo>
<autor>
<apellido>Watt</apellido>
<nombre>Adrew</nombre>
</autor>
<editorial>Wiley</editorial>
<paginas>516</paginas>
</libro>
<libro publicacion="2005">
<titulo> Beginning XSLT 2.0: Form Novice to Professional</titulo>
<autor>
<apellido>Tennison</apellido>
<nombre>Jeni</nombre>
</autor>
<editorial>Apress</editorial>
<paginas>797</paginas>
</libro>
<libro publicacion="2007">
<titulo> XQuery</titulo>
<autor>
<apellido>Walmsley</apellido>
<nombre>Priscilla</nombre>
</autor>
<editorial>O'Reilly</editorial>
<paginas>491</paginas>
</libro>
</libros>
<!-- Tabla prestamos -->
<prestamos>
<entrada>
<titulo>XML Imprescindible</titulo>
<prestamo>
<inicio>2011-05-02</inicio>
<lector>
<nombre>Pepito</nombre>
<apellidos>Grillo</apellidos>
<direccion>Rue Percebe, 13</direccion>
<telefono>972987654</telefono>
</lector>
</prestamo>
</entrada>
<entrada>
<titulo>XML Imprescindible</titulo>
<prestamo>
<inicio>2011-02-12</inicio>
<devolucion>2011-02-16</devolucion>
<lector>
<nombre>Jose</nombre>
<apellidos>Gutiérrez González</apellidos>
<direccion>Rue Percebe, 13</direccion>
<telefono>919485432</telefono>
</lector>
</prestamo>
</entrada>
<entrada>
<titulo>XPath Essentials</titulo>
<prestamo>
<inicio>2011-02-23</inicio>
<devolucion>2011-03-10</devolucion>
<lector>
<nombre>Pepito</nombre>
<apellidos>Grillo</apellidos>
<direccion>Rue Percebe, 13</direccion>
<telefono>972987654</telefono>
</lector>
</prestamo>
</entrada>
</prestamos>
</biblioteca>
I am working in java with a DB and I need to create a script with this query but the examples I have from the teacher are very basic and I cannot find the error I made when doing the query. I hope you can help me
Inside the predicate you probably want $b/libros/libro[titulo=$c] and not $b/libros/libro[/titulo=$c], as /titulo selects a titulo root element while titulo selects a titulo child of the libro element the predicate is used on.
The operator and is a boolean operator so I doubt you want to use that in the return clause. You have not shown which result you want, the comma operator ($c, $d/paginas, $d/autor) is more likely to return a meaningful result.

"AAA" before booking a segment (EnhancedAirbook) and issue ticket (AirTicket)

I'm trying make a search in one particular PCC and then jump to another PCC which is Change AAA before EnhancedAirBook.
searching (Bargin Finder Max-BFM) from one particular PCC and jump in 'AAA' - ChangeContext to other PCC before booking - (EnhancedAirBook) & issuing ticket(AirTicket)
We already have the permission granted to jump in between the PCC's from Sabre.
I tried Change AAA - ChangeContext before booking - (EnhancedAirBook) but the service is failing with an error
Below are the request & response.
Request
`<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<SOAP-ENV:Header>
<m:MessageHeader xmlns:m="http://www.ebxml.org/namespaces/messageHeader">
<m:From>
<m:PartyId type="urn:x12.org:IO5:01">info#test.com</m:PartyId>
</m:From>
<m:To>
<m:PartyId type="urn:x12.org:IO5:01">webservices3.sabre.com</m:PartyId>
</m:To>
<m:CPAId>YYYY</m:CPAId>
<m:ConversationId>1555434991</m:ConversationId>
<m:Service m:type="OTA">ContextChangeLLSRQ</m:Service>
<m:Action>ContextChangeLLSRQ</m:Action>
<m:MessageData>
<m:MessageId>mid:1555434991</m:MessageId>
<m:Timestamp>2019-04-16T17-16-31Z</m:Timestamp>
<m:TimeToLive>2019-04-16T17-16-31Z</m:TimeToLive>
</m:MessageData>
<m:DuplicateElimination />
<m:Description>ContextChangeLLSRQ</m:Description>
</m:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESF!ICESMSL</wsse:BinarySecurityToken>
</wsse:Security>
</SOAP-ENV:Header>
<SOAP-ENV:Body>
<ContextChangeRQ Version="2.0.3">
<ChangeAAA PseudoCityCode="xxxx" />
</ContextChangeRQ>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>`
Response
`<?xml version="1.0" encoding="UTF-8"?>
<soap-env:Envelope xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/">
<soap-env:Header>
<eb:MessageHeader xmlns:eb="http://www.ebxml.org/namespaces/messageHeader" eb:version="1.0" soap-env:mustUnderstand="1">
<eb:From>
<eb:PartyId eb:type="URI">webservices3.sabre.com</eb:PartyId>
</eb:From>
<eb:To>
<eb:PartyId eb:type="URI">info#test.com</eb:PartyId>
</eb:To>
<eb:CPAId>YYYY</eb:CPAId>
<eb:ConversationId>1555434991</eb:ConversationId>
<eb:Service eb:type="OTA">ContextChangeLLSRQ</eb:Service>
<eb:Action>ContextChangeLLSRS</eb:Action>
<eb:MessageData>
<eb:MessageId>9418687622788650624</eb:MessageId>
<eb:Timestamp>2019-04-16T17:17:59</eb:Timestamp>
<eb:RefToMessageId>mid:1555434991</eb:RefToMessageId>
</eb:MessageData>
</eb:MessageHeader>
<wsse:Security xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext">
<wsse:BinarySecurityToken valueType="String" EncodingType="wsse:Base64Binary">Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/RESF!ICESMSLB</wsse:BinarySecurityToken>
</wsse:Security>
</soap-env:Header>
<soap-env:Body>
<soap-env:Fault>
<faultcode>soap-env:Client.Validation</faultcode>
<faultstring>ERR.SWS.CLIENT.VALIDATION_FAILED</faultstring>
<detail>
<stl:ApplicationResults xmlns:stl="http://services.sabre.com/STL/v01" status="NotProcessed">
<stl:Error timeStamp="2019-04-16T12:17:59-05:00" type="Validation">
<stl:SystemSpecificResults>
<stl:Message>cvc-elt.1: Cannot find the declaration of element 'ContextChangeRQ'.</stl:Message>
<stl:ShortText>ERR.SWS.CLIENT.VALIDATION_FAILED</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>
</stl:ApplicationResults>
</detail>
</soap-env:Fault>
</soap-env:Body>
</soap-env:Envelope>`
Your missing with the namespace xmlns="http://webservices.sabre.com/sabreXML/2011/10"
<soap:Body>
<ContextChangeRQ xmlns="http://webservices.sabre.com/sabreXML/2011/10" ReturnHostCommand="true" Version="2.0.3">
<ChangeAAA PseudoCityCode="xxxx"/>
</ContextChangeRQ>
</soap:Body>
I try to changeAAA but response
<Message>?FORMAT?</Message>
<ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</ShortText>
bellow RQ
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:mes="http://www.ebxml.org/namespaces/messageHeader" xmlns:ns="http://www.opentravel.org/OTA/2002/11">
<soapenv:Header>
<sec:Security>
<sec:BinarySecurityToken>Shared/IDL:IceSess\/SessMgr:1\.0.IDL/Common/!ICESMS\/ACPCRTD!ICESMSLB\/CRT.LB!1575253138274!5391!13</sec:BinarySecurityToken>
</sec:Security>
<mes:MessageHeader mes:id="?" mes:version="?">
<mes:From>
<mes:PartyId >WebServiceClient</mes:PartyId>
</mes:From>
<mes:To>
<mes:PartyId >WebServiceSupplier</mes:PartyId>
</mes:To>
<mes:CPAId>VN</mes:CPAId>
<mes:ConversationId>fOV1LWT3EJIUnGC0Yh1</mes:ConversationId>
<mes:Service ></mes:Service>
<mes:Action>ContextChangeLLSRQ</mes:Action>
<mes:MessageData>
<mes:MessageId>mid:20001209-133003-2333#clientofsabre.com1</mes:MessageId>
<mes:Timestamp>2019-06-15</mes:Timestamp>
</mes:MessageData>
</mes:MessageHeader>
</soapenv:Header>
<soapenv:Body>
<ContextChangeRQ Version="2.0.3" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<ChangeAAA PseudoCityCode="xxxx"/>
</ContextChangeRQ>
</soapenv:Body>
</soapenv:Envelope>

Error ENTRY VALID ONLY FOR SUBSCRIBER PNR with TravelItineraryAddInfo Sabre

I want call TravelItineraryAddInfo to add passenger to PNR, but api return error ENTRY VALID ONLY FOR SUBSCRIBER PNR , ERR.SWS.HOST.ERROR_IN_RESPONSE.
How can I fix this issue ?
My request
<TravelItineraryAddInfoRQ xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" TimeStamp="2016-05-17T15:30:00-06:00" Version="2.2.0" ReturnHostCommand="false">
<AgencyInfo>
<Address>
<AddressLine>xxxx</AddressLine>
<CityName>xxx</CityName>
<CountryCode>XX</CountryCode>
<PostalCode>xxxx</PostalCode>
<StateCountyProv StateCode="xx"/>
<StreetNmbr>xx</StreetNmbr>
</Address>
</AgencyInfo>
<CustomerInfo>
<ContactNumbers>
<ContactNumber InsertAfter="0" LocationCode="VN" NameNumber="1.1" Phone="984163620" PhoneUseType="H"/>
</ContactNumbers>
<Email Address="xxx#gmail.com" LanguageOverride="O" NameNumber="1.1" Type="CC"/>
<PersonName Infant="false" NameNumber="1.1" PassengerType="ADT">
<GivenName>Smith</GivenName>
<Surname>TEST</Surname>
</PersonName>
</CustomerInfo>
This is response api:
<stl:SystemSpecificResults>
<stl:Message>.ENTRY VALID ONLY FOR SUBSCRIBER PNR</stl:Message>
<stl:ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>

SOAP API alternative for geo-autocomplete

Is there a SOAP API alternative for geo-autocomplete that is available in REST API? Is it EncodeDecodeLLSRQ? If so, it is always providing the below response when I try with the below provided request. I get the same response for the example provided in doc too.
<EncodeDecodeRS Version="2.0.0" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stl="http://services.sabre.com/STL/v01">
<stl:ApplicationResults status="NotProcessed">
<stl:Error type="Application" timeStamp="2016-10-26T03:33:02-05:00">
<stl:SystemSpecificResults>
<stl:Message>Unexpected request processing error</stl:Message>
<stl:ShortText>ERR.SWS.PROVIDER.REQUEST_HANDLER_ERROR</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>
</stl:ApplicationResults>
</EncodeDecodeRS>
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:sec="http://schemas.xmlsoap.org/ws/2002/12/secext" xmlns:mes="http://www.ebxml.org/namespaces/messageHeader" xmlns:ns="http://webservices.sabre.com/sabreXML/2011/10">
<soapenv:Header>
<sec:Security>
<sec:BinarySecurityToken>--Token--</sec:BinarySecurityToken>
</sec:Security>
<mes:MessageHeader>
<mes:From>
<mes:PartyId>from</mes:PartyId>
</mes:From>
<mes:To>
<mes:PartyId>ws</mes:PartyId>
</mes:To>
<mes:CPAId>--CPAId--</mes:CPAId>
<mes:ConversationId>eservices#sabre.com</mes:ConversationId>
<mes:Action>EncodeDecodeLLSRQ</mes:Action>
<mes:MessageData>
<mes:MessageId>00000</mes:MessageId>
<mes:Timestamp>233</mes:Timestamp>
</mes:MessageData>
</mes:MessageHeader>
</soapenv:Header>
<soapenv:Body>
<ns:EncodeDecodeRQ Version="2.0.0">
<ns:Encode>
<ns:Address>
<ns:CityName>Atlanta</ns:CityName>
</ns:Address>
</ns:Encode>
</ns:EncodeDecodeRQ>
</soapenv:Body>
</soapenv:Envelope>
I don't think EncodeDecodeLLSRQ was designed to do what you're looking for but it might just work. For example, when entering an incomplete city name, the service will return a list of possible values.
RQ:
<CityName>MONTEV</CityName>
RS:
<Text>MVD MONTEVIDEO, URUGUAY</Text>
<Text>MVE MONTEVIDEO MN, MINNESOTA,USA</Text>
<Text>FMV MONTEVIDEO FLUVIA, URUGUAY</Text>
<Text>VDT MONTEVIDEO TC BUS, URUGUAY</Text>
Do you have access to SOAP API? If so, could you please share the complete RQ to see if there's something wrong there?

What is SOAP Request Body for Sabre hotel reservation API [ OTA_HotelResLLSRQ ]

I am working hotel reservation work flow. But I struggled on Hotel Reservation API. Below I mentioned step by step activities what I done. Pls help me to solve the issue.
I Searched New York ["NYC"] city hotels using OTA_HotelAvailRQ API and got the successful response.
From that response picked hotel code [ HotelCode="0048286" ] property and supplied to HotelPropertyDescriptionLLSRQ api then successful response gotted.
From that response picked first RPH attribute of room rate element from room rates element [ < RoomRates > < RoomRate RPH="001" > ] and supplied to the OTA_HotelResLLSRQ API.
But following error happend. Workflows are tested in SoapUI.
<stl:ApplicationResults status="NotProcessed">
<stl:Error type="BusinessLogic" timeStamp="2016-08-20T03:19:25-05:00">
<stl:SystemSpecificResults>
<stl:Message>FORMAT</stl:Message>
<stl:ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>
</stl:ApplicationResults>
OTA_HotelAvailRQ API :
Request Body :
<ns:OTA_HotelAvailRQ Version="2.2.1">
<ns:AvailRequestSegment>
<ns:Customer>
<ns:Corporate>
<ns:ID>ABC1223</ns:ID>
</ns:Corporate>
</ns:Customer>
<ns:GuestCounts Count="2" />
<ns:HotelSearchCriteria>
<ns:Criterion>
<ns:HotelRef HotelCityCode="NYC" />
</ns:Criterion>
</ns:HotelSearchCriteria>
<ns:TimeSpan End="09-24" Start="09-22" />
</ns:AvailRequestSegment>
</ns:OTA_HotelAvailRQ>
Response Body or Soap Body :
<OTA_HotelAvailRS Version="2.2.1" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stl="http://services.sabre.com/STL/v01">
<stl:ApplicationResults status="Complete">
<stl:Success timeStamp="2016-08-20T03:07:02-05:00"/>
</stl:ApplicationResults>
<AdditionalAvail Ind="true"/>
<AvailabilityOptions>
<AvailabilityOption RPH="001">
<BasicPropertyInfo AreaID="000E" ChainCode="WV" Distance="M" GEO_ConfidenceLevel="1" HotelCityCode="JFK" HotelCode="0048286" HotelName="HOTEL ON RIVINGTON" Latitude="40.719970" Longitude="-73.987990">
<Address>
<AddressLine>107 RIVINGTON STREET</AddressLine>
<AddressLine>NEW YORK NY 10002</AddressLine>
</Address>
<ContactNumbers>
<ContactNumber Fax="1-212-475 5959" Phone="1-212-475 2600"/>
</ContactNumbers>
<DirectConnect>
<Alt_Avail Ind="false"/>
<DC_AvailParticipant Ind="true"/>
<DC_SellParticipant Ind="true"/>
<RatesExceedMax Ind="false"/>
<UnAvail Ind="false"/>
</DirectConnect>
<LocationDescription Code="G">
<Text>NEW YORK</Text>
</LocationDescription>
<Property Rating="NTM">
<Text>4 CROWN</Text>
</Property>
<PropertyOptionInfo>
<!-- deleted -->
</PropertyOptionInfo>
<RoomRate RateLevelCode="RAC">
<AdditionalInfo>
<CancelPolicy Numeric="00"/>
</AdditionalInfo>
<HotelRateCode>RAC</HotelRateCode>
</RoomRate>
<SpecialOffers Ind="false"/>
</BasicPropertyInfo>
</AvailabilityOption>
<!-- 6 More Results are avilable below i skipped -->
</AvailabilityOptions>
</OTA_HotelAvailRS>
</soap-env:Body>
HotelPropertyDescriptionLLSRQ
Request Body :
<SOAP-ENV:Body>
<ns4:HotelPropertyDescriptionRQ xmlns:ns2="http://services.sabre.com/STL_Header/v120" xmlns:ns3="http://services.sabre.com/STL/v01" xmlns:ns4="http://webservices.sabre.com/sabreXML/2011/10" Version="2.3.0">
<ns4:AvailRequestSegment>
<ns4:GuestCounts Count="2" />
<ns4:HotelSearchCriteria>
<ns4:Criterion>
<ns4:HotelRef HotelCode="0048286" />
</ns4:Criterion>
</ns4:HotelSearchCriteria>
<ns4:TimeSpan End="09-24" Start="09-22" />
</ns4:AvailRequestSegment>
</ns4:HotelPropertyDescriptionRQ>
</SOAP-ENV:Body>
Response Body :
<soap-env:Body>
<HotelPropertyDescriptionRS Version="2.3.0" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stl="http://services.sabre.com/STL/v01">
<stl:ApplicationResults status="Complete">
<stl:Success timeStamp="2016-08-20T03:11:53-05:00"/>
</stl:ApplicationResults>
<RoomStay>
<BasicPropertyInfo ChainCode="WV" GeoConfidenceLevel="1" HotelCityCode="JFK" HotelCode="0048286" HotelName="HOTEL ON RIVINGTON" Latitude="40.719970" Longitude="-73.987990" NumFloors="20" RPH="001">
<Address>
<AddressLine>107 RIVINGTON STREET</AddressLine>
<AddressLine>NEW YORK NY 10002</AddressLine>
<CountryCode>US</CountryCode>
</Address>
<Awards>
<AwardProvider>NTM4 CROWN</AwardProvider>
</Awards>
<CheckInTime>16:00</CheckInTime>
<CheckOutTime>12:00</CheckOutTime>
<ContactNumbers>
<ContactNumber Fax="1-212-475 5959" Phone="1-212-475 2600"/>
</ContactNumbers>
<DirectConnect Ind="false">
<!--I deleted -->
</DirectConnect>
<IndexData>
<!--I deleted -->
</IndexData>
<PropertyOptionInfo>
<!--I deleted -->
</PropertyOptionInfo>
<PropertyTypeInfo>
<!--I deleted -->
</PropertyTypeInfo>
<SpecialOffers Ind="false"/>
<Taxes>
<Text>8.5PCT ST</Text>
<Text>6.25PCT CT</Text>
<Text>3USD OCC</Text>
</Taxes>
<VendorMessages>
<!--I deleted -->
</VendorMessages>
</BasicPropertyInfo>
<Guarantee>
<!-- I delete -->
</Guarantee>
<LongSellTimeIdentifier>D138CA674B4C40A4529719A000000000529719A016233031153</LongSellTimeIdentifier>
<RoomRates>
<RoomRate DirectConnect="false" GuaranteeSurchargeRequired="G" GuaranteedRateProgram="false" IATA_CharacteristicIdentification="C1KRAC" IATA_ProductIdentification="BEST AVAILABLE RATE" LowInventoryThreshold="false" RPH="001" RateChangeInd="false" RateConversionInd="false" SpecialOffer="false">
<AdditionalInfo>
<!-- deleted -->
</AdditionalInfo>
<Rates>
<Rate Amount="550.00" ChangeIndicator="false" CurrencyCode="USD" HRD_RequiredForSell="false" PackageIndicator="false" RateConversionInd="false" ReturnOfRateInd="false" RoomOnRequest="false">
<AdditionalGuestAmounts>
<AdditionalGuestAmount MaxExtraPersonsAllowed="1">
<Charges ExtraPerson="50.00"/>
</AdditionalGuestAmount>
</AdditionalGuestAmounts>
<HotelTotalPricing Amount="1269.25">
<Disclaimer>INCLUDES TAXES AND SURCHARGES</Disclaimer>
<TotalTaxes Amount="169.25">
<TaxFieldOne>162.26</TaxFieldOne>
<TaxFieldThree>3.00</TaxFieldThree>
<TaxFieldTwo>3.99</TaxFieldTwo>
<Text>STATETAX</Text>
<Text>OTHER</Text>
<Text>OTHER</Text>
</TotalTaxes>
</HotelTotalPricing>
</Rate>
</Rates>
</RoomRate>
<!-- I deleted Room Rate from RPH="002" to RPH="0025" -->
</RoomRates>
<TimeSpan Duration="0005" End="2016-09-24" Start="2016-09-22"/>
</RoomStay>
</HotelPropertyDescriptionRS>
</soap-env:Body>
OTA_HotelResLLSRQ
Request Body :
<ns2:OTA_HotelResRQ xmlns:ns2="http://webservices.sabre.com/sabreXML/2011/10" xmlns:ns3="http://services.sabre.com/STL_Header/v120" xmlns:ns4="http://services.sabre.com/STL/v01" Version="2.2.0">
<ns2:Hotel>
<ns2:BasicPropertyInfo RPH="001">
<ns2:ConfirmationNumber>ABC123</ns2:ConfirmationNumber>
</ns2:BasicPropertyInfo>
<ns2:Guarantee Type="GDPST">
<ns2:CC_Info>
<ns2:PaymentCard Code="AX" ExpireDate="2020-12" Number="1234567890" />
<ns2:PersonName>
<ns2:Surname>TEST</ns2:Surname>
</ns2:PersonName>
</ns2:CC_Info>
</ns2:Guarantee>
<ns2:GuestCounts Count="2" />
<ns2:RoomType NumberOfUnits="1"/>
<ns2:TimeSpan End="09-24T10:00" Start="09-22T08:00" />
</ns2:Hotel>
</ns2:OTA_HotelResRQ>
Response Body :
<OTA_HotelResRS Version="2.2.0" xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:stl="http://services.sabre.com/STL/v01">
<stl:ApplicationResults status="NotProcessed">
<stl:Error type="BusinessLogic" timeStamp="2016-08-20T03:19:25-05:00">
<stl:SystemSpecificResults>
<stl:Message>FORMAT</stl:Message>
<stl:ShortText>ERR.SWS.HOST.ERROR_IN_RESPONSE</stl:ShortText>
</stl:SystemSpecificResults>
</stl:Error>
</stl:ApplicationResults>
</OTA_HotelResRS>
Pls provide working Request Body for OTA_HotelResLLSRQ.
Have you tried requesting with a real test Credit Card?
https://www.paypalobjects.com/en_US/vhelp/paypalmanager_help/credit_card_numbers.htm
The credit card number "1234567890" is likely the cause of the problem. If this is being done on Sabre's production API, a real credit card number is required here. You should also enter the card owner's real surname instead of "TEST".
My recommendation would be to enter a real valid credit number and expiry date. To prevent the booking from getting passed to the hotel, you should make a call to "IgnoreTransactionLLSRQ" right after the call to "OTA_HotelResLLSRQ".
The SOAP body for "IgnoreTransactionLLSRQ" is very simple:
<soapenv:Body>
<IgnoreTransactionRQ xmlns="http://webservices.sabre.com/sabreXML/2011/10" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" Version="2.0.0"></IgnoreTransactionRQ>
</soapenv:Body>
That will allow you to pass a valid credit card to "OTA_HotelResLLSRQ" to verify if that is the cause of your error. Once your flow is working properly, you can then replace the call to "IgnoreTransactionLLSRQ" with the proper "EndTransactionLLSRQ" to generate real bookings.
I hope that helps!
The credit card number is too short and invalid. The roomrate should have included a list of accepted cards, maybe AX is not accepted. Also it probably won't accept a name like TEST.

Resources