<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2013 rel. 2 sp2 (x64) (http://www.altova.com) by Parichat (MIKI Solutions Limited) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:simpleType name="money">
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>
	<xs:complexType name="agentMarkupType">
		<xs:annotation>
			<xs:documentation>Agent markup. Only for Miki internal use</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:choice>
				<xs:element name="amount" type="xs:decimal">
					<xs:annotation>
						<xs:documentation>Agent commission in numbers</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="percentage" type="xs:decimal">
					<xs:annotation>
						<xs:documentation>Agent commission in percentage</xs:documentation>
					</xs:annotation>
				</xs:element>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="alertType">
		<xs:annotation>
			<xs:documentation>City level alerts</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="title" type="xs:string">
				<xs:annotation>
					<xs:documentation>Alert title</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="description" type="xs:string">
				<xs:annotation>
					<xs:documentation>Alert description</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="fromDate" type="xs:date">
				<xs:annotation>
					<xs:documentation>Alert valid from</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="toDate" type="xs:date">
				<xs:annotation>
					<xs:documentation>Alert valid to</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="allocationBreakDownType">
		<xs:annotation>
			<xs:documentation>Indicate the level of allocation breakdown required: 0=None, 1=Overall allocation status, 2=Full breakdown of availability per night</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="0"/>
			<xs:enumeration value="1"/>
			<xs:enumeration value="2"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:attributeGroup name="priceGroupType">
		<xs:attribute name="amount" type="xs:decimal" use="required"/>
		<xs:attribute name="taxInclusive" type="xs:boolean" use="optional"/>
		<xs:attribute name="description" type="xs:string" use="optional"/>
	</xs:attributeGroup>
	<xs:complexType name="priceType">
		<xs:annotation>
			<xs:documentation>Define the amount.</xs:documentation>
		</xs:annotation>
		<xs:attributeGroup ref="priceGroupType"/>
	</xs:complexType>
	<xs:attributeGroup name="bookingIdentifierType">
		<xs:annotation>
			<xs:documentation>Unique identifier to identify the booking source.</xs:documentation>
		</xs:annotation>
	</xs:attributeGroup>
	<xs:complexType name="budgetType">
		<xs:annotation>
			<xs:documentation>Specify a budget</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="fromBudget">
				<xs:annotation>
					<xs:documentation>Lower range of budget check </xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:minInclusive value="0"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="toBudget">
				<xs:annotation>
					<xs:documentation>Upper range of budget check</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:int">
						<xs:maxInclusive value="99999"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="budgetStatus">
				<xs:annotation>
					<xs:documentation>Indicates which products should be returned when considering the budget check: 1=All, 2=Only products that fall within budget</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:enumeration value="1"/>
						<xs:enumeration value="2"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="cancellationPolicyRecordType">
		<xs:sequence>
			<xs:element name="appliesFrom" type="xs:dateTime"/>
			<xs:element name="fullStay" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>Shows either cancellation charge percent should be applied to the whole stay or to the first night only</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="cancellationCharge">
				<xs:annotation>
					<xs:documentation>Percentage of the first night amount or whole stay based on fullStay, or fixed amount.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:choice>
						<xs:element name="amount" type="xs:decimal"/>
						<xs:element name="percentage" type="xs:decimal"/>
					</xs:choice>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:attributeGroup name="cancellationPoliciesAttributeGroup">
		<xs:attribute name="refundable" use="required">
			<xs:annotation>
				<xs:documentation>Refundable type of cancellation policy - ('0' -> non-refundable, '1' -> partially refundable, '2' -> refundable)</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:integer">
					<xs:enumeration value="2"/>
					<xs:enumeration value="1"/>
					<xs:enumeration value="0"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:complexType name="cityNumber">
		<xs:sequence>
			<xs:element name="cityLocations" minOccurs="0" maxOccurs="5">
				<xs:annotation>
					<xs:documentation>If this element exists, only products from these locations will be returned</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="cityLocation">
							<xs:annotation>
								<xs:documentation>9 digit Integer</xs:documentation>
							</xs:annotation>
							<xs:simpleType>
								<xs:restriction base="xs:integer"/>
							</xs:simpleType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="cityNumber" use="required">
			<xs:annotation>
				<xs:documentation>Indicates the city Number.</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:integer">
					<xs:totalDigits value="5"/>
					<xs:minInclusive value="1"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="commonProductType">
		<xs:annotation>
			<xs:documentation>All data per product</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="productCode">
				<xs:annotation>
					<xs:documentation>Unique reference to product</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="productCodeType"/>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
			<xs:element name="giataCode" type="xs:string" minOccurs="0"/>
			<xs:element name="currencyCode" type="xs:string">
				<xs:annotation>
					<xs:documentation>ISO Currency code</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="alerts" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Collection of errata message information which are related to this product only.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="alert" type="alertType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="countryCodeType">
		<xs:restriction base="xs:string">
			<xs:length value="2"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="currencyCodeType">
		<xs:annotation>
			<xs:documentation>ISO currency code</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="DateTimeSpanType">
		<xs:annotation>
			<xs:documentation> Date time span </xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Start" type="xs:date">
				<xs:annotation>
					<xs:documentation source="Description" xml:lang="en">The starting value of the time span.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="End" type="xs:date">
				<xs:annotation>
					<xs:documentation source="Description" xml:lang="en">The ending value of the time span.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="errors">
		<xs:annotation>
			<xs:documentation>Indicates the collections of error occurred in the processing of the request message</xs:documentation>
		</xs:annotation>
		<xs:sequence maxOccurs="unbounded">
			<xs:annotation>
				<xs:documentation>Multiple errors may be returned</xs:documentation>
			</xs:annotation>
			<xs:element name="error" type="errorType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="errorType">
		<xs:annotation>
			<xs:documentation>Error content</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="code">
				<xs:annotation>
					<xs:documentation>Miki error code</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:integer"/>
				</xs:simpleType>
			</xs:element>
			<xs:element name="description">
				<xs:annotation>
					<xs:documentation>Full description of error</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string"/>
				</xs:simpleType>
			</xs:element>
			<xs:element name="Solution">
				<xs:annotation>
					<xs:documentation>Proposed solution to error</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string"/>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="feesType">
		<xs:sequence maxOccurs="unbounded">
			<xs:element name="fee" type="feeType">
				<xs:annotation>
					<xs:documentation>Fee which is applied to this rate.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="feeType">
		<xs:annotation>
			<xs:documentation>Fee which is applied to this rate.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="taxes" type="taxesType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Taxes used for an associated fee.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="code" type="xs:string"/>
		<xs:attribute name="amount" type="xs:decimal" use="optional"/>
		<xs:attribute name="percent" type="xs:positiveInteger" use="optional"/>
		<xs:attribute name="description" type="xs:string"/>
	</xs:complexType>
	<xs:complexType name="guestCountType">
		<xs:annotation>
			<xs:documentation>Defines the number of guests</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="type" type="passengerType">
				<xs:annotation>
					<xs:documentation>This attribute allows representing Adult, Child</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="age" type="xs:nonNegativeInteger" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Defines the age of a guest.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:attributeGroup name="leadPassengerContactGroupType">
		<xs:attribute name="internationalCode" type="xs:string" use="required"/>
		<xs:attribute name="phoneNumber" type="xs:string" use="required"/>
		<xs:attribute name="emailAddress" type="xs:string" use="required"/>
	</xs:attributeGroup>
	<xs:complexType name="leadPassengerContactType">
		<xs:attributeGroup ref="leadPassengerContactGroupType"/>
	</xs:complexType>
	<xs:complexType name="mealBasisType">
		<xs:annotation>
			<xs:documentation>Meal Basis Details</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="includedMeals" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Meal details. Mandatory  if mealBasisCode is not Room Only</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="includedMeal" type="mealTypeGroup"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attributeGroup ref="mealBasisAttributeType"/>
	</xs:complexType>
	<xs:complexType name="upgradedMealBasisType">
		<xs:annotation>
			<xs:documentation>upgrade meals details</xs:documentation>
		</xs:annotation>
		<xs:sequence maxOccurs="unbounded">
			<xs:element name="includedMeal" type="mealTypeGroup"/>
		</xs:sequence>
		<xs:attributeGroup ref="mealBasisAttributeType"/>
	</xs:complexType>
	<xs:attributeGroup name="mealBasisAttributeType">
		<xs:attribute name="mealBasisCode" type="mealBasisCode" use="required"/>
	</xs:attributeGroup>
	<xs:complexType name="mealBasisBookingType">
		<xs:sequence>
			<xs:element name="mealBasisCode" type="mealBasisCode"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="mealTypeGroup">
		<xs:sequence>
			<xs:element name="mealID" type="xs:int"/>
			<xs:element name="mealType" type="xs:int">
				<xs:annotation>
					<xs:documentation>1 - Breakfast, 2 = lunch, 3 = dinner</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="description" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of meal</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="modificationPolicyCodes">
		<xs:sequence maxOccurs="unbounded">
			<xs:element name="policy" type="modificationPolicyType"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="nameType">
		<xs:annotation>
			<xs:documentation>Standard name format</xs:documentation>
		</xs:annotation>
	</xs:complexType>
	<xs:attributeGroup name="passengerGroupType">
		<xs:attribute name="type" type="passengerType" use="required">
			<xs:annotation>
				<xs:documentation>This attribute allows representing Adult, Child</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="age" type="xs:positiveInteger" use="required">
			<xs:annotation>
				<xs:documentation>Defines the age of a guest.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="passportNumber" type="xs:string" use="optional">
			<xs:annotation>
				<xs:documentation>Passport number.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="height" type="xs:string" use="optional">
			<xs:annotation>
				<xs:documentation>Height of the guest</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="weight" type="xs:string" use="optional">
			<xs:annotation>
				<xs:documentation>Weight of the guest</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="specialRequirements" type="xs:string" use="optional"/>
	</xs:attributeGroup>
	<xs:simpleType name="passengerType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="ADT"/>
			<xs:enumeration value="CHD"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:attributeGroup name="POSGroup">
		<xs:annotation>
			<xs:documentation source="Description" xml:lang="en">Point of Interested location code along with distance.</xs:documentation>
		</xs:annotation>
		<xs:attribute name="locationCode" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">Specify the location code.</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:integer">
					<xs:totalDigits value="5"/>
					<xs:minInclusive value="1"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="distance" type="xs:decimal" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">The measure of the distance to/from a reference point.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:attributeGroup name="PositionGroup">
		<xs:annotation>
			<xs:documentation source="Description" xml:lang="en">Used to specify the geographic coordinates of a location.</xs:documentation>
		</xs:annotation>
		<xs:attribute name="latitude" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">The measure of the angular distance on a meridian north or south of the equator.</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:decimal">
					<xs:totalDigits value="15"/>
					<xs:fractionDigits value="6"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="longitude" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">The measure of the angular distance on a meridian east or west of the prime meridian.</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:decimal">
					<xs:totalDigits value="15"/>
					<xs:fractionDigits value="6"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="distance" type="xs:decimal" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">The measure of the distance to/from a reference point.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:attributeGroup name="priceQualifierType">
		<xs:annotation>
			<xs:documentation>Information to derive the price</xs:documentation>
		</xs:annotation>
		<xs:attribute name="currencyCode" type="currencyCodeType" use="required">
			<xs:annotation>
				<xs:documentation>ISO Currency code.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="paxNationality" type="countryCodeType" use="required">
			<xs:annotation>
				<xs:documentation>Nationality for the Guest.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:attributeGroup name="priceAttributeGroup">
		<xs:attribute name="priceType" type="xs:positiveInteger" use="required">
			<xs:annotation>
				<xs:documentation>1=Nett, 2=Gross</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="commissionRate" type="xs:decimal">
			<xs:annotation>
				<xs:documentation>Rate of commission paid to agent (applicable for gross rates only)</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="commissionAmount" type="xs:decimal">
			<xs:annotation>
				<xs:documentation>Commission amount paid to agent (applicable for gross rates only)</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:complexType name="dailyPriceType">
		<xs:annotation>
			<xs:documentation>Represents standard price information</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="money">
				<xs:attribute name="priceType" type="xs:string" use="required">
					<xs:annotation>
						<xs:documentation>1=Nett, 2=Gross</xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attribute name="commissionRate" type="xs:decimal">
					<xs:annotation>
						<xs:documentation>Rate of commission paid to agent (applicable for gross rates only)</xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attribute name="commissionAmount" type="xs:decimal">
					<xs:annotation>
						<xs:documentation>Commission amount paid to agent (applicable for gross rates only)</xs:documentation>
					</xs:annotation>
				</xs:attribute>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="productCodeGroupType">
		<xs:annotation>
			<xs:documentation>Unique reference to product</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="productCodeType">
				<xs:attribute name="cityNumber" type="xs:decimal" use="optional"/>
				<xs:attribute name="supplierNumber" type="xs:decimal" use="optional"/>
				<xs:attribute name="TTIcode" type="TTIcodeType" use="optional"/>
				<xs:attribute name="availabilitySequence" type="xs:string">
					<xs:annotation>
						<xs:documentation>Overall availability: 1=Avl, 2=On req, 7=On req, but no price, 8=Price but not avl, 9=No price, not avl</xs:documentation>
					</xs:annotation>
				</xs:attribute>
				<xs:attribute name="paymentDueDate" type="xs:date" use="optional"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="productCodeType">
		<xs:annotation>
			<xs:documentation>Unique reference to product</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string"/>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="productRefCriteriaType">
		<xs:annotation>
			<xs:documentation>Indicates details of hotel reference information</xs:documentation>
		</xs:annotation>
		<xs:choice>
			<xs:element name="productCodes">
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="productCode" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="giataCodes">
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="giataCode" type="xs:string"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="propertyType">
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="key" type="xs:string"/>
			<xs:element name="value" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ratePlanGroupType">
		<xs:sequence>
			<xs:element name="ratePlanType" type="xs:string" minOccurs="0"/>
			<xs:element name="ratePlanCode" type="xs:string"/>
			<xs:element name="ratePlanID" type="xs:string">
				<xs:annotation>
					<xs:documentation>Text field to provide the unique Id that is associated with the rate during search</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="property" type="propertyType" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:attributeGroup name="refCodeType">
		<xs:annotation>
			<xs:documentation source="Description" xml:lang="en">The Reference point element allows for a search  by reference point code.</xs:documentation>
		</xs:annotation>
		<xs:attribute name="type" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">Specify the location reference type.1- CityCode, 2-Citynumber,3-AreaName etc</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:integer">
					<xs:minInclusive value="1"/>
					<xs:totalDigits value="1"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
		<xs:attribute name="code" use="required">
			<xs:annotation>
				<xs:documentation source="Description" xml:lang="en">The location code</xs:documentation>
			</xs:annotation>
			<xs:simpleType>
				<xs:restriction base="xs:string">
					<xs:minLength value="1"/>
				</xs:restriction>
			</xs:simpleType>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:complexType name="requestAuditInfo">
		<xs:annotation>
			<xs:documentation>This holds the details about requestor and audit information</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="agentCode">
				<xs:annotation>
					<xs:documentation>Unique reference used to identify the client to Miki</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="6"/>
						<xs:maxLength value="6"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="userName" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>UserName of the user submitting the request</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="subAgentId" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Unique reference used to identify the subAgent to Miki client</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:nonNegativeInteger">
						<xs:totalDigits value="9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="requestPassword">
				<xs:annotation>
					<xs:documentation>Daily password used to validate request</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="50"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="requestID">
				<xs:annotation>
					<xs:documentation>Unique request reference used for audit purposes</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:integer">
						<xs:totalDigits value="9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="requestDateTime" type="xs:dateTime">
				<xs:annotation>
					<xs:documentation>Time agent sent request to Miki</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="mikiInfo" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Please ignore, internal use only</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="responseAuditInfo">
		<xs:annotation>
			<xs:documentation>Standard audit information sent with all responses</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="agentCode" type="xs:string">
				<xs:annotation>
					<xs:documentation>Unique reference used to identify the client to Miki</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="subAgentId" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Unique reference used to identify the subAgent to Miki client</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:nonNegativeInteger">
						<xs:totalDigits value="9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="responseID">
				<xs:annotation>
					<xs:documentation>Miki reference used for audit purposes</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:integer">
						<xs:totalDigits value="9"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="responseDateTime" type="xs:dateTime">
				<xs:annotation>
					<xs:documentation>The time that the XML message was sent from Miki's server</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="transactionID" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>   Text fields to represent the unique id during the search.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="returnAllocationType">
		<xs:annotation>
			<xs:documentation>Indicate which hotels are to be returned based on availability status: 1=All (allocation and on request), 2=Allocation only</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Allocation and on request.</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>Allocation only.</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="returnAllAllocationType">
		<xs:annotation>
			<xs:documentation>Indicate which hotels are to be returned based on availability status: 1=Allocation and on request, 2=Allocation only, 3=All(Allocation,On-Request and Unavailable)</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Allocation and on request.</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>Allocation only.</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="3">
				<xs:annotation>
					<xs:appinfo>All(Allocation,On-Request and Unavailable).</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="candidateStayType">
		<xs:annotation>
			<xs:documentation>Each roomBasis needs to be specified with a sequence, number of adults and number of children</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="roomNo" type="xs:positiveInteger">
				<xs:annotation>
					<xs:documentation>The Sequence number of the Room.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="guests">
				<xs:annotation>
					<xs:documentation>Collection of guest for this room.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="guest" type="guestCountType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="salesChannelType">
		<xs:annotation>
			<xs:documentation>Via what sales channel will the hotel be sold: 1=Wholesale, 2=Retail, 3=Corporate, 4=To consumer, 9=Staff</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="1"/>
			<xs:enumeration value="2"/>
			<xs:enumeration value="3"/>
			<xs:enumeration value="4"/>
			<xs:enumeration value="9"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="specialOffers">
		<xs:annotation>
			<xs:documentation>This optional element will be available only there are any special offers applied on the price</xs:documentation>
		</xs:annotation>
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="offer" type="specialOfferType">
				<xs:annotation>
					<xs:documentation>This offer element contains all the details required to generate special offer description. This element will be present only when requested</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="offersPresent" type="xs:boolean" use="required">
			<xs:annotation>
				<xs:documentation>Flag to indicate any special offers applied on the price.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="specialOfferType">
		<xs:annotation>
			<xs:documentation>This needs to be changed based on the requirements</xs:documentation>
		</xs:annotation>
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="value">
				<xs:complexType>
					<xs:simpleContent>
						<xs:extension base="xs:string">
							<xs:attribute name="id" type="xs:positiveInteger" use="required"/>
						</xs:extension>
					</xs:simpleContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="typeId" type="xs:positiveInteger" use="required"/>
	</xs:complexType>
	<xs:complexType name="summaryInfo">
		<xs:annotation>
			<xs:documentation>Holds the total number of products processed of each status</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="totalAvailable" type="xs:int">
				<xs:annotation>
					<xs:documentation>Number of products returned with status "available"</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="totalOnRequest" type="xs:int">
				<xs:annotation>
					<xs:documentation>Number of products returned with status "on request"</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="supplementGroupType">
		<xs:annotation>
			<xs:documentation>Detail of the supplement.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="description" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Description of supplement</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="cost" type="priceType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The cost of the meal. </xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attributeGroup ref="supplementAttributeGroupType"/>
	</xs:complexType>
	<xs:attributeGroup name="supplementAttributeGroupType">
		<xs:attribute name="id" type="xs:string" use="required"/>
		<xs:attribute name="qty" type="xs:positiveInteger" use="required"/>
	</xs:attributeGroup>
	<xs:complexType name="taxesType">
		<xs:sequence maxOccurs="unbounded">
			<xs:element name="tax" type="taxType">
				<xs:annotation>
					<xs:documentation>An individual tax.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="taxType">
		<xs:sequence>
			<xs:element name="description" type="xs:string">
				<xs:annotation>
					<xs:documentation>Description of the tax or fees</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:choice>
				<xs:element name="amount" type="xs:decimal"/>
				<xs:element name="percentage" type="xs:decimal"/>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="TTIcodeType">
		<xs:annotation>
			<xs:documentation source="Description" xml:lang="en">TTI hotel reference code.</xs:documentation>
			<xs:documentation source="Example" xml:lang="en">Example: 123</xs:documentation>
			<xs:documentation source="Note" xml:lang="en">Note:   This code is maintained by the Travel Technology Initiative (TTI) and provides a unique way to identify a property across a multiplicity of channels, service providers, tour companies, representation companies and third parties involved in the booking, administration and fulfillment of travel within the hospitality industry. For more information: http://www.tti.org/tticodes.html</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:positiveInteger"/>
	</xs:simpleType>
	<xs:complexType name="warnings">
		<xs:annotation>
			<xs:documentation>Indicates the collections of business level warning messages for requested products.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="warning" type="warningType" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="warningType">
		<xs:annotation>
			<xs:documentation>Used to conjunction with the success elements to define a business error</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="code" type="xs:integer">
				<xs:annotation>
					<xs:documentation>Indicates the warning code.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="description" type="xs:string">
				<xs:annotation>
					<xs:documentation>Detail description of the warning.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="solution" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Proposed solution to warning.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="clientReferenceType">
		<xs:annotation>
			<xs:documentation>This field can be used to hold the client's reference for the booking</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:string">
				<xs:attribute name="mustBeUnique" type="xs:boolean"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:attributeGroup name="hotelCodeType">
		<xs:attribute name="TTIcode" type="TTIcodeType" use="optional"/>
	</xs:attributeGroup>
	<xs:complexType name="geoLocationType">
		<xs:annotation>
			<xs:documentation>Specify the geolocation information for which the search is happening.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:choice>
				<xs:element name="hotelRefs" type="productRefCriteriaType">
					<xs:annotation>
						<xs:documentation xml:lang="en">Multiple products can be specified</xs:documentation>
					</xs:annotation>
				</xs:element>
				<xs:element name="cityNumbers" type="cityNumbers"/>
			</xs:choice>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="cityNumbers">
		<xs:sequence maxOccurs="unbounded">
			<xs:element name="cityNumber" type="xs:positiveInteger"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="tourReferenceType">
		<xs:annotation>
			<xs:documentation>This is a unique reservation number for this item.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string"/>
	</xs:simpleType>
	<xs:simpleType name="destinationCodeType">
		<xs:annotation>
			<xs:documentation>Destination code: 0=City number, 1=City code, 2=Airport code</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>City-Number</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>City-Code</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>Airport-Code</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bookingStatusType">
		<xs:annotation>
			<xs:documentation>Tour status: 25=On request, 30=Confirmed, 70=Rejected, 90=Cancelled</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="10">
				<xs:annotation>
					<xs:appinfo> In-Basket</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="25">
				<xs:annotation>
					<xs:appinfo>On-Request</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="30">
				<xs:annotation>
					<xs:appinfo>Confirmed</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="65">
				<xs:annotation>
					<xs:appinfo>Modification-Rejected</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="70">
				<xs:annotation>
					<xs:appinfo>Rejected</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="90">
				<xs:annotation>
					<xs:appinfo>Cancelled</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="99">
				<xs:annotation>
					<xs:appinfo>On-Error</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="TransactionStatusType">
		<xs:annotation>
			<xs:documentation>Indicates the general Transaction status.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="Pending"/>
			<xs:enumeration value="Cancelled"/>
			<xs:enumeration value="Ignored"/>
			<xs:enumeration value="OnHold"/>
			<xs:enumeration value="Unsuccessful"/>
			<xs:enumeration value="Successful"/>
			<xs:enumeration value="PendingCancellation"/>
			<xs:enumeration value="Modification-Rejected"/>
			<xs:enumeration value="Modified"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="paymentResponseType">
		<xs:sequence>
			<xs:element name="amount" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Indicates the Total transaction amount .</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:attributeGroup ref="priceGroupType"/>
				</xs:complexType>
			</xs:element>
			<xs:element name="errors" type="errors" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Collection of the erros from the Payment service provider if any error happen during transaction.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="success" type="xs:boolean" use="required">
			<xs:annotation>
				<xs:documentation>Indicate whether the  transaction is success or fail. True = Successful payment, False = Payment Failed.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="authorizationCode" type="xs:string" use="optional">
			<xs:annotation>
				<xs:documentation>Indicate transaction reference from the payment service provider.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="type" type="paymentTransactionType" use="required">
			<xs:annotation>
				<xs:documentation>Indicates the type of payments whether its authorisation or refund.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:simpleType name="subproductCodeType">
		<xs:annotation>
			<xs:documentation>Miki code representing room type or booking basis</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string"/>
	</xs:simpleType>
	<xs:attributeGroup name="cancellationChargePolicyType">
		<xs:attribute name="type" type="xs:string" use="required">
			<xs:annotation>
				<xs:documentation>The unit of time used to calculate the cancellation deadline.1- Whole amount, 2 - percentage</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:complexType name="priceAmountType">
		<xs:simpleContent>
			<xs:extension base="xs:decimal">
				<xs:attribute name="currencyCode" type="xs:string" use="required">
					<xs:annotation>
						<xs:documentation>ISO currency code</xs:documentation>
					</xs:annotation>
				</xs:attribute>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:simpleType name="payNowType">
		<xs:annotation>
			<xs:documentation>Set the value as '1' for paying now, '0' for pay later</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>Pay Later</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Pay Now</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="availabilityStatusType">
		<xs:annotation>
			<xs:documentation>Indicates the status of the availability. 1 - Available, 2 - OnRequest, 3- Unavailable</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Available</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>OnRequest</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="4">
				<xs:annotation>
					<xs:appinfo>UnAvailable</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:attributeGroup name="roomRateIdentifierType">
		<xs:annotation>
			<xs:documentation>Group of elements to uniquely identify the price</xs:documentation>
		</xs:annotation>
		<xs:attribute name="ratePlanCode" type="xs:string" use="required"/>
	</xs:attributeGroup>
	<xs:simpleType name="modificationPolicyType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="nameChangeAllowed"/>
			<xs:enumeration value="serviceDateChangeAllowed"/>
			<xs:enumeration value="numberOfNightsIncreaseAllowed"/>
			<xs:enumeration value="numberOfNightsDecreaseAllowed"/>
			<xs:enumeration value="mealBasisChangeAllowed"/>
			<xs:enumeration value="roomCategoryChangeAllowed"/>
			<xs:enumeration value="roomTypeChangeAllowed"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="geoLocationCodesType">
		<xs:sequence maxOccurs="10">
			<xs:element name="code" type="locationCodeType" minOccurs="1"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="locationCodeType">
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:attributeGroup name="totalPriceType">
		<xs:annotation>
			<xs:documentation>Total price for all quantity of this subProduct and for all nights</xs:documentation>
		</xs:annotation>
		<xs:attribute name="taxInclusive" type="xs:boolean">
			<xs:annotation>
				<xs:documentation>If price is tax inclusive or tax exclusive? 1 = inclusive, 0 = tax exclusive</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="taxAmount" type="xs:double"/>
	</xs:attributeGroup>
	<xs:complexType name="userType">
		<xs:annotation>
			<xs:documentation>This holds the details about User.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="clientCode" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Client code</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="3"/>
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="branchCode" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Branch Code</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="3"/>
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="userName" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>User name of the client</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="profitCenter" type="profitCentreType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Profit center</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="profitCentreType">
		<xs:restriction base="xs:string">
			<xs:minLength value="3"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="EBIZproductType">
		<xs:annotation>
			<xs:documentation>Defined set of products</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="3">
				<xs:annotation>
					<xs:appinfo>Hotel</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="4">
				<xs:annotation>
					<xs:appinfo>Sightseeing</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="5">
				<xs:annotation>
					<xs:appinfo>Transfer</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>All Product</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="responseProductType">
		<xs:annotation>
			<xs:documentation>Defined set of products</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="3">
				<xs:annotation>
					<xs:appinfo>Hotel</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="4">
				<xs:annotation>
					<xs:appinfo>Sightseeing</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="5">
				<xs:annotation>
					<xs:appinfo>Transfer</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="productSearchCriteriaType">
		<xs:annotation>
			<xs:documentation>Specify the product search criteria.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="minProductInfoType"/>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="minProductInfoType">
		<xs:annotation>
			<xs:documentation>Minimum information of the product</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="productType" type="EBIZproductType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Specify the product type.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="productName" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Specify the product name .</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="productCode" type="productCodeType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Specify the product code .</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="sortOrderType">
		<xs:annotation>
			<xs:documentation>The defined set of the sort order type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>Ascending</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Descending</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="bookingSearchSortValueType">
		<xs:annotation>
			<xs:documentation>The defined set of the booking search sort value type</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Service Date</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>Tour Reference</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="3">
				<xs:annotation>
					<xs:appinfo>Booking Date</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="4">
				<xs:annotation>
					<xs:appinfo>Lead Passenger Name</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="paymentStatusType">
		<xs:annotation>
			<xs:documentation>The defined set of the payment status of the Booking</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>All</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="10">
				<xs:annotation>
					<xs:appinfo>Unpaid</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="25">
				<xs:annotation>
					<xs:appinfo>Paid</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="40">
				<xs:annotation>
					<xs:appinfo>Refunded</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="90">
				<xs:annotation>
					<xs:appinfo>Cancelled</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="99">
				<xs:annotation>
					<xs:appinfo>Failed</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="paymentOptionType">
		<xs:annotation>
			<xs:documentation>The defined set of the payment option</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>All</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>OnAccount</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>PrePayment</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="paymentMethodType">
		<xs:annotation>
			<xs:documentation>The defined set of the payment methods.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="0">
				<xs:annotation>
					<xs:appinfo>All</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>CreditCard</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>DebitCard</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="3">
				<xs:annotation>
					<xs:appinfo>Direct Debit</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="4">
				<xs:annotation>
					<xs:appinfo>Cash</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="searchDatePeriodType">
		<xs:sequence>
			<xs:element name="startDate" type="xs:date">
				<xs:annotation>
					<xs:documentation>Specify the date</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="endDate" type="xs:date">
				<xs:annotation>
					<xs:documentation>Specify the date</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="paymentTransactionType">
		<xs:annotation>
			<xs:documentation>The defined set of the payment transactions</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Authorization</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>Refund</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="roomCodeType">
		<xs:annotation>
			<xs:documentation>The defined set of the room types</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:int">
			<xs:enumeration value="1">
				<xs:annotation>
					<xs:appinfo>Standard</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
			<xs:enumeration value="2">
				<xs:annotation>
					<xs:appinfo>Special</xs:appinfo>
				</xs:annotation>
			</xs:enumeration>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="formattedTime">
		<xs:annotation>
			<xs:documentation>Time with separate hours + minutes fields as attributes</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:time">
				<xs:attribute name="hours" type="xs:string"/>
				<xs:attribute name="minutes" type="xs:string"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="formattedDuration">
		<xs:annotation>
			<xs:documentation>Duration (time) with separate hours + minutes fields as attributes</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:time">
				<xs:attribute name="hours" type="xs:string"/>
				<xs:attribute name="minutes" type="xs:string"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="formattedDate">
		<xs:annotation>
			<xs:documentation>Date with separate fields for day, month + year, and also day + month names, as attributes</xs:documentation>
		</xs:annotation>
		<xs:simpleContent>
			<xs:extension base="xs:date">
				<xs:attribute name="dayName" type="xs:string"/>
				<xs:attribute name="day" type="xs:string"/>
				<xs:attribute name="monthName" type="xs:string"/>
				<xs:attribute name="month" type="xs:string"/>
				<xs:attribute name="year" type="xs:string"/>
			</xs:extension>
		</xs:simpleContent>
	</xs:complexType>
	<xs:complexType name="dayDetailType">
		<xs:annotation>
			<xs:documentation>Detail open/close info per day</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="available" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>Indicates whether the tour runs on this day: 0=No, 1=Yes</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element ref="times" minOccurs="0"/>
			<xs:element name="lastTime" type="formattedTime" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The latest time the service runs</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="frequency" type="xs:time" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The frequency that the tour operates (ie every x minutes)</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="times">
		<xs:annotation>
			<xs:documentation>Detailed open/close time definition</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence maxOccurs="3">
				<xs:annotation>
					<xs:documentation>We hold up to 3 open/close times per day</xs:documentation>
				</xs:annotation>
				<xs:element name="time">
					<xs:annotation>
						<xs:documentation>Open and close time</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:element name="fromTime" type="formattedTime">
								<xs:annotation>
									<xs:documentation>Open/start time</xs:documentation>
								</xs:annotation>
							</xs:element>
							<xs:element name="toTime" type="formattedTime">
								<xs:annotation>
									<xs:documentation>Close/end time</xs:documentation>
								</xs:annotation>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="preferencesType">
		<xs:annotation>
			<xs:documentation>Optional preferences are non-guarantered requests that we will forward to the hotel</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="roomPreferences" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="floor" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Preferred floor: 0=Any, 1=Ground, 2=Middle, 3=High</xs:documentation>
							</xs:annotation>
							<xs:simpleType>
								<xs:restriction base="xs:string">
									<xs:enumeration value="0"/>
									<xs:enumeration value="1"/>
									<xs:enumeration value="2"/>
									<xs:enumeration value="3"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:element>
						<xs:element name="adjoiningRooms" type="xs:boolean" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Adjoingin rooms preferred: 0=No, 1=Yes</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="nonSmoking" type="xs:boolean" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Non-smoking room preferred: 0=No, 1=Yes</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="smokingRoom" type="xs:boolean" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Smoking room preferred: 0=No, 1=Yes</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="bathTub" type="xs:boolean" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Bathtub preferred: 0=No, 1=Yes</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="separateBeds" type="xs:boolean" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Separate beds preferred: 0=No, 1=Yes</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="aircon" type="xs:boolean" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Air conditioning in room preferred: 0=No, 1=Yes</xs:documentation>
							</xs:annotation>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="paxPreferences" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="checkIn" minOccurs="0">
							<xs:complexType>
								<xs:choice>
									<xs:element name="early">
										<xs:complexType>
											<xs:attribute name="checkInTime" type="xs:time" use="required"/>
										</xs:complexType>
									</xs:element>
									<xs:element name="late">
										<xs:complexType>
											<xs:attribute name="checkInTime" type="xs:time" use="required"/>
										</xs:complexType>
									</xs:element>
								</xs:choice>
							</xs:complexType>
						</xs:element>
						<xs:element name="checkOut" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="early">
										<xs:complexType>
											<xs:attribute name="checkOutTime" type="xs:time" use="required"/>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="vipPax" type="xs:boolean" minOccurs="0"/>
						<xs:element name="paxOnHoneymoon" type="xs:boolean" minOccurs="0"/>
						<xs:element name="flightTime" type="xs:time" minOccurs="0"/>
						<xs:element name="flightNumber" minOccurs="0">
							<xs:simpleType>
								<xs:restriction base="xs:string">
									<xs:maxLength value="10"/>
								</xs:restriction>
							</xs:simpleType>
						</xs:element>
						<xs:element name="frequentGuestNumber" type="xs:string" minOccurs="0"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="priceWithTaxes">
		<xs:annotation>
			<xs:documentation>Type describing price with all taxes applicable if any.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="price" type="xs:decimal"/>
			<xs:element name="taxes" type="taxesType" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:attributeGroup name="allowModificationsAttribute">
		<xs:attribute name="allowModifications" type="xs:nonNegativeInteger" use="required">
			<xs:annotation>
				<xs:documentation>Flag to indicate whether this price is modifiable or not and if modifiable, what level of modification is possible. 0 for not modifiable, 1 for name and preferences changes and 2 for fully modifiable.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:attributeGroup>
	<xs:complexType name="paymentRequestType">
		<xs:sequence>
			<xs:element name="cardType" type="xs:string"/>
			<xs:element name="cardNumber" type="xs:string"/>
			<xs:element name="cardHolderName" type="xs:string"/>
			<xs:element name="cardStartDateMonth" type="xs:integer" minOccurs="0"/>
			<xs:element name="cardStartDateYear" type="xs:integer" minOccurs="0"/>
			<xs:element name="cardExpiryDateMonth" type="xs:integer"/>
			<xs:element name="cardExpiryDateYear" type="xs:integer"/>
			<xs:element name="cardCVV" type="xs:string"/>
			<xs:element name="returnURL" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Used by the Payment Server to redirect the cardholder's browser back to the merchant's website</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="mealBasisCode">
		<xs:restriction base="xs:string">
			<xs:length value="2"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="bookingIdentifierType">
		<xs:annotation>
			<xs:documentation>Details to identify the booking provided in search response</xs:documentation>
		</xs:annotation>
		<xs:sequence minOccurs="0" maxOccurs="unbounded">
			<xs:element name="property">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="key"/>
						<xs:element name="value"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="id" type="xs:string" use="required"/>
	</xs:complexType>
	<xs:complexType name="leadNamePhoneType">
		<xs:sequence>
			<xs:element name="internationalCode" type="xs:string"/>
			<xs:element name="phoneNumber" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
