NeTEx (Network Timetable EXchange) XML schema

© 2009-2020 NeTEx, CEN, Crown Copyright

Core, Part 1 (Network), Part 2 (Timetables), Part3 (Fares) Schemas

The Part 1, Part 2, & Part 3 Schemas include minor corrections and enhancements since the issue of the Version 1.0 documents.
The revised Version 1.1 documents include the changes.

Note on the schema

The schema is broken down systematically into small modular files; generally for each functional package in the design model (See UML Model) there are two xml schema files

See the NeTEx UML Physical and Conceptual models for an UML view of the packages. (This is available in electronic format).

The individual XML files are arranged hierarchically in folders, in a similar arrangement to that of the UML model and documentation. Thus there is a main folder for each part, and subfolders for each NeTEx functional area.

Getting Started

There are two main root schemas:

In addition:

There are XML examples of the use of both protocols, see /examples subdirectory.

Support for XML editors

There is an Altova XMLSpy project file in the root directory that provides an organised view of the schema and examples:

There is also an Oxygen project file:

Change Log

Version 1.11 - Base version plus further minor fixes comprising##

2020.08.11 Update oxygen project to include new examples

2020.08.11 FIX Issue #110 Add missing fuel types to VehicleType / FuelType

additional values: electricContact, battery, dieselBatteryHybrid, petrolBatteryHybrid, biodiesel, hydrogen, liquidGas, methane, ethanol.

2020.08.11 FIX Issue #106 Schema: Add missing constraints for allow GeneralZone and AdministrativeZone

2020.08.11 FIX Issue #104 Framework: Add ResponsibilityRole in ResourceFrame

2020.08.10 FIX Issue #108 Framework: Allow ServiceCalendar to hold UIC OperatingPeriod

2020.07.29 FIX Issue #97 Part2: Add NormalDatedJourney and DatedVehicleJourney to journeys in TimetableFrame

2020.07.28 EXAMPLES Revise fare examples

2020.07.28 FIX Issue #101Publication:Add missing constraints for FareTableRow, FareTableColumn, TypeOfLine and for FareZone Parent

2020.07.28 FIX Issue #100FRAMEWORK:Correct the substitution group on OrganisationUnit

2020.06.21 FIX Issue #75FRAMEWORK:Remove space from end of secondClass enumeration value

2020.06.21 PARTIAL FIX Issue #73PART2:Recursive includes: NJSK Remove cyclic inclusion dependency

2020.06.21 FIX Issue #78 PART2:Journey Coupling: NJSK JourneyCouple / MainPartRef should be of type JourneyPartRef

2020.06.21 FIX Issue #92 FRAMEWORK:LinkProjection NJSK Expose the missing EntityInVersion elements on the LinkProjection derivation

Version 1.10 - Base version plus minor fixes comprising

2019.05.17 FIX PART3:FARES: NJSK FarePointInPattern Fix case on isFareStage and isForbidden

2019.05.15 FIX PART1:ND: NJSK Add constraints on TypeOfLineRef

2019.05.14 EXMP FRAMEWORK: NJSK Add Serbia and Montenegro to country codes

2019.05.10 EXMP EXAMPLES: NJSK Revise UK examples to have UK Profile data.

2019.05.19 FIX PART1:ND: NJSK Fix - remove empty value for CompassBearing enum

2019.05.02 FIX FRAMEWORK: NJSK Fix constraints on DefaultCodespaceRef

2019.05.01 FIX FRAMEWORK: NJSK Fix constraints on DefaultDataSourceRef and DefaultResponsibilitySetRef.

2019.04.29 FIX PART2:ND: NJSK Fix Constraints on JourneyPart.

2019.04.28 FIX FRAMEWORK: NJSK Fix Constraints on ParkingPassengerEntrance and VehicleEntranceForParking.

2019.05.01 FIX Parts2VS: NJSK Fix Add missing ParentRef_ to FlexibleService.

2019.04.29 FIX PART1:ND: NJSK Fix Dummy TariffZone should be abstract.

2019.04.19 CHECKPOINT.

2019.04.19 FIX Parts3FARES3: NJSK Add missing TypeOfFareTable element.

2019.04.18 FIX Parts3FARES3: NJSK Support Place to Place travel.

2019.04.18 FIX Parts1,2,3: NJSK Fix: Tidy up Designators.

2019.04.16 FIXDoc Part1-IFOPT: NJSK Parking - correct dependencies.

2019.04.16 FIXDoc Part1-IFOPT: NJSKCorrect VehicleStoppingPosition to reflect UML model.

2019.04.15 FIXDoc Part1-TP: NJSK TimeDemandType: Add missing OperationalContextRef.

2019.04.15 FIXDoc Part1-IFOPT: NJSK Fix TypeOfEntity and TypeofValue descendants to make root elements visible.

2019.04.15 FIXDoc Part1-IFOPT: NJSK Fix Add missing CountryRef to Authority.

2019.04.15 FIXDoc Part1-IFOPT: NJSK Fix add missing typesOfEntity/TypeOfEntity relationship to TypeOfFrame.

2019.04.15 FIXDoc Part1-IFOPT: NJSK Fix add missing element from doc to TypeOfPassengerInformationEquipment.

2019.04.14 FIXDoc Part1-RC: NJSK Fix Accommodation and OnBoardStay - add missing parent elements.

2019.04.07 FIXDoc Part1-IFOPT: NJSK Add back missing attribute to SanitaryEquipment / NumberofToilets.

2019.04.07 FIX Part3FARES-ST: NJSK Tidy up - remodularise: move TravelSpecification to be with CustomerPurchasePackage.

2019.04.04 FIXDoc PART2-VJ: NJSK Fix Add missing ConnectionCertainty element that is in doc.

2019.04.04 FIXDoc Part3-FARES-AR: NJSK Further tidy ups arising from doc.

2019.04.02 FIX PART2: Add TransportOperatorRef to JourneyDesignator

2019.03.30 EURA-52, EURA40 Part3-FARES-AR: Support suspension of season passes.

2019.03.30 FR49 Part1-IFOPT: CD #65 Accessibility changes,

2019.03.26 UK-27 FRAMEWORK-RC: NJSK Fix add missing TrainSize attribute to TrainElement.

2019.03.26 UK-27 Fares-ST: NJSK Correct annotations, reorder parameters,

2019.03.26 NL27 Part1-ND: CD #58 Add default TypeOfProductCategory and TypeOfService to Line:

2019.03.25 FR49 Part1-IFOPT: CD #65 Accessibility changes.

2019.03.25 NL48 Part1-ND: CD #64 Add new attributes to StopPointInPattern for advertising of stop; Print and Dynamic.

2019.03.25 NL32 FRAMEWORK-RC: CD #61 Add new values to SITE AccessFacility enum; wheelchairLift, automaticRamp. slidingStep.

2019.03.25 NL31 FRAMEWORK-RC: CD #60 Add new attributes BoardingHeight and GapToPlatform to VehicleType.

2019.03.25 NL28 FRAMEWORK-CC: CD #59 Add new Presentation attribute to Branding.

2019.03.25 SBB23 FRAMEWORK-CC: CD #57. Add new BackgroundColour and BackgroundColourName attributes to Presentation and PrintPresentation elements.

2019.03.25 SBB21 FRAMEWORK-CC: CD #56. Add new ColourSystem attribute to Presentation and PrintPresentation.

2019.03.25 FR-5 FRAMEWORK-CC: CD change #53 Add AccessFacilityList attribute to SiteFacilitySet.

2019.03.25 CR55 PART1-IFOPT: CD Change #52 Add new attribute StopPlaceWeight to StopPlace with values international, national, regional, local.

2019.03.25 CR51 PART2-TI: CD Add new VehicleJourneyStopAssignment entity to set default stop assignment for VehicleJourney.

2019.03.25 Fix FRAMEWORK-FR: Integrate constraint fix #49 by CD 2019.02.22 with other constraint changes: Add EquipmentPlace to Place_AnyVersionedKey.

2019.03.25 CR50 by CD from 2019-02-20 FRAMEWORK-CC. CD add snow and ice modes.

2019.03.25 NL34 from 2019.01.07 FRAMEWORK-CC. Fix #42 by Seime & #63 by CD move canalBarge value from air to water modes.

2019.03.25 Fix FRAMEWORK-CC: #43 by Skinkie from 2019.01.07.

2019.03.25 Fix FRAMEWORK-CC: #41 by Skinkie from 2019.01.07: Fix typo on MobilityList. Internal change only.

2019.03.25 Fix FARES-FS: #40 by Skinkie from 2019.01.07 Fix typo on DistanceMatrixElement.IsDirect.

2019.03.25 Fix Part1-IFOPT: #39 by Skinkie from 2019.01.07.

2019.03.25 Fix Part1-IFOPT: Fix #38 by Skinkie from 2019.01.07

2019.03.25 Fix PART2-DM: Fix #35 by Skinkie from 209.01.03 AccountingTime.

2019.03.25 Fix PART1-ND: #37 by Skinkie from 2019.01.07 Correct type on OppositeDirectionRef.

1.11 Summary of Changes since v1.10

2019.03.15 1.11 Small tidy ups to new value names and to documentation

2019.03.13 UK-27 & FIXES Part3-FARES: Fix FareContract and CustomerPurchasePackage issues.

2019.03.13 UK-27 & FIXES Part3-FARES: Extend CustomerPurchasePackage implementation.

2019.03.13 EURA-29 Part3-FARES: Add new EligibilityChangePolicy usage parameter.

2019.03.13 EURA-50 Part3-FARES: Add new PurchaseAction attribute to PurchaseWindow.

2019.03.13 EURA-40 Part3-FARES: Tidy up - Include new elements as fare validity parameters

2019.03.13 EURA-40 Part3-FARES: Support Suscriptions - additional changes.

2019.03.13 EURA-93, EURA-085 Part3-FARES: Add new attribute to InterChanging, RegisterBreak.

2019.03.13 UK Part3-FARES: Simplify use of Fares:

2019.03.13 NORWAY-100 Part3-FARES: Support VAT (and other tax) categories.

2019.03.12 EURA-40 Part3-FARES: Add integrity constraints for new elements.

2019.03.12 NORWAY-100 Part3-FARES: Add ReservationType to Reserving usage parameter.

2019.03.12 NORWAY-102 Part3-FARES: Add new enum values to Exchanging \ ExchangeableTo.

2019.03.12 NORWAY-105 Part3-FARES: Add new MinimumDuration attribute to TimeInterval.

2019.03.12 EURA-84 PART1-ND Add default PaymentMethods, to Lines.

2019.03.12 UK-45 Part3-FARES: Add constraint mechanism to Entitlements.

2019.03.12 NORWAY-99 Part3-FARES: Change cardinality of SupplementProduct.

2019.03.11 NORWAY-98 Part3-FARES: NORWAY-98 Add new value activation to UsageTriggerEnumeration for UsageValidityPeriod.

2019.03.11 NORWAY-97 Part3-FARES: : Add new values to UserProfile \ UserType,

2019.03.11 EURA-87 Part3-FARES: Support Partial Refunds of Passes

2019.03.11 EURA-52, EURA40 Part3-FARES: Support Suspension.

2019.03.11 EURA-72 Part3-FARES: Improve FareDemandType for direction constraints.

2019.03.11 CR-13 PART1: Add replacement value to LineType enumeration .

2019.03.11 EURA-40 Part3-FARES: Support Subscriptions.

2019.03.11 EURA-73 Part3-FARES: Add new StartConstraintType attribute enumeration for UsageValidityPeriod.

2019.03.11 UK-22 Part3-FARES: Add new PrivateCode attribute to FarePrice.

2019.03.11 UK-55 Part3-FARES: Add new TypeOfFareStructureElement.

2019.03.11 UK-31 FRAMEWORK Fix: to attribute names on TypeOfFrame.

2019.03.11 EURA-77 Part3-FARES: Add new relationship between FareProduct and Tariff.

2019.03.11 EURA-71 Part3-FARES: Add new superOffPeak and specialEvent enumeration values to FareDemandType.

2019.03.11 EURA-76 Part3-FARES: Add IsFeeRefundable attribute to Reserving.

2019.03.11 EURA-68 Part3-FARES: Specify conditions for changing group size.

2019.03.10 UK-21 Part3-FARES: Add new SalesOfferEntitlementGiven and SalesOfferEntitlementRequired usage parameters.

2019.03.10 EURA-42 Part3-FARES: Add Currency to PricingRule (NB this does not solve other aspects of CR.

2019.03.10 EURA-65 Part3-FARES: Add new SharedUsage attribute to Transferability to specify whether multiple users may use a product at the same time.

2019.03.10 EURA-75 Part3-FARES: Add new Add TravelBillingPolicy attribute to ChargingPolicy.

2019.03.10 UK-32 Part3-FARES: Add new ResidenceType attribute to ResidenceQualification.

2019.03.10 EURA-53 Part3-FARES: Add new CappingRuleStartConstraintType attribute to CappedFareProduct CappingRule to state if fixed or variable.

2019.03.10 EURA-67 Part3-FARES: Add new courier value to FulfilmentMethodType enumerations.

2019.03.10 EURA-91 Part3-FARES: Add new enumerated values sameProductLongerJourney and sameProductShorterJourney to TypeOfExchange attribute on Exchanging usage parameter.

2019.03.10 EURA-87 Part3-FARES: Specify if start of validity is variable or fixed.

2019.03.10 UK-38 Part3-FARES: Add new attributes MinimumAccess and MaximumAccess to FareStructureElementinSequence.

2019.03.10 EURA-81 Part3-FARES: Make relationship between FareProduct and TypeOfFareProduct many-to-many.

2019.03.10 UK-08 FRAMEWORK Add new attribute LayerRef to VersionFrame and to TypeOfFrame.

2019.03.10 UK-28 Part3-FARES: Add new attribute CustomerAccountRef to FareContract.

2019.03.09 UK-12 Part3-FARES: Add new attribute GroupOfOperatorRef to Tariff (ie make relationship many to many).

2019.03.09 EURA-78 Part3-FARES: Allow more than one reference to a GroupsOfSalesOfferPackageRef from a SalesOfferPackage (i.e. make relationship many-to-many.)

2019.03.08 EURA-54 Part3-FARES: Add a seat reference to assignable parameters.

2019.03.08 EURA-43 Part3-FARES: Add new relationship to FareZone to indicate who who manages it.

2019.03.08 EURA-51 Part3-FARES: Add new enumeration values to RoundTripType ; returnOut, returnBack so as to distinguish legs.

2019.03.08 PART2 UK-44, UK-69 Part3-FARES: Improve support for defining large tariffs in modular fashion

2019.03.08 UK-14 Part3-FARES: Improvements to FareZone.

2019.03.07 UK-46 FRAMEWORK & Part3-FARES: Add open PaymentMethod as first class object so that user defined methods can be added.

2019.03.07 NJSK Part3-FARES: UK-74 Add new enumerations to TariffBasis; zoneToZone, pointToPoint, discount.

2019.03.07 NJSK Fix FRAMEWORK Make InfrastructurePointRef and InfrastructureLinkRef abstract.

2019.03.07 NJSK-Fix HOUSEKEEPING Delete spurious references in XMLSpy netext.ssp file.

2019.03.07 NJSK-Fix FRAMEWORK - Correct Type of VersionFrameRef to be VersionFrameRefStructure , correct substitution group on ResourceFrameRef to be VersionFrameRef.

2019.03.07 EURA-40 Part3-FARES: Add support for Subscriptions.

2019.03.05 UK-24 FRAMEWORK-RC: & Part3-FARES: Add open PaymentMethod as first class object so that user defined methods can be added.

2019.03.05 UK-96 FRAMEWORK-CC: Add prerequisites relationship to VersionFrame.

2019.03.05 UK-09 Part3-FARES: Add TypeOfTariffRef and FareElementInSequenceRef to TravelSpecification so that can correctly specify choices.

2019.03.05 UK-19 Part3-FARES-FP: Fix PriceGroup should be abstract.

2019.03.05 NJSK-Fix PART1: Make alternative name and date visible on Direction.

2019.03.05 UK-41 Part3-FARES: Revise UserProfile to allow more than one enum values for ProofOfEligibilty.

2019.03.02 UK-18 Part3-FARES: Add values for TypeOfInterval.

2019.03.02 UK-80 Part3-FARES: Add further values to GenericParameterAssignment,

TypeOfConcessionRef, TypeOfUsageParameterRef, VehicleType Ref, TypeOfLineRef.

2019.03.02 UK-41 Part3-FARES: Add an additional functional operator to GenericParameterAssignment to clarify use of groups.

2019.03.01 EURA-(nk) Part3-FARES: Add DistanceMatrixInverseRef for backwards direction of reference. Revise constraints.

2019.02.28 EURA-10 Part3-FARES: Improve CustomerPurchasePackage.

2019.02.21 UK-07 Part3-FARES: Allow xxPriceRefs directly in FareTable / cells.

2019.02.21 UK-20 Part3-FARES: Add contains relationship to FareZone.

2019.02.21 UK-57 Part3-FARES: Add Allow list of MachineReadable enumerations,

2019.02.21 UK-34 Part3-FARES: TRAVEL DOCUMENT should not be in FARE FRAME - remove.

2019.02.21 UK-07 Part3-FARES: FareTable - Allow direct containment of FarePriceRef.

1.10 Summary of Changes since v1.09

2019.02.21 .No-Fix PART2: Reapply 1.09 Fix Merge in correction to spelling of AccountingTime.

2019.02.21 .No-Fix Part3-FARES: Reapply 1.09 Fix up examples

2019.02.21 NJSK-Fix FRAMEWORK Make dummy types abstract TransportOrganisation .

2019.02.21 NJSK-Fix FRAMEWORK Reapply 1.09 Make ValidityCondition etc visible [xsd only]

2019.02.21 NJSK-Fix: FRAMEWORK Reapply 1.09 Constraint changes and further clean up constraints [xsd only]

2019.02.18 NJSK-Fix FRAMEWORK Correct data type of LayerRef and substitution group on Layer and CellRef

2019.02.18 NJSK-Fix OTHER update XML SPy & Oxygen project files [xsd only]

2019.02.18 EXAMPLES - Add new Fare examples [xsd only]

Rail fares

Bus fares

2019.02.18 UK-006 Part3-FARES: - Add missing FARE TABLE price references.

2019.01.11 1.09 NJSK-Fix Part3-FARES: Constraints.

2019.01.10 HOUSEKEEPING Migrate to Github. Rename all schema files to remove version numbers.

2018.06.02 GITHUBBER FRAMEWORK Add Centroid to GroupOfStopPlaces.

1.09 Summary of Changes since v1.08

2018.06.06 CR057 NJSK add URL to Priceable object.

2018.06.02 1.09 BUG Fix UsageParameterRef - should be abstract to prevent use [xsd only]

2018.06.02 BUG Fix ServiceDesignator & JourneyDesignator - Make fromPoint value optional .

2018.06.02 1.10 BUG Fix Substitution group PointInJourneyPattern.

2018.06.02 Add ServiceDesignator to GroupOfServicesMember [DOCTODO]

2018.06.01 CR049 Rename to align with Transmodel. Fix case of names [xsd only]

2018.03.20 1.09 CR047 Fix SupplementToFareProductRef.

2018.03.20 1.09 Fix Inheritance of CompanionProfileRef to be a type of UserProfileRef [xsd only]

2018.03.20 CR049 Rename to align with Transmodel

*renames and fixes
- Fix Capitalisation [xsd only] x
* Fix Capitalisation of wrapper tags
* TM Alignment: salesOfferPackages should be lower ca.mel case.
* TM Alignment: salesOfferPackageElements should be lower camel case.
* TM Alignment: saleslesOfferPackageSubstitutions should be lower camel case.
* TM Alignment: salesOfferPackagePrices should be lower camel case
* TM Alignment: salesOfferPackageRefs should be lower camel case.

2018.03.20 CR049 Rename to align with Transmodel [uml:v96-nk4; doc:v39]

2017.12.20 CR049 Rename to align with Transmodel [uml:v96-nk4; doc:v39]

2017.12.20 Fix up fare examples

1.08 Summary of Changes since v1.07

2017-12-01 Further revisions & Fixes for v1.1

2017-11-08 Further revisions & Fixes for V1.1

2017-10-10 Further revisions & Fixes


2017-08-10 Allign with TM6 Changes

(iv) Add CustomerAccount, CustomerAccountStatus, TypeOfCustomerccount [uml:v96-nk2; doc:v38.03]
* netex_salesContract_support-v1.1.xsd umlp
* netex_salesContract_support-v1.1.xsd umlp

(v) Add CustomerEligibility [uml:v96-nk2; doc:v38.03]
* ++ netex_customerEligibility_support-v1.1.xsd umlp
* ++ netex_customerEligibility_version-v1.1.xsd umlp