<?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="1.1" id="netex_calculationParameters_version">
	<xsd:include schemaLocation="netex_calculationParameters_support.xsd"/>
	<xsd:include schemaLocation="../../netex_framework/netex_reusableComponents/netex_dayType_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>2013-04-14</Created>
				</Date>
				<Date><Modified>2019-03-10</Modified>EURA-42 Add currency to PricingRule
				</Date>
				<Date><Modified>2019-03-10</Modified>NORWAY-101 Add new  TypeOfTaxRate element 
				</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 FARE PRICING PARAMETER SET 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_fares}netex_calculationParameters_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-2019</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 FARE Calculation parameter  types.</Title>
				<Type>Standard</Type>
			</Metadata>
		</xsd:appinfo>
		<xsd:documentation>NeTEx: PRICING PARAMATER SET types.</xsd:documentation>
	</xsd:annotation>
	<!-- ===ENTIITY IN VERSION IN FRAME====Used in FARE FRAME)=================================================== -->
	<xsd:group name="CalculationParametersInFrameGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for calculating fares.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="pricingServices" type="pricingServices_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>FARE PRICING SREVICEs in FRAME.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- === PRICING PARAMETERs================================================ -->
	<xsd:element name="PricingParameterSet" substitutionGroup="DataManagedObject" id="PricingParameterSet">
		<xsd:annotation>
			<xsd:documentation>Parameters governing the calculation of fares.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="PricingParameterSet_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="PricingParameterSetGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="PricingParameterSetIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="PricingParameterSet_VersionedStructure">
		<xsd:annotation>
			<xsd:documentation>Type for PRICING PARAMETERS.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:sequence>
					<xsd:group ref="PricingParameterSetGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="PricingParameterSetGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a PRICING PARAMETERS.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of PRICING PARAMETERS parameter set.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="PriceUnitRef" minOccurs="0"/>
			<xsd:element name="priceUnits" type="priceUnits_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Set of Rounding paraemeters.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="pricingRules" type="pricingRules_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Table of Month Validty offsets for each month.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="AllowCumulativeDiscounts" type="xsd:boolean" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Whether cumulative discounts are allowed.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="RoundingRef" minOccurs="0"/>
			<xsd:element name="roundings" type="roundings_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Set of Rounding paraemeters.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="DayTypeRef" minOccurs="0"/>
			<xsd:element name="monthValidityOffsets" type="monthValidityOffsets_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Table of Month Validty offsets for each month.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="pricingServices" type="pricingServices_RelStructure" minOccurs="0"/>
		</xsd:sequence>
	</xsd:group>
	<!-- ====PRICE UNIT======================================== -->
	<xsd:complexType name="priceUnits_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a list of PRICE UNITs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="containmentAggregationStructure">
				<xsd:choice maxOccurs="unbounded">
					<xsd:element ref="PriceUnitRef"/>
					<xsd:element ref="PriceUnit">
						<xsd:annotation>
							<xsd:documentation>A PRICE UNIT specifying access rights for the FARE STRUCTURE ELEMENTs within the range of this UNIT: 0-5 km, 4-6 zones etc.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="PriceUnit" substitutionGroup="TypeOfValue">
		<xsd:annotation>
			<xsd:documentation>A unit to express prices: amount of currency, abstract fare unit, ticket unit or token etc.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="PriceUnit_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfValueGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:element name="Precision" type="xsd:integer" minOccurs="0">
								<xsd:annotation>
									<xsd:documentation>Precision to use for units.</xsd:documentation>
								</xsd:annotation>
							</xsd:element>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="PriceUnitIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="PriceUnit_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for PRICE UNIT.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="TypeOfValue_VersionStructure">
				<xsd:group ref="PriceUnitGroup"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="PriceUnitGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a PRICE UNIT.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Precision" type="xsd:integer" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Precision to use for units.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ===ROUNDING================================================= -->
	<xsd:complexType name="roundings_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Set of FARE ROUNDING parameters such as rounding steps.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="frameContainmentStructure">
				<xsd:sequence>
					<xsd:element ref="Rounding" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="Rounding" substitutionGroup="DataManagedObject" id="Rounding">
		<xsd:annotation>
			<xsd:documentation>Parameters describing how the results of calculations are to be rounded to the nearest quantum.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="Rounding_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="RoundingGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="RoundingIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="Rounding_VersionedStructure">
		<xsd:annotation>
			<xsd:documentation>Type for ROUNDING.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:sequence>
					<xsd:group ref="RoundingGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="RoundingGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a ROUNDING.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of ROUNDING parameter set.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="RoundingMethod" type="RoundingMethodEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Rounding method to use. If "down", "up" or "split". use modulus. If "step table" use ROUNDING STEPs.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="RoundingModulus" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Rounding modulus to use if method is "down", "up" or "split".</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="roundingSteps" type="roundingSteps_RelStructure" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>PRICE amount. in specified currency.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
	<xsd:element name="RoundingStep">
		<xsd:annotation>
			<xsd:documentation>A rounding step to use to round a range of values. Any value larger than the step key and smaller tha the next step key should be rounded to this value.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="RoundingStep_VersionedChildStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="VersionedChildGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="RoundingStepGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="RoundingStepIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="RoundingStep_VersionedChildStructure" abstract="true">
		<xsd:annotation>
			<xsd:documentation>Type for ROUNDING STEP.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="VersionedChildStructure">
				<xsd:sequence>
					<xsd:group ref="RoundingStepGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="RoundingStepGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a ROUNDING STEP.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element ref="RoundingStepRef" minOccurs="0"/>
			<xsd:element name="RoundIfGreaterThan" type="CurrencyAmountType">
				<xsd:annotation>
					<xsd:documentation>Rounding Step Threshold.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="RoundTo" type="CurrencyAmountType">
				<xsd:annotation>
					<xsd:documentation>Amount to which to round.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<xsd:complexType name="roundingSteps_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for a list of ROUNDING STEPs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="strictContainmentAggregationStructure">
				<xsd:sequence>
					<xsd:element ref="RoundingStep" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- ===ROUNDING================================================= -->
	<xsd:element name="FareDayType" substitutionGroup="DayType_Dummy" id="FareDayType">
		<xsd:annotation>
			<xsd:documentation>A type of day used in the fare collection domain, characterized by one or more properties which affect the definition of access rights and prices in the fare system.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="FareDayType_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DayTypeGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="FareDayTypeIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="FareDayType_VersionedStructure">
		<xsd:annotation>
			<xsd:documentation>Type for FARE DAY TYPE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DayType_VersionStructure"/>
		</xsd:complexContent>
	</xsd:complexType>
	<!-- === MONTH VALIDITY OFFSET================================================= -->
	<xsd:complexType name="monthValidityOffsets_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Ser of MONTH VALIDITY OFFSETs parameters such as rounding steps for Frame.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="strictContainmentAggregationStructure">
				<xsd:sequence>
					<xsd:element ref="MonthValidityOffset" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="MonthValidityOffset" substitutionGroup="DataManagedObject" id="MonthValidityOffset">
		<xsd:annotation>
			<xsd:documentation>Days before (negative) or after (positive) the start of the month that a product with a calendar period driven activation becomes valid.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="MonthValidityOffset_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="MonthValidityOffsetGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="MonthValidityOffsetIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="MonthValidityOffset_VersionedStructure">
		<xsd:annotation>
			<xsd:documentation>Type for MONTH VALIDITY OFFSET.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:sequence>
					<xsd:group ref="MonthValidityOffsetGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="MonthValidityOffsetGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a MONTH VALIDITY OFFSET.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Month" type="xsd:gMonth">
				<xsd:annotation>
					<xsd:documentation>Month for which offset applies.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of MONTH VALIDITY OFFSET.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="DayOffset" type="DayOffsetType">
				<xsd:annotation>
					<xsd:documentation>Number of days relative to start of month.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- === PRICING RULE ================================================= -->
	<xsd:complexType name="pricingRules_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Ser of PRICING RULEs such for Frame.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="frameContainmentStructure">
				<xsd:sequence>
					<xsd:element ref="PricingRule_Dummy" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="PricingRule_Dummy" type="DataManagedObjectStructure" abstract="true" substitutionGroup="DataManagedObject">
		<xsd:annotation>
			<xsd:documentation>Dumm abstact type of Pricing rule.</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:element name="PricingRule" substitutionGroup="PricingRule_Dummy">
		<xsd:annotation>
			<xsd:documentation>Parameters describing how a fare is to be computed.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="PricingRule_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="PricingRuleGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="PricingRuleIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="PricingRule_VersionedStructure">
		<xsd:annotation>
			<xsd:documentation>Type for PRICING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:sequence>
					<xsd:group ref="PricingRuleGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="PricingRuleGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a PRICING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of PRICING RULE parameter set.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Description" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of PRICING RULE parameter set.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MethodName" type="xsd:NCName" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>PricingRule method to use.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="TypeOfPricingRuleRef" minOccurs="0"/>
			<xsd:element ref="PricingRuleRef" minOccurs="0"/>
			<xsd:element name="Factor" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Pricing factor to use.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Currency" type="CurrencyType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Currency unit for amount +v1.1</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="PriceUnitRef" minOccurs="0"/>
			<xsd:element name="url" type="xsd:anyURI" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>URLor rule. with infor fmethod to use.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- =====DISCOUNTING RULE======================================= -->
	<xsd:element name="DiscountingRule" substitutionGroup="PricingRule_Dummy">
		<xsd:annotation>
			<xsd:documentation>A price for which a discount can be offered.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="DiscountingRule_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="PricingRuleGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DiscountingRuleGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="DiscountingRuleIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="DiscountingRule_VersionedStructure" abstract="true">
		<xsd:annotation>
			<xsd:documentation>Type for DISCOUNTING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="PricingRule_VersionedStructure">
				<xsd:sequence>
					<xsd:group ref="DiscountingRuleGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="DiscountingRuleGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a DISCOUNTING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="DiscountAsPercentage" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Discount as a percentage of the full price.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="DiscountAsValue" type="CurrencyAmountType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Discount amount. i.e. DIfference between full and discounted price.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="CanBeCumulative" type="xsd:boolean" default="true" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Whether this discount can be used cumulatively with other discounts.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- =====DISCOUNTING RULE======================================= -->
	<xsd:element name="LimitingRule" substitutionGroup="PricingRule_Dummy">
		<xsd:annotation>
			<xsd:documentation>A price for which a discount can be offered.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="LimitingRule_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="PricingRuleGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DiscountingRuleGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="LimitingRuleGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="LimitingRuleIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="LimitingRule_VersionedStructure" abstract="true">
		<xsd:annotation>
			<xsd:documentation>Type for LIMITING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DiscountingRule_VersionedStructure">
				<xsd:sequence>
					<xsd:group ref="LimitingRuleGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="LimitingRuleGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a LIMITING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:group ref="LimitingRuleCappingGroup"/>
			<xsd:group ref="LimitingRuleLimitGroup"/>
		</xsd:sequence>
	</xsd:group>
	<xsd:group name="LimitingRuleCappingGroup">
		<xsd:annotation>
			<xsd:documentation>Capping Elements for a LIMITING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="MinimumPrice" type="CurrencyAmountType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maximum price at which to cap discounted fare.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MinimumPriceAsPercentage" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minumum price as percentage of whole price.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MinimumPriceAsMultiple" type="xsd:integer" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minimum price as a number of single flat fares.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumPrice" type="CurrencyAmountType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minimum amount at which to cap discounted fare.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumPriceAsPercentage" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maxumum price as percentage of whole price.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumPriceAsMultiple" type="xsd:integer" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maximum price as a number of single flat fares.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<xsd:group name="LimitingRuleLimitGroup">
		<xsd:annotation>
			<xsd:documentation>Limit Elements for a LIMITING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="MinimumLimitPriceAsPercentage" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Minimum Limit as percentage of whole price.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MinimumLimitPrice" type="CurrencyAmountType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Limiting amount below which resulting fare may not be sold.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumLimitPriceAsPercentage" type="xsd:decimal" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Maxumum Limit as percentage of whole price.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="MaximumLimitPrice" type="CurrencyAmountType" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Limiting amount above which resulting fare may not be sold.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<xsd:element name="LimitingRuleInContext" substitutionGroup="PricingRule_Dummy">
		<xsd:annotation>
			<xsd:documentation>OPTIMISED version whcih can be be used only in line assues ID of comtainign context -no id checking. A price for which a discount can be offered.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="LimitingRule_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="PricingRuleGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DiscountingRuleGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="LimitingRuleGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="LimitingRuleIdType" use="optional">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<!-- ==== TYPE OF PRICING RULE. ================================== -->
	<xsd:element name="TypeOfPricingRule" substitutionGroup="TypeOfValue">
		<xsd:annotation>
			<xsd:documentation>Classification of pricing rule. Can be used for VAT categories, etc. +v1.1</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="TypeOfPricingRule_VersionStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="TypeOfValueGroup"/>
						</xsd:sequence>
						<xsd:group ref="TypeOfPricingRuleGroup"/>
					</xsd:sequence>
					<xsd:attribute name="id" type="TypeOfPricingRuleIdType" use="required"/>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="TypeOfPricingRule_VersionStructure">
		<xsd:annotation>
			<xsd:documentation>Type for TYPE OF PRICING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="TypeOfValue_VersionStructure">
				<xsd:group ref="TypeOfPricingRuleGroup"/>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="TypeOfPricingRuleGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a TYPE OF PRICING RULE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="TaxCategory" type="TaxCategoryEnumeration" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Tax category associated with pricing rule.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- === PRICING SERVICE================================================= -->
	<xsd:complexType name="pricingServices_RelStructure">
		<xsd:annotation>
			<xsd:documentation>Type for containment in frame of FARE DYNAMIC PRICING SERVICEs.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="strictContainmentAggregationStructure">
				<xsd:sequence>
					<xsd:element ref="PricingService" maxOccurs="unbounded"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:element name="PricingService" substitutionGroup="DataManagedObject" id="PricingService">
		<xsd:annotation>
			<xsd:documentation>A web service used to provide prices dynamically at time of booking or purchase.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexType>
			<xsd:complexContent>
				<xsd:restriction base="PricingService_VersionedStructure">
					<xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="EntityInVersionGroup" minOccurs="0"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="DataManagedObjectGroup"/>
						</xsd:sequence>
						<xsd:sequence>
							<xsd:group ref="PricingServiceGroup"/>
						</xsd:sequence>
					</xsd:sequence>
					<xsd:attribute name="id" type="PricingServiceIdType" use="required">
						<xsd:annotation>
							<xsd:documentation>Identifier of ENTITY.</xsd:documentation>
						</xsd:annotation>
					</xsd:attribute>
				</xsd:restriction>
			</xsd:complexContent>
		</xsd:complexType>
	</xsd:element>
	<xsd:complexType name="PricingService_VersionedStructure">
		<xsd:annotation>
			<xsd:documentation>Type for PRICING SERVICE.</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="DataManagedObjectStructure">
				<xsd:sequence>
					<xsd:group ref="PricingServiceGroup"/>
				</xsd:sequence>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:group name="PricingServiceGroup">
		<xsd:annotation>
			<xsd:documentation>Elements for a PRICING SERVICE.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="Name" type="MultilingualString" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>Name of PRICING SERVICE parameter set.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element ref="OrganisationRef_Dummy" minOccurs="0"/>
			<xsd:element name="Url" type="xsd:anyURI" minOccurs="0">
				<xsd:annotation>
					<xsd:documentation>URL at which service is available.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:group>
	<!-- ======================================================================= -->
</xsd:schema>
