<xs:complexType name="AirlinePrefType">
<xs:annotation>
<xs:documentation xml:lang="en">Identifies a collection of preferences for airline travel.</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="LoyaltyPref" type="LoyaltyPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Identifies the preferred loyalty program(s).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="VendorPref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Identifies the preferred airline carrier(s) by name.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:complexContent>
<xs:extension base="CompanyNamePrefType">
<xs:attribute name="RPH" type="RPH_Type" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">A reference pointer used to identify an airline vendor.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:extension>
</xs:complexContent>
</xs:complexType>
</xs:element>
<xs:element name="PaymentFormPref" type="PaymentFormPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Preferred form(s) of payment.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AirportOriginPref" type="AirportPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Identifies the preferred origination airport for travel (using IATA airport codes).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AirportDestinationPref" type="AirportPrefType" minOccurs="0">
<xs:annotation>
<xs:documentation>Identifies the preferred destination airport for travel (using IATA airport codes).</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AirportRoutePref" type="AirportPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates the preferred connection airport(s) (using IATA airport codes)..</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FareRestrictPref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred fare restrictions to be used in search.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attributeGroup ref="FareRestrictPrefGroup" />
</xs:complexType>
</xs:element>
<xs:element name="FarePref" minOccurs="0" maxOccurs="99">
<xs:annotation>
<xs:documentation>Indicates preferred fare.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="Code" type="StringLength1to8" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Code indicating the type of fare preference (e.g., FM=commission, FD=fare discount).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="Description" type="StringLength1to128" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Free text describing the fare preference.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="AirlineVendorPrefRPH" type="ListOfRPH" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to one or more airlines in AirlinePrefType/VendorPref.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="RateCategoryCode" type="OTA_CodeType" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Provides a rate category for the fare preference. Refer to OpenTravel code list Rate Category (RTC).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="TransferAction" type="TransferActionType" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates under what conditions this element will be transfered to the booking.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="TourCodePref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation>Provides the contract code for a negotiated fare.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:choice>
<xs:element name="TourCodeInfo">
<xs:annotation>
<xs:documentation>Provides the tour code.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="TourTypeCode" type="StringLength1to8" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Type of tour (e.g., IT=inclusive Tour, BT= Bulk Tour, NR=Net Remit).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="YearNum" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Last digit of the year of the tour code creation.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:minInclusive value="0" />
<xs:maxInclusive value="9" />
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attributeGroup ref="PromotionCodeGroup">
<xs:annotation>
<xs:documentation xml:lang="en">Used to provide a promotion code and the associated vendor.</xs:documentation>
</xs:annotation>
</xs:attributeGroup>
<xs:attribute name="PartyID" type="StringLength1to8" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier assigned to a tour group by the airline.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="StaffTourCodeInfo">
<xs:annotation>
<xs:documentation>Provides a tour code for airline staff.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attribute name="StaffType" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Defines the type of staff covered by the TourCode.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="Current">
<xs:annotation>
<xs:documentation xml:lang="en">Staff currently employed (i.e., not retired)</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Duty">
<xs:annotation>
<xs:documentation xml:lang="en">Staff travelling on duty (e.g., deadheading crew).</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="CabinCrew">
<xs:annotation>
<xs:documentation xml:lang="en">Cabin crew staff.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="Retired">
<xs:annotation>
<xs:documentation xml:lang="en">Retired staff.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="TechCrew">
<xs:annotation>
<xs:documentation xml:lang="en">Staff travelling as technical crew.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="UnaccompaniedFamilyMember">
<xs:annotation>
<xs:documentation xml:lang="en">Family travelling without the airline staff family member.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="OtherAirlinePersonnel">
<xs:annotation>
<xs:documentation xml:lang="en">Personnel employed by another airline.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="EmployeeID" type="StringLength1to16" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Identifier of the staff member.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="VendorCode" type="StringLength1to8" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">The airline to which the EmployeeID is associated.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="Description" type="StringLength1to128" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Description of the staff tour code.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
</xs:choice>
<xs:attribute name="PassengerTypeCode" type="AlphaLength3" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Code used to indicate the type of traveler (e.g., ADT, CHD, INF, GRP).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="AirlineVendorPrefRPH" type="ListOfRPH" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to one or more airlines in AirlinePrefType/VendorPref.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="TransferAction" type="TransferActionType" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates under what conditions this element will be transfered to the booking.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="FlightTypePref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred flight characteristics to be used in a search (e.g., connections, stopovers).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attributeGroup ref="FlightTypePrefGroup" />
</xs:complexType>
</xs:element>
<xs:element name="EquipPref" type="EquipmentTypePref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred equipment type(s) to be used in a search.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="CabinPref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred cabin(s) to be used in a search.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attributeGroup ref="CabinPrefGroup" />
</xs:complexType>
</xs:element>
<xs:element name="SeatPref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred seat characteristics. Refer to OTA Code List Seat Preference (STP) for codes.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attributeGroup ref="SeatPrefGroup" />
<xs:attribute name="FlightDistanceQualifier" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Used to distingish a flight as long haul or short haul.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:NMTOKEN">
<xs:enumeration value="LongHaul">
<xs:annotation>
<xs:documentation xml:lang="en">Designates a flight as a long haul.</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="ShortHaul">
<xs:annotation>
<xs:documentation xml:lang="en">Designates a flight as a short haul.</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
</xs:attribute>
<xs:attribute name="InternationalIndicator" type="xs:boolean" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">When true, indicates an international flight.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="AirlineVendorPrefRPH" type="ListOfRPH" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Reference to one or more airlines in VendorPref.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="PassengerTypeCode" type="AlphaLength3" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Code used to indicate the type of traveler (e.g., ADT, CHD, INF, GRP).</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="TransferAction" type="TransferActionType" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Indicates under what conditions this element will be transfered to the booking.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
</xs:element>
<xs:element name="TicketDistribPref" type="TicketDistribPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred ticket distribution method (e.g., fax, eMail, courier, mail, airport pickup)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MealPref" type="MealPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred meal type (e.g., vegetarian, Kosher, low fat)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SpecRequestPref" type="SpecRequestPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred special request(s) to be used with this collection of preferences.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SSR_Pref" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates Special Service Request preference type.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:attributeGroup ref="SSR_PrefGroup" />
</xs:complexType>
</xs:element>
<xs:element ref="TPA_Extensions" minOccurs="0" />
<xs:element name="MediaEntertainPref" type="MediaEntertainPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Media and entertainment preferences.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PetInfoPref" type="PetInfoPrefType" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="en"> Indicates preferred information for pet accompanying traveler.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
<xs:attributeGroup ref="PrivacyGroup" />
<xs:attributeGroup ref="PreferLevelGroup" />
<xs:attributeGroup ref="SmokingIndicatorGroup" />
<xs:attribute name="PassengerTypeCode" type="AlphaLength3" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Category of airline passenger, using standard ATPCO codes.</xs:documentation>
</xs:annotation>
</xs:attribute>
<xs:attribute name="AirTicketType" type="TicketType" use="optional">
<xs:annotation>
<xs:documentation xml:lang="en">Type of airline ticket preferred for this collection.</xs:documentation>
</xs:annotation>
</xs:attribute>
</xs:complexType>
|