<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="http://www.netex.org.uk/netex" xmlns:netex="http://www.netex.org.uk/netex" xmlns:siri="http://www.siri.org.uk/siri" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:gml="http://www.opengis.net/gml/3.2" targetNamespace="http://www.netex.org.uk/netex" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.0" id="netex_salesTransaction_version">
	<xsd:include schemaLocation="netex_customerPurchasePackage_version.xsd"/>
	<!-- ======================================================================= -->
	<xsd:annotation>
		<xsd:appinfo>
			<Metadata xmlns="http://www.govtalk.gov.uk/CM/gms-xs">
				<Aggregation>main schema</Aggregation>
				<Audience>e-service developers</Audience>
				<Contributor>V1.0 Christophe Duquesne</Contributor>
				<Contributor>Nicholas Knowles</Contributor>
				<Coverage>Europe</Coverage>
				<Creator>First drafted for NeTEx version 1.0 CEN TC278 WG3 SG9 Editor Nicholas Knowles.</Creator>
				<Date>
					<Created>2010-09-04</Created>
				</Date>
				<Date><Modified>2011-02-05</Modified>Name Space changes
				</Date>
				<Date><Modified>2017-11-08</Modified>Revise so  FareRef is more general PassengerInformationRequestRef
				</Date>
				<Date><Modified>2017-08-10</Modified>
									 Align with TM6
					Rename Passenger Contract   to FareContract.
					Rename Passenger Contract Event to FareContractEntry.
					Rename Type of Passenger Contract  to TypeOfFareContract.
					Adjust References in Dependent packages.
					Add links to CustomerPurchasePackage(s) and TravelSpecifcation(s)
				</Date>
				<Date><Modified>2019-03-02</Modified>UK-09 Add TypeOfTariffRef  and FareElementInSequenceRef to TravelSpecification  so that can  correctly specify choices
				</Date>
				<Date><Modified>2019-03-09</Modified>EURA-54 Add a SeatRef   and RetailDeviceRef parameter to TravelSpecification
										Add   TravelDocumentRef and  RetailDeviceRef parameter to SalesTrasnaction
										Fix may RetailingOrganisationRef an OrgansiationOperatorRefStructure and not an OperatorRefStructure
				</Date>
				<Date><Modified>2019-03-10</Modified>UK-28 Add a CustomerAccountRef to  FareContract										 
				</Date>
				<Date><Modified>2019-03-12</Modified>FIX - Important - add rule step results to  SalesTransaction  TravelSpecification 	, Add TravelSpecificationSummaryView								 
				</Date>
				<Date><Modified>2019-03-27</Modified>UK-27 - Tidy up Correct annotations, reorder parameters, add TypeOfProductCategoryRef, fix CellRef_ , Make TravelDOcumentRefmany to one.as per TM.						 
				</Date>
				<Date><Modified>2019-04-06</Modified>Align with TM6 Add new elements RequestedTravelSpecification and OfferedTravelSpecification.  
							Remodularise to spearae SalesTransactio from TravelSpecifcation and CustomerPurchase Package
				</Date>
				<Date><Modified>2023-12-15</Modified>Factor out Payment amount to FARE DEBIT PACKAGE
				</Date>
				<Description>
					<p>NeTEx is a European CEN standard for the exchange of Public Transport data including timetables.</p>
					<p>This sub-schema describes the SALES TRANSACTION types.</p>
				</Description>
				<Format>
					<MediaType>text/xml</MediaType>
					<Syntax>http://www.w3.org/2001/XMLSchema</Syntax>
					<Description>XML schema, W3C Recommendation 2001</Description>
				</Format>
				<Identifier>{http://www.netex.org.uk/schemas/1.0/xsd/netex_part_3/part3_salesTransactions}netex_salesTransaction_version.xsd</Identifier>
				<Language>[ISO 639-2/B] ENG</Language>
				<Publisher>Kizoom, 109-123 Clifton Street, London EC4A 4LD </Publisher>
				<Relation>
					<Requires>http://www.netex.org.uk/schemas/1.0/PATH/netex_prereqfile.xsd</Requires>
				</Relation>
				<Rights>Unclassified
					 <Copyright>CEN, Crown Copyright 2009-2023</Copyright>
				</Rights>
				<Source>
					<ul>
						<li>Derived from the Transmodel, VDV, TransXChange, NEPTUNE, BISON and Trident standards.</li>
					</ul>
				</Source>
				<Status>Version 1.0</Status>
				<Subject>
					<Category>Arts, recreation and travel, Tourism, Travel (tourism), Transport,
Air transport, Airports,
Ports and maritime transport, Ferries (marine),
Public transport, Bus services, Coach services, Bus stops and stations,
Rail transport, Railway stations and track, Train services, Underground trains,
Business and industry, Transport, Air transport , Ports and maritime transport, Public transport,
Rail transport, Roads and Road transport
</Category>
					<Project>CEN TC278 WG3 SG9.</Project>
				</Subject>
				<Title>NeTEx SALES TRANSACTION    types.</Title>
				<Type>Standard</Type>
			</Metadata>
		</xsd:appinfo>
		<xsd:documentation>NeTEx: SALES TRANSACTION types.</xsd:documentation>
	</xsd:annotation>
	<!-- ===ENTIITY IN VERSION IN FRAME====Used in SERVICE FRAME)=================================================== -->
	<xsd:group name="SalesTransactionInFrameGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for SALES TRANSACTION in Frame.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="travelSpecifications" type="travelSpecificationsInFrame_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>SALES TRANSACTIONs in FRAME.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="salesTransactions" type="salesTransactionsInFrame_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>SALES TRANSACTIONs in FRAME.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<xsd:complexType name="salesTransactionsInFrame_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for containment in frame of SALES TRANSACTIONs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="frameContainmentStructure">
				<xsd:sequence>
					<xsd:element ref="SalesTransaction" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ====SALES TRANSACTION ================================================ -->
	<xsd:complexType name="salesTransactions_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a list of SALES TRANSACTIONs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="SalesTransactionRef"/>
					<xsd:element ref="SalesTransaction"/>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="SalesTransaction" substitutionGroup="FareContractEntry_Dummy">
		<xsd:annotation>
			<xsd:documentation>A SALE OF a FIXED PACKAGE or a SALE OF a RELOADABLE PACKAGE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="SalesTransaction_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="LogEntryGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="FareContractEntryGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="SalesTransactionGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="SalesTransactionIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="SalesTransaction_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for SALES TRANSACTION.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="FareContractEntry_VersionStructure">
				<xsd:sequence>
					<xsd:group ref="SalesTransactionGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="SalesTransactionGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for SALES TRANSACTION.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:group ref="FareDebitGroup"/>
			<xsd:group ref="SalesTransactionPurchaseGroup"/>
			<xsd:group ref="SalesTransactionFulfilmentGroup"/>
		</xsd:sequence>
	</xsd:group>
	<xsd:group name="SalesTransactionPurchaseGroup">
		<xsd:annotation>
			<xsd:documentation>Sales Purchase Elements for SALES TRANSACTION.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="travelSpecifications" type="travelSpecifications_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Travel Specifcations bought by Salles Transaction</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="customerPurchasePackages" type="customerPurchasePackages_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Customer Pucrhase PAckages ought by Salles Transaction</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<xsd:group name="SalesTransactionFulfilmentGroup">
		<xsd:annotation>
			<xsd:documentation>Fulfilment Elements for SALES TRANSACTION.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="travelDocuments" type="travelDocuments_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>TRAVEL DOCUMENTS materialising SALES TRANSACTION.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="CollectionPointRef" type="Point_VersionStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Point at which to be collected.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="CollectionNote" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Note on how to collect.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="OrganisationalUnitRef" minOccurs="0"/>
			<xsd:element ref="RetailDeviceRef" minOccurs="0"/>
		</xsd:sequence>
	</xsd:group>
</xsd:schema>
