<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.opentravel.org/OTA/2003/05" targetNamespace="http://www.opentravel.org/OTA/2003/05" elementFormDefault="qualified" version="6.002" id="OTA2010B">
	<xs:include schemaLocation="OTA_CruiseCommonTypes.xsd"/>
	<xs:include schemaLocation="OTA_HotelReservation.xsd"/>
	<xs:include schemaLocation="OTA_PkgCommonTypes.xsd"/>
	<xs:include schemaLocation="OTA_RailCommonTypes.xsd"/>
	<xs:annotation>
		<xs:documentation xml:lang="en">All Schema files in the OpenTravel Alliance specification are made available according to the terms defined by the OpenTravel License Agreement at http://www.opentravel.org/Specifications/Default.aspx.</xs:documentation>
	</xs:annotation>
	<xs:element name="OTA_ResRetrieveRS">
		<xs:annotation>
			<xs:documentation xml:lang="en">This message returns a list of reservations when an exact match on a read request could not be made or the request was to return a list of reservations meeting specified criteria.</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:choice>
				<xs:sequence>
					<xs:element name="Success" type="SuccessType">
						<xs:annotation>
							<xs:documentation xml:lang="en">An element that is not intended to contain any data. The mere presence of an empty success element within the response message indicates that the incoming request message was processed successfully.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Warnings" type="WarningsType" minOccurs="0">
						<xs:annotation>
							<xs:documentation xml:lang="en">Indicates that the recipient of the request message identified one or more business-level warnings/errors, but the message itself was successfully processed.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="ReservationsList" minOccurs="0">
						<xs:annotation>
							<xs:documentation xml:lang="en">A container for multiple reservations. The list of reservations will be one of the following types of reservations: global, air, hotel, package tour, golf, cruise, vehicle or rail.</xs:documentation>
						</xs:annotation>
						<xs:complexType>
							<xs:choice>
								<xs:element name="AirReservation" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">One line in a list of airline reservations.  </xs:documentation>
									</xs:annotation>
									<xs:complexType>
										<xs:sequence>
											<xs:element name="FlightSegment" type="FlightSegmentType" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The airline code, flight number, departure and arrival dates, and the origin and destination.</xs:documentation>
												</xs:annotation>
											</xs:element>
											<xs:element name="TravelerName" type="PersonNameType" minOccurs="0" maxOccurs="5">
												<xs:annotation>
													<xs:documentation xml:lang="en">The names of travelers (up to five) in the reservation.</xs:documentation>
												</xs:annotation>
											</xs:element>
											<xs:element ref="TPA_Extensions" minOccurs="0"/>
										</xs:sequence>
										<xs:attribute name="BookingReferenceID" type="xs:string" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">The reservation id number, PNR locator.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="DateBooked" type="xs:dateTime" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">Date of the creation of this reservation.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="ItineraryName" type="StringLength0to64" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">A name given to this itinerary.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="Status" type="TransactionStatusType" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">When true, this booking is cancelled.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="SupplierBookingInfoList" type="ListOfOTA_CodeType" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">Provides additional booking information for the reservation. Refer to OpenTravel Codes List Booking Information List (BIL).</xs:documentation>
											</xs:annotation>
										</xs:attribute>
									</xs:complexType>
								</xs:element>
								<xs:element name="HotelReservation" type="HotelReservationType" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">One line in a list of hotel reservations.  It may contain the reservation id, booked date, arrival and departure dates, number of nights and rooms, hotel info, guest info, and room info.</xs:documentation>
									</xs:annotation>
								</xs:element>
								<xs:element name="PackageReservation" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">One line in a list of package reservations.  It contains the reservation id, departure date and point, destination point, duration, tour and travel codes, flight code, passenger name and number of passengers, and booking status.</xs:documentation>
									</xs:annotation>
									<xs:complexType>
										<xs:annotation>
											<xs:documentation xml:lang="en">The supplier's code to identify the travel arrangement for the package.</xs:documentation>
										</xs:annotation>
										<xs:sequence>
											<xs:element name="UniqueID" type="UniqueID_Type" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The package booking reference.</xs:documentation>
												</xs:annotation>
											</xs:element>
											<xs:element name="Name" type="PersonNameType" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The surname, initial, and title of the passenger.</xs:documentation>
												</xs:annotation>
											</xs:element>
											<xs:element name="ArrivalLocation" type="LocationType" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The code for the final destination - normally an IATA code.</xs:documentation>
												</xs:annotation>
											</xs:element>
											<xs:element name="DepartureLocation" type="LocationType" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The code for the traveller's departure point - normally an IATA code.</xs:documentation>
												</xs:annotation>
											</xs:element>
										</xs:sequence>
										<xs:attribute name="TravelCode" type="PkgTravelCode" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">The supplier's code to identify the travel arrangement for the package.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="TourCode" type="StringLength1to8" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">The supplier's code to identify the accommodation/tour arrangement for a package.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="PackageID" type="PackageID_RefType" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">A code identifying a complete package arrangement, replacing individual travel and accommodation codes.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attributeGroup ref="DateTimeSpanGroup">
											<xs:annotation>
												<xs:documentation xml:lang="en">The start date and duration of the package.</xs:documentation>
											</xs:annotation>
										</xs:attributeGroup>
										<xs:attributeGroup ref="QuantityGroup">
											<xs:annotation>
												<xs:documentation xml:lang="en">Specifies the number in party.</xs:documentation>
											</xs:annotation>
										</xs:attributeGroup>
										<xs:attributeGroup ref="InventoryStatusGroup">
											<xs:annotation>
												<xs:documentation xml:lang="en">The booking status of the reservation.</xs:documentation>
											</xs:annotation>
										</xs:attributeGroup>
									</xs:complexType>
								</xs:element>
								<xs:element name="GolfReservation" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">One line in a list of golf reservations.  It contains the reservation id's, golf course and round id, date and time of play, package id, membership info, and golfer name.</xs:documentation>
									</xs:annotation>
									<xs:complexType>
										<xs:sequence>
											<xs:element name="Membership" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The golfer's membership information for this reservation.</xs:documentation>
												</xs:annotation>
												<xs:complexType>
													<xs:attributeGroup ref="CustomerLoyaltyGroup"/>
												</xs:complexType>
											</xs:element>
											<xs:element name="Name" type="PersonNameType">
												<xs:annotation>
													<xs:documentation xml:lang="en">The name of the golfer for this reservation.</xs:documentation>
												</xs:annotation>
											</xs:element>
										</xs:sequence>
										<xs:attributeGroup ref="ID_Group">
											<xs:annotation>
												<xs:documentation xml:lang="en">The Golf Course ID.</xs:documentation>
											</xs:annotation>
										</xs:attributeGroup>
										<xs:attribute name="RoundID" type="xs:positiveInteger" use="required">
											<xs:annotation>
												<xs:documentation xml:lang="en">A unique identifier applied to this round.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="PlayDateTime" type="DateOrDateTimeType" use="required">
											<xs:annotation>
												<xs:documentation xml:lang="en">The date for which the round is reserved.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="PackageID" type="StringLength1to8" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">An identification of a package of which this round is a part.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="RequestorResID" type="StringLength1to8" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">The unique Identifier used by the party booking the reservation.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="ResponderResConfID" type="StringLength1to8" use="required">
											<xs:annotation>
												<xs:documentation xml:lang="en">The unique identifier assigned by the supplier.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
									</xs:complexType>
								</xs:element>
								<xs:element name="VehicleReservation" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">One line in a list of vehicle reservations.  It contains the pickup and return dates, confirmation number, 	pickup and return locations, customer name, and vehicle information.</xs:documentation>
									</xs:annotation>
									<xs:complexType>
										<xs:sequence>
											<xs:element name="VehResSummary" type="VehicleReservationSummaryType" maxOccurs="99">
												<xs:annotation>
													<xs:documentation xml:lang="en">Summary information of a reservation, to allow a reservation to be identified from several reservations that matched the previous request criteria.</xs:documentation>
												</xs:annotation>
											</xs:element>
										</xs:sequence>
									</xs:complexType>
								</xs:element>
								<xs:element name="GlobalReservation" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">One line in a list of reservations from a global distribution system.  It may contain the booking reference, the person name, start date, and an itinerary name.</xs:documentation>
									</xs:annotation>
									<xs:complexType>
										<xs:sequence>
											<xs:element name="UniqueID" type="UniqueID_Type">
												<xs:annotation>
													<xs:documentation xml:lang="en">The booking reference ID.</xs:documentation>
												</xs:annotation>
											</xs:element>
											<xs:element name="TravelerName" type="PersonNameType" minOccurs="0">
												<xs:annotation>
													<xs:documentation xml:lang="en">The name of the first traveler in the reservation.</xs:documentation>
												</xs:annotation>
											</xs:element>
										</xs:sequence>
										<xs:attribute name="ItineraryName" type="StringLength0to64" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">A name given to this itinerary.
														</xs:documentation>
											</xs:annotation>
										</xs:attribute>
										<xs:attribute name="Start" type="DateOrDateTimeType" use="optional">
											<xs:annotation>
												<xs:documentation xml:lang="en">The first date of the reservation, i.e., check-in date, departure date, pickup date, etc.</xs:documentation>
											</xs:annotation>
										</xs:attribute>
									</xs:complexType>
								</xs:element>
								<xs:element name="CruiseReservation" type="CruiseReservationType" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">Retrieves either a single booking or a list of bookings matching the specified criteria.</xs:documentation>
									</xs:annotation>
								</xs:element>
								<xs:element name="RailReservation" type="RailReservationSummaryType" minOccurs="0" maxOccurs="unbounded">
									<xs:annotation>
										<xs:documentation xml:lang="en">Retrieves either a single booking or a list of bookings matching the specified criteria.</xs:documentation>
									</xs:annotation>
								</xs:element>
							</xs:choice>
						</xs:complexType>
					</xs:element>
				</xs:sequence>
				<xs:sequence>
					<xs:element name="Errors" type="ErrorsType">
						<xs:annotation>
							<xs:documentation xml:lang="en">Indicates that an error occurred in the processing of the incoming request message. An error is defined as a critical error caused by corruption of a message in transit or a communication failure. </xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:choice>
			<xs:attributeGroup ref="OTA_PayloadStdAttributes"/>
			<xs:attributeGroup ref="ResponseGroup">
				<xs:annotation>
					<xs:documentation xml:lang="en">Use the MoreDataEchoToken to indicate the last record in the list. Used in subsequent requests, to identify where the last response left off.</xs:documentation>
				</xs:annotation>
			</xs:attributeGroup>
		</xs:complexType>
	</xs:element>
</xs:schema>
