Example
Netex_61.2_Bus_GeographicFares_UnitZone_AdultChildProduct.xml
functions/fares/Netex_61.2_Bus_GeographicFares_UnitZone_AdultChildProduct.xml
Element names link to their declarations.
<?xml version="1.0" encoding="UTF-8"?>
<!-- ==== Simple Unt Zone Fare Example ======
This example shows the encoding of a unit distance tariff or a simple bus timetable for a linear route in NeTex XML
There is a complex honecomb zone structure with fares based on the number of zones crossed
Data is Fictional
(C) CEN & Crown Copyright 2018, 2019
Free to use under a Creative Commons license.
v1.1 Revised & corrected to use Tariff and simpler ids
===================================================
1. OVERVIEW
============
The Fare structure has a complex zonal matrix with fares based on the number of zones traversed .
The zones are as follows
P - - Q
/ \ / \ \
A - B - C - D
\ / / \ /
X - - - Y
The TARIFF is defined in terms of number of units between zones
Zone to Zone Fare matrix as number of zones counted
A B C D P Q X Y
A 1 2 3 4 2 3 2 4
B - 1 2 3 2 2 2 3
C - - 1 2 3 2 2 2
D - - - 1 3 2 4 2
P - - - - 1 2 3 4
Q - - - - - 1 3 3
X - - - - - - 1 2
Y - - - - - - - 1
There are separate FARE PRICEs for a one, zone two zone and three zone units,
==================================
2. DETAILS
There are TARIFF ZONES zones for the NETWORK mybus:DTA and OPERATOR mybus:DTA
ZONEs
A) mybus:A Alpha
B) mybus:B Bravo
C) mybus:C Charley
D) mybus:D Delta
P) mybus:D Papa
Q) mybus:D Quebec
X) mybus:X Xray
Y) mybus:Y Yankee
There are DISTANCE MATRIX ELEMENTs for each zone to zone to point transition, giving the number of units encountered e.g.
A DISTANCE MATRIX ELEMENT: myfares:A+A
GEOGRAPHICAL INTERVAL: myfares:gi_1zone
Starts at TARIFF ZONE mybus:A
Ends at TARIFF mybus:B"/>
GeographicalStructureFactor GEOGRAPHICAL INTERVAL myfares:gi_1zone
AB DISTANCE MATRIX ELEMENT: myfares:A+B"
GEOGRAPHICAL INTERVAL: myfares:gi_2zone
Starts at TARIFF ZONE mybus:A
Ends at TARIFF mybus:B"/>
GeographicalStructureFactor GEOGRAPHICAL INTERVAL myfares:gi_2zone
AC DISTANCE MATRIX ELEMENT: myfares:A+C"
GEOGRAPHICAL INTERVAL: myfares:gi_2zone
Starts at TARIFF ZONE mybus:A
Ends at TARIFF mybus:C"/>
GeographicalStructureFactor GEOGRAPHICAL INTERVAL myfares:gi_3zone
ETc Etc
There is a TARIFF myfares:Stage it has
(a) GEOGRAPHIC INTERVALS fro 1,2 and 3 stages
GEOGRAPHICAL INTERVALS are associated with TARIFF ZONES using GEOGRAPHICAL STRUCTURE FACTORs
GEOGRAPHICAL STRUCTURE FACTOR GeographicalStructureFactor:1zone :
GEOGRAPHICAL INTERVALmyfares:gi_1zone
GEOGRAPHICAL I UNIT myfares:1Zone
GEOGRAPHICAL STRUCTURE FACTOR GeographicalStructureFactor:2zone :
GEOGRAPHICAL INTERVALmyfares:gi_2zone
GEOGRAPHICAL I UNIT myfares:1Zone
GEOGRAPHICAL STRUCTURE FACTOR GeographicalStructureFactor:3zone :
GEOGRAPHICAL INTERVALmyfares:gi_3zone
GEOGRAPHICAL I UNIT myfares:1Zone
GEOGRAPHICAL STRUCTURE FACTOR GeographicalStructureFactor:4zone :
GEOGRAPHICAL INTERVAL myfares:gi_4zone
GEOGRAPHICAL I UNIT myfares:1Zone
(b) FARE STRUCTURE ELEMENTs f
(i) Access FARE STRUCTURE ELEMENTs for GEOGRAPHICLA INTERVALs Unit_Distance@access
(ii) Eligibility FARE STRUCTURE ELEMENT myfares:Unit_Distance@Eligibility
USER PROFLE - Adults 17 or over
USER PROFLE - Child 16 or under , discounted
(iii) Conditions of Travel ARE STRUCTURE ELEMENT myfares:Unit_Distance@conditions_of_travel
FREQUENCY OF USE one trip unlimited myfares:FrequencyOfUse:oneTrip
ROUND TRIP OF USE single
There is a SINGLE FARE PRODUCT
It has a VALIDABLE ELEMENT to make a trip using the specified FARE STRUCTURE ELEMENTs
There are is a PRICE GROUP with three GEOGRAPHIC INTERVAL PRICes S, each with a price
(i) GEOGRAPHICAL INTERVAL myfares:gi_1zone
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_1
AMOUNT 1.00
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_child
AMOUNT 50%
(ii) GEOGRAPHICAL INTERVAL myfares:gi_2zone
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_2
AMOUNT 1.50
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_child
AMOUNT 50%
(iii) GEOGRAPHICAL INTERVAL myfares:gi_3zone
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_3
AMOUNT 3.00
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_3_child
AMOUNT 50%
(iv) GEOGRAPHICAL INTERVAL myfares:gi_4zone
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_4
AMOUNT 4.00
GEOGRAPHICAL INTERVAL PRICE : myfares:GeographicalIntervalPrice:gip_4_child
AMOUNT 50%
A COMPOSITE FRAME is used to group the component FRAMEs
A SERVICE FRAME is used to contain the STOP POINT elements LINE, etc
A FARE FRAME is used to contain the FARE product elements
A separate FARE FRAME is used to contain the FARE prices
A RESOURCE is used to contain the GEOGRAPHICAL UNITs, etc
-->
<PublicationDelivery xmlns="http://www.netex.org.uk/netex" xmlns:siri="http://www.siri.org.uk/siri" xmlns:gml="http://www.opengis.net/gml/3.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="1.0" xsi:schemaLocation="http://www.netex.org.uk/netex ../../../xsd/NeTEx_publication.xsd">
<PublicationTimestamp>2010-12-17T09:30:47.0Z</PublicationTimestamp>
<ParticipantRef>SYS001</ParticipantRef>
<!--- ======WHAT WAS REQUESTED ========== -->
<PublicationRequest version="1.0">
<RequestTimestamp>2010-12-17T09:30:47.0Z</RequestTimestamp>
<ParticipantRef>SYS002</ParticipantRef>
<topics>
<NetworkFrameTopic>
<selectionValidityConditions>
<AvailabilityCondition version="any" id="hde:range">
<FromDate>2011-01-01T00:00:00Z</FromDate>
</AvailabilityCondition>
</selectionValidityConditions>
<FareFrameRef ref="myfares:any">REQUEST</FareFrameRef>
</NetworkFrameTopic>
</topics>
</PublicationRequest>
<PublicationRefreshInterval>P1M</PublicationRefreshInterval>
<Description>Example of simple point to point fares</Description>
<!--- =============== RESULTS =========== -->
<dataObjects>
<CompositeFrame version="1.0" id="myfares:DTA@Unit_zone">
<validityConditions>
<ValidBetween>
<FromDate>2011-01-01T00:00:00Z</FromDate>
<ToDate>2011-07-01T00:00:00Z</ToDate>
</ValidBetween>
</validityConditions>
<!--- ======= CODESPACEs======== -->
<codespaces>
<Codespace id="mybus">
<Xmlns>mybus</Xmlns>
<XmlnsUrl>http://www.mybuses.eu/stuff</XmlnsUrl>
<Description>My buses</Description>
</Codespace>
<Codespace id="myfares">
<Xmlns>myfares</Xmlns>
<XmlnsUrl>http://www.myfares.com/fares</XmlnsUrl>
<Description>Fare data</Description>
</Codespace>
</codespaces>
<!--- =======FRAME DEFAULTS======== -->
<FrameDefaults>
<DefaultCodespaceRef ref="myfares"/>
<DefaultCurrency>EUR</DefaultCurrency>
</FrameDefaults>
<frames>
<ServiceFrame version="1.0" id="mybus:DTA@Unit_zone@network">
<Name>Zones for Fare network </Name>
<prerequisites>
<ResourceFrameRef version="1.0" ref="mybus:DTA@Common_Resources"/>
</prerequisites>
<Network version="any" id="mybus:DTA">
<OperatorRef version="1.0" ref="mybus:DTA"/>
<tariffZones>
<TariffZoneRef version="any" ref="mybus:A"/>
<TariffZoneRef version="any" ref="mybus:B"/>
<TariffZoneRef version="any" ref="mybus:C"/>
<TariffZoneRef version="any" ref="mybus:D"/>
<TariffZoneRef version="any" ref="mybus:P"/>
<TariffZoneRef version="any" ref="mybus:Q"/>
<TariffZoneRef version="any" ref="mybus:X"/>
<TariffZoneRef version="any" ref="mybus:Y"/>
</tariffZones>
</Network>
<!--- =========STOP POINTs============ -->
<tariffZones>
<TariffZone version="any" id="mybus:A">
<Name>Alpha & Castle</Name>
<ShortName>Alpha</ShortName>
</TariffZone>
<TariffZone version="any" id="mybus:B">
<Name>Bravo Street</Name>
<ShortName>Bravo</ShortName>
</TariffZone>
<TariffZone version="any" id="mybus:C">
<Name>Charley Crescent</Name>
<ShortName>Charley</ShortName>
</TariffZone>
<TariffZone version="any" id="mybus:D">
<Name>Delta </Name>
<ShortName>Delta</ShortName>
</TariffZone>
<TariffZone version="any" id="mybus:P">
<Name>Papa </Name>
<ShortName>Papa</ShortName>
</TariffZone>
<TariffZone version="any" id="mybus:Q">
<Name>Quebec </Name>
<ShortName>Quebec</ShortName>
</TariffZone>
<TariffZone version="any" id="mybus:X">
<Name>X Ray </Name>
</TariffZone>
<TariffZone version="any" id="mybus:Y">
<Name>Yankee </Name>
</TariffZone>
</tariffZones>
</ServiceFrame>
<!--- =============== FAREs =========== -->
<FareFrame version="1.0" id="myfares:DTA@Unit_zone@products">
<prerequisites>
<ServiceFrameRef version="1.0" ref="mybus:DTA@Unit_zone@network"/>
</prerequisites>
<!--- ====GeographicalU nit======== -->
<geographicalUnits>
<GeographicalUnit version="1.0" id="myfares:1Zone">
<Name>Arbitrary Quantized Unit of Transport Usage - One zone to zone hop</Name>
</GeographicalUnit>
</geographicalUnits>
<tariffs>
<Tariff version="1.0" id="myfares:Unit_zone">
<Name>Unit fare zones</Name>
<OperatorRef version="1.0" ref="mybus:DTA"/>
<TypeOfTariffRef version="ntx:v1.0" ref="ntx:unit_distance"/>
<GeographicalUnitRef version="1.0" ref="myfares:1Zone"/>
<!--- ====Intervals======= -->
<geographicalIntervals>
<GeographicalInterval version="1.0" id="myfares:gi_1zone">
<Name>Same zone</Name>
<NumberOfUnits>1</NumberOfUnits>
<IntervalType>tariffZone</IntervalType>
<prices>
<GeographicalIntervalPriceRef version="1.0" ref="myfares:Unit_zone@gi_1"/>
</prices>
</GeographicalInterval>
<GeographicalInterval version="1.0" id="myfares:gi_2zone">
<Name>Two Zones</Name>
<NumberOfUnits>2</NumberOfUnits>
<IntervalType>tariffZone</IntervalType>
<prices>
<GeographicalIntervalPriceRef version="1.0" ref="myfares:Unit_zone@gi_2"/>
</prices>
</GeographicalInterval>
<GeographicalInterval version="1.0" id="myfares:gi_3zone">
<Name>Three zones</Name>
<NumberOfUnits>3</NumberOfUnits>
<IntervalType>tariffZone</IntervalType>
<prices>
<GeographicalIntervalPriceRef version="1.0" ref="myfares:Unit_zone@gi_3"/>
</prices>
</GeographicalInterval>
<GeographicalInterval version="1.0" id="myfares:gi_4zone">
<Name>Four Zones</Name>
<NumberOfUnits>4</NumberOfUnits>
<IntervalType>tariffZone</IntervalType>
<prices>
<GeographicalIntervalPriceRef version="1.0" ref="myfares:Unit_zone@gi_4"/>
</prices>
</GeographicalInterval>
</geographicalIntervals>
<!--- ===GEOGRAPHICAL STRUCTURE FACTORS==== -->
<geographicalStructureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
<GeographicalStructureFactorRef version="any" ref="myfares:4zone"/>
</geographicalStructureFactors>
<!--- ===FARE STRUCTURE ELEMENTS==== -->
<fareStructureElements>
<FareStructureElement version="1.0" id="myfares:Unit_zone@access">
<geographicalStructureFactors>
<GeographicalStructureFactor version="any" id="myfares:1zone">
<GeographicalIntervalRef version="1.0" ref="myfares:gi_1zone"/>
<GeographicalUnitRef version="1.0" ref="myfares:1Zone"/>
</GeographicalStructureFactor>
<GeographicalStructureFactor version="any" id="myfares:2zone">
<GeographicalIntervalRef version="1.0" ref="myfares:gi_2zone"/>
<GeographicalUnitRef version="1.0" ref="myfares:1Zone"/>
</GeographicalStructureFactor>
<GeographicalStructureFactor version="any" id="myfares:3zone">
<GeographicalIntervalRef version="1.0" ref="myfares:gi_3zone"/>
<GeographicalUnitRef version="1.0" ref="myfares:1Zone"/>
</GeographicalStructureFactor>
<GeographicalStructureFactor version="any" id="myfares:4zone">
<GeographicalIntervalRef version="1.0" ref="myfares:gi_4zone"/>
<GeographicalUnitRef version="1.0" ref="myfares:1Zone"/>
</GeographicalStructureFactor>
</geographicalStructureFactors>
<GenericParameterAssignment order="1" id="myfares:Unit_zone@access" version="1.0">
<TypeOfAccessRightAssignmentRef version="ntx:v1.0" ref="ntx:can_access"/>
<ValidityParameterGroupingType>XOR</ValidityParameterGroupingType>
<validityParameters>
<OperatorRef version="1.0" ref="mybus:DTA"/>
<NetworkRef version="any" ref="mybus:DTA"/>
</validityParameters>
</GenericParameterAssignment>
</FareStructureElement>
<FareStructureElement version="1.0" id="myfares:Unit_zone@eligibility">
<Name>Eligible user types</Name>
<GenericParameterAssignment order="1" id="myfares:Unit_zone@eligibility" version="1.0">
<TypeOfAccessRightAssignmentRef version="ntx:v1.0" ref="ntx:eligible"/>
<LimitationGroupingType>XOR</LimitationGroupingType>
<limitations>
<!--- ===ELIGIBILITY USAGE PARAMETERS ========= -->
<UserProfile version="any" id="myfares:adult">
<Name>Child Fare</Name>
<TypeOfConcessionRef version="any" ref="myfares:adult"/>
<MaximumAge>16</MaximumAge>
</UserProfile>
<UserProfile version="any" id="myfares:child">
<Name>Child Fare</Name>
<TypeOfConcessionRef version="any" ref="myfares:child"/>
<MaximumAge>16</MaximumAge>
</UserProfile>
</limitations>
</GenericParameterAssignment>
</FareStructureElement>
<FareStructureElement id="myfares:Unit_zone@conditions_of_travel" version="1.0">
<Name>eligible user types</Name>
<GenericParameterAssignment version="1.0" order="1" id="myfares:Unit_zone@conditions_of_travel">
<Name>Conditions of travel</Name>
<TypeOfAccessRightAssignmentRef version="ntx:v1.0" ref="ntx:condition_of_use"/>
<LimitationGroupingType>AND</LimitationGroupingType>
<limitations>
<RoundTrip version="1.0" id="myfares:Unit_zone@conditions_of_travel@trip">
<Name>Single Trip</Name>
<TripType>single</TripType>
</RoundTrip>
<FrequencyOfUse version="1.0" id="myfares:Unit_zone@conditions_of_travel@frequency">
<Name>One trip </Name>
<FrequencyOfUseType>single</FrequencyOfUseType>
<MinimalFrequency>1</MinimalFrequency>
<MaximalFrequency>1</MaximalFrequency>
</FrequencyOfUse>
<Interchanging version="1.0" id="myfares:Unit_zone@conditions_of_travel@interchanging">
<CanInterchange>true</CanInterchange>
<CanBreakJourney>false</CanBreakJourney>
</Interchanging>
<UsageValidityPeriod version="any" id="myfares:Unit_zone@conditions_of_travel@until">
<Name>Valid untile ride complete</Name>
<UsageEnd>endOfRide</UsageEnd>
</UsageValidityPeriod>
</limitations>
</GenericParameterAssignment>
</FareStructureElement>
</fareStructureElements>
<!--- ====DistanceMatrix======= -->
<distanceMatrixElements>
<!--
A B C D P Q X Y
A 1 2 3 4 2 3 2 4
-->
<DistanceMatrixElement version="any" id="myfares:A+A">
<Name>Alpha to Alpha</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:A"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+B">
<Name>Alpha to Bravo</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:B"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+C">
<Name>Alpha to Charley</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:C"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+D">
<Name>Alpha to Delta</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:D"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:4zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+P">
<Name>Alpha to Papa</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:P"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+Q">
<Name>Alpha to Quebec</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:Q"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+X">
<Name>Alpha to Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:A+Y">
<Name>Alpha to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:4zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
B - 1 2 3 2 2 2 3
-->
<DistanceMatrixElement version="any" id="myfares:B+B">
<Name>Bravo to Charley</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:B"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:B+C">
<Name>Bravo to Charley</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:C"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:B+D">
<Name>Bravo to Delta</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:D"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:B+P">
<Name>Bravo to Papa</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:P"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:B+Q">
<Name>Bravo to Quebec</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:Q"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:B+X">
<Name>Bravo to Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:B+Y">
<Name>Bravo to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:B"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
C - - 1 2 2 2 2 2
-->
<DistanceMatrixElement version="any" id="myfares:C+C">
<Name>Charley to Charley</Name>
<StartTariffZoneRef version="any" ref="mybus:C"/>
<EndTariffZoneRef version="any" ref="mybus:C"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:C+D">
<Name>Charley to Delta</Name>
<StartTariffZoneRef version="any" ref="mybus:C"/>
<EndTariffZoneRef version="any" ref="mybus:D"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:C+P">
<Name>Charley to Papa</Name>
<StartTariffZoneRef version="any" ref="mybus:C"/>
<EndTariffZoneRef version="any" ref="mybus:P"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:C+Q">
<Name>Charley to Quebec</Name>
<StartTariffZoneRef version="any" ref="mybus:C"/>
<EndTariffZoneRef version="any" ref="mybus:Q"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:C+X">
<Name>Charley to Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:C"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:C+Y">
<Name>Charley to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:C"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
D - - - 1 3 2 4 2
-->
<DistanceMatrixElement version="any" id="myfares:D+D">
<Name>Delta to Delta</Name>
<StartTariffZoneRef version="any" ref="mybus:D"/>
<EndTariffZoneRef version="any" ref="mybus:D"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:D+P">
<Name>Delta to Papa</Name>
<StartTariffZoneRef version="any" ref="mybus:D"/>
<EndTariffZoneRef version="any" ref="mybus:P"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:D+Q">
<Name>Delta to Quebec</Name>
<StartTariffZoneRef version="any" ref="mybus:D"/>
<EndTariffZoneRef version="any" ref="mybus:Q"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:D+X">
<Name>Delta to Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:D"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:4zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:D+Y">
<Name>Delta to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:D"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
P - - - - 1 2 3 4
-->
<DistanceMatrixElement version="any" id="myfares:P+P">
<Name>Papa to Papa</Name>
<StartTariffZoneRef version="any" ref="mybus:P"/>
<EndTariffZoneRef version="any" ref="mybus:P"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:P+Q">
<Name>Papa to Quebec</Name>
<StartTariffZoneRef version="any" ref="mybus:P"/>
<EndTariffZoneRef version="any" ref="mybus:Q"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:P+X">
<Name>Papato Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:A"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:P+Y">
<Name>Papa to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:P"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:4zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
Q - - - - - 1 3 3
-->
<DistanceMatrixElement version="any" id="myfares:Q+Q">
<Name>Quebec to Quebec</Name>
<StartTariffZoneRef version="any" ref="mybus:Q"/>
<EndTariffZoneRef version="any" ref="mybus:Q"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:Q+X">
<Name>Quebec to Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:Q"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:Q+Y">
<Name>Quebec to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:Q"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:3zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
X - - - - - - 1 2
-->
<DistanceMatrixElement version="any" id="myfares:X+X">
<Name>Xray to Xray</Name>
<StartTariffZoneRef version="any" ref="mybus:X"/>
<EndTariffZoneRef version="any" ref="mybus:X"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
<DistanceMatrixElement version="any" id="myfares:X+Y">
<Name>Xray to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:X"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:2zone"/>
</structureFactors>
</DistanceMatrixElement>
<!--
A B C D P Q X Y
X - - - - - - - 2
-->
<DistanceMatrixElement version="any" id="myfares:Y+Y">
<Name>Yankee to Yankee</Name>
<StartTariffZoneRef version="any" ref="mybus:Y"/>
<EndTariffZoneRef version="any" ref="mybus:Y"/>
<structureFactors>
<GeographicalStructureFactorRef version="any" ref="myfares:1zone"/>
</structureFactors>
</DistanceMatrixElement>
</distanceMatrixElements>
<!-- === PRICES ==== -->
<priceGroups>
<PriceGroupRef version="1.0" ref="myfares:Unit_zone"/>
</priceGroups>
</Tariff>
</tariffs>
<!--- ====Fare Product======= -->
<fareProducts>
<!--- ====ADULT fares==== -->
<PreassignedFareProduct version="1.0" id="myfares:Trip">
<Name>Zone Unit Trip </Name>
<TypeOfFareProductRef version="ntx:v1.0" ref="ntx:trip"/>
<OperatorRef version="1.0" ref="mybus:DTA"/>
<!--- ====VALIDABLE ELEMENTs====== -->
<validableElements>
<ValidableElement version="1.0" id="myfares:Trip@travel">
<Name>Single ride</Name>
<fareStructureElements>
<FareStructureElementRef version="1.0" ref="myfares:Unit_zone@access"/>
<FareStructureElementRef version="1.0" ref="myfares:Unit_zone@eligibility"/>
<FareStructureElementRef version="1.0" ref="myfares:Unit_zone@conditions_of_travel"/>
</fareStructureElements>
</ValidableElement>
</validableElements>
<!--- ====ACCESS RIGHTs======= -->
<accessRightsInProduct>
<AccessRightInProduct version="1.0" id="myfares:Trip@travel" order="1">
<Name>Travel in zones</Name>
<ValidableElementRef version="1.0" ref="myfares:Trip@travel"/>
</AccessRightInProduct>
</accessRightsInProduct>
</PreassignedFareProduct>
</fareProducts>
</FareFrame>
<FarePriceFrame version="1.0" id="myfares:DTA@Unit_zone@prices">
<Name>Prices for unit zone </Name>
<prerequisites>
<FareFrameRef version="1.0" ref="myfares:DTA@Unit_zone@products"/>
</prerequisites>
<!--- ====Pricing Parameters======= -->
<PricingParameterSet version="1.0" id="myfares:Unit_zone@pp">
<PriceUnitRef version="any" ref="myfares:pu"/>
<priceUnits>
<PriceUnit version="any" id="myfares:pu">
<Name>Arbitrary Quanitized Unit of Transport Usage - </Name>
</PriceUnit>
</priceUnits>
<pricingRules>
<DiscountingRule version="any" id="myfares:0%">
<DiscountAsPercentage>0</DiscountAsPercentage>
</DiscountingRule>
<DiscountingRule version="any" id="myfares:50%">
<DiscountAsPercentage>50</DiscountAsPercentage>
</DiscountingRule>
</pricingRules>
</PricingParameterSet>
<priceGroups>
<PriceGroup version="1.0" id="myfares:Unit_zone">
<Name>Unit fare zones</Name>
<!--- ====Intervals======= -->
<members>
<GeographicalIntervalPrice version="1.0" id="myfares:Unit_zone@gi_1">
<Amount>1.00</Amount>
<Units>1</Units>
<GeographicalIntervalRef version="1.0" ref="myfares:gi_1zone"/>
</GeographicalIntervalPrice>
<GeographicalIntervalPrice version="1.0" id="myfares:Unit_zone@gi_2">
<Amount>1.50</Amount>
<Units>2</Units>
<GeographicalIntervalRef version="1.0" ref="myfares:gi_2zone"/>
</GeographicalIntervalPrice>
<GeographicalIntervalPrice version="1.0" id="myfares:Unit_zone@gi_3">
<Amount>3.00</Amount>
<Units>3</Units>
<GeographicalIntervalRef version="1.0" ref="myfares:gi_3zone"/>
</GeographicalIntervalPrice>
<GeographicalIntervalPrice version="1.0" id="myfares:Unit_zone@gi_4">
<Amount>4.00</Amount>
<Units>4</Units>
<GeographicalIntervalRef version="1.0" ref="myfares:gi_4zone"/>
</GeographicalIntervalPrice>
</members>
</PriceGroup>
</priceGroups>
</FarePriceFrame>
<!--- ====RESOURCE FRAME===== -->
<ResourceFrame version="1.0" id="mybus:DTA@Common_Resources">
<codespaces>
<Codespace id="ntx">
<Xmlns>ntx</Xmlns>
<XmlnsUrl>http://netex.org.uk/</XmlnsUrl>
<Description>Netex built in value</Description>
</Codespace>
</codespaces>
<typesOfValue>
<ValueSet version="ntx:v1.0" id="ntx:Types_of_Tariff" classOfValues="TypeOfTariff">
<Name>Types of Tariff</Name>
<values>
<!--- ====Types OfTariff ========= -->
<TypeOfTariff version="ntx:v1.0" id="ntx:Distance_kilometers">
<Name>Kilometer Distance Kilometers</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:flat">
<Name>Flat</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:point_to_point">
<Name>Point to point</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:zone_to_zone">
<Name>Zone to Zone</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:zonal">
<Name>Zonal</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:unit_distance">
<Name>Unit distance (count of stops, sections, zones)</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:section">
<Name>Section</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:banded">
<Name>Section</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:stored_value">
<Name>Stored value</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:discount">
<Name>Discount value</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:multitrip">
<Name>Multitrip carnet</Name>
</TypeOfTariff>
<TypeOfTariff version="ntx:v1.0" id="ntx:identity_card">
<Name>SIdentity</Name>
</TypeOfTariff>
</values>
</ValueSet>
<ValueSet version="ntx:v1.0" id="ntx:Types_of_FareProduct" classOfValues="TypeOfFareProduct">
<Name>Types of Fare Product</Name>
<values>
<TypeOfFareProduct version="ntx:v1.0" id="ntx:trip">
<Name>Trip product</Name>
</TypeOfFareProduct>
<TypeOfFareProduct version="ntx:v1.0" id="ntx:multi_trip">
<Name>Multitrip / carnet product</Name>
</TypeOfFareProduct>
<TypeOfFareProduct version="ntx:v1.0" id="ntx:period_pass">
<Name>Peroid pass product</Name>
</TypeOfFareProduct>
<TypeOfFareProduct version="ntx:v1.0" id="ntx:day_pass">
<Name>Day pass product</Name>
</TypeOfFareProduct>
<TypeOfFareProduct version="ntx:v1.0" id="ntx:discount_card">
<Name>Discount product</Name>
</TypeOfFareProduct>
</values>
</ValueSet>
<ValueSet version="any" id="myfares:Types_of_Concession" classOfValues="TypeOfConcession">
<Name>Types of concession</Name>
<values>
<!--- ====TypeOfConcession method========= -->
<TypeOfConcession version="any" id="myfares:adult">
<Name>Adult</Name>
</TypeOfConcession>
<TypeOfConcession version="any" id="myfares:child">
<Name>Student</Name>
</TypeOfConcession>
</values>
</ValueSet>
<ValueSet version="ntx:v1.0" id="ntx:Types_of_AccessRightAssignment" classOfValues="TypeOfAccessRightAssignment">
<Name>Types of Access Right Assignment</Name>
<values>
<TypeOfAccessRightAssignment version="ntx:v1.0" id="ntx:eligible">
<Name>Eligible for a product or discount</Name>
</TypeOfAccessRightAssignment>
<TypeOfAccessRightAssignment version="ntx:v1.0" id="ntx:can_access">
<Name>Grants access rights to use or travel on</Name>
</TypeOfAccessRightAssignment>
<TypeOfAccessRightAssignment version="ntx:v1.0" id="ntx:condition_of_use">
<Name>Defines a condition or restriction on use</Name>
</TypeOfAccessRightAssignment>
</values>
</ValueSet>
</typesOfValue>
<organisations>
<!--- =====Agency========= -->
<Operator version="1.0" id="mybus:DTA">
<Name>Demo Transit Authority</Name>
</Operator>
</organisations>
</ResourceFrame>
</frames>
</CompositeFrame>
</dataObjects>
</PublicationDelivery>