Module Info
- Reference
BT4PT-MultiModalTicketDataV1-0- Numeric OID
1.3.6.1.4.1.17218.1.2.3.1.0
The specification makes use of the ASN.1 extension marker (...).
Extensions might be defined in future versions of this specification.
Implementations MUST support this 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 standards action. Bilateral ASN.1 extensions MUST not be defined.
Bilateral extensions can be included in the data element Data.
They MUST only be used:
It is also recommended to manage these extensions as with the rest of the standard, i.e. by defining them in ASN.1
and storing in extensionData their encoding using the ASN.1 Canonical Unaligned Packed Encoding Rules.
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.:
validFrom date: location where the journey startsvalidUntil date: location where the journey covered by the ticket endsThere 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 areas/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.
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)
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 only become -1 with a departure west of UTC.
Tickets might cover multiple time zones where validFrom and validUntil 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.
It is RECOMMENDED not to use the utcOffset until there is a need to do so.
BT4PT-MultiModalTicketDataV1-01.3.6.1.4.1.17218.1.2.3.1.0This module explicitly exports the following symbols:
MultiModalTicket multiModalTicketDataGenericId GenericCode CODE-TABLE-IDENTIFIER CompanyCode Name Station StationSet AreaSet NUTSArea LineId TransportId GeoPosition CoachPlaces Data DATA-ELEMENT cuperEncoding rawEncoding UnicodeText Timestamp SharedVehicleVariety SharedVehiclePropulsionType SharedVehicleReturnConstraint CompanyConstraint DataAuthorization
MultiModalTicket is the basic entry point of the data structure. Its data include:
This sequence contains the following fields:
Details about how this ticket was issued, and by whom.
Traveler data. MUST NOT be present unless personal data about the travelers is needed and legally permitted. The index of the sequence elements can be used to identify the traveler within other contexts (e.g. in assigned tariffs).
Group details. Present if the traveler is a member of a group, otherwise omitted. If this field is set, all group members MUST be travelling together.
Data of the transport documents. Only one element SHOULD be a transportProduct, the others being associated documents. (e.g. associated commercial card, associated tokens, associated carCarriage, vouchers...)
This type is constrained in the following way:
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:
16
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: UnionAny of the following can be true: Single value
The value must be exactly:
OR Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
If a member is not present, then there are no constraints on that value.
This sequence contains the following fields:
This type is concretely parameterised with the following:
This field, when unset, defaults to the following value:
FALSE
This type is concretely parameterised with the following:
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32000
This type is constrained in the following way:
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:
31
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
31
This type is constrained in the following way:
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:
32
This sequence contains the following fields:
Restriction on the product owner.
Restriction on the exact product ID. If unset, any product of the owner is permitted.
This sequence contains the following fields:
This is an object of the class: DATA-ELEMENT
This object has the following field values:
MMT1
Details of the issuer and the issue of the ticket.
This sequence contains the following fields:
Issuer of the binary content of the transport document, if different from the security provider as encoded in the barcode header.
A unique identifier for the sale transaction that caused this ticket to be issued.
Specimen indicates a test specimen not valid for traveling.
Currency of the price - ISO 4217 numeric currency code. Default 978 = Euro.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
999
This field, when unset, defaults to the following value:
978
Fraction of the prices included.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
3
This field, when unset, defaults to the following value:
2
Location of sale (transport number and/or line number) in case of a sale on board of a transport.
This sequence contains the following fields:
Identifier of a specific journey, e.g. the running number of an individual train service.
Identifier of the general route, e.g. a train running as an RE1 service.
Information about how the document was sold.
Language that the traveler / group of travelers prefer to be spoken to in. IANA language subtag of the language (see: https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry).
This type is constrained in the following way:
All the following must be true:
The length of the value must exactly:
2
AND
The characters in the string value must satisfy the following constraint:
The value must be greater than or equal to:
a
The value must be less than or equal to:
z
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: UnionAny of the following can be true: Single value
The value must be exactly:
OR Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
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.
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
The ticket is only valid if additionally physically stamped (DE: Entwerten)
Data allowing to describe possible information about product retail, i.e. how it was sold.
This sequence contains the following fields:
Identifier of the company that is the retailer for this contract of carriage, as per the definition of a retailer in ISO 24014-1.
Retailer specific identifier of the server that sold the contract of carriage.
Retailer specific identifier of the ticket generation platform. If omitted, identical to retailServerId.
Channel through which the traveler requested the contract / the barcode.
Type of equipment that distributed the contract / the barcode (code table of the product retailer).
Identifier of the final distribution point of the barcode (code table of the product retailer).
Traceability information linked to the barcode or contract generation (e.g. name and version of the generation software) (code table of the product retailer).
The choice on the different transport documents that can be included in the bar code data:
The value of this choice may be one of the following:
Universal transport product. Can be used for tickets (incl. FIP), passes, reservations, countermarks.
Voucher of monetary value.
Simple customer card either to identify a customer and / or to provide reductions or loyalty. For detailed or complex commercial cards (e.g. valid only on a specific OD), use transportProduct instead.
Standalone car parking slot. For parking as a part of a more global journey, use transportProduct instead.
Ticket to pass the gates at a station.
Delay confirmation.
Token (e.g. for ABT).
Proprietary data defined bilaterally.
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: UnionAny of the following can be true: Single value
The value must be exactly:
OR Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
If the relevant document type constraint is not present, the certificate is not permitted to issue such a document.
This sequence contains the following fields:
This type is concretely parameterised with the following:
Description of a transport product, which may be:
The type of the product is indicated by generalConditions.product.
This sequence contains the following fields:
Geographical validity of the transport product.
This validity is described through successive segments that make up the route.
Omitted if the transport product is a 'reservation' (the concerned segment or transport being described by generalConditions.transportService.reservation)
This type is constrained in the following way:
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:
16
To be provided in case the return route differs. Omitted if the transport product is a 'reservation'.
This type is constrained in the following way:
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:
16
General data that applies to all segments of this transport product. Mandatory if the transport product is a 'reservation' (this product being a reservation being described through this element).
Data that applies to only certain segments of this transport product. If a particular condition is defined in both the general and the general data, the one in specific data overrules the one in the general data.
This type is constrained in the following way:
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:
32
Where multiple applicable elements reference conditions, all referenced conditions are cumulative and SHALL all be satisfied unless explicitly specified otherwise.
This type is constrained in the following way:
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:
32
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
All the following must be true:
Any of the following can be true:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| generalData | Must be present |
FieldsThe type must satisfy the following field constraints, other fields are unconstrained:
|
OR
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| segmentData | Must be present | No stipulation |
AND
Any of the following can be true:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| geoValidity | Must be present | No stipulation |
OR
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| geoValidity | Must be absent | No stipulation | ||||||||||||
| generalData | Must be present |
FieldsThe type must satisfy the following field constraints, other fields are unconstrained:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
This field, when unset, defaults to the following value:
FALSE
This field, when unset, defaults to the following value:
FALSE
This field, when unset, defaults to the following value:
FALSE
This field, when unset, defaults to the following value:
FALSE
Every coveringArea asserted by the transport product MUST be wholly contained within at least one area in permittedArea.
Every coveringNetwork asserted by the transport product MUST be in the permittedNetwork list.
This type is concretely parameterised with the following:
This type is concretely parameterised with the following:
This type is concretely parameterised with the following:
Specification of the geographical validity of one segment of the whole journey.
This sequence contains the following fields:
Human readable description of the segment.
Geographical description of the segment.
The specific data are in TransportProduct.segmentData. This list is 1 indexed.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32
Specification of the geographical validity for a segment.
The value of this choice may be one of the following:
A journey described by a series of routing points. Can be as simple as origin/destination, or as complex as allowing multiple origins, multiple destinations, alternative routes, etc.
Validity defined with areas/zones.
Set of authorized transport lines.
Area defined using geocoordinates.
Parking right (for a car, a bike...).
Access to a shared vehicle service.
No specific geographic validity beyond the coveringArea, included carriers, and other conditions.
Specific proprietary geographical validity in case the above predefined types do not allow it to be described.
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
Includes a description of the route by via stations. Via stations follow the description in leaflet 108.1:
This sequence contains the following fields:
In case different break of service allowances, different carriers, different service brands, etc.
need to be indicated on the routes or alternative routes.
Index into TransportProduct.conditions.
The first element has index 1.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32
The value of this choice may be one of the following:
The route item is the destination station from the previous GeoValiditySegment (not the previous PointBasedRoute).
The route item is a specific station.
The route item is a set of stations that are equivalent (OSDM: FareStationSet).
The route item is any point that is within at least one of the specified areas.
In case conditions/break of journey restrictions need to be applied only to part of a route.
A list of alternative routes - one, and only one, of these has to be taken.
Geographical validity defined with areas/zones.
This sequence contains the following fields:
Description of the allowed areas/zones.
The areas described in restrictedEntry:area and/or restrictedExit:area (if any) must not be repeated in the included or excluded areas.
If restrictedEntry is absent, the journey can begin anywhere in the allowed areas/zones.
If restrictedExit is absent, the journey can end anywhere in the allowed areas/zones.
If restrictedEntry and restrictedExit and area are present, the allowed areas/zones are only transit areas/zones:
the traveler is allowed to cross them, but may neither begin nor end their journey in them.
If restrictedEntry and restrictedExit are present, and area is absent, there are no specific restrictions on how to travel
from restrictedEntry to restrictedExit (the only restrictions that apply are those described by the applicable Conditions).
The value of this choice may be one of the following:
Readable name of the area of validity.
Geographical validity using a set of lines
This sequence contains the following fields:
The value of this choice may be one of the following:
In case the line must be entered via a specific station.
In case the line must be left via a specific station.
Geographical validity defined as a polygon.
This sequence contains the following fields:
Access to a shared vehicle service, e.g. car sharing or bike/e-scooter rental
This sequence contains the following fields:
Shared vehicle providers that this entitlement covers
The number of individual vehicles included in this entitlement
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
16
This field, when unset, defaults to the following value:
1
Which kinds of shared vehicles are included in this entitlement An empty list means no constraint.
The vehicle must be collected from this station.
The vehicle must be returned to this station.
Included amount of time allowed to access a shared vehicle, if more restrictive than the validity period. If present, indicates that the entitlement is valid for a given amount of time within the validity period. If present, the count of the remaining number of allowed days or minutes is centrally held in a back office, that MUST be queried to verify whether the traveler still has any remaining time. Whether an operator allows the traveler to pay additionally for more time once the allotted time is up is per local operator policy.
The value of this choice may be one of the following:
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
1439
Additional readable information that cannot be described using the other elements.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
An empty list means any value.
This type is constrained in the following way:
The length of the value must be greater than or equal to:
0
The length of the value must be less than or equal to:
15
An empty list means any value.
This type is constrained in the following way:
The length of the value must be greater than or equal to:
0
The length of the value must be less than or equal to:
15
An empty list means any value.
This type is constrained in the following way:
The length of the value must be greater than or equal to:
0
The length of the value must be less than or equal to:
15
Information about each segment of the transport product.
generalData: applies to the entire transport product.segmentData: applies to the associated segment.This sequence contains the following fields:
Detailed type of the transport product (ticket, reservation, commercial card...).
Each GeoValiditySegment MUST have a set productVariety, either through the generalData or a referenced
segmentData.
NUTS codes covering the whole area of validity of the ticket.
This does not mean that the ticket is valid everywhere inside such areas, but that it definitely
is NOT valid outside the covering area.
Each GeoValiditySegment MUST have a set coveringArea, either through the generalData or a referenced
segmentData. Tickets without a coveringArea on every segment MUST be rejected as malformed tickets.
Validity to specific services, transport modes, etc., may be further constrained by other conditions.
Examples:
DE and ATDECDE134 (Ortenaukreis) and FRF11 (Bas-Rhin)
n.b. a NUTS Local Administrative Units (LAU) could be further appended, e.g. DE13408317057 for Kehl, Stadt.When comparing, the ticket validator compares the covering area of the service the ticket is being validated on
(service area) with each covering area element in the ticket, truncating both to the shortest of either.
For example, with a service area DE2 (a service running in Bavaria), DE (all of Germany) and DE212 (Munich)
match, but DE3 (Berlin) does not.
Once a validator narrowed down the possibly valid geographic segments it MAY further narrow down segments by using the coveringNetwork field. This encodes the IDs of transport networks that COULD be involved in the fulfillment of transport contract. There is no requirement to use this field if the coveringArea adequately narrows down the possibly valid segments. Examples:
{ codeTable national : 250, id idNum : 145 }This type is concretely parameterised with the following:
Identification of the product (owner, id, textual description).
Family of the product, allowing to process the product according to its family. Value according to the product owner.
TRUE if the direction of travel must be followed as described:
generalData: the traveler must pass the sequence of segments in the provided order
(but some segments may be skipped, e.g. if 2 segments are 2 allowed alternatives for the same journey).segmentData: the traveler must take the transport in the direction indicated by the segment (e.g. from O to D).FALSE if the direction of travel is not mandatory:
generalData: the traveler can travel through the described segments in any order.segmentData: the traveler can take the transport indicated by the segment in any direction (e.g. from O to D or from D to O).Omitted if the concept of direction is not relevant (e.g. for geographical validity as unordered areas).
Link to a specific transport services. Note that for a return ticket where the outbound and inbound geographic validates are the same, and thus the returnGeoValidity is not encoded, this field encodes linked transport services for both the outbound and inbound directions.
The value of this choice may be one of the following:
Link to a specific transport service without reservation. If present, using this transport service is mandatory.
Link to a specific transport service with reservation. A reservation does not mandate taking the reserved service.
Tariff data (allowed passengers characteristics, discount cards used...) If omitted, the ticket is valid:
traveler section if this section is present,traveler section is absent.Specific data to support the ticket inspection process.
Associated online identifier (e.g. Account Based Ticketing identifier).
Index into TransportProduct.conditions.
The first element has index 1.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32
This object set has the following members:
| &table |
|---|
SEQUENCE
|
| Other members may be added at runtime. |
Data supporting the control process, whether it is an automatic check carried out by a gate, or a manual check carried out by an inspector.
This sequence contains the following fields:
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.
Indicator of whether online validation of the ticket is required.
This field, when unset, defaults to the following value: notPossible
Indicator of how online validation may be performed.
Indicator of whether ID must be checked to identify the traveler. Field meaning:
FALSE: don’t check ID documents at all, regardless of contents of the traveler's identificationDocument field.TRUE, but with an empty identificationDocument field: check the traveler's identity, using whatever document is acceptable to the carrier.TRUE, with an identificationDocument field: check the traveler's identity, using the identification document specified.
This field, when unset, defaults to the following value:
FALSE
Indicator of whether validation of the traveler age is required (e.g. in case of reductions).
This field, when unset, defaults to the following value:
FALSE
Indicator of whether validation of the travelers reduction card is required (e.g. in case of reductions).
This field, when unset, defaults to the following value:
FALSE
Tickets, that are not encoded in this ticket, which need to be controlled together with this ticket to form a valid ticket.
Free text instructions for specific control instructions to be presented to the ticket controller where these instructions can't be expressed in structured data, e.g. "Verify no more than two people over 18" on a family group ticket.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: UnionAny of the following can be true: Single value
The value must be exactly:
OR Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
The value of this enumeration may have one of the following values:
Value:
1
No information is available online so it is useless to check.
Value:
2
The ticket can be fully validated and checked offline, i.e. the ticket contains all the information necessary for validation and inspection and is therefore self-sufficient, but some operators, in an interoperability scenario, nevertheless choose to operate this ticket in ABT mode and validate it online.
Value:
3
Online operations MUST be performed to validate or check this ticket, e.g.:
The value of this choice may be one of the following:
The ticket may be checked against the UIC's eTCD.
The ticket may be checked against a proprietary platform of the security provider; e.g. the Deutschlandtarifverbund's security portal.
The ticket may be checked against a proprietary platform of the issuer; e.g. bwegt check-in check-out (Baden-Württemberg).
The ticket may be checked against the platform operated by the specified company; e.g. Entur.
The ticket may be checked against some other external platform, as identified by the string. It can be of the following forms:
+ + [2-letters uppercase ISO 3166 country code] + [addon, chosen by the national standards body of that country]_ + [RICS or ERA Organisation Code] + [addon, chosen by this company]!I + [addon, chosen by the issuer] - equivalent to the _RICS format, without repetition of the issuer's code.!C + [addon, chosen by the carrier] - equivalent to the _RICS format, without repetition of the carriers' code.!P + [addon, chosen by the product owner] - equivalent to the _RICS format, without repetition of the product owner's code.* + [addon] - private use, not guaranteed to avoid clashes.Any other value only after registration in the appropriate registry. Unregistered values (outside of the national, company, and private use ranges) MUST NOT be used. If an organisation has a RICS or an ERA Organisation Code the private use format MUST NOT be used. All values SHOULD be registered via the UIC Github repository.
This type is constrained in the following way:
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:
8
This type is constrained in the following way:
The value must come from the &id column of the object set: OnlineValidationMethods
This object class has the following fields:
This field accepts any value of the following type:
VisibleStringThis type is constrained in the following way:
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:
8
This field must be unique within an object set.
This field accepts any value of the following type:
UTF8StringThis object set has the following members:
| &id | &name |
|---|---|
| Other members may be added at runtime. | |
This sequence contains the following fields:
List of activated days in case the entire ticket is not activated.
The ticket can only be used on the days it is activated.
If the ticket is a return ticket, activatedDay only applies to the outward journey (use activatedReturnDay for the return journey).
Each day is given by the number of days from the first day of validity (validFrom) (0 = first day of validity).
For each day that the ticket is activated, the activation is valid from 00:00 to 23:59 in the time zone of the traveler's current location,
thereby the activation might include more or less than 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.
Omitted if there are no restrictions on days of use between validFrom and validUntil.
This type is constrained in the following way:
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:
501
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
500
In case of a return ticket only: list of activated days for the return journey.
Same use as activatedDay but for the return journey
Omitted if there are no restrictions on days of use between validFrom and validUntil for the return journey.
This type is constrained in the following way:
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:
501
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
500
Information about the validity conditions of a whole transport product, a segment thereof, or a specific tariff.
This sequence contains the following fields:
Having no validFrom is allowed (e.g. ticket not yet activated, which will be reissued with an explicit validFrom upon activation).
Having no validUntil is allowed (e.g. ticket with unlimited validity - which should nevertheless have a security expiry date in the header requiring regular reissue).
Whether the traveler may voluntarily interrupt the journey and continue it later.
This does not restrict changes between transport services that are necessary to continue the journey.
This field, when unset, defaults to the following value:
TRUE
Carriers/modes of transport included in this ticket.
Carriers/modes of transport excluded from this ticket.
In case includedServiceVarieties is not provided, the ticket is valid on all services in its
coveringArea and coveringNetwork, except those in this field.
If includedServiceVarieties is specified, then the exclusions are processed logically after any inclusions.
That is, even if the ticket conditions include a service, an exclusion overrides that.
Travel class.
For transport modes where the concept of class does not exist, this field MUST be set to notApplicable.
This field, when unset, defaults to the following value: second
Per TEL TSI Code List B.5.308.
This type is constrained in the following way:
All the following must be true:
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
AND
The characters in the string value must satisfy the following constraint:
Any of the following can be true:
The value must be greater than or equal to:
A
The value must be less than or equal to:
Z
OR
The value must be greater than or equal to:
0
The value must be less than or equal to:
9
Reduction cards applied (incl. discount cards, loyalty cards relevant for the tariff).
To require verification of these cards during an inspection, use ControlData.reductionCardCheckRequired.
Omitted if these cards have already been verified at the time of purchase and their verification is not requested during inspection.
This type is constrained in the following way:
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:
16
An identifier for the variety of transport included in/excluded from ticket conditions.
The fields in this SEQUENCE are to be ANDed together as part of matching.
That is, if ticket includes a transport variety with both carrier eraCode : "1080" and transportType 10 set,
then it is only valid on high-speed trains operated by the Deutsche Bahn.
This sequence contains the following fields:
Per EN 1545-1 (transport type code).
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
31
Per TEL TSI Code List B.4.7009.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32000
Rare temporal details and conditions.
This sequence contains the following fields:
Extended validity for tickets valid up to just over 5 years.
If this element is used, the eponymous element in Conditions MUST NOT be used.
For security reasons, such a long lasting ticket should:
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.
This type is constrained in the following way:
The value must be greater than or equal to:
-60
The value must be less than or equal to:
60
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.
Omitted in case it is the same as validFromUTCOffset.
This type is constrained in the following way:
The value must be greater than or equal to:
-60
The value must be less than or equal to:
60
In case included time ranges are defined, the validity is restricted to these ranges.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
Rare non-temporal details and conditions.
This sequence contains the following fields:
Price of the transport product (if in generalConditions) or of the segment (if in specificConditions),
in the currency and fraction defined in IssuingData.
To be used in case of special conditions that can only be provided as a readable text, e.g. that Interrail
is valid on a night train continuing into the following day.
For specific control instructions that should be brought to the attention of the ticket checker,
use ControlData.infoText.
In case the luggage restrictions are general and do not depend on the ticket type they should not be included.
Validity restriction based on the traveler's country of residence. (e.g. for Eurail tickets that are not valid in the country of residence). This field does not indicate a global geographic validity, but only a possible restriction of this geographic validity related to the country of residence. Omitted if there is no restriction related to the traveler's country of residence.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
Information for linking a car to a reservation
This sequence contains the following fields:
Unless spaces form an integral part of identifying a plate, they MUST NOT be included.
E.g. a German car with the plate SB[TÜV Sticker]A 123 SHALL be encoded as SB-A123.
Dutch duplicate codes MUST NOT be encoded, i.e. the small number above the first dash does not
form part of the plate.
The plate SHOULD be represented in the Latin alphabet and Arabic numerals where possible, but note that this isn't always possible, e.g. the registration district of a Chinese plate.
The country of registration MUST NOT be encoded in the plate.
Per TEL TSI Code List B.5.29.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
8
Per TEL TSI Code List B.5.29.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
8
This field, when unset, defaults to the following value: norack
Height of a roof rack in cm.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
99
Number of boats on a rack.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
2
Number of bicycles on a rack.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
4
Number of surf boards on a rack.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
5
Reference to an entry on the loading list.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
999
Loading of the car in local date and time at the loading station. Number of the days calculated from the issuing date.
Type definitions used in TransportLink and ReservationSegment.
This sequence contains the following fields:
Departure date and time in local time at the departure station. Number of days counted from the issuing date.
This type is constrained in the following way:
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
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
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. Times to be shown on a ticket should always be the local times.
This type is constrained in the following way:
The value must be greater than or equal to:
-60
The value must be less than or equal to:
60
This sequence contains the following fields:
The date and time the departure window begins at.
How many full days onwards from the start of the window does it continue.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
30
This field, when unset, defaults to the following value:
0
How many minutes onwards from the start of the window does it continue.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
This sequence contains the following fields:
Arrival date and time in local time at the arrival station. Number of days counted from the departure date.
This type is constrained in the following way:
The value must be greater than or equal to:
-1
The value must be less than or equal to:
30
This field, when unset, defaults to the following value:
0
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
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.
This type is constrained in the following way:
The value must be greater than or equal to:
-60
The value must be less than or equal to:
60
This sequence contains the following fields:
The date and time the arrival window begins at.
How many full days onwards from the start of the window does it continue.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
30
This field, when unset, defaults to the following value:
0
How many minutes onwards from the start of the window does it continue.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
Describes a transport link associated to a route or to a part of a route. Quite similar to ReservationSegment but without assigned place(s).
This sequence contains the following fields:
Station where the transport link begins. Omitted if it is the same station as the origin station of the associated segment.
Station where the transport link ends. Omitted if it is the same station as the destination station of the associated segment.
Transport numbers (= service number, train number) allowed for the transport link. Multiple numbers are allowed (e.g. two trains coupled together, each of them having its own train number).
This type is constrained in the following way:
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:
8
Departure date and time in local time at the departure station of the transport link. If omitted, it is assumed to be equal to validFrom and validFromUTCOffset of the container object.
The value of this choice may be one of the following:
A transport service departing at exactly a date and time, i.e. a link to one service.
A window of time in which the transport must depart the origin, e.g. the traveler must take a service departing within 60-minute time window.
Arrival date time in local time at the arrival station of the transport link. If omitted, arrivalDateTime is assumed to be equal to validUntil and validUntilUTCOffset of the container object.
The value of this choice may be one of the following:
A transport service arriving at exactly a date and time, i.e. a link to one service.
A window of time in which the transport must arrive at the destination, e.g. the traveler must take a service arriving within 60-minute time window.
Travel class. For transport modes where the concept of class does not exist, this field MUST be set to notApplicable. Omitted if the class is the same as the class of the associated leg.
This field, when unset, defaults to the following value: second
Service brand. Omitted if this specific service brand is already specified in the associated leg, and is the only one that is specified for this leg (a leg can allow many service brands, but a transport link only specifies one). Per TEL TSI Code List B.4.7009.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32000
Per TEL TSI Code List B.5.308. Omitted if the same fare code is already specified in the description of the associated leg.
This type is constrained in the following way:
All the following must be true:
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
AND
The characters in the string value must satisfy the following constraint:
Any of the following can be true:
The value must be greater than or equal to:
A
The value must be less than or equal to:
Z
OR
The value must be greater than or equal to:
0
The value must be less than or equal to:
9
Describes a reservation associated to a route, or to a part of a route. Usable for a standalone reservation and for a reservation linked to a leg.
This sequence contains the following fields:
TRUE if using this transport service is mandatory.
FALSE if the traveler can use another transport service.
This field, when unset, defaults to the following value:
TRUE
Station where the reservation begins. Omitted if it is the same station as the origin station of the associated segment.
Station where the reservation ends. Omitted if it is the same station as the destination station of the associated segment.
Transport number (=service number, train number).
Departure date and time in local time at the departure station.
If omitted, departureDateTime is assumed to be equal to validFrom and validFromUTCOffset of the container object.
Arrival date time in local time at the arrival station.
If omitted, arrivalDateTime is assumed to be equal to validUntil and validUntilUTCOffset of the container object.
For transport modes where the concept of class does not exist, this field MUST be set to notApplicable. Omitted if the class is the same as the class of the associated leg.
This field, when unset, defaults to the following value: second
Omitted if this specific service brand is already specified in the associated leg, and is the only one that is specified for this leg (a leg can allow many service brands, but a reservation only specifies one). Per TEL TSI Code List B.4.7009.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32000
Per TEL TSI Code List B.5.308. Omitted if the same fare code is already specified in the description of the associated leg.
This type is constrained in the following way:
All the following must be true:
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
AND
The characters in the string value must satisfy the following constraint:
Any of the following can be true:
The value must be greater than or equal to:
A
The value must be less than or equal to:
Z
OR
The value must be greater than or equal to:
0
The value must be less than or equal to:
9
Per TEL TSI B.5.
This field, when unset, defaults to the following value: seat
Reserved places.
Number of persons on the ticket having a reservation without assigned places.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
200
Description of berths.
When a reservation includes transportation of a car, this field is used to include details of the booked car or cars.
Data for groups of travelers
This sequence contains the following fields:
TRUE if this ticket is the participant card (= countermark) only, not valid without the real ticket of the ticket holder.
In case participant cards are used, all members of the group except the ticket holder (group leader) MUST have this field set to TRUE.
Additionally, linkedTickets SHOULD be set to the ticket of the group leader.
FALSE if this ticket is the real ticket from the group leader.
Readable name of the group in case of a group ticket.
Types describing temporal conditions, used in several other type definitions
This sequence contains the following fields:
Date/time validity in local time of the location where the journey starts. Number of days from issuing date (-398 allows reissuing the ticket up to 13 months after the start of its validity, 800 allows issuing the ticket up to 2 years in advance).
This type is constrained in the following way:
The value must be greater than or equal to:
-398
The value must be less than or equal to:
800
This field, when unset, defaults to the following value:
0
In case UTC offset is provided (NOT RECOMMENDED) the local date time is 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 is the time zone of the current location of the traveler.
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
This field, when unset, defaults to the following value:
0
This sequence contains the following fields:
Date/time validity in local time of the location where the journey ends. Number of days from validFrom date, 0 = validUntilDay is equal to the first day of validity.
This type is constrained in the following way:
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
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
This field, when unset, defaults to the following value:
1439
This sequence contains the following fields:
Extended date/time validity (up to just over 5 years) in local time of the location where the journey ends. Number of days from validFrom date.
This type is constrained in the following way:
The value must be greater than or equal to:
501
The value must be less than or equal to:
2000
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
This field, when unset, defaults to the following value:
1439
Time range when a product can be used. Use case examples:
{ allowedWeekdays { monday TRUE, tuesday TRUE, wednesday TRUE, thursday TRUE, friday TRUE, saturday FALSE, sunday FALSE }, specialDays { nationalHolidays FALSE, stateHolidays FALSE, countyHolidays FALSE, localHolidays FALSE }, includedTimeRange { { fromTime 420, untilTime 1440 } } }{ allowedWeekdays { monday FALSE, tuesday FALSE, wednesday FALSE, thursday FALSE, friday TRUE, saturday TRUE, sunday TRUE } }{ specialDays { pollutionDay TRUE } }This sequence contains the following fields:
Days of the week when the product can be used. For each day of the week:
TRUE means the corresponding day is allowed.FALSE means the corresponding day is forbidden.However, this authorization MUST take specialDays into account, if this element is also present.
If allowedWeekDays is omitted, the product validity does not depend on the day of the week.
Impact of special days on product validity. This impact takes precedence over valid weekdays. For each special day:
TRUE means the product can be used on this special day (even if the weekday is not allowed by allowedWeekdays).FALSE means the product can NOT be used on this special day (even if the weekday is allowed by allowedWeekdays).Time ranges when the product can be used, during the days described above. Omitted if the product validity does not depend on any time (but is defined for the entire days).
This sequence contains the following fields:
The definition of what is a national, state, county, etc. holiday is per the tariff conditions of the product owner.
This sequence contains the following fields:
National holiday (e.g. Christmas in France, as it is a public holiday throughout the whole country)
State holiday (e.g. Buss- und Bettag in the German Bundesland of Sachsen)
County holiday (e.g. Corpus Christi).
Local holiday (e.g. Friedensfest in the German city of Augsburg).
Days when pollution levels exceed the threshold.
Values referenced to local time
This sequence contains the following fields:
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
1439
Product identification
FIP products shall be coded under the product owner of ERA Org Code 3011 and product IDs of the
variant IA5 with said value starting with FIP-. The exact product IDs are left to be
defined by the FIP working group.
This sequence contains the following fields:
Organization responsible for the product definition.
If omitted in specificConditions, productOwner is the one described in generalConditions.
If omitted in generalConditions, productOwner is the issuer element in issuingDetail.
Product id to identify the issued product codelist defined by the product owner.
Short readable description of the product.
Tariff data for transport products. Information included are:
This sequence contains the following fields:
Number of passengers using the tariff.
This type is constrained in the following way:
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
Type indication (youth, adult, senior... but also pet, bicycle). The definition of which passenger is which type in this field is per the product owner. Omitted if the ticket has no restrictions regarding the type of passenger, or if the restriction is based on the product type and not on this element.
Age restrictions of the tariff.
The value of this choice may be one of the following:
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
127
This sequence contains the following fields:
'below' is to be understood as 'strictly less than'
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
128
'above' is to be understood as 'strictly greater than'
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
127
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 sequence starting from 1.
This type is constrained in the following way:
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:
254
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
254
Tariff code.
Readable tariff description.
Additional conditions applying specifically to this tariff entitlement.
These conditions restrict the circumstances in which the passengers
described by this Tariff are included in the transport product.
They do not restrict the validity of the transport product for passengers
described by other Tariff elements.
Index into TransportProduct.conditions.
The first element has index 1.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32
Card reference (for any kind of card: customer card, loyalty card, reduction card...)
This sequence contains the following fields:
Issuer and type of the card.
According to Format, the ID is full, limited to the leading part, or limited to the trailing part.
Indication whether the full or only the leading or trailing part of the ID is provided.
This field, when unset, defaults to the following value: full
Description of an identity document If number is not provided, this sequence merely defines the acceptable type of identification document, but does not specify an exact document; i.e. the traveler may be identified via their passport, but no stipulation is made on which specific passport is presented. If the country field is also blank, then this means any country (or no country at all) is valid.
This sequence contains the following fields:
Numeric ISO 3166 country code of the issuing country of the document.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
999
Category of the document (passport, ID card...).
Number of the document.
Indication whether the full or only the leading or trailing part of the document number is provided.
This field, when unset, defaults to the following value: trailingPart
Traveler data might contain all traveler details which are independent from the type of travel document. E.g. it can include the date of birth as this is part of the traveler, but not the indication "Senior" as this is tariff dependent.
This sequence contains the following fields:
The definition of which passenger is which type in this field is per the issuer,
and may be overridden by product owner for a specific segment using Tariff.passengerType.
The value of this choice may be one of the following:
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
127
Date type, used to indicate the date of birth. All elements are optional to allow indicating only a part of the date (e.g. only the year).
This sequence contains the following fields:
This type is constrained in the following way:
The value must be greater than or equal to:
1901
The value must be less than or equal to:
2155
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
12
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
31
Rare traveler data.
This sequence contains the following fields:
Details of the document (ID card, passport...) identifying the traveler.
This type is constrained in the following way:
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:
16
Cards (reduction, discount, loyalty...) held by the traveler. Only present if they serve a purpose (e.g. access to a lounge in a station).
This type is constrained in the following way:
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:
16
Customer id might be numerical or alphanumerical.
Omitted if no information is available.
Country of residence (numeric ISO 3166 country code).
To be used in case there are product restrictions linked to the country of residence (e.g. Eurail passes),
such restrictions are then indicated with the countryValidity element in Tariff.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
999
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
Customer status
This sequence contains the following fields:
Company providing the status. Omitted if this company is the ticket issuer.
Customer status text description (e.g. "gold").
Data for vouchers. Data included are quite basic, further study is required (e.g. through a meeting with people knowing vouchers).
This sequence contains the following fields:
Identification of the product (owner, id, textual description).
Begin / end of validity in local date wherever the traveler is located. Valid from 00:00 to 23:59. Number of year.
This type is constrained in the following way:
The value must be greater than or equal to:
2016
The value must be less than or equal to:
2269
Number of the day in the year (1.1. = 1).
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
500
Number of year.
This type is constrained in the following way:
The value must be greater than or equal to:
2016
The value must be less than or equal to:
2269
Number of the day in the year (1.1. = 1).
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
500
Value of the voucher, in the currency and fraction defined in IssuingData.
This field, when unset, defaults to the following value:
0
Additional readable information that cannot be described using the other elements.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
Permitted currencies. If absent, any currency is permitted.
This type is constrained in the following way:
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:
16
This sequence contains the following fields:
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
999
This field, when unset, defaults to the following value:
978
This sequence contains the following fields:
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
This type is constrained in the following way:
The value must be greater than or equal to:
0
The value must be less than or equal to:
3
This field, when unset, defaults to the following value:
2
This type is concretely parameterised with the following:
Data for simple customer cards. For detailed or complex cards (e.g. valid only on a specific OD), use transportProduct instead. Included are data from:
Note: customer data are included in the traveler data structure.
This sequence contains the following fields:
Identification of what variety of customer card it is.
The ID identifying this specific card. The ID identifying the card product/variety goes into product.
Begin / end of validity in local date wherever the traveler is located.
Travel class in case card usage is limited to a travel class.
For transport modes where the concept of class does not exist, MUST be set to notApplicable.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
This type is concretely parameterised with the following:
Data for parking as a standalone document. Included are data from:
This sequence contains the following fields:
Identification of the product (owner, id, textual description).
Start and end of validity of parking entitlement. Date and time in time zone of the parking. When validFromTime == 0, validity is the whole day depending on opening hours of the parking facility.
Data for parking as a leg of a global transport document. Suitable for cars but also for motorbikes, bikes. etc.
This sequence contains the following fields:
Code list of the product owner.
Code needed to access the parking lot.
Readable name of the parking location. Omitted if the vehicle can park anywhere in the parking ground.
In case the parking ground is associated with a station.
In case a special entry can or must be taken (e.g. VIP entry), readable name of this entry.
Number plate of the car parked.
See note in CarCarriageReservationData on the meaning of this field.
Number of days or hours of allowed parking in case this number is limited and less than the validity period. If present, the count of the remaining number of allowed days or hours is centrally held in a back office, that must be queried to verify whether the traveler still has a right of parking.
The value of this choice may be one of the following:
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
1439
Additional readable information that cannot be described using the other elements.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
This type is concretely parameterised with the following:
Data for station passage and access. Ticket used to enter, exit or pass a station without traveling. e.g. for staff working in a station.
This sequence contains the following fields:
Identification of the product (owner, id, textual description).
Station(s) concerned.
List of areas in a station where the access is allowed. The code table used to identify the areas depends on the station.
Readable area names.
This field, if present, MUST be of equal length to the area field.
Period of validity of the right of passage.
Number of days for station passage in case the number of days is limited and less than the validity period. If present, the count of the remaining number of valid days is centrally held in a back office, that must be queried to verify whether the traveler still has a right of passage.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
This type is concretely parameterised with the following:
Example use cases:
This sequence contains the following fields:
Provider of the token. Omitted if the provider is the issuer identified in IssuingData.
This type is concretely parameterised with the following:
This is an object of the class: DATA-ELEMENT
This object has the following field values:
SER
This is an object of the class: DATA-ELEMENT
This object has the following field values:
ABT
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
SER
|
VisibleString | cuperEncoding | NULL |
ABT
|
OCTET STRING | rawEncoding | NULL |
| Other members may be added at runtime. | |||
This sequence contains the following fields:
This type is concretely parameterised with the following:
Confirmation of the delay of a transport
This sequence contains the following fields:
Transport number of the delayed transport.
Line which the transport was operating as (e.g. S5)
Station where the delay became relevant, i.e. where passenger gets off the delayed transport, or the station where they missed boarding when a transport left earlier than scheduled.
Planned arrival date and time at the station where delay became relevant. Date referenced from issuing date.
Indication if the transport has been delayed (and how long) or canceled.
The value of this choice may be one of the following:
The transport was delayed, and delay in minutes at the mentioned station. The delay is negative if the transport left earlier than scheduled.
This type is constrained in the following way:
The value must be greater than or equal to:
-1439
The value must be less than or equal to:
1439
The transport was cancelled.
The transport was cancelled, and replaced with a different transport.
This sequence contains the following fields:
Transport number of the replacement transport.
Line which the replacement transport is operating as (e.g. S5 EV)
The replacement transport is not calling at the original station, but is calling at a replacement station.
Planned arrival date and time at the original (or replacement) station of the replacement transport. Date referenced from issuing date.
The transport skipped a station, and optionally called at a replacement station
This sequence contains the following fields:
This sequence contains the following fields:
The alternative station called at.
Planned arrival date and time at the replacement station of the replacement transport. Date referenced from issuing date.
Type of confirmation provided.
This field, when unset, defaults to the following value: travelerDelayConfirmation
Affected original ticket(s).
The validity of the original ticket is extended in some way. If this field is unset, no statement is made about possibly validity extensions. If it is set, but has no fields set within it, then the validity is explicitly not extended.
This sequence contains the following fields:
Transport links have been waived.
Additional transport links have been permitted.
Additional carriers the passenger is permitted to travel with.
Additional service brands the passenger is permitted to travel in. Per TEL TSI Code List B.4.7009.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
32000
Additional readable information that cannot be described using the other elements.
Proprietary data defined bilaterally.
This type is constrained in the following way:
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:
8
This type is concretely parameterised with the following:
This type is constrained in the following way:
The type must satisfy the following field constraints, other fields are unconstrained:
| Field | Presence | Value |
|---|---|---|
| format | No stipulation |
InverseAny value, except any satisfying the following: Single value
The value must be exactly:
|
This object set has the following members:
| &id | &Type | &encoding | &Constraints |
|---|---|---|---|
| Other members may be added at runtime. | |||
This sequence contains the following fields:
This field, when unset, defaults to the following value:
FALSE
This field, when unset, defaults to the following value:
FALSE
This field, when unset, defaults to the following value:
FALSE
This field, when unset, defaults to the following value:
FALSE
If the relevant constraint is not present, the certificate is not permitted to issue such a delay confirmation.
This type is concretely parameterised with the following:
TicketLinkType is used to define a link from the ticket in the barcode to another ticket (requirement from Eurail). Known use cases:
This sequence contains the following fields:
Data to reference the external ticket.
The product, or type of product, of that a linked ticket must have. Useful in cases the exact linked ticket is not known, e.g. a 1st class upgrade to any second class ticket.
Readable name of the issuer of the external ticket.
Type of linked ticket.
This field, when unset, defaults to the following value: Choice variant ticket EMPTY SEQUENCE
Type of link.
This field, when unset, defaults to the following value: issuedTogether
Sleeper compartment according to TEL TSI B.5.
This sequence contains the following fields:
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
999
Take particular care when using this field, in light of the CJEU decision C‑394/23. Specifically: "the processing of personal data relating to the title of the customers of a transport undertaking, the purpose of which is to personalise the commercial communication based on their gender identity ... cannot be regarded as necessary for the performance of that contract"
This field, when unset, defaults to the following value: mixed
The basis for these data is weak:
This sequence contains the following fields:
Allowed hand luggage pieces on this ticket (3 = default in current NRT tariff).
This type is constrained in the following way:
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
Allowed non-hand luggage pieces on this ticket.
This type is constrained in the following way:
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
This sequence contains the following fields:
ID of the additional registered luggage.
Maximum weight in kg.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
99
Sum of length with and height in cm.
This type is constrained in the following way:
The value must be greater than or equal to:
1
The value must be less than or equal to:
300
Product variety indicates the type of the transport product, as well as some specific characteristics it may have.
The value of this choice may be one of the following:
Ticket authorizing the use of the transportation service (single ticket, return ticket, ticket book, pass, access to a parking lot, car sharing service...) This choice also describes some associated characteristics:
Standalone reservation, which does not authorize travel unless accompanied by a ticket.
Any card (reduction card, loyalty card...) that does not authorize travel but allows the holder to benefit from reduced prices or commercial advantages.
Very specific product, in case none of the above choices apply.
This sequence contains the following fields:
Ticket category, indicating how many time the product can be used.
This field, when unset, defaults to the following value: single
Indicates if the ticket is an upgrade of another ticket.
This field, when unset, defaults to the following value:
FALSE
Indicates if an associated reservation (as a separate standalone document) is required for the ticket to be usable:
TRUE if an associated reservation is required.FALSE if no associated reservation is required (this value covers the case when the reservation is included in the ticket conditions).
This field, when unset, defaults to the following value:
FALSE
The value of this enumeration may have one of the following values:
Value:
0
Single ticket: only one journey is permitted.
Value:
1
Return ticket: only one outward journey and one return journey are permitted.
Value:
2
Multiple but not unlimited journeys are permitted (e.g. ticket book). The counting is made in a backoffice.
Value:
3
As many journeys as desired are permitted (e.g. pass).
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
Value:
4
Value:
5
Value:
6
Child associated with a family traveling together.
Value:
7
Accompanying person for PRM (Passenger with Restricted Mobility).
Value:
8
Passenger with wheel-chair.
Value:
9
Value:
10
A pet but not a dog.
Value:
11
Value:
12
An accompanying dog for a PRM (Passenger with Restricted Mobility).
Value:
13
Value:
14
Can be used for e.g. unaccompanied luggage.
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
The value of this enumeration may have one of the following values:
Value:
0
Confirmation of transport delay, whether the traveler was on board in unconfirmed.
Value:
1
Confirmation that the traveler was on board of the delayed transport.
Value:
2
Confirmation that a ticket linked to the delayed transport was issued.
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
Value:
4
Value:
5
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
Value:
4
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
Value:
4
Value:
5
Value:
6
Value:
7
e.g. those issued under the Convention of the 28th of September 1954, or a Laissez-Passer
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
Value:
4
Value:
5
Value:
6
Value:
7
Value:
8
Value:
9
Value:
10
Value:
11
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
The value of this enumeration may have one of the following values:
Value:
0
Value:
1
Value:
2
Value:
3
Value:
4
Value:
5
Value:
6
Value:
7
Value:
8
The value of this enumeration may have one of the following values:
Value:
0
SMS sent to a specific number.
Value:
1
Application on a mobile phone.
Value:
2
Internet portal.
Value:
3
Agency or counter.
Value:
4
Dealer (e.g. tobacconist, newsagent, cafe, etc.).
Value:
5
On-board sales (e.g. using the driver's point-of-sale terminal).
Value:
6
Automatic sales machine.