GeneralData

Generic definitions for common elements shared across many UIC ASN.1 modules. Version 1.0.0.

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.

Module Info

Reference
GeneralData
Numeric OID
1.3.6.1.4.1.17218.1.0.5.1.0

Exports

This module explicitly exports all symbols.

Imports

This module does not import any symbols.

Assignments

GenericId

Identification of any element using a numerical, alphanumerical or binary ID, according to the code list defined in the container object. Note, the choice of encoding variant has no differentiating effect on the value. That is, 1234 encoded as an idNum is the exact same logical value as the string "1234" encoded as idIA5, and the same logical value as the octal string '31323334'H.

CHOICE

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

idNum
INTEGER
idIA5
VisibleString
idOct
OCTET STRING

GenericCode

Parameterised

This assignment is parameterised, accepting the following parameters:

IdType
SEQUENCE

This sequence contains the following fields:

codeTable
CHOICE

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

issuer

ID values defined by the document issuer.

NULL
productOwner

ID values defined by the product owner.

NULL
carrier

ID values defined by the carrier(s).

NULL
area

ID values defined by the organisation responsible for the concernedArea.

NULL
national

ID values defined by the national authority the country defined by its ISO 3166-1 numeric code.

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

company

ID values defined by the referenced company.

CompanyCode
codeTableVersion 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: 255

id
Parameter IdType

Station

A STOP PLACE in Transmodel (EN 12896-2:2016 § 5.4.3).

SEQUENCE

This sequence contains the following fields:

station
CHOICE

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

era

ERA TEL TSI Primary Location Code, as per teleref.era.europa.eu.

  • A 7 digit code (country code + 5 digit local code) defines a rail station code.
  • A 9 digit code (2-digit scope code + country code + 5 digit local code) defines a non-rail 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: 999999999

generic
GenericCode

This type is concretely parameterised with the following:

IdType
GenericId
stationNameUTF8 Optional
UnicodeText

StationSet

SEQUENCE

This sequence contains the following fields:

set
CHOICE

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

groupPrimary

Where a station group is defined a number of stations grouped together with a primary station.

Station
list

Explicitly listing all stations in a group.

SEQUENCE OF Station
setNameUTF8 Optional
UnicodeText

LineId

A LINE in Transmodel (EN 12896-2:2016 § 5.3.7.4).

CHOICE

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

publicIdentifier

e.g. "RE1".

VisibleString

This type is constrained in the following way:

Permitted alphabet

The characters in the string value must satisfy the following constraint:

Union

Any of the following can be true:

Range

The value must be greater than or equal to: A

The value must be less than or equal to: Z

OR

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 9

generic
GenericCode

This type is concretely parameterised with the following:

IdType
GenericId

TransportId

A SERVICE JOURNEY in Transmodel (EN 12896-3:2016 § 5.3.2).

CHOICE

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

publicIdentifier

e.g. "ICE107".

VisibleString

This type is constrained in the following way:

Permitted alphabet

The characters in the string value must satisfy the following constraint:

Union

Any of the following can be true:

Range

The value must be greater than or equal to: A

The value must be less than or equal to: Z

OR

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 9

generic
GenericCode

This type is concretely parameterised with the following:

IdType
GenericId

NUTSArea

A geographic area defined under the Nomenclature of Territorial Units for Statistics (Regulation EC 1059/2003). Divisions all the way down to the Local Administrative Unit are permitted. NUTS codes are only defined for members of the EU, the EFTA, and EU candidate countries. FAUs are permitted standalone, e.g. DE025F (Freiburg im Breisgau) is coded with the subdivision 025F. LAUs must be appended to their NUTS3 code, e.g. DE13308316011 for Emmendingen, Stadt is coded with the subdivision 13308316011. For those countries outside the NUTS system:

  • the UK maintains a compatible system since Brexit called the International Territorial Level;
  • otherwise, use the the OECD Territorial Region Codes.
  • if none of the above applies for a country, a choice of suitable system MUST be defined by UIC, users MUST NOT define bilateral subdivisions.
SEQUENCE

This sequence contains the following fields:

country

ISO 3166-1 numeric code.

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

subdivision Optional
VisibleString

This type is constrained in the following way:

Permitted alphabet

The characters in the string value must satisfy the following constraint:

Union

Any of the following can be true:

Range

The value must be greater than or equal to: A

The value must be less than or equal to: Z

OR

Range

The value must be greater than or equal to: 1

The value must be less than or equal to: 9

AreaSet

One or more areas of geographic validity.

CHOICE

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

nuts

European NUTS code, or compatible.

SEQUENCE OF NUTSArea
generic
GenericCode

This type is concretely parameterised with the following:

IdType
CHOICE

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

idNum

e.g. sequence of allowed area/zone numbers such as {1,5,23}.

SEQUENCE OF INTEGER
idIA5

e.g. areas/zones described with text such as {"M","1-3"}.

SEQUENCE OF VisibleString
idOct

e.g. sequence of Calypso NetworkIds such as {'250901'H,'250072'H}.

SEQUENCE OF OCTET STRING
idBit

Recommended encoding: bit n (considering that bit 0 = right-most bit) encodes area/zone n+1, bit value 1 = area/zone is allowed, bit value 0 = area/zone is forbidden. e.g. bitmap of allowed areas/zones such as '10101110010'B for areas/zones 2, 5, 6, 7, 9 and 11.

BIT STRING

CoachPlaces

Place data according to TEL TSI B.5. placeString: place number ranges in case of groups.

SEQUENCE

This sequence contains the following fields:

coach Optional
VisibleString
placeString Optional

Printable place string (e.g. "15-18, 21, 22").

VisibleString
placeDescription Optional

Printable place description.

UnicodeText
placeNumber Optional

Individual places.

SEQUENCE OF PlaceNumber
details Optional
PlaceDetails

PlaceNumber

Identification of an individual place.

CHOICE

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

placeNum
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

placeIA5
VisibleString

PlaceDetails

Compartment details according to TEL TSI B.5.

SEQUENCE

This sequence contains the following fields:

coachType

Per TEL TSI Code List B.5.51.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: 99

compartmentType

Per TEL TSI Code List B.5.51.2.

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

specialOffers

Per TEL TSI Code List B.5.51.3.

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

description Optional
UnicodeText

UnicodeText

Text fields in this specification are OCTET STRINGS. The contents of these fields MUST be encoded according to the Standard Compression Scheme for Unicode (SCSU). For encoders than only ever output US-ASCII and ISO 8859-1 (Latin-1) between U+0020 and U+00FF, no special handling is required to generate SCSU data, the Latin-1 encoding is already valid SCSU. All decoders MUST be able to handle the full SCSU specification on reading and parsing data. If you are unsure which implementation to use, the International Components for Unicode is the recommended implementation of SCSU, although it is by no means required.

Systems dealing with the contained data MUST be compliant to DIN 91379. That is, they can handle (store, transfer, recall, and represent) all characters as specified in DIN 91379 without error.

All Unicode text, before being fed into the SCSU compressor, MUST be in Normalisation Form C.

When comparing names with identity documents, or when a Latinized representation of a name is required, the system MUST transliterate according to ICAO 9303 Part 3, specifically sections 4.6 and 6. The text stored in the ticket SHOULD be in its original script, with transliteration performed by the reading device. The reading device SHOULD show both the original script, and the Latinized form.

The language field, if present, MUST be used to select to correct Latinization of Cyrillic characters. The relevant languages for special considerations in ICAO 9303 Latinization are:

  • be: Belarusian
  • bg: Bulgarian
  • uk: Ukrainian
  • mk: Macedonian
  • sr: Serbian

The language field MAY also be used to influence other transliterations, e.g. the different handling of diaereses by language.

SEQUENCE

This sequence contains the following fields:

text

SCSU encoding of the textual data.

OCTET STRING
language Optional

ISO 639-1 coding (lower case) of the text's language.

VisibleString

This type is constrained in the following way:

Intersection

All the following must be true:

Size

The length of the value must exactly: 2

AND

Permitted alphabet

The characters in the string value must satisfy the following constraint:

Range

The value must be greater than or equal to: a

The value must be less than or equal to: z

GeoCoordinate

Generic types for geo coordinates.

SEQUENCE

This sequence contains the following fields:

position
GeoUnit
coordinateSystem Default value defined
GeoCoordinateSystem

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

accuracy Optional

If omitted the accuracy is unknown.

GeoUnitType

GeoCoordinateSystem

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:

tenthMilliDegree

Value: 0

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

milliDegree

Value: 1

Approx. 110 meter on earth surface.

centiDegree

Value: 2

deciDegree

Value: 3

GeoUnit

CHOICE

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

tenthMilliDegree
SEQUENCE

This sequence contains the following fields:

longitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 1800000

latitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 900000

milliDegree
SEQUENCE

This sequence contains the following fields:

longitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 180000

latitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 90000

centiDegree
SEQUENCE

This sequence contains the following fields:

longitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 18000

latitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 9000

deciDegree
SEQUENCE

This sequence contains the following fields:

longitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 1800

latitude
INTEGER

This type is constrained in the following way:

Range

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

The value must be less than or equal to: 900

Timestamp

Generic timestamp, expressed in UTC.

SEQUENCE

This sequence contains the following fields:

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

day

The number of the day in the year (1st Jan = 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: 366

time

The number of minutes of the day from 0 = 00:00 to 1439 = 23:59.

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

CompanyCode

A TRANSPORT ORGANIZATION in Transmodel (EN 12896-1:2016 § 5.6.8).

CHOICE

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

orgCode

For companies within the EU this field SHALL be their ERA assigned Organisation Code. For others this field SHALL be their UIC assed RICS Code. If a company has no such code, otherCode MAY be used. ERA Organisation Codes are available from teleref.era.europa.eu UIC RICS Codes are available from uic.org/support-activities/it/rics.

VisibleString

This type is constrained in the following way:

Intersection

All the following must be true:

Size

The length of the value must exactly: 4

AND

Permitted alphabet

The characters in the string value must satisfy the following constraint:

Union

Any of the following can be true:

Range

The value must be greater than or equal to: A

The value must be less than or equal to: Z

OR

Range

The value must be greater than or equal to: 0

The value must be less than or equal to: 9

otherCode
SEQUENCE

This sequence contains the following fields:

format

The value of format identifies the company identifier format according to the following:

  • + + [2-letter 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]
  • * + [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.

VisibleString

This type is constrained in the following way:

Intersection

All the following must be true:

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: 16

AND

Inverse

Any value, except any satisfying the following:

Union

Any of the following can be true:

Single value

The value must be exactly: !I

OR

Single value

The value must be exactly: !C

OR

Single value

The value must be exactly: !P

This type is constrained in the following way:

Table

The value must come from the &id column of the object set: CompanyCodeFormats

code
VisibleString

COMPANY-CODE-FORMAT

OBJECT CLASS

This object class has the following fields:

&id

This field accepts any value of the following type:

VisibleString

This type is constrained in the following way:

Intersection

All the following must be true:

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: 16

AND

Inverse

Any value, except any satisfying the following:

Union

Any of the following can be true:

Single value

The value must be exactly: !I

OR

Single value

The value must be exactly: !C

OR

Single value

The value must be exactly: !P

This field must be unique within an object set.

&name

This field accepts any value of the following type:

UTF8String

CompanyCodeFormats

OBJECT SET

This object set has the following members:

&id &name
VDV Verband Deutscher Verkehrsunternehmen Organisation ID
Other members may be added at runtime.

DATA-ELEMENT

A data element, identified by its &id, containing data as specified by its &Type, and encoded into an OCTET STRING as specified by its &encoding. The identifier &id 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's 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. If the !C form would be ambiguous (e.g. multiple carriers possible) it MUST NOT be used. All values SHOULD be registered via the UIC Github repository.

OBJECT CLASS

This object class has the following fields:

&id

This field accepts any value of the following type:

VisibleString

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: 16

This field must be unique within an object set.

&Type

This field accepts any concrete type.

&encoding

This field accepts any value of the following type:

OBJECT IDENTIFIER

Data

Parameterised

Generic data container.

This assignment is parameterised, accepting the following parameters:

ElementSet

Set of DATA-ELEMENT objects that are permitted as contents. This set SHOULD be extensible.

DATA-ELEMENT
SEQUENCE

This sequence contains the following fields:

format
VisibleString

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: 16

This type is constrained in the following way:

Table

The value must come from the &id column of the object set: Parameter ElementSet

value
OCTET STRING

This type is constrained in the following way:

Contents

The value must be an encoding of the following type:

ANY

This type is constrained in the following way:

Table

The value must come from the &Type column of the object set: Parameter ElementSet
The row is selected by the value of the fields: format

SharedVehicleVariety

Per NeTEx PersonalVehicleCategory (CEN/TS 16614-5:2022 § 10.1.4.3.4.2).

ENUMERATED

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

scooter

Value: 0

Scooter - small wheeled low mobile platform

bicycle

Value: 1

Bicycle.

tricycle

Value: 2

Tricycle.

tandem

Value: 3

Tandem bicycle.

moped

Value: 4

Moped (Small motorbike).

motorcycle

Value: 5

Motorcycle.

quadbike

Value: 6

Motorcycle.

car

Value: 7

Car of any size.

microCar

Value: 8

Extremely small vehicle.

miniCar

Value: 9

Very small vehicle.

smallCar

Value: 10

Small vehicle.

mediumCar

Value: 11

Compact vehicle.

largeCar

Value: 12

Large vehicle.

minivan

Value: 13

Minivan.

transporter

Value: 14

Large people transporter / minibus.

snowmobile

Value: 15

Snowmobile.

other

Value: 16

Other category.

SharedVehiclePropulsionType

Per NeTEx PropulsionType (CEN/TS 16614-5:2022 § 10.1.4.3.2.2).

ENUMERATED

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

combustion

Value: 0

Combustion of any sort

hybrid

Value: 1

Electric/Combustion Hybrid

human

Value: 2

Human powered (pedal, scoot etc)

electricAssist

Value: 3

Human power with electric assistance.

other

Value: 4

Other power.

SharedVehicleReturnConstraint

As per GBFSv3.0, to be replaced by a NeTEx mapping once standardised.

ENUMERATED

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

freeFloating

Value: 0

roundtripStation

Value: 1

anyStation

Value: 2

hybrid

Value: 3