RailTicketData

Naming and encoding conventions

Elements included as String and as Numeric values: Some elements are included in different formats to reduce the data size. These elements must be included only once. These elements are named with the same name and appendix Num (numeric values) IA5 (String values according to ASN IA5String (7Bit)) Example: trainNum - in case of a numeric train number trainIA5 - in case of a alphanumeric train Id

ISO Country codes are used to code countries.

As Kosovo does not have an official ISO Country Code the following codes are used:

  • 926 for Kosovo as numeric ISO Country Code
  • XK for Kosovo as alphanumeric 2-character ISO Country Code

RICS codes must be used to encode companies (issuer, product owner, ...) where available other codes are possible based on bilateral agreements the format is kept more flexible to cover upcoming extensions of the RICS code by ERA

Stations can be coded using the UIC and upcoming ERA code lists. Proprietary codes are possible based on bilateral agreements. Format: 1..9999999 or alphanumeric without special character (IA5String)

INTEGERS must not exceed the value of 9,223,372,036,854,775,807 (64 bit) even in case they are unrestricted!!! Some elements like ReferenceNum or cardIdNum are defined as an unrestricted integer. Unlike other numerical values the cardIdNum and referenceNum can be larger than a usual 32 bit Integer Some ASN.1 implementation tools are limited to 32 bit integers which is too small. Please ensure to use a tool capable of dealing with larger numbers.

Optional BOOLEANs have three values: "true", "false", "unknown" = the Boolean is absent from the data.

Encoding of time

time is encoded as the number of minutes of the day 0 = 00:00, 1439 = 23:59, time data elements end with "time" in their name

Encoding of date

The issuing date is given in UTC, but some other date values are given in local time where the exact time zone is not known.

For local dates the date is associated with the corresponding location: e.g.: valid from date -> location where the journey starts valid until date -> location where the journey covered by the ticket ends

there could be rare cases where this does not provide a unique interpretation: e.g. open ticket or pass without start and end location for a collection of zones or countries with different time zones. in these cases the fare conditions must clarify the rules for these cases (e.g. by allowing to use the ticket a few hours after the end of validity).

The difference in days is calculated from dates only, ignoring the time and time zone information.

Example 1: (31.12.2017 23:05 UTC == 01.01.2018 00:05 CET) :

issuing date (UTC): 31.12.2017 23:05  == 01.01.2018 00:05 CET
issuingYear   = 2017
issuingDay    = 365
issuingTime   = 1385
local departure date (CET):   01.01.2018 00:15  == 31.12.2017 23:15 UTC
departureDate         = 1   (= 01.01.2018 - 31.12.2017)
departureTime         = 15
departureUTCOffset    = -4  (UTC = local + offset * 15 Minutes)

Example 2: (01.01.2018 00:05 UTC == 31.12.2017 20:05 AST)

issuing date (UTC): 01.01.2018 00:05 UTC == 31.12.2017 20:05 AST
issuingYear   = 2018
issuingDay    = 1
issuingTime   = 5
local departure date (AST):   31.12.2017 22:05 AST == 1.1.2018 02:05 UTC
departureDate         = -1   (= 31.12.2017 - 01.01.2018)
departureTime         = 1325
departureUTCOffset    = 16  (UTC = local + offset * 15 Minutes)

departureDate can become -1 with a departure west of the GMT zone only

Tickets might cover multiple time zones where valid from and until is not linked to a specific time zone (e.g. Eurail Pass valid for whole Europe). In this case the date times are to be interpreted as local at the actual place where the traveler is and the ticket is checked. The utcOffset must not be provided for these local date times.

!! In general the issuing date and time is always UTC whereas the other dates and times are always local. !!

It is RECOMMENDED not to use the utcOffset until there is a need to do so.

ASN.1 Extensions

The specification makes use of extension (",..."). These extensions might be defined in future versions of the UIC specification Implementations must support the extension feature of ASN.1, at least they must be able to ignore extensions while decoding the data ASN.1 extensions will be defined by UIC. It is not allowed to define bilateral extensions.

Bilateral Extensions

Bilateral extensions can be included in the data element "ExtensionData".

Module Info

Reference
RailTicketData
Numeric OID
1.3.6.1.4.1.17218.1.0.2.3.7

Assignments

UicRailTicketData

The basic entry point of the data structure. The data includes:

  • issuer information
  • the details of the transport document
  • information required for the control process
  • information on the travelers independent from the transport document
  • proprietary extensions
SEQUENCE

This sequence contains the following fields:

issuingDetail

Data specific to the issuer.

IssuingData
travelerDetail Optional

Data on the travelers.

TravelerData
transportDocument Optional

Data of the transport document.

SEQUENCE OF DocumentData
controlDetail Optional

Data specific to support the ticket control process.

ControlData
extension Optional

Proprietary data defined bilaterally.

SEQUENCE OF ExtensionData

DocumentData

the choice on the different transport documents that can be included in the bar code data:

  • reservation of seat / couchette or berths (IRT, RES, BOA)
  • reservation of car carriage (VET)
  • open ticket (NRT including NRT group ticket) (NRT, GRT, SUP, UPD, COI)
  • Rail passes (including Eurail, Interail and local passes) (RPT)
  • Voucher (TRV)
  • Customer Cards (including bonus cards and reduction cards)
  • counter marks issued for group tickets
  • parking ground tickets
  • FIP tickets
  • station access / station passage tickets
  • proprietary documents as an extension
SEQUENCE

This sequence contains the following fields:

token Optional

specific id to be exchanged with the ticket (e.g. id of the phone in case of tickets linked to a phone)

TokenType
ticket

choice of the ticket

CHOICE

The value of this choice may be one of the following:

reservation

Reservation (without car carriage) (IRT and RES)

ReservationData
carCarriageReservation

Reservation of car carriage

CarCarriageReservationData
openTicket

open ticket specification (NRT)

OpenTicketData
pass

pass specification (RPT) including Eurail and Interrail

PassData
voucher

voucher

VoucherData
customerCard

customer card either to identify a customer and / or to provide reductions

CustomerCardData
counterMark

countermark to accompany a group ticket

CountermarkData
parkingGround

car parking slot

ParkingGroundData
fipTicket

FIP duty ticket

FIPTicketData
stationPassage

ticket to pass the gates at a station

StationPassageData
extension

proprietary data defined bilaterally In the specific case of a pure Account Based Ticketing barcode, in which no ticket must be present, as it is impossible with the existing definition to completely remove the ticket from the DocumentData, a specific "minimal" extension with extensionId = "_3011+0" and extensionData = ''H is used.

ExtensionData
delayConfirmation

delay confirmation

DelayConfirmation

DelayConfirmation

confirmation of the delay of a train

SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

reference of the delay confirmation, reference is optional, in case it is given it must be given in num or IA5

referenceNum Optional
INTEGER
trainNum Optional

train number of the delayed train - numeric or alphanumeric

INTEGER
trainIA5 Optional
departureYear Optional

planned departure date of the delayed train in local time at the station where delay became relevant (see below)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 2016

The value must be less than or equal to: 2269

departureDay Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 366

departureTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

departureUTCOffset Optional

offset in units of 15 minutes from local time to UTC. (UTC = local + offset * 15 Minutes)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

stationCodeTable Default value defined

station where the delay became relevant

CodeTableType

This field, when unset, defaults to the following value: stationUIC

stationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

stationIA5 Optional
delay

delay in minutes at the mentioned station

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 999

trainCancelled

indication that the train was cancelled

BOOLEAN
confirmationType Default value defined

type of confirmation provided

ConfirmationType

This field, when unset, defaults to the following value: travelerDelayConfirmation

affectedTickets Optional

affected original ticket(s)

SEQUENCE OF TicketLinkType
infoText Optional

info text

UTF8String
extension Optional

proprietary data defined bilaterally

ExtensionData

ConfirmationType

ENUMERATED

The value of this enumeration may have one of the following values:

trainDelayConfirmation

Value: 0

confirmation of train delay, whether the traveler was on board in unconfirmed

travelerDelayConfirmation

Value: 1

confirmation that the traveler was on board of the delayed train

trainLinkedTicketDelay

Value: 2

confirmation that a ticket linked to the delayed train was issued

IssuingData

Details of the issuer and the issue of the ticket

  • details on the issuer
  • indication of test tickets (specimen)
  • payment details: method of payment, currency
  • proprietary PNR of the issuer to be used to identify the sale within the issuers ecosystem
  • web link to display more information for the customer
  • proprietary extension data
SEQUENCE

This sequence contains the following fields:

securityProviderNum Optional

provider of the signature (RICS code)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

securityProviderIA5 Optional
issuerNum Optional

issuer of the transport document if the issuer is different from the security provider (RICS code).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

issuerIA5 Optional
issuingYear

issuing time stamp in UTC

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 2016

The value must be less than or equal to: 2269

issuingDay
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 366

issuingTime

The number of the minutes of issue might be used in case of account based ticketing with a delay of n minutes for the replication of central booking data to the control devices (e.g. at SBB) The time can be compared with the last synchronization time of the control device.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

issuerName Optional

name of the issuer (E.g. short name mentioned in RICS code table)

UTF8String
specimen

specimen indicates a test specimen not valid for traveling

BOOLEAN
securePaperTicket

secure paper indicates that this barcode is issued with a secure paper ticket to ensure the uniqueness of the ticket. This allows to use the same control procedure as for e-tickets also for anonymous tickets the double use of the ticket is in this case excluded by the secure paper.

BOOLEAN
activated

indicates that the ticket is valid for traveling or still needs activation

BOOLEAN
currency Default value defined

currency of the price: ISO4217 currency codes

This type is constrained in the following way:

Size

The length of the value must exactly: 3

This field, when unset, defaults to the following value: EUR

currencyFract Default value defined

fraction of the prices included

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 3

This field, when unset, defaults to the following value: 2

issuerPNR Optional

PNR used by the issuer to identify the document. ID to uniquely identify this barcode within the context of the issuer and an appropriate time range. This can be used to query the ticket in the eTCD. issuerPNR must be provided except for rare special cases like a pure token.

extension Optional

proprietary data defined bilaterally

ExtensionData
issuedOnTrainNum Optional

location of sale in case of a sale on board of a train numeric train number or alphanumeric id of the train where the ticket was sold

INTEGER
issuedOnTrainIA5 Optional
issuedOnLine Optional

line number

INTEGER
pointOfSale Optional

point of sale

GeoCoordinateType

ControlData

data supporting the control process

  • list of items which the traveler can use to identify himself or the unique usage of the ticket (card ids, parts or identity card numbers, credit card numbers,..)
  • hints on the validation to be made on board
SEQUENCE

This sequence contains the following fields:

identificationByCardReference Optional

cards that can be used to identify the ticket holder

SEQUENCE OF CardReferenceType
identificationByIdCard

id-card id must be checked to identify the traveler

BOOLEAN
identificationByPassportId

passport id must be checked to identify the traveler

BOOLEAN
identificationItem Optional

other items which could be used to identify the ticket holder (for future use, code list to be defined)

INTEGER
passportValidationRequired

validation of the passport is required (e.g. in case of Eurail)

BOOLEAN
onlineValidationRequired

online validation of the ticket required

BOOLEAN
randomDetailedValidationRequired Optional

percentage of the tickets to be validated in more detail (i.e. via online check or detailed checks later-on)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 99

ageCheckRequired

manual validation of the traveler age required (in case of reductions)

BOOLEAN
reductionCardCheckRequired

manual validation of the travelers reduction card required (in case of reductions)

BOOLEAN
infoText Optional

controller info text

UTF8String
includedTickets Optional

additional tickets that should be controlled

SEQUENCE OF TicketLinkType
extension Optional

proprietary data defined bilaterally

ExtensionData

TravelerData

Traveler data these data do not include tariff details of the booked tariffs, tariff data are included in the transport document details and might have a reference to the traveler defined here.

  • personal data of the travellers
  • the index of the list can be used to identify the traveler within other contexts (e.g. in assigned tariffs)
SEQUENCE

This sequence contains the following fields:

traveler Optional

traveler list

SEQUENCE OF TravelerType
preferredLanguage Optional

ISO 639-1 coding of the language preferred for the traveler / ticket holder

This type is constrained in the following way:

Size

The length of the value must exactly: 2

groupName Optional

name of the group in case of a group ticket

UTF8String

ReservationData

reservations of seats , couchettes and berths included are the data defined in:

  • leaflet 918.1 for reservation data exchange
  • a few additional data currently used by some railways via different interfaces
  • information on trach an dplafoorm where the coach stops
  • additional second coach for large groups
SEQUENCE

This sequence contains the following fields:

trainNum Optional

train number - numeric or alphanumeric

INTEGER
trainIA5 Optional
departureDate Default value defined

departure date in local time at the departure station number of the days calculated from the issuing date

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

referenceIA5 Optional

reference is optional, it is given it must be given in num or IA5.

referenceNum Optional
INTEGER
productOwnerNum Optional

organization responsible for the product definition (RICS Code to be used as standard)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product codelist defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
serviceBrand Optional

service brand: code list uic.org/service-brand-code-list

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 32000

serviceBrandAbrUTF8 Optional
UTF8String
serviceBrandNameUTF8 Optional
UTF8String
service Default value defined

service code list from 918.1 (seat couchette,..)

ServiceType

This field, when unset, defaults to the following value: seat

stationCodeTable Default value defined

code table used to encode stations

CodeTableType

This field, when unset, defaults to the following value: stationUICReservation

fromStationNum Optional

origin station code

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional

destination station code

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional

origin station name

UTF8String
toStationNameUTF8 Optional

destination station name

UTF8String
departureTime

departure time in local time at the departure station

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

departureUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel. if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory times to be shown on a ticket should always be the local times.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

arrivalDate Default value defined

arrival date and time in local time at the arrival station. number of days counted from the departure date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 20

This field, when unset, defaults to the following value: 0

arrivalTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

arrivalUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). should be omitted in case it is the same as for departure. the UTC offset can be used to calculate the duration of the travel times to be shown on a ticket should always be the local times.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

carrierNum Optional

responsible carriers on the route

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
classCode Default value defined

travel class

TravelClassType

This field, when unset, defaults to the following value: second

serviceLevel Optional

service level code list from 918.1

This type is constrained in the following way:

Size

The length of the value must be greater than or equal to: 1

The length of the value must be less than or equal to: 2

places Optional

places

PlacesType
additionalPlaces Optional

additional places in a second coach

PlacesType
bicyclePlaces Optional
PlacesType
compartmentDetails Optional

compartment details (open space, wheelchair,..)

CompartmentDetailsType
numberOfOverbooked Default value defined

number of persons on the ticket without place numbers (on IRT)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 200

This field, when unset, defaults to the following value: 0

berth Optional

description of berths

SEQUENCE OF BerthDetailData
tariffs Optional

tariffs included (Adult, Children,... )

SEQUENCE OF TariffType
priceType Default value defined

type of the price (supplement,... )

PriceTypeType

This field, when unset, defaults to the following value: travelPrice

price Optional
INTEGER
vatDetail Optional
SEQUENCE OF VatDetailType
typeOfSupplement Default value defined

type of supplement - code list from 918.1

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 9

This field, when unset, defaults to the following value: 0

numberOfSupplements Default value defined
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 200

This field, when unset, defaults to the following value: 0

luggage Optional

luggage restrictions and registered luggage. in case the luggage restrictions are general and do not depend on the ticket type they should not be included

LuggageRestrictionType
infoText Optional
UTF8String
extension Optional

bilaterally agreed proprietary extension

ExtensionData

VatDetailType

details on the VAT included to be used in after sale processes

SEQUENCE

This sequence contains the following fields:

country

ISO 3166 numeric country code

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 999

percentage

1/10th of a percent

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 999

amount Optional

amount of VAT, the currency and the currency fraction is included in the issuing data

INTEGER
vatId Optional

european tax id of the company paying VAT

CarCarriageReservationData

reservations of car carriage included are the data defined in:

  • leaflet 918.1 for reservation data exchange
  • a few additional data currently used by some railways via different interfaces
SEQUENCE

This sequence contains the following fields:

trainNum Optional
INTEGER
trainIA5 Optional
beginLoadingDate Default value defined

loading of the car in local date and time at the loading station. number of the days calculated from the issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

beginLoadingTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

endLoadingTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

loadingUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). times to be shown on a ticket should always be the local times.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

referenceIA5 Optional

reference is optional, in case it is given it must be given in num or IA5.

referenceNum Optional
INTEGER
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product codelist defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
serviceBrand Optional

service brand: code list uic.org/service-brand-code-list

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

serviceBrandAbrUTF8 Optional
UTF8String
serviceBrandNameUTF8 Optional
UTF8String
stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUICReservation

fromStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional
UTF8String
toStationNameUTF8 Optional
UTF8String
coach Optional
place Optional
compartmentDetails Optional
CompartmentDetailsType
numberPlate

description of the car

trailerPlate Optional
carCategory
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 9

boatCategory Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 6

textileRoof
BOOLEAN
roofRackType Default value defined
RoofRackType

This field, when unset, defaults to the following value: norack

roofRackHeight Optional

height of a roof rack in cm

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 99

attachedBoats Optional

number of boats on a rack

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 2

attachedBicycles Optional

number of biycles on a rack

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 4

attachedSurfboards Optional

number of surf boards on a rack

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 5

loadingListEntry Optional

reference to an entry on the loading list

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 999

loadingDeck Default value defined
LoadingDeckType

This field, when unset, defaults to the following value: upper

carrierNum Optional

responsible carriers on the route (RICS codes)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
tariff
TariffType
priceType Default value defined
PriceTypeType

This field, when unset, defaults to the following value: travelPrice

price Optional
INTEGER
vatDetail Optional
SEQUENCE OF VatDetailType
infoText Optional
UTF8String
extension Optional
ExtensionData

OpenTicketData

data for open tickets (NRT and group tickets) included are the data defined in:

  • the ticket layout (leaflet 918.8)
  • the ticket bar code version 3 (leaflet 918.9)
  • additional data based on 108.1 with some extensions as 108.1 does not provide well structured data, especially concerning regional validity
SEQUENCE

This sequence contains the following fields:

referenceNum Optional

reference to this openticketdata document. reference must be given either in numeric or alphanumeric format

INTEGER
referenceIA5 Optional
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product codelist defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
extIssuerId Optional

to support other ticket content (e.g. VDV, UTPF, VöV, CALYPSO). issuer code using the default code table of the product owner

INTEGER
issuerAuthorizationId Optional

authorization id provided to the issuer by the product owner

INTEGER
returnIncluded

ticket includes the return trip - should be set to false if it is not relevant (e.g. zones)

BOOLEAN
stationCodeTable Default value defined

for tickets valid in regions without from or to stations no station is provided

CodeTableType

This field, when unset, defaults to the following value: stationUIC

fromStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional

for tickets valid in regions without from or to stations no station is provided

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional
UTF8String
toStationNameUTF8 Optional
UTF8String
validRegionDesc Optional

description for manual evaluation in case structured data are not available

UTF8String
validRegion Optional

specification of the ordered sequence of valid regions

SEQUENCE OF RegionalValidityType
returnDescription Optional

return route description. the return route description can be omitted if it is identical to the inversed outbound validRegion sequence

ReturnRouteDescriptionType
validFromDay Default value defined

date/time validity in local time of the location where the journey starts. number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validFromTime Optional

in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel. if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory. times to be shown on a ticket should always be the local times.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

date/time validity in local time of the location where the journey ends. number of days from valid-from date, 0 = valid until day is equal to the first day of validity.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel . if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory. times to be shown on a ticket should always be the local times. should be omitted in case it is the same as for departure.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

activatedDay Optional

here it is possible to list the activated days of the ticket: day the ticket is activated. The activation is valid from 00:00 to 23:59 in the time zone of the current location of the traveler thereby the activation might include more or less that 24 hours in case time zone borders are crossed travel days of a ticket might be subject to a separate activation to be valid for traveling list of activated days in case the entire ticket is not activated the day is given by the number of days from the first day of validity 0 = first day of validity

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

classCode Default value defined
TravelClassType

This field, when unset, defaults to the following value: second

serviceLevel Optional

servicelevel code according to leaflet 918.1 to encode other products (e.g. PREMIUM, ...)

This type is constrained in the following way:

Size

The length of the value must be greater than or equal to: 1

The length of the value must be less than or equal to: 2

carrierNum Optional

carriers involved in the transport (RICS codes) the indication of carriers is mandatory on international routes, they can be listed here but can also be included in viaDetails

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
includedServiceBrands Optional

list of service brands for which the ticket is valid in case the included service brands are listed all other brands are excluded service brand: code list uic.org/service-brand-code-list

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedServiceBrands Optional

list of service brands for which the ticket is not valid service brand: code list uic.org/service-brand-code-list

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

tariffs Optional
SEQUENCE OF TariffType
price Optional
INTEGER
vatDetail Optional
SEQUENCE OF VatDetailType
infoText Optional
UTF8String
includedAddOns Optional

additional included open tickets e.g. to include local city traffic on parts of a the route

SEQUENCE OF IncludedOpenTicketType
luggage Optional

in case the luggage restrictions are general and do not depend on the ticket type they should not be included

LuggageRestrictionType
includedTransportType Optional

included or excluded transport modes code list: EN 1545-1 (transport type code)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 31

excludedTransportType Optional
SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 31

extension Optional
ExtensionData

PassData

data for passes included are the data defined in:

  • the ticket layout (leaflet 918.8)
  • the ticket bar code version 3 (leaflet 918.8)
SEQUENCE

This sequence contains the following fields:

referenceNum Optional

reference to this passdata. reference is optional, in case it is given it must be given in numeric or alphanumeric format

INTEGER
referenceIA5 Optional
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product code list defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
passType Optional

type of the pass, code list provided by the product owner in case of Eurail:

  • 1 = Eurail Global Pass
  • 2 = Interrail Global Pass
  • 3 = Interrail One Country Pass
  • 4 = Eurail One Country Pass
  • 5 = Eurail/Interrail Global Pass Emergency ticket
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 250

passDescription Optional

literal name of the pass

UTF8String
classCode Default value defined
TravelClassType

This field, when unset, defaults to the following value: second

validFromDay Default value defined

begin of validity (local time). number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validFromTime Optional

in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

end of validity (local time). number of days from valid from day, 0 = valid on valid-from-date

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional

in case the valid until time is not provided the valid until time is 23.59 (local time)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler. offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). should be omitted in case it is the same as for departure.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validityPeriodDetails Optional

additional validity periods and excluded time ranges

ValidityPeriodDetailType
numberOfValidityDays Optional

max number of days of validity in case the valid from day is open

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

trainValidity Optional
TrainValidityType
numberOfPossibleTrips Optional

max number of possible trips to be activated

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 250

numberOfDaysOfTravel Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 250

activatedDay Optional

here it is possible to list the activated days of the ticket: day the ticket is activated. The activation is valid from 00:00 to 23:59 in the time zone of the current location of the traveler. thereby the activation might include more or less that 24 hours in case time zone borders are crossed. travel days of a ticket might be subject to a separate activation to be valid for traveling. list of activated days in case the entire ticket is not activated. the day is given by the number of days from the first day of validity. 0 = first day of validity

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

countries Optional

included countries, code table according to UIC leaflet 918.9

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 250

includedCarrierNum Optional

included carriers (RICS codes)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

includedCarrierIA5 Optional
SEQUENCE OF
excludedCarrierNum Optional

excluded carriers (RICS codes)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedCarrierIA5 Optional
SEQUENCE OF
includedServiceBrands Optional

service brand: code list uic.org/service-brand-code-list

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedServiceBrands Optional
SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

validRegion Optional

region description to cover local zones

SEQUENCE OF RegionalValidityType
tariffs Optional
SEQUENCE OF TariffType
price Optional
INTEGER
vatDetail Optional
SEQUENCE OF VatDetailType
infoText Optional
UTF8String
extension Optional
ExtensionData

TrainValidityType

SEQUENCE

This sequence contains the following fields:

validFromDay Default value defined

begin of time range (local time). number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validFromTime Optional

in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

end of time range (local time). number of days from valid from day, 0 = valid on valid-from-date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional

in case the valid until time is not provided the valid until time is 23.59 (local time)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler. offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). should be omitted in case it is the same as for departure.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

includedCarrierNum Optional

included carriers (RICS codes)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

includedCarrierIA5 Optional
SEQUENCE OF
excludedCarrierNum Optional

excluded carriers (RICS codes)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedCarrierIA5 Optional
SEQUENCE OF
includedServiceBrands Optional

service brand: code list uic.org/service-brand-code-list.

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedServiceBrands Optional
SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

boardingOrArrival Default value defined
BoardingOrArrivalRestrictionType

This field, when unset, defaults to the following value: boarding

ValidityPeriodDetailType

SEQUENCE

This sequence contains the following fields:

validityPeriod Optional
SEQUENCE OF ValidityPeriodType
excludedTimeRange Optional
SEQUENCE OF TimeRangeType

ValidityPeriodType

SEQUENCE

This sequence contains the following fields:

validFromDay Default value defined

number of days from issuing date (local date)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validFromTime Optional

local time. in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

number of days from valid from day, 0 = valid on valid from date

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler. offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). should be omitted in case it is the same as for departure.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

TimeRangeType

SEQUENCE

This sequence contains the following fields:

fromTime

local time

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

untilTime

local time

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

VoucherData

data for vouchers. included are quite basic further study is required.

SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

reference to this voucher data, reference is optional, in case it is given it must be given in numeric or alphanumeric format

referenceNum Optional
INTEGER
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product code list defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
validFromYear

begin / end of validity in local date wherever the traveler is located.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 2016

The value must be less than or equal to: 2269

validFromDay

number of the day in the year (1.1. = 1)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

validUntilYear

number of year

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 2016

The value must be less than or equal to: 2269

validUntilDay

number of the day in the year (1.1. = 1)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

value Default value defined
INTEGER

This field, when unset, defaults to the following value: 0

type Optional

type of the voucher, code list defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

infoText Optional
UTF8String
extension Optional
ExtensionData

FIPTicketData

data for FIP tickets. included are data from the FIP ticket layout.

SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

reference to this fip ticket, reference is optional, in case it is given it must be given in numeric or alphanumeric format

referenceNum Optional
INTEGER
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product code list defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
validFromDay Default value defined

begin / end of validity in local date time wherever the traveler is located. number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validUntilDay Default value defined

last day of validity. number of days from valid from day, 0 = first day of validity

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

activatedDay Optional

activated days: list of days for which the ticket is valid in local date wherever the traveler is located. the day is given by the number of days from the first day of validity. 0 = first day of validity.

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

carrierNum Optional

included carriers

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
numberOfTravelDays

number of travel days allowed

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 200

includesSupplements
BOOLEAN
classCode Default value defined

travel class

TravelClassType

This field, when unset, defaults to the following value: second

extension Optional
ExtensionData

StationPassageData

data station passage and access. ticket used to enter, exit or pass a station without traveling by train. E.g. for staff working in a station.

SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

reference to this station data, reference is optional, in case it is given it must be given in numeric or alphanumeric format

referenceNum Optional
INTEGER
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product code list defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
productName Optional
UTF8String
stationCodeTable Default value defined

code table used to encode he stations

CodeTableType

This field, when unset, defaults to the following value: stationUIC

stationNum Optional

list of station where the passage is allowed

SEQUENCE OF INTEGER
stationIA5 Optional
SEQUENCE OF
stationNameUTF8 Optional

station names

SEQUENCE OF UTF8String
areaCodeNum Optional

list of areas in a station where the access is allowed

SEQUENCE OF INTEGER
areaCodeIA5 Optional
SEQUENCE OF
areaNameUTF8 Optional

area names

SEQUENCE OF UTF8String
validFromDay

begin of validity in local date and time of the station. number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

validFromTime Optional

in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

number of days from valid from day, 0 = first day of validity

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). should be omitted in case it is the same as for begin of validity (might be different in case of changes to summer time)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

numberOfDaysValid Optional

number of days for station passage in case the number of days is limited and less that the validity period.

INTEGER
extension Optional
ExtensionData

CustomerCardData

data for customer cards included are data from:

  • ÖBB requirements on card data
  • DB Bahncard as HandyTicket

note: customer data are included in the traveler data structure

SEQUENCE

This sequence contains the following fields:

customer Optional

customer details. optional, as there might be an anonymous cards.

TravelerType
cardIdIA5 Optional

card id might be numerical or alphanumerical

cardIdNum Optional
INTEGER
validFromYear

begin / end of validity in local date wherever the traveler is located. begin of validity time is 00:00

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 2016

The value must be less than or equal to: 2269

validFromDay Optional

number of the day in the year (1.1. = 1)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

validUntilYear Default value defined

number of year from valid from year onwards

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 250

This field, when unset, defaults to the following value: 0

validUntilDay Optional

number of the day in the year (1.1. = 1)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

classCode Optional
TravelClassType
cardType Optional

code of the card type code list defined by the issuer

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 1000

cardTypeDescr Optional

readable description of the card type

UTF8String
customerStatus Optional

customer status code

  • 1 = basic
  • 2 = premium
  • 3 = silver
  • 4 = gold
  • 5 = platinum
  • 6 = senator
  • 50 - code table of the card issuer

INTEGER
customerStatusDescr Optional

readable customer status "e.g. gold",

includedServices Optional

list of included services,

  • 1 = Rail Plus
  • 2 = access to launch
  • 50 code list of the issuer

SEQUENCE OF INTEGER
extension Optional
ExtensionData

ParkingGroundData

data for customer cards included are data from:

  • DB parking ground reservation
SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

booking reference to this parking booking, reference is optional, in case it is given it must be given in num or IA5

referenceNum Optional
INTEGER
parkingGroundId
fromParkingDate

parking date in time zone of the parking. validity is the whole day depending on opening hours of the parking facility. number of days from the issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 370

untilParkingDate Default value defined

number of days from the from parking date in case it is different from that date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product code list defined by the product owner.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
accessCode Optional

code needed to access the parking lot

location
UTF8String
stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUIC

stationNum Optional

in case the parking ground is associated with a station

INTEGER
stationIA5 Optional
UTF8String
specialInformation Optional
UTF8String
entryTrack Optional
UTF8String
numberPlate Optional
price Optional
INTEGER
vatDetail Optional
SEQUENCE OF VatDetailType
extension Optional
ExtensionData

CountermarkData

data for countermarks issued with group tickets included are data from:

  • version 3 bar code (leaflet 918.9)
  • printed layout (leaflet 918.8)
SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

reference to this countermark, reference is optional, in case it is given it must be given in num or IA5.

referenceNum Optional
INTEGER
productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product codelist defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
ticketReferenceIA5 Optional

reference of the group ticket

ticketReferenceNum Optional
INTEGER
numberOfCountermark

sequential number of the countermark

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 200

totalOfCountermarks

total number of countermarks

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 200

groupName

name of the group

UTF8String
stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUIC

fromStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional
UTF8String
toStationNameUTF8 Optional
UTF8String
validRegionDesc Optional

description for manual evaluation in case structured data are not available

UTF8String
validRegion Optional

specification of the ordered sequence of valid regions

SEQUENCE OF RegionalValidityType
returnIncluded

ticket includes the return trip

BOOLEAN
returnDescription Optional

retrun route description. can be omitted if it is identical to the inversed outbound validRegion sequence.

ReturnRouteDescriptionType
validFromDay Default value defined

date/time validity in local time of the location where the journey starts. number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validFromTime Optional

in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel. if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory. times to be shown on a ticket should always be the local times.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

date/time validity in local time of the location where the journey ends. number of days from valid-from date, 0 = valid until day is equal to the first day of validity.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel. if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory. times to be shown on a ticket should always be the local times. should be omitted in case it is the same as for departure.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

classCode Default value defined
TravelClassType

This field, when unset, defaults to the following value: second

carrierNum Optional

valid carriers

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
includedServiceBrands Optional

service brands where the ticket is valid in case this list is provided the ticket is invalid on all other service brands service brand: code list uic.org/service-brand-code-list

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedServiceBrands Optional

service brands where the ticket is not valid in case this list is provided the ticket is valid on all other service brands

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

infoText Optional
UTF8String
extension Optional
ExtensionData

ExtensionData

Generic extension element.

The value of 'extensionId' describes how 'extensionData' is encoded:

  • "+" + [2-letters ISO 3166 country code] + [addon, chosen by the standardization body of that country] means that 'extensionData' is a content defined by this national standardization body, identified as 'addon' by this body.
  • "_" + [4-digit RICS] + [addon, chosen by this company] means that 'extensionData' is a proprietary content of the company identified by the RICS code, identified as 'addon' by this company.
  • "*" + [addon] means that 'extensionData' is a content specific to this barcode, identified as 'addon', with no further information on who defined it.
  • "_3011+0" (3011 being the RICS code of UIC) identifies empty extensionData.

Others values are reserved for future UIC use and shall not be used.

SEQUENCE

This sequence contains the following fields:

extensionId
extensionData
OCTET STRING

IncludedOpenTicketType

included open ticke for a part of the travel (e.g. local city trafic)

  • data identically already included in the covering open ticket do not need to be repeated here
  • main source are the data required for included regional and city traffic tickets
SEQUENCE

This sequence contains the following fields:

productOwnerNum Optional

organization responsible for the product definition. (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
productIdNum Optional

product id to identify the issued product codelist defined by the product owner

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 65535

productIdIA5 Optional
externalIssuerId Optional

issuer code using the default code table of the product owner (today used e.g. by VDV)

INTEGER
issuerAuthorizationId Optional

authorization id provided to the issuer by the poroduct owner (today used e.g. by VDV)

INTEGER
stationCodeTable Default value defined

regional validity data

CodeTableType

This field, when unset, defaults to the following value: stationUIC

validRegion Optional

specification of the ordered sequence of valid regions, ordered in the direction of travel

SEQUENCE OF RegionalValidityType
validFromDay Default value defined

date/time validity in local time of the location where the journey starts. number of days from issuing date.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -367

The value must be less than or equal to: 700

This field, when unset, defaults to the following value: 0

validFromTime Optional

in case the valid from time is not provided the valid from time is 00.00 (local time). in case UTC offset is provided (NOT RECOMMENDED) the local date time in the time zone of validity region. The region where the ticket is valid must not cover more than one time zone. in case no UTC offset is provided (RECOMMENDED) the local date time in the time zone of the current location of the traveler.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validFromUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel. if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory. times to be shown on a ticket should always be the local times.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

validUntilDay Default value defined

date/time validity in local time of the location where the journey ends. number of days from valid-from date, 0 = valid until day is equal to the first day of validity.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

This field, when unset, defaults to the following value: 0

validUntilTime Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

validUntilUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes). the UTC offset can be used to calculate the duration of the travel. if UTC offset is used in control devices the usage of UTC offset has to be agreed bilateral to be mandatory. times to be shown on a ticket should always be the local times. should be omitted in case it is the same as for departure.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

classCode Optional

travel class to be given in case it differs from the class of the main ticket

TravelClassType
serviceLevel Optional

servicelevel code according to leaflet 918.1 to encode other products (e.g. PREMIUM, ...) to be provided in case it differs from the main ticket

This type is constrained in the following way:

Size

The length of the value must be greater than or equal to: 1

The length of the value must be less than or equal to: 2

carrierNum Optional

valid carriers (RICS codes)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
includedServiceBrands Optional

service brands where the ticket is valid. in case this list is provided the ticket is invalid on all other service brands. service brand: code list uic.org/service-brand-code-list.

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedServiceBrands Optional

service brands where the ticket is not valid. in case this list is provided the ticket is valid on all other service brands.

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

tariffs Optional
SEQUENCE OF TariffType
infoText Optional
UTF8String
includedTransportType Optional

included or excluded transport modes code list: EN 1545-1 (transport type code)

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 31

excludedTransportType Optional
SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 31

extension Optional
ExtensionData

TariffType

tariff data for open tickets information included are:

  • number of passengers
  • optionally a link to the traveler data
SEQUENCE

This sequence contains the following fields:

numberOfPassengers Default value defined

number of passengers using the tariff

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 200

This field, when unset, defaults to the following value: 1

passengerType Optional

type indication youth, adult, senior,..

PassengerType
ageBelow Optional

age restrictions of the tariff

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 64

ageAbove Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 128

travelerid Optional

named traveler list. link to the traveler in case the travelers have to be named (e.g. Eurail passes) the number indicates the position in the traveler list starting from 1

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 254

restrictedToCountryOfResidence

restriction on country of residence. this tariff is restricted by the country of residence given in the traveler data (e.g. Eurail tickets are not valid in the contry of residence).

BOOLEAN
restrictedToRouteSection Optional

section in case the tariff applies to a part of the route only

RouteSectionType
seriesDataDetails Optional

details on series according to leaflet 108.1

SeriesDetailType
tariffIdNum Optional

tariff code

INTEGER
tariffIdIA5 Optional
tariffDesc Optional

tariff description

UTF8String
reductionCard Optional

reduction cards applied (incl. discount cards, loyalty cards relevant for the tariff)

SEQUENCE OF CardReferenceType

SeriesDetailType

SEQUENCE

This sequence contains the following fields:

supplyingCarrier Optional

data related to tariffs based on series according UIC leaflet 108.1. supplying carrier according to UIC leaflet 108.1 (RICS code).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

offerIdentification Optional

offer identifier of the carrier according to UIC leaflet 108.1

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 99

series Optional

series of the carrier according to UIC leaflet 108.1

INTEGER

RouteSectionType

SEQUENCE

This sequence contains the following fields:

stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUIC

fromStationNum Optional

IA5 or Num not both.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional

IA5 or Num not both.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional
UTF8String
toStationNameUTF8 Optional
UTF8String

CardReferenceType

customer card reference

SEQUENCE

This sequence contains the following fields:

cardIssuerNum Optional

issuer of the card. (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

cardIssuerIA5 Optional
cardIdNum Optional
INTEGER
cardIdIA5 Optional
cardName Optional

Name of the card e.g. "VISA-CARD"

UTF8String
cardType Optional

type of the card, code list defined by the issuer

INTEGER
leadingCardIdNum Optional

in case only the leading part of the card number is provided

INTEGER
leadingCardIdIA5 Optional
trailingCardIdNum Optional

in case only the trailing part of the card number is provided

INTEGER
trailingCardIdIA5 Optional

TravelerType

SEQUENCE

This sequence contains the following fields:

firstName Optional
UTF8String
secondName Optional
UTF8String
lastName Optional
UTF8String
idCard Optional
passportId Optional
title Optional

This type is constrained in the following way:

Size

The length of the value must be greater than or equal to: 1

The length of the value must be less than or equal to: 3

gender Optional
GenderType
customerIdIA5 Optional

customer id might be numerical or alphanumerical

customerIdNum Optional
INTEGER
yearOfBirth Optional

date of birth

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1901

The value must be less than or equal to: 2155

monthOfBirth Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 12

dayOfBirthInMonth Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 31

ticketHolder

indicates the ticket holder/group leader in case of groups

BOOLEAN
passengerType Optional
PassengerType
passengerWithReducedMobility Optional
BOOLEAN
countryOfResidence Optional

country of residence (numeric ISO country code). to be used in case there product restrictions on the country of residence (e.g. Eurail passes)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 999

countryOfPassport Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 999

countryOfIdCard Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 999

status Optional
SEQUENCE OF CustomerStatusType

CustomerStatusType

SEQUENCE

This sequence contains the following fields:

statusProviderNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

statusProviderIA5 Optional
customerStatus Optional
INTEGER
customerStatusDescr Optional

customer status "gold"

ReturnRouteDescriptionType

SEQUENCE

This sequence contains the following fields:

fromStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional
UTF8String
toStationNameUTF8 Optional
UTF8String
validReturnRegionDesc Optional

description for manual evaluation in case structured data are not available

UTF8String
validReturnRegion Optional

specification of the ordered sequence of valid regions for the return trip

SEQUENCE OF RegionalValidityType

TrainLinkType

train link data includes a restriction of an open ticket valid only on a specific train and date on a part of the route

SEQUENCE

This sequence contains the following fields:

trainNum Optional
INTEGER
trainIA5 Optional
travelDate

local date at the station where the train link starts (fromStation). days from the issuing date onwards.

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -1

The value must be less than or equal to: 500

departureTime

time in minutes, local time at the station where the train link starts

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 1439

departureUTCOffset Optional

offset in units of 15 minutes from local time to UTC (UTC = local + offset * 15 Minutes).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: -60

The value must be less than or equal to: 60

fromStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

fromStationIA5 Optional
toStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

toStationIA5 Optional
fromStationNameUTF8 Optional
UTF8String
toStationNameUTF8 Optional
UTF8String

LineType

regional validity using a set of lines

  • based on data used in regional city trafic enviromnemnts
SEQUENCE

This sequence contains the following fields:

carrierNum Optional

local service provider / carrier within the zone (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
lineId Optional

ids of the valid lines known by the local carriers on that line

SEQUENCE OF INTEGER
stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUIC

entryStationNum Optional

in case the line must be entered via a specific station (e.g. local city traffic at the end of a journey starting from the main train station)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

entryStationIA5 Optional
terminatingStationNum Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

terminatingStationIA5 Optional
city Optional

code of the local city in case the line is part of regional city transport. code list of the local carrier.

INTEGER

ZoneType

regional validity in a zone

  • based on data used in regional city trafic enviromnemnts
SEQUENCE

This sequence contains the following fields:

carrierNum Optional

local service provider / carrier within the zone (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUIC

entryStationNum Optional

in case the zone must be entered via a specific station (e.g. local city traffic at the end of a journey starting from the main train station).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

entryStationIA5 Optional
terminatingStationNum Optional

in case the zone must be left via a specific station (e.g. local city traffic at the beginning of a journey terminating at the main train station).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

terminatingStationIA5 Optional
city Optional

code of the local city in case the zone is part of regional city transport code list of the local carrier.

INTEGER
zoneId Optional

ids of the valid zones known by the local carriers in that zone

SEQUENCE OF INTEGER
binaryZoneId Optional

binary encoding of zones, encoding specification provided by the local service provider.

OCTET STRING
nutsCode Optional

EU NUTS code for a region.

ViaStationType

via station includes a description of of the route by via stations. Via stations follow the description in leaflet 108.1: via stations can e mandatory to pass (but there does not need to be a train stop at this stations): visible route description: "station" there can be a list of alternative routes: visible route description: "(station1/station2)" there can also be alternative routes: "(station1station2/station3station4)" although the definition in 108.2 is not very precise on this option

SEQUENCE

This sequence contains the following fields:

stationCodeTable Default value defined
CodeTableType

This field, when unset, defaults to the following value: stationUIC

stationNum Optional

mandatory via station

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9999999

stationIA5 Optional
alternativeRoutes Optional

list of alternative routes, one of these has to be taken

SEQUENCE OF ViaStationType
route Optional

list of stations along the route

SEQUENCE OF ViaStationType
border
BOOLEAN
carrierNum Optional

carrier responsible for the transport starting at this station (RICS-Code). in case the carrier is included here it might be omitted in the carrier list of the region data.

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

carrierIA5 Optional
SEQUENCE OF
seriesId Optional

the route id as series number as defined in 108.1 data

INTEGER
routeId Optional

route id of the route code list defined by the carrier on that route

INTEGER
includedServiceBrands Optional

service brands valid for the route in case this list is provided the ticket is invalid on all other service brands service brand: code list uic.org/service-brand-code-list

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

excludedServiceBrands Optional

service brands valid for the route in case this list is provided the ticket is valid on all other service brands

SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

TokenType

TokenType provides an additional identifier known use cases

  • identified of the mobile phone for tickets linked with a specific phone (e.g. VDV standard)
SEQUENCE

This sequence contains the following fields:

tokenProviderNum Optional

provider of the token

INTEGER
tokenProviderIA5 Optional
tokenSpecification Optional

in case the provider has multiple tokens

token
OCTET STRING

TicketLinkType

TicketLinkType is used to define a link from the ticket in the bar code to another ticket (requirement from Eurail) use cases

  • DB Alleo (open ticket + reservation)
  • reservation of trailer and car carriage and traveller reservation
  • link between open ticket and bicycle reservations or pass
  • open ticket and vouchers for meals
SEQUENCE

This sequence contains the following fields:

referenceIA5 Optional

data to reference the external ticket. reference must be given in numeric or alphanumeric format.

referenceNum Optional
INTEGER
issuerName Optional
UTF8String
issuerPNR Optional

in case the ticket can also be identified via the issuer PNR (= Ticket Reference Number).

productOwnerNum Optional

organization responsible for the product definition (RICS Code / proprietary code in case no RICS code is defined, proprietary codes must ensure to be unique).

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 32000

productOwnerIA5 Optional
ticketType Default value defined

type of linked ticket

TicketType

This field, when unset, defaults to the following value: openTicket

linkMode Default value defined

type of link

LinkMode

This field, when unset, defaults to the following value: issuedTogether

CodeTableType

code table used fort station codes defines the code table used e.g. to define station code

  • stationUIC = station codes as used in UIC leaflet 108.1 for open tickets
  • stationUICReservation = station codes as used in Reservation leaflets 918.1 and 108.2
ENUMERATED

The value of this enumeration may have one of the following values:

stationUIC

Value: 0

standard UIC station code from MERITS (UIC country code + 5 digit local code)

stationUICReservation

Value: 1

standard UIC station code for reservation

stationERA

Value: 2

future standard ERA station code

localCarrierStationCodeTable

Value: 3

local carrier code list. e.g. in case of stations / stops of non-railways stops (city traffic)

proprietaryIssuerStationCodeTable

Value: 4

non standard code to be used within the issuer eco system only not applicable for multi carrier travel documents or in case issuer and carrier are different

ServiceType

ENUMERATED

The value of this enumeration may have one of the following values:

seat

Value: 0

couchette

Value: 1

berth

Value: 2

carcarriage

Value: 3

PassengerType

ENUMERATED

The value of this enumeration may have one of the following values:

adult

Value: 0

senior

Value: 1

child

Value: 2

youth

Value: 3

dog

Value: 4

bicycle

Value: 5

freeAddonPassenger

Value: 6

freeAddonChild

Value: 7

TicketType

ENUMERATED

The value of this enumeration may have one of the following values:

openTicket

Value: 0

pass

Value: 1

reservation

Value: 2

carCarriageReservation

Value: 3

LinkMode

ENUMERATED

The value of this enumeration may have one of the following values:

issuedTogether

Value: 0

onlyValidInCombination

Value: 1

PlacesType

place data corresponding to leaflet 918.1 placeString = place number ranges in case of groups

SEQUENCE

This sequence contains the following fields:

coach Optional
placeString Optional

printable place string ("15-18, 21, 22" )

placeDescription Optional

printable place description

UTF8String
placeIA5 Optional

individual places

SEQUENCE OF
placeNum Optional
SEQUENCE OF INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 254

PriceTypeType

ENUMERATED

The value of this enumeration may have one of the following values:

noPrice

Value: 0

reservationFee

Value: 1

supplement

Value: 2

travelPrice

Value: 3

BerthTypeType

ENUMERATED

The value of this enumeration may have one of the following values:

single

Value: 0

special

Value: 1

double

Value: 2

t2

Value: 3

t3

Value: 4

t4

Value: 5

CompartmentGenderType

ENUMERATED

The value of this enumeration may have one of the following values:

unspecified

Value: 0

family

Value: 1

female

Value: 2

male

Value: 3

mixed

Value: 4

GenderType

ENUMERATED

The value of this enumeration may have one of the following values:

unspecified

Value: 0

female

Value: 1

male

Value: 2

other

Value: 3

TravelClassType

ENUMERATED

The value of this enumeration may have one of the following values:

notApplicable

Value: 0

first

Value: 1

second

Value: 2

tourist

Value: 3

comfort

Value: 4

premium

Value: 5

business

Value: 6

all

Value: 7

premiumFirst

Value: 8

standardFirst

Value: 9

premiumSecond

Value: 10

standardSecond

Value: 11

BerthDetailData

sleeper compartment types corresponding to leaflet 918.1

SEQUENCE

This sequence contains the following fields:

berthType
BerthTypeType
numberOfBerths
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 999

gender Default value defined
CompartmentGenderType

This field, when unset, defaults to the following value: family

CompartmentDetailsType

compartment details corresponding to leaflet 918.1

SEQUENCE

This sequence contains the following fields:

coachType Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 99

compartmentType Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 99

specialAllocation Optional
INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 99

coachTypeDescr Optional
UTF8String
compartmentTypeDescr Optional
UTF8String
specialAllocationDescr Optional
UTF8String
position Default value defined
CompartmentPositionType

This field, when unset, defaults to the following value: unspecified

LuggageRestrictionType

luggage restrictions the basis for these data is week: SCIC mentions a maximum of three pieces of hand luggage but does not includes a definition of hand luggage SCIC refers to special conditions on registered luggage, but SCIC NRT does not contain definitions on that and UIC 108.1 does not contain data structures for luggage

  • current THALYS luggage restrictions
SEQUENCE

This sequence contains the following fields:

maxHandLuggagePieces Default value defined

allowed hand luggage pieces on this ticket (3 = default in current NRT tariff)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 99

This field, when unset, defaults to the following value: 3

maxNonHandLuggagePieces Default value defined

allowed hand luggage pieces on this ticket (3 = default in current NRT tariff)

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 99

This field, when unset, defaults to the following value: 1

registeredLuggage Optional
SEQUENCE OF RegisteredLuggageType

RegisteredLuggageType

SEQUENCE

This sequence contains the following fields:

registrationId Optional

id of the additional registered luggage

maxWeight Optional

maximum weight in kg

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 99

maxSize Optional

sum of length with and height in cm

INTEGER

This type is constrained in the following way:

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 300

GeoCoordinateType

generic type for geo coordinates

SEQUENCE

This sequence contains the following fields:

geoUnit Default value defined
GeoUnitType

This field, when unset, defaults to the following value: milliDegree

coordinateSystem Default value defined
GeoCoordinateSystemType

This field, when unset, defaults to the following value: wgs84

hemisphereLongitude Default value defined

separate hemishpere flag reduces the data size

HemisphereLongitudeType

This field, when unset, defaults to the following value: east

hemisphereLatitude Default value defined

separate hemishpere flag reduces the data size

HemisphereLatitudeType

This field, when unset, defaults to the following value: north

longitude
INTEGER
latitude
INTEGER
accuracy Optional
GeoUnitType

DeltaCoordinates

SEQUENCE

This sequence contains the following fields:

longitude

logitude difference to a reference point

INTEGER
latitude

latitude difference to a reference point

INTEGER

GeoCoordinateSystemType

ENUMERATED

The value of this enumeration may have one of the following values:

wgs84

Value: 0

WGS 84 standard system.

grs80

Value: 1

(outdated) GRS 80 coordinate system

GeoUnitType

ENUMERATED

The value of this enumeration may have one of the following values:

microDegree

Value: 0

approx. 11 cm on earth surface

tenthmilliDegree

Value: 1

1 / 10000 degree is approx. 11 meter on earth surface

milliDegree

Value: 2

approx 110 meter on earth surface

centiDegree

Value: 3

deciDegree

Value: 4

HemisphereLongitudeType

ENUMERATED

The value of this enumeration may have one of the following values:

east

Value: 0

west

Value: 1

HemisphereLatitudeType

ENUMERATED

The value of this enumeration may have one of the following values:

north

Value: 0

south

Value: 1

LoadingDeckType

ENUMERATED

The value of this enumeration may have one of the following values:

unspecified

Value: 0

upper

Value: 1

lower

Value: 2

CompartmentPositionType

ENUMERATED

The value of this enumeration may have one of the following values:

unspecified

Value: 0

upperLevel

Value: 1

lowerLevel

Value: 2

RoofRackType

ENUMERATED

The value of this enumeration may have one of the following values:

norack

Value: 0

roofRailing

Value: 1

luggageRack

Value: 2

skiRack

Value: 3

boxRack

Value: 4

rackWithOneBox

Value: 5

rackWithTwoBoxes

Value: 6

bicycleRack

Value: 7

otherRack

Value: 8

BoardingOrArrivalRestrictionType

ENUMERATED

The value of this enumeration may have one of the following values:

boarding

Value: 0

arrival

Value: 1