<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" id="OTA2003A2007A" version="6.000">
  <xsd:include schemaLocation="OTA_CommonTypes.xsd"/>
  <xsd:simpleType name="AirTripType">
    <xsd:restriction base="xs:string">
      <xsd:enumeration value="OneWay"/>
      <xsd:enumeration value="OneWayOnly"/>
      <xsd:enumeration value="Return"/>
      <xsd:enumeration value="Circle"/>
      <xsd:enumeration value="OpenJaw"/>
      <xsd:enumeration value="Other"/>
      <xsd:enumeration value="Outbound"/>
      <xsd:enumeration value="OutboundSeasonRoundtrip"/>
      <xsd:enumeration value="Non-directional"/>
      <xsd:enumeration value="Inbound"/>
      <xsd:enumeration value="Roundtrip"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="DisplayOrderType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="ByDepartureTime"/>
      <xsd:enumeration value="ByArrivalTime"/>
      <xsd:enumeration value="ByJourneyTime"/>
      <xsd:enumeration value="ByPriceHighToLow"/>
      <xsd:enumeration value="ByPriceLowToHigh"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="FareStatusType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="constructed"/>
      <xsd:enumeration value="published"/>
      <xsd:enumeration value="created"/>
      <xsd:enumeration value="fareByRule"/>
      <xsd:enumeration value="fareByRulePrivate"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="GlobalIndicatorType">
    <xsd:restriction base="xsd:string">
      <xsd:enumeration value="AP"/>
      <xsd:enumeration value="AT"/>
      <xsd:enumeration value="CT"/>
      <xsd:enumeration value="DO"/>
      <xsd:enumeration value="EH"/>
      <xsd:enumeration value="FE"/>
      <xsd:enumeration value="PA"/>
      <xsd:enumeration value="PN"/>
      <xsd:enumeration value="PO"/>
      <xsd:enumeration value="RU"/>
      <xsd:enumeration value="RW"/>
      <xsd:enumeration value="SA"/>
      <xsd:enumeration value="TS"/>
      <xsd:enumeration value="WH"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="PricingSourceType">
    <xsd:restriction base="xs:string">
      <xsd:enumeration value="Published"/>
      <xsd:enumeration value="Private"/>
      <xsd:enumeration value="Both"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:simpleType name="StayUnitType">
    <xsd:restriction base="xs:string">
      <xsd:enumeration value="Minutes"/>
      <xsd:enumeration value="Hours"/>
      <xsd:enumeration value="Days"/>
      <xsd:enumeration value="Months"/>
      <xsd:enumeration value="MON"/>
      <xsd:enumeration value="TUES"/>
      <xsd:enumeration value="WED"/>
      <xsd:enumeration value="THU"/>
      <xsd:enumeration value="FRI"/>
      <xsd:enumeration value="SAT"/>
      <xsd:enumeration value="SUN"/>
    </xsd:restriction>
  </xsd:simpleType>
  <xsd:attributeGroup name="AirProcessingInfoGroup">
    <xsd:attribute use="optional" name="TargetSource">
      <xsd:simpleType>
        <xsd:restriction base="xsd:string">
          <xsd:enumeration value="Core"/>
          <xsd:enumeration value="Vendor"/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
    <xsd:attribute type="xs:boolean" use="optional" name="FlightSvcInfoIndicator"/>
    <xsd:attribute type="DisplayOrderType" use="optional" name="DisplayOrder"/>
    <xsd:attribute type="xs:boolean" use="optional" name="ReducedDataIndicator"/>
    <xsd:attribute type="xs:boolean" use="optional" name="BaseFaresOnlyIndicator"/>
    <xsd:attribute use="optional" name="SearchType">
      <xsd:simpleType>
        <xsd:restriction base="xsd:string">
          <xsd:enumeration value="Normal"/>
          <xsd:enumeration value="Window"/>
          <xsd:enumeration value="ArrivalTime"/>
          <xsd:enumeration value="PowerFlight"/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
    <xsd:attribute type="xs:boolean" use="optional" name="AvailabilityIndicator"/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name="BookingClassAvailabilityGroup">
    <xsd:attribute type="xs:string" use="optional" name="ResBookDesigCode"/>
    <xsd:attribute type="xs:string" use="optional" name="ResBookDesigQuantity"/>
    <xsd:attribute type="xs:string" use="optional" name="ResBookDesigStatusCode"/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name="BookingClassPrefGroup">
    <xsd:attribute type="xs:string" use="required" name="ResBookDesigCode"/>
    <xsd:attributeGroup ref="PreferLevelGroup"/>
    <xsd:attribute use="optional" name="ResBookDesigCodeType">
      <xsd:simpleType>
        <xsd:restriction base="xsd:string">
          <xsd:enumeration value="Displayable"/>
          <xsd:enumeration value="NonDisplayable"/>
          <xsd:enumeration value="All"/>
        </xsd:restriction>
      </xsd:simpleType>
    </xsd:attribute>
  </xsd:attributeGroup>
  <xsd:attributeGroup name="CodeListAirGroup">
    <xsd:attributeGroup ref="CodeListGroup"/>
    <xsd:attribute type="xs:string" use="optional" name="SecondaryCode"/>
    <xsd:attribute type="xs:string" use="optional" name="SupplierCode"/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name="NegotiatedFareAttributes">
    <xsd:attribute type="xs:boolean" use="optional" default="false" name="NegotiatedFare"/>
    <xsd:attribute type="xs:string" use="optional" name="NegotiatedFareCode"/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name="PriceRequestAttributes">
    <xsd:attribute type="xs:string" use="optional" name="FareQualifier"/>
    <xsd:attribute type="xs:boolean" name="NegotiatedFaresOnly"/>
    <xsd:attribute type="xs:string" name="CurrencyCode"/>
    <xsd:attribute type="PricingSourceType" use="optional" name="PricingSource"/>
    <xsd:attribute type="xs:boolean" use="optional" name="Reprice"/>
  </xsd:attributeGroup>
  <xsd:attributeGroup name="TravelerRefNumberGroup">
    <xsd:attribute type="xs:string" name="RPH"/>
    <xsd:attribute type="xs:string" use="optional" name="SurnameRefNumber"/>
  </xsd:attributeGroup>
  <xsd:complexType name="AdvResTicketingType">
    <xsd:sequence minOccurs="0">
      <xsd:element name="AdvReservation" minOccurs="0">
        <xsd:complexType>
          <xsd:attribute type="xsd:string" use="optional" name="LatestTimeOfDay"/>
          <xsd:attribute type="xs:string" use="optional" name="LatestPeriod"/>
          <xsd:attribute type="StayUnitType" use="optional" name="LatestUnit"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="AdvTicketing" minOccurs="0">
        <xsd:complexType>
          <xsd:attribute type="xsd:string" use="optional" name="FromResTimeOfDay"/>
          <xsd:attribute type="xs:string" use="optional" name="FromResPeriod"/>
          <xsd:attribute type="StayUnitType" use="optional" name="FromResUnit"/>
          <xsd:attribute type="xsd:string" use="optional" name="FromDepartTimeOfDay"/>
          <xsd:attribute type="xs:string" use="optional" name="FromDepartPeriod"/>
          <xsd:attribute type="StayUnitType" use="optional" name="FromDepartUnit"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="xs:boolean" name="AdvResInd"/>
    <xsd:attribute type="xs:boolean" name="AdvTicketingInd"/>
    <xsd:attribute type="xsd:string" use="optional" name="RequestedTicketingDate"/>
  </xsd:complexType>
  <xsd:complexType name="AirFeeType">
    <xsd:simpleContent>
      <xsd:extension base="xs:string">
        <xsd:attribute type="xs:string" use="required" name="FeeCode"/>
        <xsd:attributeGroup ref="CurrencyAmountGroup"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="AirItineraryPricingInfoType">
    <xsd:sequence>
      <xsd:element type="FareType" name="ItinTotalFare" minOccurs="0"/>
      <xsd:element name="PTC_FareBreakdowns" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="PTCFareBreakdownType" name="PTC_FareBreakdown" maxOccurs="20"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="FareInfos" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="FareInfo" maxOccurs="10">
              <xsd:complexType>
                <xsd:complexContent>
                  <xsd:extension base="FareInfoType">
                    <xsd:sequence>
                      <xsd:element ref="TPA_Extensions" minOccurs="0"/>
                    </xsd:sequence>
                  </xsd:extension>
                </xsd:complexContent>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="PricingSourceType" use="optional" name="PricingSource"/>
  </xsd:complexType>
  <xsd:complexType name="AirItineraryType">
    <xsd:sequence>
      <xsd:element name="OriginDestinationOptions">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="OriginDestinationOption" maxOccurs="99">
              <xsd:complexType>
                <xsd:complexContent>
                  <xsd:extension base="OriginDestinationOptionType">
                    <xsd:attribute type="xs:integer" use="optional" name="RefNumber"/>
                  </xsd:extension>
                </xsd:complexContent>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="AirTripType" use="optional" name="DirectionInd"/>
  </xsd:complexType>
  <xsd:complexType name="AirTaxType">
    <xsd:simpleContent>
      <xsd:extension base="xs:string">
        <xsd:attribute type="xs:string" use="required" name="TaxCode"/>
        <xsd:attributeGroup ref="CurrencyAmountGroup"/>
        <xsd:attribute type="xs:string" use="optional" name="TaxCountry"/>
        <xsd:attribute type="xs:string" use="optional" name="TaxName"/>
      </xsd:extension>
    </xsd:simpleContent>
  </xsd:complexType>
  <xsd:complexType name="AirTravelerType">
    <xsd:sequence>
      <xsd:element name="ProfileRef" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="UniqueID_Type" name="UniqueID"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element type="PersonNameType" name="PersonName" minOccurs="0"/>
      <xsd:element name="Telephone" minOccurs="0" maxOccurs="20">
        <xsd:complexType>
          <xsd:attributeGroup ref="TelephoneInfoGroup"/>
          <xsd:attribute type="ActionType" use="optional" name="Operation"/>
          <xsd:attribute type="xs:string" use="optional" name="LocationCode"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="Email" minOccurs="0" maxOccurs="3">
        <xsd:complexType>
          <xsd:simpleContent>
            <xsd:extension base="EmailType">
              <xsd:attribute type="ActionType" use="optional" name="Operation"/>
            </xsd:extension>
          </xsd:simpleContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="Address" minOccurs="0" maxOccurs="5">
        <xsd:complexType>
          <xsd:complexContent>
            <xsd:extension base="AddressType">
              <xsd:attribute type="ActionType" use="optional" name="Operation"/>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="CustLoyalty" minOccurs="0" maxOccurs="5">
        <xsd:complexType>
          <xsd:attributeGroup ref="CustomerLoyaltyGroup"/>
          <xsd:attribute type="ActionType" use="optional" name="Operation"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="Document" minOccurs="0" maxOccurs="10">
        <xsd:complexType>
          <xsd:complexContent>
            <xsd:extension base="DocumentType">
              <xsd:attribute type="ActionType" use="optional" name="Operation"/>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element type="PassengerTypeQuantityType" name="PassengerTypeQuantity" minOccurs="0"/>
      <xsd:element name="TravelerRefNumber">
        <xsd:complexType>
          <xsd:attributeGroup ref="TravelerRefNumberGroup"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="FlightSegmentRPHs" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="xs:string" name="FlightSegmentRPH" maxOccurs="99"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attributeGroup ref="GenderGroup"/>
    <xsd:attributeGroup ref="PrivacyGroup"/>
    <xsd:attribute type="xs:date" name="BirthDate"/>
    <xsd:attribute type="xs:string" name="CurrencyCode"/>
    <xsd:attribute type="xs:string" use="required" name="PassengerTypeCode"/>
    <xsd:attribute type="xs:boolean" use="optional" name="AccompaniedByInfant"/>
  </xsd:complexType>
  <xsd:complexType name="BookFlightSegmentType">
    <xsd:complexContent>
      <xsd:extension base="FlightSegmentType">
        <xsd:sequence>
          <xsd:element type="xs:string" name="MarriageGrp" minOccurs="0"/>
          <xsd:element name="BookingClassAvails" minOccurs="0">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="BookingClassAvail" maxOccurs="26">
                  <xsd:complexType>
                    <xsd:attributeGroup ref="BookingClassAvailabilityGroup"/>
                    <xsd:attribute type="xs:string" use="required" name="RPH"/>
                  </xsd:complexType>
                </xsd:element>
              </xsd:sequence>
            </xsd:complexType>
          </xsd:element>
          <xsd:element type="FreeTextType" name="Comment" minOccurs="0" maxOccurs="9"/>
          <xsd:element name="StopLocation" minOccurs="0" maxOccurs="9">
            <xsd:complexType>
              <xsd:attributeGroup ref="LocationGroup"/>
            </xsd:complexType>
          </xsd:element>
        </xsd:sequence>
        <xsd:attribute type="xs:string" use="optional" name="ResBookDesigCode"/>
        <xsd:attribute type="xsd:string" use="optional" name="NumberInParty"/>
        <xsd:attribute type="xs:string" use="optional" name="Status"/>
        <xsd:attribute use="optional" name="E_TicketEligibility">
          <xsd:simpleType>
            <xsd:restriction base="xs:string">
              <xsd:enumeration value="Eligible"/>
              <xsd:enumeration value="Not Eligible"/>
              <xsd:enumeration value="Required"/>
            </xsd:restriction>
          </xsd:simpleType>
        </xsd:attribute>
        <xsd:attribute type="xsd:string" use="optional" name="MealCode"/>
        <xsd:attribute type="DayOfWeekType" use="optional" name="DepartureDay"/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="FareInfoType">
    <xsd:sequence>
      <xsd:element type="xs:dateTime" name="DepartureDate" minOccurs="0"/>
      <xsd:element name="FareReference" minOccurs="0" maxOccurs="5">
        <xsd:complexType>
          <xsd:simpleContent>
            <xsd:extension base="xs:string">
              <xsd:attribute type="xs:string" use="optional" name="ResBookDesigCode"/>
              <xsd:attribute type="xs:string" use="optional" name="TicketDesignatorCode"/>
              <xsd:attribute type="xs:string" use="optional" name="AccountCode"/>
            </xsd:extension>
          </xsd:simpleContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="RuleInfo" minOccurs="0">
        <xsd:complexType>
          <xsd:complexContent>
            <xsd:extension base="RuleInfoType">
              <xsd:attribute type="AirTripType" use="optional" name="TripType"/>
              <xsd:attribute type="xs:boolean" use="optional" name="MoneySaverInd"/>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element type="CompanyNameType" name="FilingAirline" minOccurs="0"/>
      <xsd:element type="CompanyNameType" name="MarketingAirline" minOccurs="0" maxOccurs="unbounded"/>
      <xsd:element type="LocationType" name="DepartureAirport"/>
      <xsd:element type="LocationType" name="ArrivalAirport"/>
      <xsd:element name="Date" minOccurs="0" maxOccurs="5">
        <xsd:complexType>
          <xsd:attribute type="xsd:string" use="optional" name="Date"/>
          <xsd:attribute use="optional" name="Type">
            <xsd:simpleType>
              <xsd:restriction base="xsd:string">
                <xsd:enumeration value="LastRuleChange"/>
                <xsd:enumeration value="RuleBecomesInvalid"/>
                <xsd:enumeration value="RestrictiveFareEffective"/>
                <xsd:enumeration value="RestrictiveFareDiscontinue"/>
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:attribute>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="FareInfo" minOccurs="0" maxOccurs="15">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Date" minOccurs="0" maxOccurs="5">
              <xsd:complexType>
                <xsd:attribute type="xsd:string" use="optional" name="Date"/>
                <xsd:attribute use="optional" name="Type">
                  <xsd:simpleType>
                    <xsd:restriction base="xsd:string">
                      <xsd:enumeration value="EffectiveTravel"/>
                      <xsd:enumeration value="DiscontinueTravel"/>
                      <xsd:enumeration value="FirstTicketing"/>
                      <xsd:enumeration value="LastTicketing"/>
                      <xsd:enumeration value="TravelCompletion"/>
                    </xsd:restriction>
                  </xsd:simpleType>
                </xsd:attribute>
              </xsd:complexType>
            </xsd:element>
            <xsd:element name="Fare" minOccurs="0">
              <xsd:complexType>
                <xsd:attribute type="xs:decimal" use="optional" name="BaseAmount"/>
                <xsd:attribute type="xs:decimal" use="optional" name="BaseNUC_Amount"/>
                <xsd:attribute type="xs:decimal" use="optional" name="TaxAmount"/>
                <xsd:attribute type="xs:decimal" use="optional" name="TotalFare"/>
                <xsd:attribute type="xs:string" use="optional" name="FareDescription"/>
              </xsd:complexType>
            </xsd:element>
            <xsd:element name="PTC" minOccurs="0" maxOccurs="5">
              <xsd:complexType>
                <xsd:attribute type="xs:string" use="optional" name="PassengerTypeCode"/>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
          <xsd:attribute type="xs:string" use="optional" name="FareBasisCode"/>
          <xsd:attribute type="GlobalIndicatorType" use="optional" name="GlobalIndicatorCode"/>
          <xsd:attribute type="xs:integer" use="optional" name="MaximumPermittedMileage"/>
          <xsd:attribute type="AirTripType" use="optional" name="TripType"/>
          <xsd:attribute type="xs:string" use="optional" name="FareType"/>
          <xsd:attribute type="FareStatusType" use="optional" name="FareStatus"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attributeGroup ref="NegotiatedFareAttributes"/>
    <xsd:attribute type="xs:string" use="optional" name="CurrencyCode"/>
    <xsd:attribute type="xs:string" use="optional" name="TariffNumber"/>
    <xsd:attribute type="xs:string" use="optional" name="RuleNumber"/>
  </xsd:complexType>
  <xsd:complexType name="FareType">
    <xsd:sequence>
      <xsd:element name="BaseFare" minOccurs="0">
        <xsd:complexType>
          <xsd:attributeGroup ref="CurrencyAmountGroup"/>
          <xsd:attributeGroup ref="ExchangeRateGroup"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="EquivFare" minOccurs="0">
        <xsd:complexType>
          <xsd:attributeGroup ref="CurrencyAmountGroup"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="Taxes" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="AirTaxType" name="Tax" maxOccurs="99"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="Fees" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="AirFeeType" name="Fee" maxOccurs="9"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="TotalFare" minOccurs="0">
        <xsd:complexType>
          <xsd:attributeGroup ref="CurrencyAmountGroup"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="FareConstruction" minOccurs="0">
        <xsd:complexType>
          <xsd:attribute type="xs:boolean" use="optional" name="FormattedIndicator"/>
          <xsd:attribute type="xsd:string" use="optional" name="Language"/>
          <xsd:attribute type="xs:string" use="optional" name="OriginCityCode"/>
          <xsd:attribute type="xs:string" use="optional" name="OriginCodeContext"/>
          <xsd:attribute type="xs:string" use="optional" name="DestinationCityCode"/>
          <xsd:attribute type="xs:string" use="optional" name="DestinationCodeContext"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="UnstructuredFareCalc" minOccurs="0">
        <xsd:complexType>
          <xsd:simpleContent>
            <xsd:extension base="xs:string">
              <xsd:attribute type="xs:string" use="optional" name="FareCalcMode"/>
            </xsd:extension>
          </xsd:simpleContent>
        </xsd:complexType>
      </xsd:element>
      <xsd:element ref="TPA_Extensions" minOccurs="0"/>
    </xsd:sequence>
    <xsd:attributeGroup ref="NegotiatedFareAttributes"/>
    <xsd:attribute type="xs:string" use="optional" name="TicketDesignatorCode"/>
  </xsd:complexType>
  <xsd:complexType name="FlightSegmentType">
    <xsd:complexContent>
      <xsd:extension base="FlightSegmentBaseType">
        <xsd:sequence>
          <xsd:element name="MarketingAirline" minOccurs="0">
            <xsd:complexType>
              <xsd:simpleContent>
                <xsd:extension base="CompanyNameType">
                  <xsd:attributeGroup ref="SingleVendorIndGroup"/>
                </xsd:extension>
              </xsd:simpleContent>
            </xsd:complexType>
          </xsd:element>
        </xsd:sequence>
        <xsd:attribute type="xsd:string" use="optional" name="FlightNumber"/>
        <xsd:attribute type="xs:string" use="optional" name="TourOperatorFlightID"/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="OriginDestinationOptionType">
    <xsd:sequence>
      <xsd:element type="BookFlightSegmentType" name="FlightSegment" maxOccurs="8"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="PassengerTypeQuantityType">
    <xsd:attributeGroup ref="TravelerCountGroup"/>
  </xsd:complexType>
  <xsd:complexType name="PriceRequestInformationType">
    <xsd:sequence>
      <xsd:element name="NegotiatedFareCode" minOccurs="0" maxOccurs="unbounded">
        <xsd:complexType>
          <xsd:simpleContent>
            <xsd:extension base="xs:string">
              <xsd:attributeGroup ref="CodeListAirGroup"/>
            </xsd:extension>
          </xsd:simpleContent>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attributeGroup ref="PriceRequestAttributes"/>
    <xsd:attribute type="CabinType" use="optional" name="CabinType"/>
  </xsd:complexType>
  <xsd:complexType name="PricedItinerariesType">
    <xsd:sequence>
      <xsd:element name="PricedItinerary" maxOccurs="unbounded">
        <xsd:complexType>
          <xsd:complexContent>
            <xsd:extension base="PricedItineraryType">
              <xsd:attribute type="xs:integer" use="optional" name="OriginDestinationRefNumber"/>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="PricedItineraryType">
    <xsd:sequence>
      <xsd:element type="AirItineraryType" name="AirItinerary" minOccurs="0"/>
      <xsd:element type="AirItineraryPricingInfoType" name="AirItineraryPricingInfo" minOccurs="0"/>
      <xsd:element type="FreeTextType" name="Notes" minOccurs="0" maxOccurs="5"/>
      <xsd:element name="TicketingInfo" minOccurs="0">
        <xsd:complexType>
          <xsd:complexContent>
            <xsd:extension base="TicketingInfoRS_Type">
              <xsd:sequence>
                <xsd:element name="DeliveryInfo" minOccurs="0" maxOccurs="5">
                  <xsd:complexType>
                    <xsd:attribute type="xs:string" use="optional" name="DistribType"/>
                    <xsd:attributeGroup ref="CurrencyAmountGroup"/>
                  </xsd:complexType>
                </xsd:element>
              </xsd:sequence>
              <xsd:attribute type="ListOfOTA_CodeType" use="optional" name="PaymentType"/>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="xsd:string" use="required" name="SequenceNumber"/>
  </xsd:complexType>
  <xsd:complexType name="PTCFareBreakdownType">
    <xsd:sequence>
      <xsd:element type="PassengerTypeQuantityType" name="PassengerTypeQuantity"/>
      <xsd:element name="FareBasisCodes">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="xs:string" name="FareBasisCode" maxOccurs="10"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element type="FareType" name="PassengerFare"/>
      <xsd:element name="TravelerRefNumber" minOccurs="0" maxOccurs="99">
        <xsd:complexType>
          <xsd:attributeGroup ref="TravelerRefNumberGroup"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="TicketDesignators" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="TicketDesignator" maxOccurs="10">
              <xsd:complexType>
                <xsd:attribute type="xs:string" use="optional" name="FlightRefRPH"/>
                <xsd:attribute type="xs:string" use="optional" name="TicketDesignatorCode"/>
                <xsd:attribute type="xs:string" use="optional" name="TicketDesignatorExtension"/>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="Endorsements" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="Endorsement" maxOccurs="9">
              <xsd:complexType>
                <xsd:simpleContent>
                  <xsd:extension base="FreeTextType"/>
                </xsd:simpleContent>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
          <xsd:attribute type="xs:boolean" use="optional" name="NonRefundableIndicator"/>
          <xsd:attribute type="xs:boolean" use="optional" name="NonEndorsableIndicator"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="FareInfo" minOccurs="0" maxOccurs="99">
        <xsd:complexType>
          <xsd:complexContent>
            <xsd:extension base="FareInfoType">
              <xsd:sequence>
                <xsd:element type="FareType" name="PassengerFare"/>
              </xsd:sequence>
            </xsd:extension>
          </xsd:complexContent>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="PricingSourceType" use="optional" name="PricingSource"/>
  </xsd:complexType>
  <xsd:complexType name="RuleInfoType">
    <xsd:sequence>
      <xsd:element name="ResTicketingRules" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element name="AdvResTicketing" minOccurs="0">
              <xsd:complexType>
                <xsd:complexContent>
                  <xsd:extension base="AdvResTicketingType">
                    <xsd:attribute type="xsd:string" use="optional" name="FirstTicketDate"/>
                    <xsd:attribute type="xsd:string" use="optional" name="LastTicketDate"/>
                  </xsd:extension>
                </xsd:complexContent>
              </xsd:complexType>
            </xsd:element>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
      <xsd:element type="StayRestrictionsType" name="LengthOfStayRules" minOccurs="0"/>
      <xsd:element name="ChargesRules" minOccurs="0">
        <xsd:complexType>
          <xsd:sequence>
            <xsd:element type="VoluntaryChangesType" name="VoluntaryChanges" minOccurs="0"/>
            <xsd:element type="VoluntaryChangesType" name="VoluntaryRefunds" minOccurs="0"/>
          </xsd:sequence>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="SpecificFlightInfoType">
    <xsd:sequence>
      <xsd:element type="xsd:string" name="FlightNumber" minOccurs="0"/>
      <xsd:element type="CompanyNameType" name="Airline" minOccurs="0"/>
      <xsd:element name="BookingClassPref" minOccurs="0">
        <xsd:complexType>
          <xsd:attributeGroup ref="BookingClassPrefGroup"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="StayRestrictionsType">
    <xsd:sequence minOccurs="0">
      <xsd:element name="MinimumStay" minOccurs="0">
        <xsd:complexType>
          <xsd:attribute type="xsd:string" use="optional" name="ReturnTimeOfDay"/>
          <xsd:attribute type="xs:integer" use="optional" name="MinStay"/>
          <xsd:attribute type="StayUnitType" use="optional" name="StayUnit"/>
          <xsd:attribute type="xsd:string" use="optional" name="MinStayDate"/>
          <xsd:attribute type="xs:boolean" use="optional" name="ComplicatedRulesInd"/>
        </xsd:complexType>
      </xsd:element>
      <xsd:element name="MaximumStay" minOccurs="0">
        <xsd:complexType>
          <xsd:attribute use="optional" name="ReturnType">
            <xsd:simpleType>
              <xsd:restriction base="xs:string">
                <xsd:enumeration value="C"/>
                <xsd:enumeration value="S"/>
              </xsd:restriction>
            </xsd:simpleType>
          </xsd:attribute>
          <xsd:attribute type="xsd:string" use="optional" name="ReturnTimeOfDay"/>
          <xsd:attribute type="xs:integer" use="optional" name="MaxStay"/>
          <xsd:attribute type="StayUnitType" use="optional" name="StayUnit"/>
          <xsd:attribute type="xsd:string" use="optional" name="MaxStayDate"/>
          <xsd:attribute type="xs:boolean" use="optional" name="ComplicatedRulesInd"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="xs:boolean" use="optional" name="StayRestrictionsInd"/>
  </xsd:complexType>
  <xsd:complexType name="TicketingInfoRS_Type">
    <xsd:complexContent>
      <xsd:extension base="TicketingInfoType">
        <xsd:attribute type="xs:string" use="optional" name="eTicketNumber"/>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>
  <xsd:complexType name="TicketingInfoType">
    <xsd:sequence>
      <xsd:element type="FreeTextType" name="TicketAdvisory" minOccurs="0" maxOccurs="10"/>
    </xsd:sequence>
    <xsd:attribute type="xs:dateTime" use="optional" name="TicketTimeLimit"/>
    <xsd:attribute type="TicketType" use="optional" name="TicketType"/>
    <xsd:attribute type="xs:string" use="optional" name="TicketingStatus"/>
    <xsd:attribute type="ListOfRPH" use="optional" name="FlightSegmentRefNumber"/>
    <xsd:attribute type="ListOfRPH" use="optional" name="TravelerRefNumber"/>
    <xsd:attribute type="xs:boolean" use="optional" name="ReverseTktgSegmentsInd"/>
    <xsd:attribute type="xs:string" use="optional" name="PseudoCityCode"/>
  </xsd:complexType>
  <xsd:complexType name="TravelerInformationType">
    <xsd:sequence>
      <xsd:element type="PassengerTypeQuantityType" name="PassengerTypeQuantity" maxOccurs="10"/>
      <xsd:element type="AirTravelerType" name="AirTraveler" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="TravelerInfoSummaryType">
    <xsd:sequence>
      <xsd:element type="xsd:integer" name="SeatsRequested" minOccurs="0" maxOccurs="99"/>
      <xsd:element type="TravelerInformationType" name="AirTravelerAvail" minOccurs="0" maxOccurs="99"/>
      <xsd:element type="PriceRequestInformationType" name="PriceRequestInformation" minOccurs="0"/>
    </xsd:sequence>
  </xsd:complexType>
  <xsd:complexType name="VoluntaryChangesType">
    <xsd:sequence minOccurs="0">
      <xsd:element name="Penalty" minOccurs="0">
        <xsd:complexType>
          <xsd:attribute type="xs:string" use="optional" name="PenaltyType"/>
          <xsd:attribute type="xs:string" use="optional" name="DepartureStatus"/>
          <xsd:attributeGroup ref="CurrencyAmountGroup"/>
          <xsd:attribute type="xs:decimal" name="Percent"/>
        </xsd:complexType>
      </xsd:element>
    </xsd:sequence>
    <xsd:attribute type="xs:boolean" use="optional" name="VolChangeInd"/>
  </xsd:complexType>
</xsd:schema>