<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2011 rel. 3 sp1 (x64) (http://www.altova.com) by Miki Travel Ltd (Miki Travel Ltd) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="commonTypes.xsd"/>
	<xs:include schemaLocation="hotelCommonTypes.xsd"/>
	<xs:complexType name="hotelModificationItemType">
		<xs:annotation>
			<xs:documentation>Holds the hotel booking item that need to be modified</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="hotel" minOccurs="0">
				<xs:complexType>
					<xs:sequence>
						<xs:element name="preferences" type="preferencesType" minOccurs="0">
							<xs:annotation>
								<xs:documentation>Optional preferences are non-guarantered requests that we will forward to the hotel</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="roomStays" minOccurs="0">
							<xs:complexType>
								<xs:sequence maxOccurs="unbounded">
									<xs:element name="roomStay" type="bookingRoomStayType"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="specialRequest" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Confirmation of the special request</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="tourReference" type="tourReferenceType" use="required">
			<xs:annotation>
				<xs:documentation>The unique reservation reference of the item for which modification was requested</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="bookingRoomStayType">
		<xs:sequence>
			<xs:element name="roomStayCandidates">
				<xs:annotation>
					<xs:documentation>Collection of room stay candidate.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence>
						<xs:element name="roomStayCandidate" type="bookingCandidateStayType" maxOccurs="unbounded">
							<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:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="roomCode" type="subproductCodeType" use="required">
			<xs:annotation>
				<xs:documentation>Miki code representing room type.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="hotelBookingModificationItemType">
		<xs:annotation>
			<xs:documentation>Holds the hotel booking item that need to be modified</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="hotel" minOccurs="1">
				<xs:complexType>
					<xs:choice>
						<xs:element name="changeNameAndPreference">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="changePreferences" type="preferencesType" minOccurs="0">
										<xs:annotation>
											<xs:documentation>Optional preferences are non-guarantered requests that we will forward to the hotel</xs:documentation>
										</xs:annotation>
									</xs:element>
									<xs:element name="changeName" minOccurs="0">
										<xs:annotation>
											<xs:documentation>Incude this element in order to change name(s) of room occupants or to change lead pax. It is necessary to specify the occupants of all the rooms in the hotel booking.</xs:documentation>
										</xs:annotation>
										<xs:complexType>
											<xs:sequence>
												<xs:element name="leadPaxName" type="paxNameType">
													<xs:annotation>
														<xs:documentation>Specify the current( or modified) lead pax name for the booking Item. The name specified here should match one of the adult occupants of the booked room(s).</xs:documentation>
													</xs:annotation>
												</xs:element>
												<xs:sequence maxOccurs="unbounded">
													<xs:element name="room" type="roomNameChangeType"/>
												</xs:sequence>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="changeStayPeriod" type="changeStayPeriodRequestType">
							<xs:annotation>
								<xs:documentation>Specify the booking date stay date change by reduce or increase the night or shift the whole stay date</xs:documentation>
							</xs:annotation>
						</xs:element>
						<xs:element name="removeRooms">
							<xs:annotation>
								<xs:documentation>Specify the unique room code which need to removed from the booking</xs:documentation>
							</xs:annotation>
							<xs:complexType>
								<xs:sequence maxOccurs="unbounded">
									<xs:element name="room" type="removeRoomType"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
					</xs:choice>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="tourReference" type="tourReferenceType" use="required">
			<xs:annotation>
				<xs:documentation>The unique reservation reference of the item for which modification was requested</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="roomNameChangeType">
		<xs:sequence>
			<xs:element name="rateIdentifier" type="xs:string" minOccurs="0"/>
			<xs:element name="guests">
				<xs:annotation>
					<xs:documentation>Collection of room stay candidate.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="guest" type="bookingGuestCountType">
							<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:element>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="roomTypeCode" type="subproductCodeType" use="required">
			<xs:annotation>
				<xs:documentation>The unique code for the room.Miki code representing room type.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="roomNo" type="xs:positiveInteger" use="required">
			<xs:annotation>
				<xs:documentation>The Sequence number of the Room.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="changeStayPeriodRequestType">
		<xs:sequence>
			<xs:element name="checkindate" type="xs:date">
				<xs:annotation>
					<xs:documentation>Specify the new Check-in date of the booking</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="numberOfNights" type="xs:positiveInteger">
				<xs:annotation>
					<xs:documentation>Specify the new Check-in date of the booking</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="removeRoomType">
		<xs:sequence>
			<xs:element name="roomTypeCode" type="subproductCodeType"/>
			<xs:element name="roomNo" type="xs:positiveInteger">
				<xs:annotation>
					<xs:documentation>Specify the room number.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="rateIdentifier" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="modifyRequestAuditInfoType">
		<xs:complexContent>
			<xs:extension base="requestAuditInfo"/>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="modifyCostResponseType">
		<xs:annotation>
			<xs:documentation>Detail of the modify item</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="currentTotalPrice" type="priceWithTaxes">
				<xs:annotation>
					<xs:documentation>Total Price of the Tour before the Modification</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="newTotalPrice" type="priceWithTaxes">
				<xs:annotation>
					<xs:documentation>Total Price of the Tour After the Modification</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="tourTotalModificationCharge" type="xs:decimal" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Total Charges for Modification</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="roomModificationChargeDetails" type="modificationChargeType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Full details and the Modification charge along with the how the Modification charge is calculated per Night.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="tourReference" type="tourReferenceType" use="required">
			<xs:annotation>
				<xs:documentation>The unique reservation reference of the item for which modification was requested</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="tourStatus" type="bookingStatusType" use="required">
			<xs:annotation>
				<xs:documentation>Indicate the reservation status of this item.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="modificationChargeType">
		<xs:annotation>
			<xs:documentation>Contains the modification charges which are appllied to this booking</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="roomCancellationChargeDetails" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Full details and the cancellation charge along with the how the cancellation charge is calculated per Night.</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>Collection of segments under the cancelled item</xs:documentation>
						</xs:annotation>
						<xs:element name="roomCancellationChargeDetail" type="canceltemType"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="canceltemType">
		<xs:annotation>
			<xs:documentation>Cancellation charge for each segments in the item</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="roomTotalCancellationCharge" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>The charge details for this particular segment</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="cancellationPolicy" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Cancellation Policy that is applied to calculate the cancellation charge</xs:documentation>
				</xs:annotation>
				<xs:complexType>
					<xs:complexContent>
						<xs:extension base="cancellationPolicyRecordType">
							<xs:sequence>
								<xs:element name="appliesTo" type="xs:dateTime" minOccurs="0"/>
							</xs:sequence>
						</xs:extension>
					</xs:complexContent>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="roomTypeCode" type="subproductCodeType" use="required">
			<xs:annotation>
				<xs:documentation>The unique segment code</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="roomNo" type="xs:positiveInteger" use="required">
			<xs:annotation>
				<xs:documentation>The sequence number of the booked Room.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
</xs:schema>
