AppliesToDirection
type: PropertyShape
affected property: appliesToDirection
affected class: NetPointReference
scope: local
comment: The direction relative to the origin of the linear element towards the point reference applies.
path: appliesToDirection
node kind: IRI
severity: Violation
message: appliesToDirection: The net point reference must have an 'applies to direction' value that is an IRI.

AppliesToDirectionSKOS
type: SPARQLConstraint
affected property: appliesToDirection
affected class: NetPointReference
scope: local
comment: The direction relative to the origin of the linear element towards the point reference applies.
severity: Violation
message: appliesToDirection: The net point reference {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/orientations/Directions.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL {$this rdfs:label ?thisLabel} . $this era:appliesToDirection ?concept . era:appliesToDirection era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme } }

HasLrsCoordinate
type: PropertyShape
affected property: hasLrsCoordinate
affected property: hasLRS
affected class: NetPointReference
scope: local
comment: Specifies the LRS coordinate associated with a topological coordinate.
path: hasLrsCoordinate
path: hasLRS
class: LinearPositioningSystem
severity: Violation
message: hasLrsCoordinate: The net point reference specifies an LRS coordinate that must be an instance of a LinearPositioningSystemCoordinate and that in turn references a LinearPositioningSystem. This error is due to having a value that is not a LinearPositioningSystemCoordinate that in turn references a LinearPositioningSystem.

HasSequence
type: PropertyShape
affected property: hasSequence
affected class: NetLinearReference
scope: local
comment: The ordered sequence of topological linear elements which create a linear net reference.
path: hasSequence
class: List
severity: Violation
message: hasSequence: The net linear reference specifies an ordered sequence of topological linear elements that must be an instance of an rdf:List. This error is due to having a value that is not an instance of rdf:List.

HasTopoCoordinate
type: PropertyShape
affected property: hasTopoCoordinate
affected class: NetPointReference
scope: local
comment: Specifies the topological coordinate of a network point reference.
path: hasTopoCoordinate
class: TopologicalCoordinate
severity: Violation
message: hasTopoCoordinate: The net point reference specifies a topo coordinate that must be an instance of a TopologicalCoordinate. This error is due to having a value that is not an instance of TopologicalCoordinate.

Includes
type: PropertyShape
affected property: includes
affected class: NetAreaReference
scope: local
comment: List of linear references included in an network area reference.
path: includes
class: List
severity: Violation
message: includes: The net area reference specifies a list of linear references that must be an instance of an rdf:List. This error is due to having a value that is not an instance of rdf:List.

LrsMethod
type: PropertyShape
affected property: lrsMethod
affected class: LinearPositioningSystem
scope: local
comment: The preferred line referencing system.
path: lrsMethod
node kind: IRI
severity: Violation
message: lrsMethod: The linear positioning system must have an 'lrsMethod' value that is an IRI.

LrsMethodSKOS
type: SPARQLConstraint
affected property: lrsMethod
affected class: LinearPositioningSystem
scope: local
comment: The preferred line referencing system.
severity: Violation
message: lrsMethod: The linear positionung system {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/lines/ReferenceSystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL {$this rdfs:label ?thisLabel} . $this era:lrsMethod ?concept . era:lrsMethod era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme } }

StartsAt
type: PropertyShape
affected property: startsAt
affected class: NetLinearReference
scope: local
comment: Specifies the starting point of a linear reference.
path: startsAt
min count: 1
max count: 1
class: NetPointReference
severity: Violation
message: startsAt: The net linear reference specifies a starting point that must be an instance of a NetPointReference. This error is due to not having a value, having more than one value or having a value that is not an instance of NetPointReference.

EndsAt
type: PropertyShape
affected property: endsAt
affected class: NetLinearReference
scope: local
comment: Specifies the ending point of a linear reference.
path: endsAt
min count: 1
max count: 1
class: NetPointReference
severity: Violation
message: endsAt: The net linear reference specifies an ending point that must be an instance of a NetPointReference. This error is due to not having a value, having more than one value or having a value that is not an instance of NetPointReference.

KmPost
type: PropertyShape
affected class: LinearPositioningSystemCoordinate
affected property: kmPost
scope: local
comment: The closest kilometric post on the line, used as a reference by the LRS coordinate.
path: kmPost
node kind: IRI
class: KilometricPost
severity: Violation
message: kmPost: The LinearPositioningSystemCoordinate may reference a KilometricPost through kmPost. This error is due to the value either not being an IRI, or being an IRI that is not an instance of KilometricPost.

KmPostName
type: PropertyShape
affected class: LinearPositioningSystem
affected property: kmPostName
scope: local
comment: Name of the kilometric post .
path: kmPostName
datatype: string
max count: 1
severity: Violation
message: kmPostName: The kilometer post name must be represented as a string of characters, and each LinearPositioningSystem may have at most one kmPostName.
affected class: KilometricPost
comment: Name of the kilometric post (optional).
message: kmPostName: The kilometer post name must be represented as a string of characters.

OffsetFromKilometricPost
type: PropertyShape
affected class: LinearPositioningSystemCoordinate
affected property: offsetFromKilometricPost
scope: local
comment: Relative distance from a reference kilometric post.
path: offsetFromKilometricPost
datatype: double
severity: Violation
message: offsetFromKilometricPost: The offset from kilometric post must be represented as a double number.

LineId
type: PropertyShape
affected class: LinearPositioningSystem
affected property: lineId
scope: local
comment: Unique line identification or unique line number within Member State.
rinf index: 1.1.0.0.0.2
max count: 1
path: lineId
datatype: string
severity: Violation
message: lineId: The line identification is unique and must be a string. This error is due to having more than one value or having a value that is not a string of characters

Label
type: PropertyShape
affected class: LinearPositioningSystem
affected property: label
scope: local
path: label
datatype: langString
node kind: Literal
unique lang: true
severity: Violation
message: rdfs:label: Each LinearPositioningSystem must have at least one label in English (@en). Additional multilingual labels are allowed, but only one value per language tag is permitted. All values must be language-tagged string literals.
sparql: SPARQLConstraint
  select: SELECT $this WHERE { FILTER NOT EXISTS { $this $PATH ?value . FILTER (LANGMATCHES(lang(?value), "en") ) } }

ContactLineSystemType
type: PropertyShape
affected property: contactLineSystemType
affected class: ContactLineSystem
scope: local
comment: Indication of the type of the contact line system
rinf index: 1.1.1.2.2.1.1
path: contactLineSystemType
node kind: IRI
min count: 1
max count: 1
severity: Warning
message: contactLineSystemType (1.1.1.2.2.1.1): The contact line system must have a contact line system type, and its value must be an IRI. This error is due to the contact line system not having a value for this property, having more than one value for this property, or having a value that is not an IRI.

ContactLineSystemTypeSKOS
type: SPARQLConstraint
affected property: contactLineSystemType
affected class: ContactLineSystem
scope: local
comment: Indication of the type of the contact line system
rinf index: 1.1.1.2.2.1.1
severity: Violation
message: contactLineSystemType (1.1.1.2.2.1.1): The contact line system {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/contact-line-systems/ContactLineSystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:contactLineSystemType ?concept . era:contactLineSystemType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

ContactLineSystemTypeNotElectrifiedApplicability
type: SPARQLConstraint
affected property: contactLineSystemType
affected class: ContactLineSystem
scope: local
comment: When the value "not electrified" is chosen, all parameters 1.1.1.2.2.1.2 - 1.1.1.2.5.3 are not applicable
rinf index: 1.1.1.2.2.1.1
severity: Violation
message: contactLineSystemType (1.1.1.2.2.1.1): The Contact Line System {$this} ({?clsLabel}), has a 'Not electrified' type, and at least one of its parameters has values for at least one of the range of parameters between 1.1.1.2.2.1.2 and 1.1.1.2.5.3. This happens at least with property {?p} (RINF index {?index}).
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel ?p ?index WHERE { $this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/40> . OPTIONAL{$this rdfs:label ?clsLabel} . $this ?p ?y . ?p era:rinfIndex ?index . FILTER EXISTS {$this ?p ?value} . FILTER(strstarts(?index,'1.1.1.2.2.1.2') || strstarts(?index,'1.1.1.2.2.1.3') || strstarts(?index,'1.1.1.2.2.2') || strstarts(?index,'1.1.1.2.2.3') || strstarts(?index,'1.1.1.2.2.4') || strstarts(?index,'1.1.1.2.2.5') || strstarts(?index,'1.1.1.2.2.6') || strstarts(?index,'1.1.1.2.3') || strstarts(?index,'1.1.1.2.4') || strstarts(?index, '1.1.1.2.5')) }

ContactLineSystemTypeThirdOrFourthRailApplicability
type: SPARQLConstraint
affected property: contactLineSystemType
affected class: ContactLineSystem
scope: local
comment: When the value “Third Rail” or “Fourth Rail” is chosen, parameters 1.1.1.2.2.3, 1.1.1.2.2.5 - 1.1.1.2.4.2.3, 1.1.1.2.5.2 and 1.1.1.2.5.3 are not applicable
rinf index: 1.1.1.2.2.1.1
severity: Violation
message: contactLineSystemType (1.1.1.2.2.1.1): The Contact Line System {$this} ({?clsLabel}), has a 'Third Rail' or 'Fourth Rail' type, and at least one of its parameters has values for at least one of the parameters 1.1.1.2.2.3, 1.1.1.2.2.5 - 1.1.1.2.4.2.3, 1.1.1.2.5.2 and 1.1.1.2.5.3. This happens at least with property {?p} (RINF index {?index}).
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel ?p ?index WHERE { {$this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/20>} UNION {$this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/30>} OPTIONAL{$this rdfs:label ?clsLabel} . $this ?p ?y . ?p era:rinfIndex ?index . FILTER EXISTS {$this ?p ?value} . FILTER(str(?index)='1.1.1.2.2.3' || str(?index)='1.1.1.2.2.5' || str(?index)='1.1.1.2.2.6' || strstarts(?index,'1.1.1.2.3') || strstarts(?index,'1.1.1.2.4') || str(?index)='1.1.1.2.5.2' || str(?index)='1.1.1.2.5.3') }

EnergySupplySystem
type: PropertyShape
affected property: energySupplySystem
affected class: ContactLineSystem
scope: local
comment: Indication of the traction supply system
rinf index: 1.1.1.2.2.1.2
path: energySupplySystem
node kind: IRI
max count: 1
severity: Warning
message: energySupplySystem (1.1.1.2.2.1.2): The contact line system defines the energy supply system.This error is due to a contact line system having more than one value for this property or having a value that is not an IRI.

EnergySupplySystemSKOS
type: SPARQLConstraint
affected property: energySupplySystem
affected class: ContactLineSystem
scope: local
comment: Indication of the traction supply system
rinf index: 1.1.1.2.2.1.2
severity: Warning
message: energySupplySystem (1.1.1.2.2.1.2): The contact line system {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/energy-supply-systems/EnergySupplySystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:energySupplySystem ?concept . era:energySupplySystem era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

EnergySupplySystemTSICompliant
type: PropertyShape
affected property: energySupplySystemTSICompliant
affected class: ContactLineSystem
scope: local
comment: Indication if the traction supply system is fully compliant with TSI
rinf index: 1.1.1.2.2.1.2.1
path: energySupplySystemTSICompliant
datatype: boolean
max count: 1
severity: Violation
message: energySupplySystemTSICompliant (1.1.1.2.2.1.2.1): The contact line system defines if the energy supply system is fully compliant with TSI. This error is due to having more than one value for this property or having a value that is not Y/N (boolean).

Umax2
type: PropertyShape
affected property: umax2
affected class: ContactLineSystem
scope: local
comment: Umax2 for lines referred to in sections 7.4.2.2.1 and 7.4.2.11.1 of Regulation (EU) 1301/2014
rinf index: 1.1.1.2.2.1.3
path: umax2
datatype: integer
pattern: ^([1-9]\d{0,5}|0)$
max count: 1
severity: Violation
message: umax2 (1.1.1.2.2.1.3): The contact line system defines the Umax2 . This error is due to having more than one value for this property, having a value that is not an integer, or having an integer that does not follow the pattern [NNNNNN].

MaximumTrainCurrent
type: PropertyShape
affected property: maxTrainCurrent
affected class: ContactLineSystem
scope: local
comment: Indication of the maximum allowable train current
rinf index: 1.1.1.2.2.2
path: maxTrainCurrent
datatype: integer
pattern: ^([1-9]\d{0,3}|0)$
max count: 1
severity: Violation
message: maxTrainCurrent (1.1.1.2.2.2): Defines the maximum allowable train current of the contact line system. This error is due to having more than one value for this property, having a value that is not an integer, or having an integer that does not follow the pattern [NNNN].

MaxCurrentStandstillPantograph
type: PropertyShape
affected property: maxCurrentStandstillPantograph
affected class: ContactLineSystem
scope: local
comment: Indication of the maximum allowable current at standstill per pantograph
rinf index: 1.1.1.2.2.3
rinf index: 1.2.2.0.6.1
path: maxCurrentStandstillPantograph
datatype: integer
pattern: ^([1-9]\d{0,2}|0)$
max count: 1
severity: Violation
message: maxCurrentStandstillPantograph (1.1.1.2.2.3, 1.2.2.0.6.1): Defines the maximum allowable current at standstill per pantograph for the contact line system. This error is due to having more than one value for this property, having a value that is not an integer, or having an integer that does not follow the pattern [NNN].

MaxCurrentStandstillPantographApplicability
type: SPARQLConstraint
affected property: maxCurrentStandstillPantograph
affected class: ContactLineSystem
scope: local
comment: This parameter is applicable (“Y”) only if “Overhead contact line (OCL)” is selected for parameter 1.1.1.2.2.1.1.
rinf index: 1.1.1.2.2.3
rinf index: 1.2.2.0.6.1
severity: Warning
message: maxCurrentStandstillPantograph (1.1.1.2.2.3, 1.2.2.0.6.1):The Contact Line System {$this} ({?clsLabel}), has a 'Overhead contact line (OCL)' type which makes the maxCurrentStandstillPantograph parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/10>. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:maxCurrentStandstillPantograph ?value} . }

ConditionsAppliedRegenerativeBraking
type: PropertyShape
affected class: RunningTrack
affected class: SectionOfLine
affected property: conditionsAppliedRegenerativeBraking
scope: local
comment: Name and/or reference of the document specifying the conditions applying in regards to regenerative braking.
rinf index: 1.1.1.2.2.4.1
path: conditionsAppliedRegenerativeBraking
class: Document
max count: 1
severity: Violation
message: conditionsAppliedRegenerativeBraking (1.1.1.2.2.4.1): The contact line system has a conditionsAppliedRegenerativeBraking reference that must be a Document. This error is due to having more than one value for this property or having a value that is not a Document.

ConditionsAppliedRegenerativeBrakingApplicability
type: SPARQLConstraint
affected property: conditionsAppliedRegenerativeBraking
affected class: ContactLineSystem
scope: local
comment: This parameter is applicable (“Y”) only if “Overhead contact line (OCL)” is selected for parameter 1.1.1.2.2.1.1.
rinf index: 1.1.1.2.2.4.1
severity: Warning
message: conditionsAppliedRegenerativeBraking (1.1.1.2.2.4.1):The Contact Line System {$this} ({?clsLabel}), has a 'Overhead contact line (OCL)' type which makes the conditionsAppliedRegenerativeBraking parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/10>. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:conditionsAppliedRegenerativeBraking ?value} . }

MaximumContactWireHeight
type: PropertyShape
affected property: maximumContactWireHeight
affected class: ContactLineSystem
scope: local
comment: Indication of the maximum contact wire height expressed in metres
rinf index: 1.1.1.2.2.5
path: maximumContactWireHeight
datatype: double
pattern: ^([0-9])(\.\d{1,2})?$
max count: 1
severity: Violation
message: maximumContactWireHeight (1.1.1.2.2.5): The contact line system defines a maximum contact wire height expressed in metres. This error is due to having more than one value for this property, having a value that is not a double (real) number, or having a number that does not follow the pattern [N.NN] (with up to 2 decimals).

MaximumContactWireHeightApplicability
type: SPARQLConstraint
affected property: maximumContactWireHeight
affected class: ContactLineSystem
scope: local
comment: This parameter is applicable (“Y”) only if “Overhead contact line (OCL)” is selected for parameter 1.1.1.2.2.1.1.
rinf index: 1.1.1.2.2.5
severity: Warning
message: maximumContactWireHeight (1.1.1.2.2.6):The Contact Line System {$this} ({?clsLabel}), has a 'Overhead contact line (OCL)' type which makes the maximumContactWireHeight parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/10>. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:maximumContactWireHeight ?value} . }

MinimumContactWireHeight
type: PropertyShape
affected property: minimumContactWireHeight
affected class: ContactLineSystem
scope: local
comment: Indication of the minimum minimum contact wire height expressed in metres
rinf index: 1.1.1.2.2.6
path: minimumContactWireHeight
datatype: double
pattern: ^([0-9])(\.\d{1,2})?$
max count: 1
severity: Violation
message: minimumContactWireHeight (1.1.1.2.2.6): The contact line system defines a minimum contact wire height expressed in metres. This error is due to having more than one value for this property, having a value that is not a double (real) number, or having a number that does not follow the pattern [N.NN] (with up to 2 decimals).

MinimumContactWireHeightApplicability
type: SPARQLConstraint
affected property: minimumContactWireHeight
affected class: ContactLineSystem
scope: local
comment: This parameter is applicable (“Y”) only if “Overhead contact line (OCL)” is selected for parameter 1.1.1.2.2.1.1.
rinf index: 1.1.1.2.2.6
severity: Warning
message: minimumContactWireHeight (1.1.1.2.2.6):The Contact Line System {$this} ({?clsLabel}), has a 'Overhead contact line (OCL)' type which makes the minimumContactWireHeight parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:contactLineSystemType <http://data.europa.eu/949/concepts/contact-line-systems/10>. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:minimumContactWireHeight ?value} . }

PermissionChargingElectricEnergyTractionStandstill
type: PropertyShape
affected property: permissionChargingElectricEnergyTractionStandstill
affected class: ContactLineSystem
scope: local
comment: Indication if charging electric energy storage for traction purposes at standstill is permitted
rinf index: 1.2.1.0.7.1
path: permissionChargingElectricEnergyTractionStandstill
datatype: boolean
max count: 1
severity: Violation
message: permissionChargingElectricEnergyTractionStandstill (1.2.1.0.7.1): The contact line system defines if charging electric energy storage for traction purposes at standstill is permitted. This error is due to having more than one value for this property or having a value that is not Y/N (boolean).

ConditionsChargingElectricEnergyStorage
type: PropertyShape
affected property: conditionsChargingElectricEnergyStorage
affected class: ContactLineSystem
scope: local
comment: Indication if charging electric energy storage for traction purposes at standstill is permitted
rinf index: 1.2.1.0.7.2
path: conditionsChargingElectricEnergyStorage
datatype: anyURI
max count: 1
severity: Violation
message: conditionsChargingElectricEnergyStorage (1.2.1.0.7.2): The contact line system defines the permitted conditions for charging electric energy storage for traction purposes at standstill. This error is due to having more than one value for this property or having a value that is not an URI.

DocumentUrl
type: PropertyShape
affected property: documentUrl
affected class: Document
scope: local
comment: URL that is used to download a document, e.g. url for a reference document in RINF.
path: documentUrl
datatype: anyURI
severity: Violation
message: documentUrl: The value must be a valid URI (xsd:anyURI).

EtcsBaseline
type: PropertyShape
affected property: etcsBaseline
affected class: ETCS
scope: local
comment: ETCS baseline installed lineside
rinf index: 1.1.1.3.2.2
rinf index: 1.2.1.1.1.2
path: etcsBaseline
node kind: IRI
max count: 1
severity: Violation
message: etcsBaseline (1.1.1.3.2.2, 1.2.1.1.1.2): The ETCS may have an ETCS baseline, and its value must be an IRI. This error is due to the ETCS instance having more than one value or having a value that is not an IRI.

EtcsBaselineSKOS
type: SPARQLConstraint
affected property: etcsBaseline
affected class: ETCS
scope: local
comment: ETCS baseline installed lineside
rinf index: 1.1.1.3.2.2
rinf index: 1.2.1.1.1.2
severity: Violation
message: etcsBaseline (1.1.1.3.2.2, 1.2.1.1.1.2): The ETCS {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-baselines/.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:etcsBaseline ?concept . era:etcsBaseline era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

EtcsBaselineApplicability
type: SPARQLConstraint
affected property: etcsBaseline
affected class: ETCS
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.2
rinf index: 1.2.1.1.1.2
severity: Warning
message: etcsBaseline (1.1.1.3.2.2, 1.2.1.1.1.2): The ETCS {$this} ({?thisLabel}), has a ETCS level type which makes the etcsBaseline parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?thisLabel WHERE { $this era:etcsLevelType ?type. OPTIONAL{$this rdfs:label ?thisLabel} . FILTER NOT EXISTS {$this era:etcsBaseline ?value} . }

EtcsInfill
type: PropertyShape
affected property: etcsInfill
affected class: ETCS
scope: local
comment: Information about installed trackside equipment capable of transmitting infill information by loop or Global System for Mobile communications for Railways (GSM-R) for level 1 installations.
rinf index: 1.1.1.3.2.4
rinf index: 1.2.1.1.1.4
path: etcsInfill
node kind: IRI
max count: 1
severity: Violation
message: etcsInfill (1.1.1.3.2.4, 1.2.1.1.1.4): The ETCS may have an ETCS infill, and its value must be an IRI. This error is due to the ETCS instance having more than one value or having a value that is not an IRI.

EtcsInfillSKOS
type: SPARQLConstraint
affected property: etcsInfill
affected class: ETCS
scope: local
comment: Information about installed trackside equipment capable of transmitting infill information by loop or Global System for Mobile communications for Railways (GSM-R) for level 1 installations.
rinf index: 1.1.1.3.2.4
rinf index: 1.2.1.1.1.4
severity: Violation
message: etcsInfill (1.1.1.3.2.4, 1.2.1.1.1.4): The ETCS {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-infills/.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:etcsInfill ?concept . era:etcsInfill era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

EtcsInfillApplicability
type: SPARQLConstraint
affected property: etcsInfill
affected class: ETCS
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 contains 1. Related to rule for etcsLevelType
rinf index: 1.1.1.3.2.4
rinf index: 1.2.1.1.1.4
severity: Warning
message: etcsInfill (1.1.1.3.2.4, 1.2.1.1.1.4): The ETCS {$this} ({?thisLabel}), has a ETCS level type value of 1 which makes the etcsInfill parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?thisLabel WHERE { $this era:etcsLevelType <http://data.europa.eu/949/concepts/etcs-levels/20>. OPTIONAL{$this rdfs:label ?thisLabel} . FILTER NOT EXISTS {$this era:etcsInfill ?value} . }

EtcsMVersion
type: PropertyShape
affected property: etcsMVersion
affected class: ETCS
scope: local
comment: ETCS_M version according to SRS 7.5.1.9
rinf index: 1.1.1.3.2.10
rinf index: 1.2.1.1.1.10
path: etcsMVersion
max count: 1
node kind: IRI
severity: Violation
message: etcsMVersion (1.1.1.3.2.10, 1.2.1.1.1.10): The ETCS has at most one ETCS_M version value and it must be an IRI. This error is due to the ETCS having more than one value or having a value that is not an IRI.

EtcsMVersionSKOS
type: SPARQLConstraint
affected property: etcsMVersion
affected class: ETCS
scope: local
comment: ETCS_M version according to SRS 7.5.1.9
rinf index: 1.1.1.3.2.10
severity: Violation
message: Indication of the etcsMVersion (1.1.1.3.2.10, 1.1.1.3.2.10):): The ETCS {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-m-versions/ETCSMVersions.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:etcsMVersion ?concept . era:etcsMVersion era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EtcsMVersionApplicability
type: SPARQLConstraint
affected property: etcsMVersion
affected class: ETCS
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 contains 1. Related to rule for etcsLevelType
rinf index: 1.1.1.3.2.10
rinf index: 1.2.1.1.1.10
severity: Warning
message: etcsMVersion (1.1.1.3.2.10, 1.2.1.1.1.10): The ETCS {$this} ({?thisLabel}), has a ETCS level type '1' which makes the etcsMVersion parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?thisLabel WHERE { $this era:etcsLevelType <http://data.europa.eu/949/concepts/etcs-levels/20>. OPTIONAL{$this rdfs:label ?thisLabel} . FILTER NOT EXISTS {$this era:etcsMVersion ?value} . }

EtcsLevelType
type: PropertyShape
affected property: etcsLevelType
affected class: ETCS
scope: local
comment: Indicates the type associated as a SKOS concept from the era:ETCSLevel related to the track side equipment.
rinf index: 1.1.1.3.2.1
rinf index: 1.2.1.1.1.1
path: etcsLevelType
max count: 1
node kind: IRI
severity: Violation
message: etcsLevelType (1.1.1.3.2.1, 1.2.1.1.1.1): The ETCS has at most one etcsLevelType value and it must be an IRI. This error is due to the ETCS having more than one value or having a value that is not an IRI.

EtcsLevelTypeSKOS
type: SPARQLConstraint
affected property: etcsLevelType
affected class: ETCS
scope: local
comment: Indicates the type associated as a SKOS concept from the era:ETCSLevel related to the track side equipment.
rinf index: 1.1.1.3.2.10
rinf index: 1.2.1.1.1.1
severity: Violation
message: Indication of the etcsLevelType (1.1.1.3.2.1, 1.2.1.1.1.1): The ETCS {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-levels/.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:etcsLevelType ?concept . era:etcsLevelType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EtcsTransmitsTrackConditions
type: PropertyShape
affected property: etcsTransmitsTrackConditions
affected class: ETCS
scope: local
comment: If the trackside does not provide Track Conditions, the driver will need to be informed about such conditions via alternative methods.
rinf index: 1.1.1.3.2.12
rinf index: 1.2.1.1.1.12
path: etcsTransmitsTrackConditions
max count: 1
datatype: boolean
severity: Violation
message: etcsTransmitsTrackConditions (1.1.1.3.2.12, 1.2.1.1.1.12): Each Track may define the existence of ETCS trackside engineered to transmit Track Conditions. This error is due to having more than one value or having a value that is not Y/N (boolean).

EtcsTransmitsTrackConditionsApplicability
type: SPARQLConstraint
affected property: etcsTransmitsTrackConditions
affected class: ETCS
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.12
rinf index: 1.2.1.1.1.12
severity: Warning
message: etcsTransmitsTrackConditions (1.1.1.3.2.12.1, 1.2.1.1.1.12.1): The ETCS {$this} ({?thisLabel}), has a ETCS level type which makes the etcsTransmitsTrackConditions parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?thisLabel WHERE { $this era:etcsLevelType ?type. OPTIONAL{$this rdfs:label ?thisLabel} . FILTER NOT EXISTS {$this era:etcsTransmitsTrackConditions ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:etcsTransmitsTrackConditions} . }

EtcsTransmittedTrackConditions
type: PropertyShape
affected property: etcsTransmittedTrackConditions
affected class: ETCS
scope: local
comment: Transmittable track conditions by the CCSSubsystem, as per CCS TSI.
rinf index: 1.1.1.3.2.12.1
rinf index: 1.2.1.1.1.12.1
path: etcsTransmittedTrackConditions
max count: 1
node kind: IRI
severity: Violation
message: etcsTransmittedTrackConditions (1.1.1.3.2.12.1, 1.2.1.1.1.12.1): The ETCS has at most one etcsTransmittedTrackConditions value and it must be an IRI. This error is due to the ETCS having more than one value or having a value that is not an IRI.

EtcsTransmittedTrackConditionsSKOS
type: SPARQLConstraint
affected property: etcsTransmittedTrackConditions
affected class: ETCS
scope: local
comment: Transmittable track conditions by the CCSSubsystem, as per CCS TSI.
rinf index: 1.1.1.3.2.12.1
rinf index: 1.2.1.1.1.12.1
severity: Violation
message: etcsTransmittedTrackConditions (1.1.1.3.2.12.1, 1.2.1.1.1.12.1): The ETCS {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-transmitted-tcs/TransmittedTrackConditions.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:etcsTransmittedTrackConditions ?concept . era:etcsTransmittedTrackConditions era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EtcsTransmittedTrackConditionsApplicability
type: SPARQLConstraint
affected property: etcsTransmittedTrackConditions
affected class: ETCS
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.12.1
rinf index: 1.2.1.1.1.12.1
severity: Warning
message: etcsTransmittedTrackConditions (1.1.1.3.2.12.1, 1.2.1.1.1.12.1): The ETCS {$this} ({?thisLabel}), has a ETCS level type which makes the etcsTransmittedTrackConditions parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?thisLabel WHERE { $this era:etcsLevelType ?type. OPTIONAL{$this rdfs:label ?thisLabel} . FILTER NOT EXISTS {$this era:etcsTransmittedTrackConditions ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:etcsTransmittedTrackConditions} . }

EtcsSystemCompatibility
type: PropertyShape
affected property: etcsSystemCompatibility
affected class: ETCS
scope: local
comment: ETCS requirements used for demonstrating technical compatibility.
rinf index: 1.1.1.3.2.9
rinf index: 1.2.1.1.1.9
path: etcsSystemCompatibility
node kind: IRI
severity: Violation
message: etcsSystemCompatibility (1.1.1.3.2.9, 1.2.1.1.1.9): The ETCS has a etcsSystemCompatibility value that must be an IRI. This error is due to the ETCS having a value that is not an IRI.

EtcsSystemCompatibilitySKOS
type: SPARQLConstraint
affected property: etcsSystemCompatibility
affected class: ETCS
scope: local
comment: ETCS requirements used for demonstrating technical compatibility.
rinf index: 1.1.1.3.2.9
rinf index: 1.2.1.1.1.9
severity: Violation
message: etcsSystemCompatibility (1.1.1.3.2.9, 1.2.1.1.1.9): The ETCS {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-system-compatibilities/ETCSSystemCompatibilities.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:etcsSystemCompatibility ?concept . era:etcsSystemCompatibility era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

EtcsSystemCompatibilityApplicability
type: SPARQLConstraint
affected property: etcsSystemCompatibility
affected class: ETCS
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.9
rinf index: 1.2.1.1.1.9
severity: Warning
message: etcsSystemCompatibility (1.1.1.3.2.9, 1.2.1.1.1.9): The ETCS {$this} ({?thisLabel}), has a ETCS level type which makes the etcsSystemCompatibility parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?thisLabel WHERE { $this era:etcsLevelType ?type. OPTIONAL{$this rdfs:label ?thisLabel} . FILTER NOT EXISTS {$this era:etcsSystemCompatibility ?value} . }

Validity
type: PropertyShape
affected class: Feature
affected property: validity
scope: local
comment: Relates a feature with a temporal feature to indicate a validity period.
path: validity
class: TemporalFeature
severity: Violation
message: validity: The feature has a validity value that points to an instance of TemporalFeature. This error is due to having a value that is not an instance of TemporalFeature.

HasGeometry
type: PropertyShape
affected class: Feature
affected property: hasGeometry
scope: local
comment: Geographical coordinates in decimal degrees normally given for the centre of the OP.
rinf index: 1.2.0.0.0.5
rinf index: 1.1.0.0.1.1
rinf index: 1.1.1.0.1.1
rinf index: 1.1.1.3.14.6
rinf index: 1.2.1.0.8.5
path: hasGeometry
max count: 1
node kind: IRI
class: Geometry
severity: Violation
message: hasGeometry (1.2.0.0.0.5): Each feature must have at most one location. This error may be due to having a feature with more than one location or having a value that is not a geosparql:Geometry.

AsWKT
type: PropertyShape
affected class: Geometry
affected property: asWKT
scope: local
path: asWKT
min count: 1
max count: 1
datatype: wktLiteral
severity: Violation
message: geosparql:Geometry. This error may be due to having a Geometry without or with more than one asWKT property or it value is not from the wktLiteral type.

HotAxleBoxDetectorDirection
type: PropertyShape
affected property: hotAxleBoxDetectorDirection
affected class: HABD
scope: local
comment: Direction of measurement of the trackside HABD.
rinf index: 1.1.1.1.7.9
path: hotAxleBoxDetectorDirection
max count: 1
node kind: IRI
class: Concept
severity: Violation
message: hotAxleBoxDetectorDirection (1.1.1.1.7.9): The HABD must have at most one direction of measurement of the hot axle box detector value that is an IRI. This error may be due to HABD having more than one value of hot axle box detector direction, or having a value that is not an IRI.

HotAxleBoxDetectorDirectionSKOS
type: SPARQLConstraint
affected property: hotAxleBoxDetectorDirection
affected class: HABD
scope: local
comment: Direction of measurement of the trackside HABD.
rinf index: 1.1.1.1.7.9
severity: Violation
message: Indication of the hotAxleBoxDetectorDirection (1.1.1.1.7.9):): The HABD {$this} has a value {?concept} through the era:hotAxleBoxDetectorDirection property that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/hot-axle-box-detector-direction/HotAxleBoxDetectorDirections.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:hotAxleBoxDetectorDirection ?concept . era:hotAxleBoxDetectorDirection era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

HotAxleBoxDetectorDirectionApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorDirection
affected class: HABD
scope: local
comment: Specific for the French Italian and Swedish networks. If the direction of measurement is: - the same as the direction defined by the start and end of the SoL: (N); - the opposite to the direction defined by the start and end of the SoL: (O); - both directions: (B). “Y” if the answer to parameter 1.1.1.1.7.5 is “N”.
rinf index: 1.1.1.1.7.9
severity: Warning
message: hotAxleBoxDetectorDirection (1.1.1.1.7.9): This error is due to HABD {?label}, violating the rule: “Y” if the answer to parameter 1.1.1.1.7.5 is “N”
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?label WHERE { $this rdfs:label ?label . $this era:hotAxleBoxDetectorTSICompliant "0"^^xsd:boolean . FILTER NOT EXISTS {$this era:hotAxleBoxDetectorDirection ?value} . }

HotAxleBoxDetectorDirectionCountryApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorDirection
affected class: HABD
message: hotAxleBoxDetectorDirection: This property may only be used for HotAxleBoxDetectors located in France, Sweden, or Italy.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX eu-country: <http://publications.europa.eu/resource/authority/country/> SELECT ?val WHERE { ?this a era:HABD ; era:hotAxleBoxDetectorDirection ?val . { ?parent era:tracksideHabd ?this ; era:inCountry ?country . } FILTER (?country NOT IN ( eu-country:FRA, eu-country:SWE, eu-country:ITA )) }

HotAxleBoxDetectorGeneration
type: PropertyShape
affected property: hotAxleBoxDetectorGeneration
affected class: HABD
scope: local
comment: Applicable if trackside HABD is not TSI compliant. Generation of the trackside HABD.
rinf index: 1.1.1.1.7.7
path: hotAxleBoxDetectorGeneration
datatype: string
max count: 1
severity: Violation
message: hotAxleBoxDetectorGeneration (1.1.1.1.7.7): The HABD must have at most one generation of the hot axle box detector value that is a string of characters. This error may be due to having more than one value or having a value that is not a string.

HotAxleBoxDetectorGenerationApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorGeneration
affected class: HABD
scope: local
comment: Specific for the French Italian and Swedish networks. Generation of trackside hot axle box detector. “Y” if the answer to parameter 1.1.1.1.7.5 is “N”
rinf index: 1.1.1.1.7.7
severity: Warning
message: hotAxleBoxDetectorGeneration (1.1.1.1.7.7): This error is due to HABD {?label}, violating the rule: “Y” if the answer to parameter 1.1.1.1.7.5 is “N”
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT ?label WHERE { $this rdfs:label ?label . $this era:hotAxleBoxDetectorTSICompliant "0"^^xsd:boolean . FILTER NOT EXISTS {$this era:hotAxleBoxDetectorGeneration ?value} . }

HotAxleBoxDetectorGenerationCountryApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorGeneration
affected class: HABD
message: hotAxleBoxDetectorGeneration: This property may only be used for HotAxleBoxDetectors located in France, Sweden, or Italy.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX eu-country: <http://publications.europa.eu/resource/authority/country/> SELECT ?this WHERE { ?this a era:HABD ; era:hotAxleBoxDetectorGeneration ?val . { ?parent era:tracksideHabd ?this ; era:inCountry ?country . } FILTER (?country NOT IN ( eu-country:FRA, eu-country:SWE, eu-country:ITA )) }

HotAxleBoxDetectorIdentification
type: PropertyShape
affected property: hotAxleBoxDetectorIdentification
affected class: HABD
scope: local
comment: Specific for the French, Italian and Swedish networks. Applicable if trackside HABD is not TSI compliant. Identification of the trackside HABD.
rinf index: 1.1.1.1.7.6
path: hotAxleBoxDetectorIdentification
max count: 1
datatype: string
severity: Warning
message: hotAxleBoxDetectorIdentification (1.1.1.1.7.6): The HABD must have at most one value that defines the identification of the hot axle box detector and the value is a character string. This error may be due to having more than one value or having a value that is not a string.

HotAxleBoxDetectorIdentificationApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorIdentification
affected class: HABD
scope: local
comment: Specific for the French Italian and Swedish networks. Applicable if trackside HABD is not TSI compliant, identification of trackside hot axle box detector.@en
rinf index: 1.1.1.1.7.6
severity: Warning
message: hotAxleBoxDetectorIdentification (1.1.1.1.7.6): This error is due to HABD {?label}, violating the rule: “Y” if the answer to parameter 1.1.1.1.7.5 is “N”
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?label WHERE { $this rdfs:label ?label . $this era:hotAxleBoxDetectorTSICompliant "0"^^xsd:boolean . FILTER NOT EXISTS {$this era:hotAxleBoxDetectorIdentification ?value} . }

HotAxleBoxDetectorIdentificationCountryApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorIdentification
affected class: HABD
message: hotAxleBoxDetectorIdentification: This property may only be used for HotAxleBoxDetectors located in France, Sweden, or Italy.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX eu-country: <http://publications.europa.eu/resource/authority/country/> SELECT ?this WHERE { ?this a era:HABD ; era:hotAxleBoxDetectorIdentification ?val . { ?parent era:tracksideHabd ?this ; era:inCountry ?country . } FILTER (?country NOT IN ( eu-country:FRA, eu-country:SWE, eu-country:ITA )) }

HotAxleBoxDetectorLocation
type: PropertyShape
affected property: hotAxleBoxDetectorLocation
affected class: HABD
scope: local
comment: Applicable if trackside HABD is not TSI compliant. Location of the trackside HABD.
rinf index: 1.1.1.1.7.8
path: hotAxleBoxDetectorLocation
datatype: double
pattern: ^(\+|\-)?([1-9]\d{1,3}|[0-9])\.\d{1,3}$
severity: Violation
message: hotAxleBoxDetectorLocation (1.1.1.1.7.8): The HABD has a location of the hot axle box detector(s) value that must be a double (real) number with format [±NNNN.NNN]. This error may be due to having a value that is not a double (real) number or does not follow the pattern [±NNNN.NNN].

HotAxleBoxDetectorLocationApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorLocation
affected class: HABD
scope: local
comment: Specific for the French Italian and Swedish networks. Applicable if trackside HABD is not TSI compliant, localisation of trackside hot axle box detector.
rinf index: 1.1.1.1.7.8
severity: Warning
message: hotAxleBoxDetectorLocation (1.1.1.1.7.8): This error is due to the HABD {?label}, violating the rule: “Y” if the answer to parameter 1.1.1.1.7.5 is “N”
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?label WHERE { $this rdfs:label ?label . $this era:hotAxleBoxDetectorTSICompliant "0"^^xsd:boolean . FILTER NOT EXISTS {$this era:hotAxleBoxDetectorLocation ?value} . }

HotAxleBoxDetectorLocationCountryApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorLocation
affected class: HABD
message: hotAxleBoxDetectorLocation: This property may only be used for HotAxleBoxDetectors located in France, Sweden, or Italy.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX eu-country: <http://publications.europa.eu/resource/authority/country/> SELECT ?this WHERE { ?this a era:HABD ; era:hotAxleBoxDetectorLocation ?val . { ?parent era:tracksideHabd ?this ; era:inCountry ?country . } FILTER (?country NOT IN ( eu-country:FRA, eu-country:SWE, eu-country:ITA )) }

HotAxleBoxDetectorTSICompliant
type: PropertyShape
affected property: hotAxleBoxDetectorTSICompliant
affected class: HABD
scope: local
comment: Trackside HABD compilant to TSI means that the HABD is compliant with EN 15437:2009 and specific cases mentioned in TSIs.
rinf index: 1.1.1.1.7.5
path: hotAxleBoxDetectorTSICompliant
max count: 1
datatype: boolean
severity: Violation
message: hotAxleBoxDetectorTSICompliant (1.1.1.1.7.5): The HABD must have at most one value that defines if the hot axle box detector is TSI compliant and the value is Y/N (boolean). This error may be due to having more than one value or having a value that is not Y/N (boolean).

HotAxleBoxDetectorTSICompliantCountryApplicability
type: SPARQLConstraint
affected property: hotAxleBoxDetectorTSICompliant
affected class: HABD
message: hotAxleBoxDetectorTSICompliant: This property may only be used for HotAxleBoxDetectors located in France, Sweden, or Italy.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX eu-country: <http://publications.europa.eu/resource/authority/country/> SELECT ?this WHERE { ?this a era:HABD ; era:hotAxleBoxDetectorTSICompliant ?val . { ?parent era:tracksideHabd ?this ; era:inCountry ?country . } FILTER (?country NOT IN ( eu-country:FRA, eu-country:SWE, eu-country:ITA )) }

RdfsLabel
type: PropertyShape
affected property: label
scope: local
path: label
datatype: langString
node kind: Literal
unique lang: true
severity: Violation
message: rdfs:label: Each infrastructure element must have at least one label in English (@en). Additional multilingual labels are allowed, but only one value per language tag is permitted. All values must be language-tagged string literals.
sparql: SPARQLConstraint
  select: SELECT $this WHERE { FILTER NOT EXISTS { $this $PATH ?value . FILTER (LANGMATCHES(lang(?value), "en") ) } }

InfrastructureManagerSKOSValue
type: SPARQLConstraint
affected property: hasOrganisationRole
affected property: infrastructureManager
affected property: belongsTo
affected class: InfrastructureElement
affected class: CommonCharacteristicsSubset
affected class: OrganisationRole
scope: local
comment: Each infrastructure element can only be submitted by one infrastructure manager, represented by a four-digit code.
rinf index: 1.2.1.0.6.1
rinf index: 1.1.0.0.0.1
rinf index: 1.1.1.1.8.1
rinf index: 1.2.1.0.0.1
rinf index: 1.2.1.0.5.1
rinf index: 1.2.2.0.0.1
rinf index: 1.2.2.0.5.1
message: imCode (1.2.1.0.6.1): Each infrastructure element {$this} with label {?label} refers to a network (subset with common characteristics), that in turn refers to an instance of an OrganisationRole. This instance must have an era:organisationRole pointing to the value era-organisation-roles:IM in the orgRoles SKOS concept scheme. The error is due to a {?value} different from <http://data.europa.eu/949/concepts/organisation-roles/IM>
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?label ?value WHERE { $this a era:InfrastructureElement . $this era:belongsTo ?subset . ?subset era:infrastructureManager ?orgRole . ?orgRole era:hasOrganisationRole ?value . OPTIONAL{$this rdfs:label ?label} . FILTER(?value != <http://data.europa.eu/949/concepts/organisation-roles/IM>) . }

InCountry
type: PropertyShape
affected property: inCountry
affected class: InfrastructureElement
scope: local
comment: Indicates the country to which the infrastructure element belongs
path: inCountry
max count: 1
node kind: IRI
severity: Violation
message: inCountry: Each infrastructure element must have exactly one country. This error may be due to having an infrast without or with more than one country or it value is not a Concept.

InCountrySKOS
type: SPARQLConstraint
affected property: inCountry
affected class: InfrastructureElement
scope: local
comment: Indicates the country to which the infrastructure element belongs
severity: Violation
message: The infrastructure element {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://publications.europa.eu/resource/authority/country.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:inCountry ?concept . FILTER NOT EXISTS{ ?concept skos:inScheme <http://publications.europa.eu/resource/authority/country> . } }

ParameterApplicability
type: PropertyShape
affected class: InfrastructureElement
affected property: parameterApplicability
scope: local
comment: Applicability interval that defines the date interval in which a characteristic of an infrastructure element is applicable. This interval can be applied for any of the technical characteristics or general information of infrastructure elements. This helps identifying planned changes applied to technical parameters over time.
path: parameterApplicability
class: ParameterApplicability
severity: Violation
message: parameterApplicability: The infratructure element may have a parameterApplicability reference that must be an instance of ParameterApplicability. This error is due to having having a value that is not an instance of ParameterApplicability.

BelongsToUniqueIM
type: SPARQLConstraint
affected property: belongsTo
affected property: organisationCode
affected property: infrastructureManager
affected class: InfrastructureElement
affected class: CommonCharacteristicsSubset
affected class: OrganisationRole
scope: local
comment: Each infrastructure element may belong to several common characteristics subsets, and each of them must point to the same infrastructure manager (same organisationCode in the class organisationRole).
severity: Violation
message: belongsTo, organisationCode, infrastructureElement: This error is due to {$this} belonging to several common characteristics subsets, {?subset1Label}, {?subset2Label} that do not point to the same infrastructure manager (different organisationCodes), {?orgCode1}, {?orgCode2}.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?subset1Label ?subset2Label ?orgCode1 ?orgCode2 WHERE { $this era:belongsTo ?subset1 . $this era:belongsTo ?subset2 . ?subset1 era:infrastructureManager ?orgRole1. ?subset2 era:infrastructureManager ?orgRole2. ?orgRole1 era:organisationCode ?orgCode1. ?orgRole1 era:organisationCode ?orgCode2. FILTER(?orgCode1 != ?orgCode2) . OPTIONAL{?subset1 rdfs:label ?subset1Label} . OPTIONAL{?subset2 rdfs:label ?subset2Label} . }

BelongsTo
type: PropertyShape
affected class: InfrastructureElement
affected property: belongsTo
scope: local
comment: Relationship between an infratructure element and a common characteristics subset.
path: belongsTo
class: CommonCharacteristicsSubset
severity: Violation
message: belongsTo: The infratructure element may belong to a common characteristics subset, a reference that must be an instance of CommonCharacteristicsSubset. This error is due to having a value that is not an instance of CommonCharacteristicsSubset.

Contains
type: PropertyShape
affected class: CommonCharacteristicsSubset
affected property: contains
scope: local
comment: Relationship between a common characteristics subset and an infrastructure element (inverse of belongsTo).
path: contains
class: InfrastructureElement
severity: Violation
message: contains: The subset with common characteristics may contain an infrastructure element, a reference that must be an instance of InfrastructureElement. This error is due having a value that is not an instance of InfrastructureElement.

NetReference
type: PropertyShape
affected class: InfrastructureElement
affected property: netReference
scope: local
comment: The reference that a physical insfrastructure element has it on the topology. It may be used to define the positioning or a representation as a point. line or area.
path: netReference
class: NetBasicReference
severity: Violation
message: netReference: The infratructure element must have a net reference that points to an instance of NetBasicReference. This error is due to having a value that is not an instance of NetBasicReference.

PrimaryLocation
type: PropertyShape
affected class: InfrastructureElement
affected property: primaryLocation
scope: local
comment: Primary location code developed for information exchange in accordance with the TSIs relating to the telematics applications subsystem.
path: primaryLocation
class: PrimaryLocation
node kind: IRI
severity: Violation
message: primaryLocation: The infrastructure element has a primaryLocation reference that must be an IRI that refers to an instance of PrimaryLocation.

HasPart
type: PropertyShape
affected class: InfrastructureElement
affected property: hasPart
scope: local
comment: Indicates that an infrastructure element is composed of one or more other (distinct) infrastructure elements.
path: hasPart
class: InfrastructureElement
node kind: IRI
severity: Violation
message: hasPart: The InfrastructureElement may have a hasPart reference that is an IRI that refers to an instance of InfrastructureElement. This error is due to having a value that is not an instance of InfrastructureElement.

IsPartOf
type: PropertyShape
affected class: InfrastructureElement
affected property: isPartOf
scope: local
comment: Indicates that an infrastructure element is a part of another (distinct) infrastructure element.
path: isPartOf
class: InfrastructureElement
node kind: IRI
severity: Violation
message: hasPart: The InfrastructureElement may have a isPartOf reference that is an IRI that refers to an instance of InfrastructureElement. This error is due to having a value that is not an instance of InfrastructureElement.

NotYetAvailableProperty
type: PropertyShape
affected property: notYetAvailable
affected class: InfrastructureElement
scope: local
path: notYetAvailable
comment: Reference to a property that is not provided.
node kind: IRI
or:
  class: ObjectProperty
or:
  class: DatatypeProperty
severity: Violation
message: The value of this property is a reference to an ontology property that is not provided and it must be an IRI. The error may be due to the property not belonging to the ERA ontology or the property not being an IRI.

NotApplicableProperty
type: PropertyShape
affected property: notApplicable
affected class: InfrastructureElement
scope: local
path: notApplicable
comment: Reference to a property that is not applicable.
node kind: IRI
or:
  class: ObjectProperty
or:
  class: DatatypeProperty
severity: Violation
message: The value of this property is a reference to an ontology property that is not provided and it must be an IRI. The error may be due to the property not belonging to the ERA ontology or the property not being an IRI.

SubsetOf
type: PropertyShape
affected class: CommonCharacteristicsSubset
affected property: subsetOf
scope: local
comment: Relates a subset with common chatacteristics with another subset with common characteristics.
path: subsetOf
class: CommonCharacteristicsSubset
node kind: IRI
severity: Violation
message: subsetOf: The common characteristics subset must have a subsetOf reference that is an IRI that refers to an instance of another common characteristics subset. This error is due to having a value that is not an instance of CommonCharacteristicsSubset.

CanonicalURI
type: PropertyShape
affected class: InfrastructureElement
affected property: canonicalURI
scope: local
comment: Relates to the annotation for a canonical URI of an instance of Infrastructure and subclasses
path: canonicalURI
node kind: IRI
max count: 1
severity: Violation
message: canonicalURI: The canonical URI that is an IRI. This error is due to having a value that is not an IRI or having more than one value

OperatingLangague
type: PropertyShape
affected class: InfrastructureElement
affected property: operatingLanguage
rinf index: 1.1.0.0.1.2
rinf index: 1.2.0.0.0.8
scope: local
comment: Relates to the operating language used for an infastructure element
path: operatingLanguage
node kind: IRI
class: Concept
severity: Violation
message: operating language (1.1.0.0.1.2 , 1.2.0.0.0.8): The operating language thatthat is an IRI. This error is due to having a value that is not an IRI

OperatingLangagueSKOS
type: SPARQLConstraint
affected property: operatingLanguage
affected class: InfrastructureElement
scope: local
comment: Relates to the operating language used for an infastructure element
rinf index: 1.1.0.0.1.2
rinf index: 1.2.0.0.0.8
severity: Violation
message: operating language (1.1.0.0.1.2 , 1.2.0.0.0.8): The operating language {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list:http://publications.europa.eu/resource/authority/language.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:operatingLanguage ?concept . era:operatingLanguage era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} ) }

SubsetName
type: PropertyShape
affected class: CommonCharacteristicsSubset
affected property: subsetName
scope: local
comment: A subset of elements with common characteristics could be identified with a unique name/id.
path: subsetName
datatype: langString
node kind: Literal
unique lang: true
severity: Violation
message: subsetName: Each Common Characteristics Subset may have a name. If it does, there should be at least one name in English (@en). Additional multilingual names are allowed, but only one value per language tag is permitted. All values must be language-tagged string literals.
sparql: SPARQLConstraint
  select: SELECT $this WHERE { # If the property exists $this $PATH ?anyName . # then there should exist at least one English value FILTER NOT EXISTS { $this $PATH ?value . FILTER (LANGMATCHES(lang(?value), "en") ) } }

Kilometer
type: PropertyShape
affected class: KilometricPost
affected property: kilometer
scope: local
comment: Distance measured in kilometers from the origin of a national railway line/route.
rinf index: 1.1.1.1.8.12.1
rinf index: 1.1.1.1.8.13.1
rinf index: 1.1.1.3.14.3
rinf index: 1.1.1.3.14.7
rinf index: 1.2.0.0.0.6
rinf index: 1.2.1.0.5.10.1
rinf index: 1.2.1.0.5.11.1
rinf index: 1.2.1.0.8.3
rinf index: 1.2.2.0.5.10.1
rinf index: 1.2.2.0.5.9.1
path: kilometer
datatype: double
severity: Violation
message: kilometer (1.1.1.1.8.12.1, 1.1.1.1.8.13.1, 1.1.1.3.14.3, 1.1.1.3.14.7, 1.2.0.0.0.6, 1.2.1.0.5.10.1, 1.2.1.0.5.11.1, 1.2.1.0.8.3, 1.2.2.0.5.10.1, 1.2.2.0.5.9.1): The kilometer must be represented as a double number.

MeasuredDistance
type: PropertyShape
affected class: KilometricPost
affected property: measuredDistance
scope: local
comment: Measured distance from the origin of the LRS.
path: measuredDistance
datatype: double
severity: Violation
message: measuredDistance: The kilometer post measured distance must be represented as a double number.

Aggregates
type: PropertyShape
affected class: NonLinearElement
affected property: aggregates
scope: local
comment: Specifies the linear elements aggregated by a non-linear element.
path: contains
class: LinearElement
severity: Violation
message: aggregates: The non linear element may aggregate only linear elements. This error is due having a value that is not an instance of LinearElement.

ElementA
type: PropertyShape
affected class: NetRelation
affected property: elementA
scope: local
comment: References the first topological element in an oriented relation. For example, it may indicate the object that corresponds to a section of line, an operational point or a track inside an operational point connected at start.
path: netRelation
class: LinearElement
severity: Violation
message: elementA: The net relation references the first topological object that must be an instance of a linear element. This error is due having a value that is not an instance of LinearElement.

ElementB
type: PropertyShape
affected class: NetRelation
affected property: elementB
scope: local
comment: References the second topological linear element in an oriented relation. For example, it may indicate the object that corresponds to a section of line, an operational point or a track inside an operational point connected at end.
path: netRelation
class: LinearElement
severity: Violation
message: elementB: The net relation references the second topological object that must be an instance of a linear element. This error is due having a value that is not an instance of LinearElement.

Navigability
type: PropertyShape
affected property: navigability
affected class: NetRelation
scope: local
comment: Indicates the navigation possibilities between two related topological linear elements.
path: navigability
node kind: IRI
severity: Violation
message: navigability: The net relation must have a navigability value that is an IRI.

NavigabilitySKOS
type: SPARQLConstraint
affected property: navigability
affected class: NetRelation
scope: local
comment: Indicates the navigation possibilities between two related topological linear elements.
severity: Violation
message: era:navigability: The net relation {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/navigabilities/Navigabilities.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL {$this rdfs:label ?thisLabel} . $this era:navigability ?concept . era:navigability era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme } }

OnElement
type: PropertyShape
affected class: LinearElementSection
affected property: onElement
scope: local
comment: Specifies the linear element a section belongs to.
path: onElement
class: LinearElement
severity: Violation
message: onElement: The linear element section specifies the linear element it belongs to. This error is due having a value that is not an instance of LinearElement.

OnLinearElement
type: PropertyShape
affected class: TopologicalCoordinate
affected property: onLinearElement
scope: local
comment: Specifies the linear element a coordinate is associated with.
path: onLinearElement
class: LinearElement
severity: Violation
message: onLinearElement: The topological coordinate specifies the linear element it belongs to. This error is due having a value that is not an instance of LinearElement.

AppliesInBothDirections
type: PropertyShape
affected class: LinearElementSection
affected property: appliesInBothDirections
scope: local
comment: Specifies if the section applies in both directions (optional).
path: appliesInBothDirections
datatype: boolean
severity: Violation
message: appliesInBothDirections: The linear element section specifies if the section applies in both directions (optional). This error is due having a value that is not a boolean.

EndOffsetFromOrigin
type: PropertyShape
affected class: LinearElementSection
affected property: endOffsetFromOrigin
scope: local
comment: End offset of the section from the origin.
path: endOffsetFromOrigin
max count: 1
min count: 1
datatype: double
pattern: ^[1-9][0-9]*(\.0+)?$
severity: Violation
message: endOffsetFromOrigin: The linear element section specifies the end offset of the section from the origin. This error is due having a value that is not a positive integer or more than one value.

IsOnOriginOfElementA
type: PropertyShape
affected class: NetRelation
affected property: isOnOriginOfElementA
scope: local
comment: Determines if the position of the topological element A in a relation is the origin of element A.
path: isOnOriginOfElementA
datatype: boolean
severity: Violation
message: isOnOriginOfElementA: The net relation specifies if the position of the topological element A in a relation is the origin of element A. This error is due having a value that is not a boolean.

IsOnOriginOfElementB
type: PropertyShape
affected class: NetRelation
affected property: isOnOriginOfElementB
scope: local
comment: Determines if the position of the topological element B in a relation is the origin of element B.
path: isOnOriginOfElementB
datatype: boolean
severity: Violation
message: isOnOriginOfElementB: The net relation specifies if the position of the topological element B in a relation is the origin of element B. This error is due having a value that is not a boolean.

LengthOfNetLinearElement
type: PropertyShape
affected class: LinearElement
affected property: lengthOfNetLinearElement
scope: local
comment: Length of a linear element.
path: lengthOfNetLinearElement
max count: 1
datatype: double
severity: Violation
message: lengthOfNetLinearElement: The linear element has at most one value of length and it is a double number. This error is due to having more than one value or that the value is not a double number.

OffsetFromOrigin
type: PropertyShape
affected class: TopologicalCoordinate
affected property: offsetFromOrigin
scope: local
comment: Offset from the origin in a topological coordinate.
path: offsetFromOrigin
datatype: positiveInteger
min count: 1
max count: 1
severity: Violation
message: offsetFromOrigin: The offset from the origin in a topological coordinate must be represented as a positive integer or more than one value.

StartOffsetFromOrigin
type: PropertyShape
affected class: LinearElementSection
affected property: startOffsetFromOrigin
scope: local
comment: Start offset of the section from the origin.
path: startOffsetFromOrigin
datatype: double
min count: 1
max count: 1
pattern: ^[1-9][0-9]*(\.0+)?$
severity: Violation
message: startOffsetFromOrigin: The start offset of the section from the origin must be represented as a positive integer or more than one value.

NoRepeatedTrackIdsOP
type: SPARQLConstraint
affected property: trackId
affected class: RunningTrack
affected class: OperationalPoint
scope: global
comment: Each track shall have unique identification or number within the OP. This number cannot be used for naming any other track in the same OP.
rinf index: 1.2.1.0.0.2
severity: Violation
message: trackId (1.2.1.0.0.2):: Each track shall have unique identification or number within the OP. This number cannot be used for naming any other track in the same OP. There is a problem with OP {$this} ({?opLabel}) and tracks {?track1} ({?track1Label}) and {?track2} ({?track2Label}), since they have the same identifier: {?value}.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?opLabel ?track1 ?track1Label ?track2 ?track2Label ?value WHERE { $this a era:OperationalPoint ; era:hasPart ?track1 ; era:canonicalURI ?cano1 . $this a era:OperationalPoint ; era:hasPart ?track2 ; era:canonicalURI ?cano2 . ?track1 era:trackId ?value . ?track2 era:trackId ?value . FILTER(?track1 != ?track2) . FILTER(?cano1 != ?cano2) . OPTIONAL{$this rdfs:label ?opLabel} . OPTIONAL{?track1 rdfs:label ?track1Label} . OPTIONAL{?track2 rdfs:label ?track2Label} . }

OpName
type: PropertyShape
affected class: OperationalPoint
affected property: opName
scope: local
comment: Name normally related to the town or village or to traffic control purpose.
rinf index: 1.2.0.0.0.1
path: opName
datatype: langString
node kind: Literal
unique lang: true
severity: Violation
message: opName (1.2.0.0.0.1): Each Operational Point must have at least one name in English (@en). Additional multilingual names are allowed, but only one value per language tag is permitted. All values must be language-tagged string literals.
sparql: SPARQLConstraint
  select: SELECT $this WHERE { FILTER NOT EXISTS { $this $PATH ?value . FILTER (LANGMATCHES(lang(?value), "en") ) } }

UopidP
type: PropertyShape
affected class: OperationalPoint
affected property: uopid
scope: local
comment: Code composed of country code and alphanumeric OP code.
rinf index: 1.2.0.0.0.2
path: uopid
min count: 1
max count: 1
datatype: string
pattern: ^[A-Z]{2}.{0,10}$
severity: Violation
message: uopid (1.2.0.0.0.2): This error is due to having more than one op id, not having an op id, having a value that is not a string, or having a value that does not follow the pattern where the first part 'AA' is the country code in two-letter system of ISO (or 'EU' for border points) and the second part is the alphanumeric OP code within the MS.

OpTypeP
type: PropertyShape
affected class: OperationalPoint
affected property: opType
scope: local
comment: Type of facility in relation to the dominating operational functions.Each existing case has to be approximated to the one of the above defined types by including size, importance and dominating functions. It is most important to recognize the most important role of specific OP in the network. That is why only one type for one OP is permitted.
rinf index: 1.2.0.0.0.4
path: opType
min count: 1
max count: 1
node kind: IRI
severity: Violation
message: opType (1.2.0.0.0.4): Each Operational Point must have exactly one type. This error may be due to having an OP with no type or with more than one type, or its value is not an IRI.

OpTypeSKOS
type: SPARQLConstraint
affected class: OperationalPoint
affected property: opType
scope: local
comment: Type of facility in relation to the dominating operational functions. Each existing case has to be approximated to the one of the above defined types by including size, importance and dominating functions. It is most important to recognize the most important role of specific OP in the network. That is why only one type for one OP is permitted.
rinf index: 1.2.0.0.0.4
severity: Violation
message: Type of operational point (1.2.0.0.0.4): The OP {$this} (label {?opLabel}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/op-types/OperationalPointTypes.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?opLabel WHERE { OPTIONAL {$this rdfs:label ?opLabel} . $this era:opType ?concept . era:opType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

OpTypeGaugeChangeover
type: PropertyShape
affected class: OperationalPoint
affected property: opTypeGaugeChangeover
scope: local
comment: Type of track gauge changeover facility.
rinf index: 1.2.0.0.0.4.1
path: opTypeGaugeChangeover
max count: 1
datatype: string
severity: Violation
message: opTypeGaugeChangeover (1.2.0.0.0.4.1): The Operational Point must have at most one value of opTypeGaugeChangeover and its type must be a string.

DigitalSchematicOverview
type: PropertyShape
affected class: OperationalPoint
affected property: digitalSchematicOverview
scope: local
comment: Diagrammatic representation of the operational point in Well Known Text polyline
rinf index: 1.2.0.0.0.7.2
path: digitalSchematicOverview
severity: Violation
datatype: wktLiteral
message: digitalSchematicOverview (1.2.0.0.0.7.2): The Operational Point has a digitalSchematicOverview reference that must be a Well Known Text literal.

HasSchematicOverviewOPDigitalForm
type: PropertyShape
affected class: OperationalPoint
affected property: hasSchematicOverviewOPDigitalForm
scope: local
comment: The existence of a schematic overview of the operational point in digital form.
rinf index: 1.2.0.0.0.7
path: hasSchematicOverviewOPDigitalForm
datatype: boolean
severity: Violation
message: hasSchematicOverviewOPDigitalForm (1.2.0.0.0.7): The Operational Point has a hasSchematicOverviewOPDigitalForm reference that must be a boolean.

HasPartOP
type: PropertyShape
affected class: OperationalPoint
affected property: hasPart
scope: local
comment: Reference from an aggregated element to a basic element.
path: hasPart
node kind: IRI
or:
  class: Track
or:
  class: KilometricPost
severity: Violation
message: hasPart from an operational point : The Operational Point may have a hasPart reference that is a Track object (or the subclasses RunningTrack and Siding), or a KilometricPost object. This error may be due to a hasPart relationship from an operational point that is not a Track nor a KilometricPost.

HasPartTrackOP
type: SPARQLConstraint
affected class: OperationalPoint
affected property: hasPart
severity: Warning
message: Each Operational Point that is not a switch, a junction, a technical change, a depot or workshop, or a border point must have a hasPart reference that is a Track object (or one of the subclasses: RunningTrack and Siding). This error is due to {$this} not having a hasPart reference to an instance of an era:Track (or a subclass).
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT ?this WHERE { ?this era:opType ?opType . FILTER (?opType NOT IN ( <http://data.europa.eu/949/concepts/op-types/120>, <http://data.europa.eu/949/concepts/op-types/110>, <http://data.europa.eu/949/concepts/op-types/80>, <http://data.europa.eu/949/concepts/op-types/50>, <http://data.europa.eu/949/concepts/op-types/90> )) . FILTER NOT EXISTS { ?this era:hasPart ?part . ?part rdf:type ?partType . { ?partType rdfs:subClassOf era:Track . } UNION { FILTER (?partType = era:Track) } } }

BorderPointValidCode
type: SPARQLConstraint
affected class: OperationalPoint
affected property: uopid
scope: local
comment: Code composed of country code and alphanumeric OP code.
rinf index: 1.2.0.0.0.2
severity: Violation
message: uopid (1.2.0.0.0.2): The OperationalPoint {$this} with id {?uopid} and label {?opLabel} is a border point that references a ReferenceBorderPoint, but its uopid does not match the borderPointId of the referenced point ('{?uopid}' ≠ '{?refId}').
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?uopid ?refId ?opLabel WHERE { $this era:opType <http://data.europa.eu/949/concepts/op-types/90> ; # Border point era:referenceBorderPoint ?refBP ; era:uopid ?uopid . ?refBP a era:ReferenceBorderPoint ; era:borderPointId ?refId . OPTIONAL { $this rdfs:label ?opLabel } FILTER (?uopid != ?refId) }

BorderPointValidCoordinates
type: SPARQLConstraint
affected class: OperationalPoint
affected property: asWKT
scope: local
comment: Coordinates must be sufficiently similar (within tolerance) to the referenced border point.
severity: Violation
message: Coordinates: The OperationalPoint {$this} with label {?opLabel} is a border point whose coordinates are too far from the referenced ReferenceBorderPoint (distance: {?distance} degrees, max allowed: 0.0001 degrees ≈ 11 meters). OP coordinates: {?opWKT} Reference coordinates: {?refWKT}
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX geo: <http://www.opengis.net/ont/geosparql#> PREFIX geof: <http://www.opengis.net/def/function/geosparql/> PREFIX uom: <http://www.opengis.net/def/uom/OGC/1.0/> SELECT DISTINCT $this ?opWKT ?refWKT ?opLabel ?distance WHERE { $this era:opType <http://data.europa.eu/949/concepts/op-types/90> ; # Border point era:referenceBorderPoint ?refBP ; geo:hasGeometry ?opGeom . ?opGeom geo:asWKT ?opWKT . ?refBP a era:ReferenceBorderPoint ; geo:hasGeometry ?refGeom . ?refGeom geo:asWKT ?refWKT . OPTIONAL { $this rdfs:label ?opLabel } # Calculate distance between the two point geometries # Using geof:distance in degrees (default for WGS84) BIND(geof:distance(?opWKT, ?refWKT, uom:degree) AS ?distance) # Allow tolerance of 0.0001 degrees (approximately 11 meters at equator) # Adjust this threshold based on your data quality requirements FILTER (?distance > 0.0001) }

ReferenceBorderPoint
type: PropertyShape
affected class: OperationalPoint
affected property: referenceBorderPoint
scope: local
comment: Relates an operational point that is a border point with an instance of the list of reference border points that are specified in the RINF Application Guide.
path: referenceBorderPoint
node kind: IRI
class: ReferenceBorderPoint
max count: 1
severity: Violation
message: referenceBorderPoint : The Operational Point may have a reference border point that is a ReferenceBorderPoint object. This error may be due to having more than one value of a reference border point, or having a value that is not a ReferenceBorderPoint instance.

BorderPointUopidPrefix
type: SPARQLConstraint
affected class: OperationalPoint
affected property: uopid
severity: Violation
message: uopid (1.2.0.0.0.2-prefix): The OperationalPoint {$this} with name {?opName} is a border point but its uopid {?uopid} does not start with 'EU' as required.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?uopid ?opName WHERE { $this era:opType <http://data.europa.eu/949/concepts/op-types/90> . # Border point OPTIONAL { $this era:opName ?opName } . $this era:uopid ?uopid . FILTER(!STRSTARTS(STR(?uopid), "EU")) }

ReferenceBorderPointApplicability
type: SPARQLConstraint
affected class: OperationalPoint
affected property: referenceBorderPoint
severity: Warning
message: referenceBorderPoint: The OperationalPoint {$this} with name {?opName} is a border point but does not have a referenceBorderPoint property.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?uopid ?opName WHERE { $this era:opType <http://data.europa.eu/949/concepts/op-types/90> . # Border point OPTIONAL { $this era:opName ?opName } . FILTER NOT EXISTS {$this era:referenceBorderPoint ?refBP .} }

NetReferenceOP
type: PropertyShape
affected property: netReference
affected class: OperationalPoint
scope: local
comment: The reference that an OperationalPoint has on the topology. It must point to an instance of NetBasicReference.
path: netReference
min count: 1
class: NetBasicReference
node kind: IRI
severity: Violation
message: netReference: Each OperationalPoint must have at least one netReference pointing to an instance of NetBasicReference. This error is due to not having a value or having a value that is not a NetBasicReference.

OrganisationCode
type: PropertyShape
affected class: OrganisationRole
affected property: organisationCode
scope: local
comment: Four alpha-numeric code allocated by ERA to a body. It represent's the Infrastructure Manager (IM) code in RINF. Infrastructure manager means any body or firm responsible in particular for establishing, managing and maintaining railway infrastructure, including traffic management and control-command and signalling; the functions of the infrastructure manager on a network or part of a network may be allocated to different bodies or firms. Definition in (Article 3(2)).
rinf index: 1.2.1.0.6.1
rinf index: 1.1.0.0.0.1
rinf index: 1.1.1.1.8.1
rinf index: 1.2.1.0.0.1
rinf index: 1.2.1.0.5.1
rinf index: 1.2.2.0.0.1
rinf index: 1.2.2.0.5.1
path: organisationCode
datatype: string
min count: 1
max count: 1
min length: 4
max length: 4
severity: Violation
message: organisationCode (1.2.1.0.6.1, 1.1.0.0.0.1, 1.1.1.1.8.1, 1.2.1.0.0.1, 1.2.1.0.5.1, 1.2.2.0.0.1, 1.2.2.0.5.1): An OrganisationRole must have exactly one value of organisationCode. This error may be due to not having a value, having more than one value, having a value that is not a string or having a value that is not a four character code

RoleOf
type: PropertyShape
affected class: OrganisationRole
affected property: roleOf
scope: local
comment: Indicates the corresponding Body that plays a certain organisation role.
path: roleOf
class: Body
min count: 1
max count: 1
severity: Violation
message: roleOf: Each instance of Organization Role points thorugh roleOf to exactly one instance of Body. This error mae be due to having no value, having more than one value or having a value that is not an instance of Body.

Role
type: PropertyShape
affected class: Body
affected property: role
scope: local
comment: Indicates the relationship of a Body to the organisation roles that it can play.
path: role
class: OrganisationRole
min count: 1
severity: Violation
message: role: Each instance of a Body must have at least one role. This error mae be due to having no value or having a value that is not an instance of OrganisationRole.

HasOrganisationRole
type: PropertyShape
affected class: OrganisationRole
affected property: hasOrganisationRole
scope: local
comment: The role played in an n-ary relationship between a Body and a specific concept in the concept scheme of organisation roles.
path: hasOrganisationRole
min count: 1
max count: 1
node kind: IRI
severity: Violation
message: hasOrganisationRole: The organisation role must be represented as an IRI. This error may be due to not having a value, having more than one value, or having a value that is not an IRI.

HasOrganisationRoleSKOS
type: SPARQLConstraint
affected property: hasOrganisationRole
affected class: OrganisationRole
scope: local
comment: The role played in an n-ary relationship between a Body and a specific concept in the concept scheme of organisation roles.
severity: Violation
message: Indication of the hasOrganisationRole: The OrganisationRole {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/organisation-roles/.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:hasOrganisationRole ?concept . era:hasOrganisationRole era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

CarrierLinearElement
type: PropertyShape
affected class: Orientation
affected property: carrierLinearElement
scope: local
comment: The carrier linear element in relation to which the orientation is based on.
path: carrierLinearElement
node kind: IRI
class: LinearElement
severity: Violation
message: carrierLinearElement: The Orientation may reference a LinearElement through carrierLinearElement. This error is due to the value either not being an IRI, or being an IRI that is not an instance of LinearElement.

Direction
type: PropertyShape
affected class: Orientation
affected property: direction
scope: local
comment: The direction of the orientation of a railway element, in relation to the carrier linear element.
path: direction
node kind: IRI
severity: Violation
message: direction: The Orientation may reference a SKOS concept representing the direction in the form of an IRI. This error is due to the value not being an IRI.

DirectionSKOS
type: SPARQLConstraint
affected property: direction
affected class: Orientation
scope: local
comment: The direction of the orientation of a railway element, in relation to the carrier linear element.
severity: Violation
message: direction: The Orientation {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined OrientationDirections in the SKOS concept scheme http://data.europa.eu/949/concepts/orientations/OrientationDirections.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL { $this rdfs:label ?thisLabel } . $this era:direction ?concept . era:direction era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS { ?concept skos:inScheme ?conceptScheme } }

Orientation
type: PropertyShape
affected class: Orientation
affected property: orientation
scope: local
comment: The orientation of the object in relation to the carrier linear element. Possible values: Normal, Opposite, Both.
path: orientation
node kind: IRI
severity: Violation
message: orientation: The Orientation may reference a SKOS concept representing the orientation in the form of an IRI. This error is due to the value not being an IRI.

OrientationSKOS
type: SPARQLConstraint
affected property: orientation
affected class: Orientation
scope: local
comment: The orientation of the object in relation to the carrier linear element. Possible values: Normal, Opposite, Both.
severity: Violation
message: orientation: The Orientation {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined OrientationDirections in the SKOS concept scheme http://data.europa.eu/949/concepts/orientations/OrientationDirections.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL { $this rdfs:label ?thisLabel } . $this era:orientation ?concept . era:orientation era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS { ?concept skos:inScheme ?conceptScheme } }

Side
type: PropertyShape
affected class: Orientation
affected property: side
scope: local
comment: Indication of the position of the signal in relation to the track in the running direction from the origin of the referencing system (e.g., direction of the main line).
path: side
node kind: IRI
severity: Violation
message: side: The Orientation may reference a SKOS concept representing the side in the form of an IRI. This error is due to the value not being an IRI.

SideSKOS
type: SPARQLConstraint
affected property: side
affected class: Orientation
scope: local
comment: Indication of the position of the signal in relation to the track in the running direction from the origin of the referencing system.
severity: Violation
message: side: The Orientation {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined Sides in the SKOS concept scheme http://data.europa.eu/949/concepts/orientations/Sides.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL { $this rdfs:label ?thisLabel } . $this era:side ?concept . era:side era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS { ?concept skos:inScheme ?conceptScheme } }

OfParameter
type: PropertyShape
affected class: ParameterApplicability
affected property: ofParameter
scope: local
comment: Applicability interval defines the date interval in which a characteristic of an infrastructure element is applicable. The characteristic to which it applies is the ofParameter property.
path: ofParameter
node kind: IRI
or:
  class: ObjectProperty
or:
  class: DatatypeProperty
max count: 1
severity: Violation
message: ofParameter: An instance of parameter applicability must have exactly one value of the characteristic (ofParameter) to which it applies to. This error may be due to not having a value, having more than one value, having a value that is not an IRI or is not an object or datatype property in the ontology.

HasBeginning
type: PropertyShape
affected class: ParameterApplicability
affected property: hasBeginning
scope: local
comment: Applicability interval defines the date interval in which a characteristic of an infrastructure element is applicable.
path: hasBeginning
node kind: IRI
class: Instant
max count: 1
severity: Violation
message: hasBeginning: An instance of parameter applicability must have exactly one value of the beginning of the interval in which it is applicable. This error may be due to not having a value, having more than one value, having a value that is not an IRI or is not a time:Instant.

HasEnd
type: PropertyShape
affected class: ParameterApplicability
affected property: hasEnd
scope: local
comment: Applicability interval defines the date interval in which a characteristic of an infrastructure element is applicable.
path: hasEnd
node kind: IRI
class: Instant
max count: 1
severity: Violation
message: hasEnd: An instance of parameter applicability must have exactly one value of the end of the interval in which it is applicable. This error may be due to not having a value, having more than one value, having a value that is not an IRI or is not a time:Instant.

ParameterValueType
type: PropertyShape
affected class: ParameterApplicability
affected property: parameterValueType
scope: local
comment: In the case of a change in the value of a parameter, there needs to be an information on the type of the new value. The “Value type” will have different possible options: “nominal”, “planned temporary restriction”, “permanent restriction”, “planned temporary closure.
path: parameterValueType
node kind: IRI
max count: 1
severity: Violation
message: parameterValueType: An instance of parameter applicability must have exactly one value of the parameter value type. This error may be due to not having a value, having more than one value, having a value that is not an IRI.

ParameterValueTypeSKOS
type: SPARQLConstraint
affected property: parameterValueType
affected class: ParameterApplicability
scope: local
comment: In the case of a change in the value of a parameter, there needs to be an information on the type of the new value. The “Value type” will have different possible options: “nominal”, “planned temporary restriction”, “permanent restriction”, “planned temporary closure.
severity: Violation
message: parameterValueType: The parameter applicability {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/parameterApplicability/ValueTypes.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL {$this rdfs:label ?thisLabel} . $this era:parameterValueType ?concept . era:parameterValueType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme } }

ParameterValue
type: PropertyShape
affected class: ParameterApplicability
affected property: parameterValue
scope: local
comment: This property is used to link an applicability to the precise value of the parameter
path: parameterValue
max count: 1
severity: Violation
message: parameterValue: An instance of parameter applicability must have exactly one value of the parameter value. This error may be due to not having a value or having more than one value.

PlatformId
type: PropertyShape
affected property: platformId
affected class: PlatformEdge
scope: local
comment: Unique platform identification or unique platform number within OP.
rinf index: 1.2.1.0.6.2
path: platformId
min count: 1
max count: 1
datatype: string
severity: Violation
message: platformId (1.2.1.0.6.2): Each Platform must have exactly one platformId. This error may be due to having a platform without or with more than one platformId or it value is not a string.

NoRepeatedPlatformIdsOP
type: SPARQLConstraint
affected property: platformId
affected class: PlatformEdge
affected class: OperationalPoint
scope: global
comment: Each platform shall have unique identification or number within the OP. This number cannot be used for naming any other platform in the same OP.
rinf index: 1.2.1.0.6.2
severity: Violation
message: platformId (1.2.1.0.6.2):: Each platform shall have unique identification or number within the OP. This number cannot be used for naming any other platform in the same OP. There is a problem with OP {$this} ({?opLabel}) and platforms {?platform1} ({?platform1Label}) and {?platform2} ({?platform2Label}), since they have the same identifier: {?value}.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?opLabel ?platform1 ?platform1Label ?platform2 ?platform2Label ?value WHERE { $this a era:PlatformEdge ; era:hasPart ?platform1 ; era:canonicalURI ?cano1 . $this a era:PlatformEdge; era:hasPart ?platform2 ; era:canonicalURI ?cano2 . ?platform1 era:platformId ?value . ?platform2 era:platformId ?value . FILTER(?platform1 != ?platform2) . FILTER(?cano1 != ?cano2) OPTIONAL{$this rdfs:label ?opLabel} . OPTIONAL{?platform1 rdfs:label ?platform1Label} . OPTIONAL{?platform2 rdfs:label ?platform2Label} . }

TenClassificationP
type: PropertyShape
affected property: tenClassification
affected class: PlatformEdge
scope: local
comment: Indicates the part of the trans-European network the platform belongs to.
rinf index: 1.2.1.0.6.3
path: tenClassification
node kind: IRI
severity: Violation
message: TEN classification (1.2.1.0.6.3): This error may be due to having a Platform with a TEN classification that is not an URI.

TenClassificationSKOSP
type: SPARQLConstraint
affected property: tenClassification
affected class: PlatformEdge
scope: local
comment: Indicates the part of the trans-European network the platform belongs to.
rinf index: 1.2.1.0.6.3
node kind: IRI
severity: Violation
message: TEN classification (1.2.1.0.6.3): The platform {$this} with label {?label} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ten-classifications/TENClassifications.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:tenClassification ?concept . era:tenClassification era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

LengthP
type: PropertyShape
affected property: lengthOfPlatform
affected class: PlatformEdge
scope: local
comment: The maximum continuous length (expressed in metres) of that part of platform in front of which a train is intended to remain stationary in normal operating conditions for passengers to board and alight from the train, making appropriate allowance for stopping tolerances.
rinf index: 1.2.1.0.6.4
path: lengthOfPlatform
max count: 1
datatype: double
severity: Warning
message: length (1.2.1.0.6.4): Each Platform must have at most one length. This error may be caused due to having a platform with more than one length or having a value that is not a Real number.

PlatformHeightP
type: PropertyShape
affected property: platformHeight
affected class: PlatformEdge
scope: local
comment: Distance between the upper surface of platform and running surface of the neighbouring track. It is the nominal value expressed in millimetres.
rinf index: 1.2.1.0.6.5
path: platformHeight
max count: 1
node kind: IRI
severity: Warning
message: platformHeight (1.2.1.0.6.5): Each Platform must have at most one height. This error may be due to having a platform with more than one height, or having a value that is not an URI.

PlatformHeightSKOS
type: SPARQLConstraint
affected property: platformHeight
affected class: PlatformEdge
scope: local
comment: Distance between the upper surface of platform and running surface of the neighbouring track. It is the nominal value expressed in millimetres.
rinf index: 1.2.1.0.6.5
node kind: IRI
severity: Violation
message: Platform height (1.2.1.0.6.5): The platform {$this} with label {?label} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/platform-heights/PlatformHeights.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:platformHeight ?concept . era:platformHeight era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

AssistanceStartingTrain
type: PropertyShape
affected property: assistanceStartingTrain
affected class: PlatformEdge
scope: local
comment: Indication of existence of equipment or staff supporting the train crew in starting the train. Fixed equipment (for example mirrors or CCTV cameras) or station staff indicating to train crew or driver when to close doors and whether this has been done successfully.
rinf index: 1.2.1.0.6.6
path: assistanceStartingTrain
max count: 1
datatype: boolean
severity: Violation
message: assistanceStartingTrain (1.2.1.0.6.6): Each Platform must have at most one assistanceStartingTrain declaration. This error may be caused due to having a platform with having more than one assistanceStartingTrain, or its value is not Y/N (boolean).

AreaBoardingAid
type: PropertyShape
affected property: areaBoardingAid
affected class: PlatformEdge
scope: local
comment: Information of the train access level for which the boarding aid can be used.
rinf index: 1.2.1.0.6.7
path: areaBoardingAid
max count: 1
datatype: integer
severity: Warning
message: areaBoardingAid (1.2.1.0.6.7): Each Platform must have at most one areaBoardingAid value. This error may be caused due to having a platform with multiple areaBoardingAid values or having a value that is not an integer.

HasPlatformCurvature
type: PropertyShape
affected property: hasPlatformCurvature
affected class: PlatformEdge
scope: local
comment: Indication of the existence of the curvature of the platform.
rinf index: 1.2.1.0.6.8
path: hasPlatformCurvature
max count: 1
datatype: boolean
severity: Violation
message: hasPlatformCurvature (1.2.1.0.6.8): Each Platform must have at most one hasPlatformCurvature value. This error may be caused due to having a platform with multiple hasPlatformCurvature values or having a value that is not a boolean.

PrimaryLocationCode
type: PropertyShape
affected class: PrimaryLocation
affected property: primaryLocationCode
scope: local
comment: Primary location code developed for information exchange in accordance with the TSIs relating to the telematics applications subsystem.
rinf index: 1.2.0.0.0.3
path: primaryLocationCode
datatype: string
max count: 1
min count: 1
pattern: ^[A-Z]{2}[0-9]{5}$
severity: Violation
message: primaryLocationCode (1.2.0.0.0.3): The primary location code must be represented as a String and follow the pattern [AANNNNN]. It should be unique.

ContainerHandlingFlag
type: PropertyShape
affected property: containerHandlingFlag
affected class: PrimaryLocation
scope: local
comment: Container handling flag.
path: containerHandlingFlag
datatype: boolean
severity: Violation
message: containerHandlingFlag : The PrimaryLocation may have a containerHandlingFlag value that is a boolean. This error may be due to the Primary Location having a value that is not a boolean.

FreightFlag
type: PropertyShape
affected property: freightFlag
affected class: PrimaryLocation
scope: local
comment: Freight flag.
path: freightFlag
max count: 1
datatype: boolean
severity: Violation
message: freightFlag : The PrimaryLocation may have a freightFlag value that is a boolean. This error may be due to the Primary Location having more than one value or having a value that is not a boolean.

HandoverPointFlag
type: PropertyShape
affected property: handoverPointFlag
affected class: PrimaryLocation
scope: local
comment: Handover point flag.
path: handoverPointFlag
datatype: boolean
max count: 1
severity: Violation
message: handoverPointFlag : The PrimaryLocation may have a handoverPointFlag value that is a boolean. This error may be due to the Primary Location having a value that is not a boolean.

PrimaryLocationName
type: PropertyShape
affected property: primaryLocationName
affected class: PrimaryLocation
scope: local
comment: Primary location name.
path: primaryLocationName
datatype: langString
node kind: Literal
unique lang: true
severity: Violation
message: primaryLocationName : The PrimaryLocation may have one primaryLocationName per language tag. If it does, there should be at least one name in English (@en). This error may be due to the Primary Location having a value that is not conform per language tag.
sparql: SPARQLConstraint
  select: SELECT $this WHERE { # If the property exists $this $PATH ?anyName . # then there should exist at least one English value FILTER NOT EXISTS { $this $PATH ?value . FILTER (LANGMATCHES(lang(?value), "en") ) } }

OperationalRegimeType
type: PropertyShape
affected class: SectionOfLine
affected property: operationalRegimeType
scope: local
comment: Double track type.
path: operationalRegimeType
max count: 1
node kind: IRI
severity: Violation
message: operationalRegimeType: Each SectionOfLine may have at most one value for operational regime which must be an IRI. This error is due to having more than one values, or a value that is not an IRI.

OperationalRegimeTypeSKOS
type: SPARQLConstraint
affected property: operationalRegimeType
affected class: SectionOfLine
scope: local
comment: Double track type.
severity: Violation
message: operationalRegimeType: The SectionOfLine {$this} with label {?thisLabel} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/operational-regime-types/OperationalRegimeTypes.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?thisLabel ?concept WHERE { OPTIONAL { $this rdfs:label ?thisLabel } . $this era:operationalRegimeType ?concept . era:operationalRegimeType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS { ?concept skos:inScheme ?conceptScheme } }

RbcID
type: PropertyShape
affected class: RadioBlockCenter
affected property: rbcID
scope: local
comment: Unique RBC identification (NID_C+NID_RBC) as defined in the specification referenced in TSI CCS.
rinf index: 1.1.1.3.2.17
rinf index: 1.2.1.1.1.17
path: rbcID
datatype: string
max count: 1
min count: 1
pattern: ^(\d{4})( )?(\d{4})$
severity: Warning
message: rbcID (1.1.1.3.2.17, 1.2.1.1.1.17): The radio block center id must be represented as a String and follow the pattern [NNNN NNNN].This error may be due to having a value that is not a string or that does not follow the pattern

RbcPhone
type: PropertyShape
affected class: RadioBlockCenter
affected property: rbcPhone
scope: local
comment: Unique RBC calling number (NID_RADIO) as defined in the specification referenced in TSI CCS.
rinf index: 1.1.1.3.2.17
rinf index: 1.2.1.1.1.17
path: rbcPhone
datatype: string
max count: 1
pattern: ^(\d{4})( )?(\d{4})( )?(\d{4})( )?(\d{4})$
severity: Warning
message: rbcPhone (1.1.1.3.2.17, 1.2.1.1.1.17): The radio block center phone must be represented as a String and follow the pattern [NNNN NNNN NNNN NNNN].This error may be due to having a value that is not a string or that does not follow the pattern

BorderPointId
type: PropertyShape
affected class: ReferenceBorderPoint
affected property: borderPointId
path: borderPointId
min count: 1
max count: 1
datatype: string
pattern: ^EU.{0,10}$
severity: Violation
message: A ReferenceBorderPoint must have exactly one era:borderPointId, and it must be a string. This error is due to having more than one borderPointId, not having a borderPointId, having a value that is not a string, or having a value that does not follow the pattern where the first part is 'EU', and the second part is the alphanumeric OP code within the MS.

ReferenceBorderPointGeometry
type: PropertyShape
affected class: ReferenceBorderPoint
affected property: hasGeometry
path: hasGeometry
node kind: IRI
min count: 1
max count: 1
class: Geometry
severity: Violation
message: A ReferenceBorderPoint must have exactly one geo:hasGeometry, and its value must be an instance of geo:Gemoetry. This error is due to having more than one, having none, or having a value that is not an istance of geo:Geometry.

ConsistentOPsPerReferenceBorderPoint
type: SPARQLConstraint
affected class: ReferenceBorderPoint
affected property: referenceBorderPoint
message: ReferenceBorderPoint {$this} is referenced by {?op1} and {?op2} with inconsistent uopid or coordinates (geo:asWKT). All OPs pointing to the same ReferenceBorderPoint must have the same uopid and identical coordinates.
severity: Violation
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX geo: <http://www.opengis.net/ont/geosparql#> SELECT DISTINCT $this ?op1 ?op2 WHERE { # Two different OPs pointing to the same ReferenceBorderPoint ($this) ?op1 era:referenceBorderPoint $this . ?op2 era:referenceBorderPoint $this . FILTER(?op1 != ?op2) # Ensure both OPs have uopid and geometry ?op1 era:uopid ?uopid1 . ?op2 era:uopid ?uopid2 . ?op1 era:netReference ?netRef1 . ?netRef1 geo:hasGeometry ?geom1 . ?geom1 geo:asWKT ?wkt1 . ?op2 era:netReference ?netRef2 . ?netRef2 geo:hasGeometry ?geom2 . ?geom2 geo:asWKT ?wkt2 . # Raise violation if either uopid or coordinates differ FILTER (?uopid1 != ?uopid2 || ?wkt1 != ?wkt2) }

NationalLineSoL
type: PropertyShape
affected property: nationalLine
affected class: LinearPositioningSystem
scope: local
comment: Unique line identification or unique line number within Member State.
rinf index: 1.1.0.0.0.2
path: nationalLine
min count: 1
max count: 1
class: LinearPositioningSystem
node kind: IRI
severity: Violation
message: nationalLine (1.1.0.0.0.2): Each SoL belongs to exactly one linear positioning system. This error is due to not having a value, having more than one value, or having a value that is not an instance of LinearPositioningSystem.

OpStart
type: PropertyShape
affected property: opStart
affected class: SectionOfLine
scope: global
comment: Each SoL may have only one start OP, and each OP has unique OP ID within the MS. The “uniqueOPID” is defined in parameter 1.2.0.0.0.2. Each SoL has the principal direction of the traffic defined by increasing kilometres running from the start OP to the end OP. That is why the start OP is always located at lowest kilometre of the line within the SoL. Data collected in the UK in miles will be transformed to km for uploading to the RINF application. The OP ID must exist in the MS file of RINF. The value of this parameter must be different from 1.1.0.0.0.4. No validation will be performed by RINF application regarding which is the start and which the end OP. This requires national verification.
rinf index: 1.1.0.0.0.3
path: opStart
disjoint: opEnd
min count: 1
max count: 1
node kind: IRI
class: OperationalPoint
severity: Violation
message: opStart (1.1.0.0.0.3): There must be exactly one OP start for this section of line and it must be different from the OP end.

OpEnd
type: PropertyShape
affected property: opEnd
affected class: SectionOfLine
scope: global
comment: Each SoL may have only one end OP, and each OP has unique OP ID within the MS. The “uniqueOPID” is defined in parameter 1.2.0.0.0.2. Each SoL has the principal direction of the traffic defined by increasing kilometres running from the start OP to the end OP. That is why the start OP is always located at lowest kilometre of the line within the SoL. Data collected in the UK in miles will be transformed to km for uploading to the RINF application. The OP ID must exist in the MS file of RINF. The value of this parameter must be different from 1.1.0.0.0.3. No validation will be performed by RINF application regarding which is the start and which the end OP. This requires national verification.
rinf index: 1.1.0.0.0.4
path: opEnd
disjoint: opStart
min count: 1
max count: 1
node kind: IRI
class: OperationalPoint
severity: Violation
message: opEnd (1.1.0.0.0.4): There must be exactly one OP end for this section of line and it must be different from the OP start.

SolLength
type: PropertyShape
affected property: lengthOfSectionOfLine
affected class: SectionOfLine
scope: local
comment: General description: The length of SoL is theoretical distance between centre points of Ops which are selected in such a way to represent the average value for all tracks within the SoL. It is advised to include distances applied by IM for commercial purposes. Validation: No validation will be performed by RINF application regarding the length of SoL. This requires national verification.
rinf index: 1.1.0.0.0.5
path: lengthOfSectionOfLine
min count: 1
max count: 1
datatype: double
severity: Violation
message: lengthOfSectionOfLine (1.1.0.0.0.5): Each SoL has exactly one length. This error is due to that either there is no length for the specified SoL, more than one length has been defined, or the datatype cannot be converted into an xsd:double.

SolNature
type: PropertyShape
affected property: solNature
affected class: SectionOfLine
scope: local
comment: General description: Validation: If the value of this parameter is 'Link', then for all tracks belonging to this SoL, all the parameters of the following groups of parameters are not applicable: 1.1.1.1 Infrastructure subsystem, 1.1.1.2 Energy subsystem, 1.1.1.3 Control-command and signalling subsystem.
rinf index: 1.1.0.0.0.6
path: solNature
min count: 1
max count: 1
node kind: IRI
severity: Violation
message: SoL nature (1.1.0.0.0.6): Either no SOL nature is specified for this SoL, or more than one SoL nature has been specified.

SolNatureSKOS
type: SPARQLConstraint
affected property: solNature
affected class: SectionOfLine
scope: local
comment: Indication of the SOL nature.
rinf index: 1.1.0.0.0.6
severity: Violation
message: SoL nature (1.1.0.0.0.6): The SOL {$this} with label {?label} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/sol-natures/SoLNatures.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:solNature ?concept . era:solNature era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

SolNatureApplicability
type: SPARQLConstraint
affected property: solNature
affected class: SectionOfLine
scope: global
comment: If the value of this parameter is “Link”, then for all tracks belonging to this SoL, all the parameters of the following groups of parameters are not applicable: 1.1.1.1 Infrastructure subsystem; 1.1.1.2 Energy subsystem; 1.1.1.3 Control-command and signalling subsystem.
rinf index: 1.1.0.0.0.6
severity: Violation
message: SoL nature (1.1.0.0.0.6): The SoL {$this} ({?solLabel}), with opStart {?opStartID} and opEnd {?opEndID}, has a SOLnature of type Link, and at least one of its tracks has values for at least one of the groups of parameters 1.1.1.1, 1.1.1.2 or 1.1.1.3. This happens at least with the track {?track} ({?trackLabel}), with property {?p} (RINF index {?index}).
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?solLabel ?opStartID ?opEndID ?p ?index ?track ?trackLabel WHERE { $this era:solNature <http://data.europa.eu/949/concepts/sol-natures/20> . OPTIONAL{$this rdfs:label ?solLabel} . $this era:track ?track . $this era:opStart ?opStart . ?opStart era:uopid ?opStartID . $this era:opEnd ?opEnd . ?opEnd era:uopid ?opEndID . OPTIONAL{?track rdfs:label ?trackLabel} . ?track ?p ?y . ?p era:rinfIndex ?index . FILTER EXISTS {?track ?p ?value} . FILTER(strstarts(?index,'1.1.1.1') || strstarts(?index,'1.1.1.2') || strstarts(?index,'1.1.1.3')) }

NetReferenceSOL
type: PropertyShape
affected property: netReference
affected class: SectionOfLine
scope: local
comment: The reference that a SectionOfLine has on the topology. It must point to an instance of NetBasicReference.
path: netReference
class: NetBasicReference
node kind: IRI
severity: Violation
message: netReference: Each SectionOfLine must have at least one netReference pointing to an instance of NetBasicReference. This error is due to not having a value or having a value that is not a NetBasicReference.

SidingId
type: PropertyShape
affected property: sidingId
affected class: Siding
scope: local
comment: Unique siding identification or unique siding number within OP
rinf index: 1.2.2.0.0.2
path: sidingId
min count: 1
max count: 1
datatype: string
severity: Violation
message: sidingId (1.2.2.0.0.2): Each siding must have a unique siding identification that is a character string. This error is due to not having a sidingId value, having more than one sidingId value or having a value that is not a string.

NoRepeatedSidingIds
type: SPARQLConstraint
affected property: sidingId
affected class: Siding
affected class: OperationalPoint
scope: global
comment: Each siding shall have unique identification or number within the OP. This number cannot be used for naming any other siding in the same OP.
rinf index: 1.2.2.0.0.2
severity: Violation
message: sidingId (1.2.2.0.0.2):: Each siding shall have unique identification or number within the OP. This number cannot be used for naming any other siding in the same OP. There is a problem with the OP {$this} ({?opLabel}) and sidings {?siding1} ({?siding1Label}) and {?siding2} ({?siding2Label}), since they have the same identifier: {?value}.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?opLabel ?siding1 ?siding1Label ?siding2 ?siding2Label ?value WHERE { $this a era:Siding ; era:hasPart ?siding1 ; era:canonicalURI ?cano1 . $this a era:Siding ; era:hasPart ?siding2 ; era:canonicalURI ?cano2 . FILTER(?cano1 != ?cano2) . ?siding1 era:sidingId ?value . ?siding2 era:sidingId ?value . FILTER(?siding1 != ?siding2) . OPTIONAL{$this rdfs:label ?opLabel} . OPTIONAL{?siding1 rdfs:label ?siding1Label} . OPTIONAL{?siding2 rdfs:label ?siding2Label} . }

TenClassificationS
type: PropertyShape
affected property: tenClassification
affected class: Siding
scope: local
comment: Indicates the part of the trans-European network the platform belongs to.
rinf index: 1.1.1.1.2.1
rinf index: 1.2.1.0.2.1
rinf index: 1.2.1.0.6.3
rinf index: 1.2.2.0.0.3
path: tenClassification
node kind: IRI
severity: Violation
message: TEN classification (1.1.1.1.2.1, 1.2.1.0.2.1, 1.2.1.0.6.3, 1.2.2.0.0.3): This error may be due to having a Platform with a TEN classification that is not an URI.

TenClassificationSKOSS
type: SPARQLConstraint
affected property: tenClassification
affected class: Siding
scope: local
comment: Indication of the part of the trans-European network the line belongs to.
rinf index: 1.2.2.0.0.3
rinf index: 1.1.1.1.2.1
rinf index: 1.2.1.0.2.1
rinf index: 1.2.1.0.6.3
node kind: IRI
severity: Violation
message: TEN classification (1.1.1.1.2.1, 1.2.1.0.2.1, 1.2.1.0.6.3, 1.2.2.0.0.3): The siding or subset with common characteristics {$this} with label {?sidingLabel} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ten-classifications/TENClassifications.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?sidingLabel WHERE { OPTIONAL{$this rdfs:label ?sidingLabel} $this era:tenClassification ?concept . era:tenClassification era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

VerificationINFS
type: PropertyShape
affected property: verificationINF
affected class: Siding
scope: local
comment: Indication of the verification of the infrastructure manager
rinf index: 1.2.2.0.1.1
rinf index: 1.2.1.0.1.1
path: verificationINF
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: verificationINF (1.2.2.0.1.1, 1.2.1.0.1.1, 1.2.2.0.1.1): Each Siding or subset with common characteristics may have one or more verificationINF. This error is due to the value not being a string or the value not following this pattern: country code/national registration number/year between 1900 and 2100/progressive counter.

DemonstrationINFS
type: PropertyShape
affected property: demonstrationINF
affected class: Siding
scope: local
comment: Unique number for EI declarations following the same format requirements as specified in the 'Documents about practical arrangements for transmitting interoperability documents'
rinf index: 1.1.1.1.1.2
rinf index: 1.2.1.0.1.2
rinf index: 1.2.2.0.1.2
path: demonstrationINF
min count: 0
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: demonstrationINF (1.1.1.1.1.2, 1.2.1.0.1.2, 1.2.2.0.1.2): Each siding or subset with common characteristics may have one or more demonstrationINF. This error is due to the value not being a string or the value not following this pattern: country code/national registration number/year between 1900 and 2100/progressive counter.

LengthS
type: PropertyShape
affected property: lengthOfSiding
affected class: Siding
scope: local
comment: Total length of the siding/stabling track expressed in meters where trains can be parked safely
rinf index: 1.2.2.0.2.1
path: lengthOfSiding
max count: 1
datatype: double
pattern: ^([1-9]\d{1,3}|[0-9])(\.0+)?$
severity: Violation
message: lengthOfSiding (1.2.2.0.2.1): Each siding may have a length in meters. This error is due to having more than one length value or having a length that is not a double (real) number or not following the pattern [NNNN].

Gradient
type: PropertyShape
affected property: gradient
affected class: Siding
scope: local
comment: Maximum value of the gradient expressed in millimeters per meter
rinf index: 1.2.2.0.3.1
path: gradient
max count: 1
datatype: double
pattern: ^([1-9]\d{1}|[0-9])(\.[0-9])?$
severity: Violation
message: gradient (1.2.2.0.3.1): Each siding or subset with common characteristics may have a gradient in millimeters per meter. This error is due to having more than one gradient value or having a gradient that is not a double (real) number.

MinimumHorizontalRadiusS
type: PropertyShape
affected property: minimumHorizontalRadius
affected class: Siding
scope: local
comment: Radius of the smallest horizontal curve of the track in metres.
rinf index: 1.2.2.0.3.2
path: minimumHorizontalRadius
max count: 1
datatype: integer
severity: Violation
message: minimumHorizontalRadius (1.2.2.0.3.2, 1.2.2.0.3.2): Each siding or subset with common characteristics may have a minimumHorizontalRadius in meters. This error is due to having more than one minimum horisontal radius value or having a minimum horizontal radius that is not an integer number.

MinimumVerticalRadius
type: PropertyShape
affected property: minimumVerticalRadius
affected class: RunningTrack
scope: local
comment: Indication of types of appearance of track lineside distance indications.
path: minimumVerticalRadius
class: MinimumVerticalRadius
max count: 1
rinf index: 1.2.2.0.3.3
node kind: IRI
severity: Violation
message: minimumVerticalRadius (1.2.2.0.3.3) : The siding or subset with common characteristics must have at most one value of minimum vertical radius that must be an instace of MinimumVerticalRadius. This error may be due to the track having more than one value or having a value that is not an instance of the class MinimumVerticalRadius.

MinimumVerticalRadiusCrest
type: PropertyShape
affected property: minimumVerticalRadiusCrest
affected class: Siding
scope: local
comment: Radius of the smallest vertical curve expressed in meters, part that indicates the crest
path: minimumVerticalRadiusCrest
min count: 1
max count: 1
datatype: integer
severity: Violation
message: minimumVerticalRadiusCrest : Each siding may have a minimumVerticalRadiusCrest in meters. This error is due to having no value, having more than one value or having a value that is not an integer number.

MinimumVerticalRadiusHollow
type: PropertyShape
affected property: minimumVerticalRadiusHollow
affected class: Siding
scope: local
comment: Radius of the smallest vertical curve expressed in meters, part that indicates the hollow
path: minimumVerticalRadiusHollow
min count: 1
max count: 1
datatype: integer
severity: Violation
message: minimumVerticalRadiusHollow: Each siding may have a minimumVerticalRadiusHollow in meters. This error is due to having no value, having more than one value or having a a value that is not an integer number.

HasToiletDischarge
type: PropertyShape
affected property: hasToiletDischarge
affected class: Siding
scope: local
comment: Indication whether exists and installation for toilet discharge (fixed installation for servicing trains) as defined in INF TSIs
rinf index: 1.2.2.0.4.1
path: hasToiletDischarge
max count: 1
datatype: boolean
severity: Violation
message: hasToiletDischarge (1.2.2.0.4.1): Each siding or subset with common characteristics may define the existence of a toilet discharge. This error is due to having more than one has toilet discharge value or having a has has toilet discharge value that is not Y/N (boolean).

HasExternalCleaning
type: PropertyShape
affected property: hasExternalCleaning
affected class: Siding
scope: local
comment: Indication whether exists and installation for external cleaning facility (fixed installation for servicing trains) as defined in INF TSIs
rinf index: 1.2.2.0.4.2
path: hasExternalCleaning
max count: 1
datatype: boolean
severity: Violation
message: hasExternalCleaning (1.2.2.0.4.2): Each siding or subset with common characteristics may define the existence of an external cleaning facility. This error is due to having more than one has external cleaning value or having a has external cleaning value that is not Y/N (boolean).

HasWaterRestocking
type: PropertyShape
affected property: hasWaterRestocking
affected class: Siding
scope: local
comment: Indication whether exists and installation for water restocking (fixed installation for servicing trains) as defined in INF TSIs
rinf index: 1.2.2.0.4.3
path: hasWaterRestocking
max count: 1
datatype: boolean
severity: Violation
message: hasWaterRestocking (1.2.2.0.4.3): Each siding or subset with common characteristics may define the existence of a water restocking facility. This error is due to having more than one has water restocking value or having a has water restocking value that is not Y/N (boolean).

HasRefuelling
type: PropertyShape
affected property: hasRefuelling
affected class: Siding
scope: local
comment: Indication whether exists and installation for refuelling (fixed installation for servicing trains) as defined in INF TSIs
rinf index: 1.2.2.0.4.4
path: hasRefuelling
max count: 1
datatype: boolean
severity: Violation
message: hasRefuelling (1.2.2.0.4.4): Each siding or subset with common characteristics may define the existence of a refuelling facility. This error is due to having more than one has refuelling value or having a has refuelling value that is not Y/N (boolean).

HasSandRestocking
type: PropertyShape
affected property: hasSandRestocking
affected class: Siding
scope: local
comment: Indication whether an installation for sand restocking exists(fixed installation for servicing trains)
rinf index: 1.2.2.0.4.5
path: hasSandRestocking
max count: 1
datatype: boolean
severity: Violation
message: hasSandRestocking (1.2.2.0.4.5): Each siding or subset with common characteristics may define the existence of a sand restocking facility. This error is due to having more than one has sand restocking value or having a has sand restocking value that is not Y/N (boolean).

HasElectricShoreSupply
type: PropertyShape
affected property: hasElectricShoreSupply
affected class: Siding
scope: local
comment: Indication whether an installation for electric shore supply exists (fixed installation for servicing trains)
rinf index: 1.2.2.0.4.6
path: hasElectricShoreSupply
max count: 1
datatype: boolean
severity: Violation
message: hasElectricShoreSupply (1.2.2.0.4.6): Each siding or subset with common characteristics may define the existence of an electric shore supply facility. This error is due to having more than one has electric shore supply value or having a has electric shore supply value that is not Y/N (boolean).

MaxCurrentStandstillPantographS
type: PropertyShape
affected property: maxCurrentStandstillPantograph
affected class: Siding
scope: local
comment: Indication of the maximum allowable train current at standstill for DC systems expressed in amperes
rinf index: 1.1.1.2.2.3
rinf index: 1.2.2.0.6.1
path: maxCurrentStandstillPantograph
datatype: integer
pattern: ^([1-9]\d{1,2}|[0-9])$
severity: Violation
message: maxCurrentStandstillPantograph (1.1.1.2.2.3, 1.2.2.0.6.1): Each siding may define the maximum allowable train current at standstill for DC systems expressed in amperes. This error is due to having a max current standstill pantograph value that is not a double (real) number.

RelativeDistanceDangerPoint
type: PropertyShape
affected class: Signal
affected property: relativeDistanceDangerPoint
scope: local
comment: Distance in meters to the danger point.
rinf index: 1.1.1.3.14.4
rinf index: 1.2.1.0.8.4
path: relativeDistanceDangerPoint
datatype: integer
pattern: ^([1-9]\d{1,2}|[0-9])$
severity: Violation
message: relativeDistanceDangerPoint (1.1.1.3.14.4, 1.2.1.0.8.4): The distance in meters to the danger point must be represented as an integer and follow the pattern [NNN].This error may be due to having a value that is not an integer or that does not follow the pattern.

SignalId
type: PropertyShape
affected class: Signal
affected property: signalId
scope: local
comment: Operational identifier of the signal (on the track or in OP), as in the operational and maintenance provisions.
rinf index: 1.1.1.3.14.1
rinf index: 1.2.1.0.8.1
path: signalId
datatype: string
max count: 1
severity: Violation
message: signalId (1.1.1.3.14.1, 1.2.1.0.8.1): A Signal may have at most one signal id and it must be represented as a String. This error may be due to having more than one value or having a value that is not a string

SignalType
type: PropertyShape
affected class: Signal
affected property: signalType
scope: local
comment: Signalling information for Route Book compilation.
rinf index: 1.1.1.3.14.2
rinf index: 1.2.1.0.8.2
path: signalType
node kind: IRI
severity: Violation
message: signalType (1.1.1.3.14.2, 1.2.1.0.8.2): The signal type must be represented as an IRI.This error may be due to having a value that is not an IRI.

SignalTypeSKOS
type: SPARQLConstraint
affected property: signalType
affected class: Signal
scope: local
comment: Signalling information for Route Book compilation.
rinf index: 1.1.1.3.14.2
rinf index: 1.2.1.0.8.2
severity: Violation
message: Indication of the signalType (1.1.1.3.14.2, 1.2.1.0.8.2): The signal {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/signal-types/.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:signalType ?concept . era:signalType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

SignalOrientation
type: PropertyShape
affected class: Signal
affected property: signalOrientation
scope: local
comment: Indication if the signal (on the track or in OP) is applicable for operation on normal, opposite track direction or if it contains bidirectionally valid information (radio-based system only).
rinf index: 1.1.1.3.14.3
rinf index: 1.2.1.0.8.3
path: signalOrientation
node kind: IRI
severity: Violation
message: signalOrientation (1.1.1.3.14.3, 1.2.1.0.8.3): A Signal may have an orientation and it must be represented as an IRI. This error may be due to having a value that is not an IRI.

SignalOrientationSKOS
type: SPARQLConstraint
affected property: signalOrientation
affected class: Signal
scope: local
comment: Indication if the signal (on the track or in OP) is applicable for operation on normal, opposite track direction or if it contains bidirectionally valid information (radio-based system only).
rinf index: 1.1.1.3.14.3
rinf index: 1.2.1.0.8.3
severity: Violation
message: Indication of the signalOrientation (1.1.1.3.14.3, 1.2.1.0.8.3 ):): The signal {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/track-running-directions/TrackRunningDirections.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:signalOrientation ?concept . era:signalOrientation era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

VerificationINF
type: PropertyShape
affected property: verificationINF
affected class: RunningTrack
scope: local
comment: Unique number for EC declarations following format requirements specified in the 'Document about practical arrangements for transmitting interoperability documents'.
rinf index: 1.1.1.1.1.1
rinf index: 1.2.1.0.1.1
path: verificationINF
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: verificationINF (1.1.1.1.1.1, 1.2.1.0.1.1): The verificationINF must be a string following the format 'XX/XXXXXXXXXXXXXX/YYYY/DDDDDD' where XX is the country code, XXXXXXXXXXXXXX is the unique number for EC declarations, YYYY is the year of the declaration (1900-2100) and DDDDDD is the sequential number of the declaration. This error is due to the value not following the pattern.

DemonstrationINF
type: PropertyShape
affected property: demonstrationINF
affected class: RunningTrack
scope: local
comment: Unique number for EI declarations following format requirements specified in the 'Document about practical arrangements for transmitting interoperability documents'.
rinf index: 1.1.1.1.1.2
rinf index: 1.2.1.0.1.2
path: demonstrationINF
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: demonstrationINF (1.1.1.1.1.2, 1.2.1.0.1.2): The demonstrationINF must be a string following the format 'XX/XXXXXXXXXXXXXX/YYYY/DDDDDD' where XX is the country code, XXXXXXXXXXXXXX is the unique number for EI declarations, YYYY is the year of the declaration (1900-2100) and DDDDDD is the sequential number of the declaration. This error is due to the value not following the pattern.

TenClassificationT
type: PropertyShape
affected property: tenClassification
affected class: RunningTrack
scope: local
comment: Indication of the part of the trans-European network the line belongs to.
path: tenClassification
rinf index: 1.1.1.1.2.1
rinf index: 1.2.1.0.2.1
node kind: IRI
severity: Violation
message: tenClassification (1.1.1.1.2.1, 1.2.1.0.2.1): The track or subset with common characteristics has a TEN classificaion value (Indication of the part of the trans-European network the line belongs to) that must be an IRI.

TenClassificationSKOST
type: SPARQLConstraint
affected property: tenClassification
affected class: RunningTrack
scope: local
comment: Indication of the TEN classification of track.
rinf index: 1.1.1.1.2.1
rinf index: 1.2.1.0.2.1
node kind: IRI
severity: Violation
message: TEN classification (1.1.1.1.2.1, 1.2.1.0.2.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ten-classifications/TENClassifications.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:tenClassification ?concept . era:tenClassification era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

GaugingProfile
type: PropertyShape
affected property: gaugingProfile
affected class: RunningTrack
scope: local
comment: Gauges as defined in European standard or other local gauges, including lower or upper part.
rinf index: 1.1.1.1.3.1.1
rinf index: 1.2.1.0.3.4
path: gaugingProfile
node kind: IRI
severity: Violation
message: gaugingProfile (1.1.1.1.3.1.1, 1.2.1.0.3.4): The track or subset with common characteristics must define a value that is an IRI. The error is due to having a value that is not an IRI.

GaugingProfileSKOS
type: SPARQLConstraint
affected property: gaugingProfile
affected class: RunningTrack
scope: local
comment: Indication of the gauging profile of track.
rinf index: 1.1.1.1.3.1.1
rinf index: 1.2.1.0.3.4
severity: Violation
message: Gauging profile (1.1.1.1.3.1.1, 1.2.1.0.3.4): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/gaugings/GaugingProfiles.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:gaugingProfile ?concept . era:gaugingProfile era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

GaugingCheckLocation
type: PropertyShape
affected property: gaugingCheckLocation
affected class: RunningTrack
scope: local
comment: Location of particular points requiring specific checks due to deviations from gauging referred to in 1.1.1.1.3.1.1.
rinf index: 1.1.1.1.3.1.2
rinf index: 1.2.1.0.3.5
path: gaugingCheckLocation
datatype: string
pattern: ^([1-9]\d{1,3}|[0-9])(\.\d{1,3})?(\s.*)?$
min count: 1
severity: Violation
message: gaugingCheckLocation (1.1.1.1.3.1.2, 1.2.1.0.3.5): The track or subset with common characteristics has a location of the gauging check that must be a string and follow the format [±NNNN.NNN]. The error is due to the value not following the pattern.

GaugingTransversalDocument
type: PropertyShape
affected property: gaugingTransversalDocument
affected class: RunningTrack
scope: local
comment: Document with the transversal section of the particular points requiring specific checks.
rinf index: 1.1.1.1.3.1.3
rinf index: 1.2.1.0.3.6
path: gaugingTransversalDocument
class: Document
severity: Violation
message: gaugingTransversalDocument (1.1.1.1.3.1.3, 1.2.1.0.3.6): The track or subset with common characteristics has a transversal document of the gauging check value that must be a Document.

WheelSetGauge
type: PropertyShape
affected property: wheelSetGauge
affected class: RunningTrack
scope: local
comment: A single value expressed in millimeters that identifies the track gauge.
rinf index: 1.1.1.1.4.1
rinf index: 1.2.1.0.4.1
path: wheelSetGauge
node kind: IRI
severity: Violation
message: wheelSetGauge (1.1.1.1.4.1, 1.2.1.0.4.1): The track or subset with common characteristics must have at most one wheel set gauge value that is an IRI.

WheelSetGaugeSKOS
type: SPARQLConstraint
affected property: wheelSetGauge
affected class: RunningTrack
scope: local
comment: A single value expressed in millimeters that identifies The track or subset with common characteristics gauge.
rinf index: 1.1.1.1.4.1
rinf index: 1.2.1.0.4.1
severity: Violation
message: Nominal track gauge (1.1.1.1.4.1, 1.2.1.0.4.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/nominal-track-gauges/NominalTrackGauges.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:wheelSetGauge ?concept . era:wheelSetGauge era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

GsmRAdditionalInfo
type: PropertyShape
affected property: gsmRAdditionalInfo
affected class: RunningTrack
scope: local
comment: Any additional information on network characteristics or corresponding document available from the IM and stored by the Agency, e.g.; interference level, leading to the recommendation of additional on-board protection.
rinf index: 1.1.1.3.3.3.1
rinf index: 1.2.1.1.2.3.1
path: gsmRAdditionalInfo
class: Document
severity: Violation
message: gsmRAdditionalInfo (1.1.1.3.3.3.1 , 1.2.1.1.2.3.1): The track or subset with common characteristics has additional information on network characteristics that must be a Document.
comment: Additional information on network characteristics.
message: gsmRAdditionalInfo (1.1.1.3.3.3.1): The track or subset with common characteristics defines an additional information on network characteristics value that must be a Document.

GsmRAdditionalInfoApplicability
type: SPARQLConstraint
affected property: gsmRAdditionalInfo
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.3.1
rinf index: 1.2.1.1.2.3.1
severity: Warning
message: gsmRAdditionalInfo (1.1.1.3.3.3.1, 1.2.1.1.2.3.1):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the gsmRAdditionalInfo parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmRAdditionalInfo ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:gsmRAdditionalInfo} . }

GprsImplementationArea
type: PropertyShape
affected property: gprsImplementationArea
affected class: RunningTrack
scope: local
comment: Indication of the area in which GPRS can be used for ETCS, expressed as a list of GPRS-enabled RBC's.
rinf index: 1.1.1.3.3.3.3
rinf index: 1.2.1.1.2.3.3
path: gprsImplementationArea
datatype: string
severity: Violation
message: gprsImplementationArea (1.1.1.3.3.3.3, 1.2.1.1.2.3.3): The gprsImplementationArea must be a string. This error is due to the value not being a string.
comment: Indication of the area in which GPRS can be used for ETCS.
message: gprsImplementationArea (1.1.1.3.3.3.3): The track or subset with common characteristics defines the area in which GPRS can be used for ETCS value that must be a string. This error may be due to the track having a value that is not a string.

GprsImplementationAreaApplicability
type: SPARQLConstraint
affected property: gprsImplementationArea
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1), ETCS L2 (parameter 1.1.1.3.2.1) and GPRS for ETCS (parameter 1.1.1.3.3.3.2) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.3.3
rinf index: 1.2.1.1.2.3.3
severity: Warning
message: gprsImplementationArea (1.1.1.3.3.3.3, 1.2.1.1.2.3.3):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the gprsImplementationArea parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:gprsForETCS true; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gprsImplementationArea ?value} . }

AtoCommunicationSystem
type: PropertyShape
affected property: atoCommunicationSystem
affected class: RunningTrack
scope: local
comment: Supported ATO communication systems from trackside.
rinf index: 1.1.1.3.13.3
rinf index: 1.2.1.1.10.3
path: atoCommunicationSystem
node kind: IRI
severity: Violation
message: atoCommunicationSystem (1.1.1.3.13.3, 1.2.1.1.10.3): The track or subset with common characteristics must have a ATO communication system value that is an IRI.

AtoCommunicationSystemSKOS
type: SPARQLConstraint
affected property: atoCommunicationSystem
affected class: RunningTrack
scope: local
comment: Supported ATO communication systems from trackside.
rinf index: 1.1.1.3.13.3
rinf index: 1.2.1.1.10.3
severity: Violation
message: atoCommunicationSystem (1.1.1.3.13.3, 1.2.1.1.10.3): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ato-commsys/ATOCommSystem.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:atoCommunicationSystem ?concept . era:atoCommunicationSystem era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

AtoGradeAutomation
type: PropertyShape
affected property: atoGradeAutomation
affected class: RunningTrack
scope: local
comment: ATO grade of automation installed lineside.
rinf index: 1.1.1.3.13.1
rinf index: 1.2.1.1.10.1
path: atoGradeAutomation
node kind: IRI
severity: Violation
message: atoGradeAutomation (1.1.1.3.13.1, 1.2.1.1.10.1): The track or subset with common characteristics must have a ATO grade of automation installed lineside value that is an IRI.

AtoGradeAutomationSKOS
type: SPARQLConstraint
affected property: atoGradeAutomation
affected class: RunningTrack
scope: local
comment: ATO grade of automation installed lineside.
rinf index: 1.1.1.3.13.1
rinf index: 1.2.1.1.10.1
severity: Violation
message: atoGradeAutomation (1.1.1.3.13.1, 1.2.1.1.10.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ato-grades-automation/ATOGradeOfAutomation.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:atoGradeAutomation ?concept . era:atoGradeAutomation era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

AtoSystemVersion
type: PropertyShape
affected property: atoSystemVersion
affected class: RunningTrack
scope: local
comment: ATO system version according to the specification referenced in TSI CCS (4.2.19).
rinf index: 1.1.1.3.13.2
rinf index: 1.2.1.1.10.2
path: atoSystemVersion
node kind: IRI
severity: Violation
message: atoSystemVersion (1.1.1.3.13.1, 1.2.1.1.10.1): The track or subset with common characteristics must have a ATO system version value that is an IRI.

AtoSystemVersionSKOS
type: SPARQLConstraint
affected property: atoSystemVersion
affected class: RunningTrack
scope: local
comment: ATO system version according to the specification referenced in TSI CCS (4.2.19).
rinf index: 1.1.1.3.13.2
rinf index: 1.2.1.1.10.2
severity: Violation
message: atoSystemVersion (1.1.1.3.13.1, 1.2.1.1.10.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ato-s-versions/ATOSystemVersions.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:atoSystemVersion ?concept . era:atoSystemVersion era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

BigMetalMass
type: PropertyShape
affected property: bigMetalMass
affected class: RunningTrack
scope: local
comment: Indication of existence of metal mass in the vicinity of the location, susceptible of perturbating the reading of balises by the on-board system.
rinf index: 1.1.1.3.2.18
rinf index: 1.2.1.1.1.18
path: bigMetalMass
max count: 1
datatype: boolean
severity: Violation
message: bigMetalMass (1.1.1.3.2.18, 1.2.1.1.1.18): Each track or subset with common characteristics may define the existence of a metal mass in the vicinity of the location. This error is due to having more than one indication of existence of big metal mass value or having an indication of big metal mass value that is not Y/N (boolean).

BigMetalMassApplicability
type: SPARQLConstraint
affected property: bigMetalMass
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.18
rinf index: 1.2.1.1.1.18
severity: Warning
message: bigMetalMass (1.1.1.3.2.18, 1.2.1.1.1.18):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the bigMetalMass parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:bigMetalMass ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:bigMetalMass} . }

CantDeficiencyBasicSSP
type: PropertyShape
affected property: cantDeficiencyBasicSSP
affected class: RunningTrack
scope: local
comment: Essential information for drivers of trains with a worse (lower) tolerated cant deficiency than those for which the ETCS trackside provides SSP (Static Speed Profiles) in conjunction with parameter "Other Cant Deficiency train categories for which the ETCS trackside is configured to provide SSP".
rinf index: 1.1.1.3.2.14
rinf index: 1.2.1.1.1.14
path: cantDeficiencyBasicSSP
max count: 1
node kind: IRI
severity: Violation
message: cantDeficiencyBasicSSP (1.1.1.3.2.14, 1.2.1.1.1.14): The track or subset with common characteristics must have a cant deficiency used for the basis SSP value that is an IRI.

CantDeficiencyBasicSSPSKOS
type: SPARQLConstraint
affected property: cantDeficiencyBasicSSP
affected class: RunningTrack
scope: local
comment: Essential information for drivers of trains with a worse (lower) tolerated cant deficiency than those for which the ETCS trackside provides SSP (Static Speed Profiles) in conjunction with parameter "Other Cant Deficiency train categories for which the ETCS trackside is configured to provide SSP".
rinf index: 1.1.1.3.2.14
rinf index: 1.2.1.1.1.14
severity: Violation
message: cantDeficiencyBasicSSP (1.1.1.3.2.14, 1.2.1.1.1.14): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/cant-deficiencies/CantDeficiencies.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:cantDeficiencyBasicSSP ?concept . era:cantDeficiencyBasicSSP era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

CantDeficiencyBasicSSPApplicability
type: SPARQLConstraint
affected property: cantDeficiencyBasicSSP
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.14
rinf index: 1.2.1.1.1.14
severity: Warning
message: cantDeficiencyBasicSSP (1.1.1.3.2.14, 1.2.1.1.1.14):The track or subset with common characteristics {$this} ({?label}), has a 'ETCS Level Type' defined which makes the cantDeficiencyBasicSSP parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:cantDeficiencyBasicSSP ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:cantDeficiencyBasicSSP} . }

LineCategory
type: PropertyShape
affected property: lineCategory
affected class: RunningTrack
scope: local
comment: Classification of a line according to the TSI INF.
rinf index: 1.1.1.1.2.2
rinf index: 1.2.1.0.2.2
path: lineCategory
node kind: IRI
severity: Violation
message: lineCategory (1.1.1.1.2.2, 1.2.1.0.2.2): The track or subset with common characteristics must have a classification of a line value that is an IRI.

LineCategorySKOS
type: SPARQLConstraint
affected property: lineCategory
affected class: RunningTrack
scope: local
comment: Classification of a line according to the TSI INF.
rinf index: 1.1.1.1.2.2
rinf index: 1.2.1.0.2.2
severity: Violation
message: lineCategory (1.1.1.1.2.2, 1.2.1.0.2.2): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/line-category/LineCategories.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:lineCategory ?concept . era:lineCategory era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

DNvovtrp
type: PropertyShape
affected property: dNvovtrp
affected class: RunningTrack
scope: local
comment: Maximum distance for overriding the train trip in metres.
rinf index: 1.1.1.3.2.16.5
rinf index: 1.2.1.1.1.16.5
path: dNvovtrp
max count: 1
min inclusive: 0.0
max exclusive: 327670.0
datatype: decimal
pattern: ^(([1-9]{0,1}[0-9]{0,3}\.{1}[0-9]{1})|([1-9]\d{1,4}0)|([1-9]\d{0,4}))$
severity: Violation
message: dNvovtrp (1.1.1.3.2.16.5, 1.2.1.1.1.16.5): Each track or subset with common characteristics must define the maximum distance for overriding the train trip expressed in metres. This error is due to having maximum distance for overriding the train trip value that is not a double (real) number.

DNvovtrpApplicability
type: SPARQLConstraint
affected property: dNvovtrp
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present)
rinf index: 1.1.1.3.2.16.5
rinf index: 1.2.1.1.1.16.5
severity: Warning
message: dNvovtrp (1.1.1.3.2.16.5, 1.2.1.1.1.16.5):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the dNvovtrp parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:dNvovtrp ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:dNvovtrp} . }

DNvpotrp
type: PropertyShape
affected property: dNvpotrp
affected class: RunningTrack
scope: local
comment: Maximum distance for reversing in Post Trip mode in metres
rinf index: 1.1.1.3.2.16.7
rinf index: 1.2.1.1.1.16.7
path: dNvpotrp
max count: 1
min inclusive: 0.0
max exclusive: 327670.0
datatype: decimal
pattern: ^(([1-9]{0,1}[0-9]{0,3}\.{1}[0-9]{1})|([1-9]\d{1,4}0)|([1-9]\d{0,4}))$
severity: Violation
message: dNvpotrp (1.1.1.3.2.16.7, 1.2.1.1.1.16.7): Each track or subset with common characteristics must define the maximum distance for reversing in Post Trip mode in metres. This error is due to having maximum distance for reversing in Post Trip mode value that is not a double (real) number.

DNvpotrpApplicability
type: SPARQLConstraint
affected property: dNvpotrp
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.7
rinf index: 1.2.1.1.1.16.7
severity: Warning
message: dNvpotrp (1.1.1.3.2.16.7, 1.2.1.1.1.16.7):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the dNvpotrp parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:dNvpotrp ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:dNvpotrp} . }

DNvroll
type: PropertyShape
affected property: dNvroll
affected class: RunningTrack
scope: local
comment: Parameter used by the ETCS on-board to supervise the distance allowed to be travelled under the roll-away protection and the reverse movement protection, in metres.
rinf index: 1.1.1.3.2.16.1
rinf index: 1.2.1.1.1.16.1
path: dNvroll
max count: 1
datatype: double
pattern: ^(([1-9]{0,1}[0-9]{0,3}\.{1}[0-9]{1})|([1-9]\d{1,4}0)|([1-9]\d{0,4}))$
severity: Violation
message: dNvroll (1.1.1.3.2.16.1, 1.2.1.1.1.16.1): Each track or subset with common characteristics must define the parameter used by the ETCS on-board to supervise the distance allowed to be travelled under the roll-away protection and the reverse movement protection expressed in metres. This error is due to having more than one value or having a value that is not a double (real) number.

DNvrollApplicability
type: SPARQLConstraint
affected property: dNvroll
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.1
rinf index: 1.2.1.1.1.16.1
severity: Warning
message: dNvroll (1.1.1.3.2.16.7, 1.2.1.1.1.16.7):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the dNvroll parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:dNvroll ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:dNvroll} . }

PublicNetworkRoamingDetails
type: PropertyShape
affected property: publicNetworkRoamingDetails
affected class: RunningTrack
scope: local
comment: If roaming to public networks is configured, please: 1. indicate to which networks, for which users and in which areas. 2. list if any GSM-R functionality is not available when roaming to a public network (e.g. REC, Functional Addressing, Group Calls). 3. also add if there is any operational restriction for vehicles that cannot roam into any of the available public networks.
rinf index: 1.1.1.3.3.7
rinf index: 1.2.1.1.2.7
path: publicNetworkRoamingDetails
max count: 1
datatype: string
severity: Violation
message: publicNetworkRoamingDetails (1.1.1.3.3.7, 1.2.1.1.2.7): Each track or subset with common characteristics may have details on GSM-R roaming to public networks that is a character string. This error is due to having more than one publicNetworkRoamingDetails value or having a value that is not a string.

PublicNetworkRoamingDetailsApplicability
type: SPARQLConstraint
affected property: publicNetworkRoamingDetails
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.7
rinf index: 1.2.1.1.2.7
severity: Warning
message: publicNetworkRoamingDetails (1.1.1.3.3.7, 1.2.1.1.2.7):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the publicNetworkRoamingDetails parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:publicNetworkRoamingDetails ?value} . }

LocalRulesOrRestrictionsDoc
type: PropertyShape
affected property: localRulesOrRestrictionsDoc
affected class: RunningTrack
scope: local
comment: Electronic document available from the IM stored by the Agency providing additional information.
rinf index: 1.1.1.4.2
rinf index: 1.2.3.2
path: localRulesOrRestrictionsDoc
max count: 1
class: Document
severity: Violation
message: localRulesOrRestrictionsDoc (1.1.1.4.2, 1.2.3.2): The track or subset with common characteristics has a value of the document regarding the rules or restrictions of a strictly local nature available by the IM, that must be a Document.

ErrorCorrectionsOnboard
type: PropertyShape
affected property: errorCorrectionsOnboard
affected class: RunningTrack
scope: local
comment: List of unacceptable errors impacting the IM network that are required to be solved in the on-board according to the TSI CCS point 7.2.10.3 specification maintenance point (ETCS, GSM-R and/or ATO).
rinf index: 1.1.1.3.1.2
rinf index: 1.2.1.1.1.19
path: errorCorrectionsOnboard
node kind: IRI
max count: 1
severity: Violation
message: errorCorrectionsOnboard (1.1.1.3.1.2, 1.2.1.1.1.19): The track or subset with common characteristics may have an error correction required for the on-board ETCS, GSM-R and/or ATO function value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

ErrorCorrectionsOnboardSKOS
type: SPARQLConstraint
affected property: errorCorrectionsOnboard
affected class: RunningTrack
scope: local
comment: List of unacceptable errors impacting the IM network that are required to be solved in the on-board according to the TSI CCS point 7.2.10.3 specification maintenance point (ETCS, GSM-R and/or ATO).
rinf index: 1.1.1.3.1.2
rinf index: 1.2.1.1.1.19
severity: Violation
message: errorCorrectionsOnboard (1.1.1.3.1.2, 1.2.1.1.1.19): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/error-corrections/OnboardErrorCorrections.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:errorCorrectionsOnboard ?concept . era:errorCorrectionsOnboard era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EtcsInfillLineAccess
type: PropertyShape
affected property: etcsInfillLineAccess
affected class: RunningTrack
scope: local
comment: Indication whether infill is required to access the line for safety reasons.
rinf index: 1.1.1.3.2.3
rinf index: 1.2.1.1.1.3
path: etcsInfillLineAccess
max count: 1
datatype: boolean
severity: Violation
message: etcsInfillLineAccess (1.1.1.3.2.3, 1.2.1.1.1.3): Each track or subset with common characteristics may define the existence of a ETCS infill necessary for line access. This error is due to having more than one indication of ETCS infill necessary for line access value or having an indication of ETCS infill necessary for line access value that is not Y/N (boolean).

EtcsInfillLineAccessApplicability
type: SPARQLConstraint
affected property: etcsInfillLineAccess
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.3
rinf index: 1.2.1.1.1.3
severity: Warning
message: etcsInfillLineAccess (1.1.1.3.2.3, 1.2.1.1.1.3):The track or subset with common characteristics {$this} ({?label}), has a 'ETCS Level Type' defined which makes the etcsInfillLineAccess parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:etcsInfillLineAccess ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:etcsInfillLineAccess} . }

EtcsDegradedSituation
type: PropertyShape
affected property: etcsDegradedSituation
affected class: RunningTrack
scope: local
comment: ERTMS / ETCS application level for degraded situation related to the track side equipment.
rinf index: 1.1.1.3.10.1
rinf index: 1.2.1.1.9.1
path: etcsDegradedSituation
node kind: IRI
severity: Violation
message: etcsDegradedSituation (1.1.1.3.10.1, 1.2.1.1.9.1): The track or subset with common characteristics must have an ETCS level for degraded situation value that is an IRI.

EtcsDegradedSituationSKOS
type: SPARQLConstraint
affected property: etcsDegradedSituation
affected class: RunningTrack
scope: local
comment: ERTMS / ETCS application level for degraded situation related to The track or subset with common characteristics side equipment.
rinf index: 1.1.1.3.10.1
rinf index: 1.2.1.1.9.1
severity: Violation
message: etcsDegradedSituation (1.1.1.3.10.1, 1.2.1.1.9.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-situation/ETCSSituations.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:etcsDegradedSituation ?concept . era:etcsDegradedSituation era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EtcsDegradedSituationApplicability
type: SPARQLConstraint
affected property: etcsDegradedSituation
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.10.1
rinf index: 1.2.1.1.9.1
severity: Warning
message: etcsDegradedSituation (1.1.1.3.10.1, 1.2.1.1.9.1):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined that makes the etcsDegradedSituation parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:etcsDegradedSituation ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:etcsDegradedSituation} . }

HasEtcsNationalPacket44
type: PropertyShape
affected property: hasEtcsNationalPacket44
affected class: RunningTrack
scope: local
comment: Indication whether data for national packet 44 applications is transmitted between track and train.
rinf index: 1.1.1.3.2.5
rinf index: 1.2.1.1.1.5
path: hasEtcsNationalPacket44
max count: 1
datatype: boolean
severity: Violation
message: hasEtcsNationalPacket44 (1.1.1.3.2.5, 1.2.1.1.1.5): Each track or subset with common characteristics may define the existence of an ETCS national packet 44 application. This error is due to having more than one indication of ETCS national packet 44 application value or having an indication of ETCS national packet 44 application value that is not Y/N (boolean).

HasEtcsNationalPacket44Applicability
type: SPARQLConstraint
affected property: hasEtcsNationalPacket44
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.5
rinf index: 1.2.1.1.1.5
severity: Warning
message: hasEtcsNationalPacket44 (1.1.1.3.2.5, 1.2.1.1.1.5):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined that makes the hasEtcsNationalPacket44 parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:hasEtcsNationalPacket44 ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:hasEtcsNationalPacket44} . }

EtcsNationalPacket44Function
type: PropertyShape
affected property: etcsNationalPacket44Function
affected class: RunningTrack
scope: local
comment: Link to the implemented functions for national packet 44 applications that are transmitted between track and train.
rinf index: 1.1.1.3.2.5
rinf index: 1.2.1.1.1.5
path: etcsNationalPacket44Function
node kind: IRI
severity: Violation
message: etcsNationalPacket44Function (1.1.1.3.2.5, 1.2.1.1.1.5): The track or subset with common characteristics must have a ETCS national packet 44 application implemented function value that is an IRI.

EtcsNationalPacket44FunctionSKOS
type: SPARQLConstraint
affected property: etcsNationalPacket44Function
affected class: RunningTrack
scope: local
comment: Link to the implemented functions for national packet 44 applications that are transmitted between track and train.
rinf index: 1.1.1.3.2.5
rinf index: 1.2.1.1.1.5
severity: Violation
message: etcsNationalPacket44Function (1.1.1.3.2.5, 1.2.1.1.1.5): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-national-packet-444-functions/ETCSNationalPacket444Functions/.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:etcsNationalPacket44Function ?concept . era:etcsNationalPacket44Function era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EtcsImplementsLevelCrossingProcedure
type: PropertyShape
affected property: etcsImplementsLevelCrossingProcedure
affected class: RunningTrack
scope: local
comment: If The track or subset with common characteristicsside does not implement any solution to cover defective LXs (which are normally protected by means of a technical system), then drivers will be required to comply with instructions received from other sources.
rinf index: 1.1.1.3.2.13
rinf index: 1.2.1.1.1.13
path: etcsImplementsLevelCrossingProcedure
max count: 1
datatype: boolean
severity: Violation
message: etcsImplementsLevelCrossingProcedure (1.1.1.3.2.13, 1.2.1.1.1.13): Each track or subset with common characteristics may define the existence of level crossing procedure or an equivalent solution for ETCS trackside. This error is due to having more than one value or having a value that is not Y/N (boolean).

EtcsImplementsLevelCrossingProcedureApplicability
type: SPARQLConstraint
affected property: etcsImplementsLevelCrossingProcedure
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.13
rinf index: 1.2.1.1.1.13
severity: Warning
message: etcsImplementsLevelCrossingProcedure (1.1.1.3.2.13, 1.2.1.1.1.13):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined that makes the etcsImplementsLevelCrossingProcedure parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:etcsImplementsLevelCrossingProcedure ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:etcsImplementsLevelCrossingProcedure} . }

TsiTractionHarmonics
type: PropertyShape
affected property: tsiTractionHarmonics
affected class: RunningTrack
scope: local
comment: Indication whether rules exist and are compliant with the TSI.
rinf index: 1.1.1.3.9.2
rinf index: 1.2.1.1.8.2
path: tsiTractionHarmonics
max count: 1
datatype: boolean
severity: Violation
message: tsiTractionHarmonics (1.1.1.3.9.2, 1.2.1.1.8.2): Each track or subset with common characteristics may define the existence and TSI compliance of limits in harmonics in the traction current of vehicles. This error is due to having more than one value or having a value that is not Y/N (boolean).

TsiTractionHarmonicsApplicability
type: SPARQLConstraint
affected property: tsiTractionHarmonics
affected class: RunningTrack
scope: local
comment: Applicable ('Y') only when for parameter 1.1.1.3.7.1.1 the selected option is 'wheel detector' or 'track circuit'.
rinf index: 1.1.1.3.9.2
rinf index: 1.2.1.1.8.2
severity: Violation
message: tsiTractionHarmonics (1.1.1.3.9.2, 1.2.1.1.8.2):The track or subset with common characteristics {$this} ({?label}), has a 'train detection system' type ('wheel detector' or 'track circuit') that makes the tsiTractionHarmonics parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { {$this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/10>} UNION {$this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/20>} OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:tsiTractionHarmonics ?value} . }

TsiMagneticFields
type: PropertyShape
affected property: tsiMagneticFields
affected class: RunningTrack
scope: local
comment: Indication whether rules exist and are compliant with the TSI.
rinf index: 1.1.1.3.9.1
rinf index: 1.2.1.1.8.1
path: tsiMagneticFields
max count: 1
datatype: boolean
severity: Violation
message: tsiMagneticFields (1.1.1.3.9.1, 1.2.1.1.8.1): Each track or subset with common characteristics may define the existence and TSI compliance of rules for magnetic fields emitted by a vehicle. This error is due to having more than one value or having a value that is not Y/N (boolean).

TsiMagneticFieldsApplicability
type: SPARQLConstraint
affected property: tsiMagneticFields
affected class: RunningTrack
scope: local
comment: Applicable ('Y') only when for parameter 1.1.1.3.7.1.1 the selected option is 'wheel detector'.
rinf index: 1.1.1.3.9.1
rinf index: 1.2.1.1.8.1
severity: Violation
message: tsiMagneticFields (1.1.1.3.9.1, 1.2.1.1.8.1):The track or subset with common characteristics {$this} ({?label}), has a 'train detection system' type ('wheel detector') that makes the tsiMagneticFields parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/20>. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:tsiMagneticFields ?value} . }

PublicNetworkRoaming
type: PropertyShape
affected property: publicNetworkRoaming
affected class: RunningTrack
scope: local
comment: Existence of roaming to a public network.
rinf index: 1.1.1.3.3.6
rinf index: 1.2.1.1.2.6
path: publicNetworkRoaming
max count: 1
datatype: boolean
severity: Violation
message: publicNetworkRoaming (1.1.1.3.3.6, 1.2.1.1.2.6): Each track or subset with common characteristics may define the existence of GSM-R roaming to public networks. This error is due to having more than one value or having a value that is not Y/N (boolean).

PublicNetworkRoamingApplicability
type: SPARQLConstraint
affected property: publicNetworkRoaming
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.6
rinf index: 1.2.1.1.2.6
severity: Warning
message: publicNetworkRoaming (1.1.1.3.3.6, 1.2.1.1.2.6):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the publicNetworkRoaming parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:publicNetworkRoaming ?value} . }

HasETCSRestrictionsConditions
type: PropertyShape
affected property: hasETCSRestrictionsConditions
affected class: RunningTrack
scope: local
comment: Indication whether restrictions or conditions due to partial compliance with the TSI CCS exist.
rinf index: 1.1.1.3.2.6
rinf index: 1.2.1.1.1.6
path: hasETCSRestrictionsConditions
max count: 1
datatype: boolean
severity: Violation
message: hasETCSRestrictionsConditions (1.1.1.3.2.6, 1.2.1.1.1.6): Each track or subset with common characteristics may define the existence of operating restrictions or conditions. This error is due to having more than one value or having a value that is not Y/N (boolean).

HasETCSRestrictionsConditionsApplicability
type: SPARQLConstraint
affected property: hasETCSRestrictionsConditions
affected class: RunningTrack
scope: local
comment: Only applicable (true) when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.6
rinf index: 1.2.1.1.1.6
severity: Warning
message: hasETCSRestrictionsConditions (1.1.1.3.2.6, 1.2.1.1.1.6):The track or subset with common characteristics {$this} ({?label}), has a 'ETCS level' type selected which makes the hasETCSRestrictionsConditions parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:hasETCSRestrictionsConditions ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:hasETCSRestrictionsConditions} . }

EtcsRestrictionsConditionsDoc
type: PropertyShape
affected property: etcsRestrictionsConditionsDoc
affected class: RunningTrack
scope: local
comment: Indication of the document where restrictions or conditions due to partial compliance with the TSI CCS are described.
rinf index: 1.1.1.3.2.6
rinf index: 1.2.1.1.1.6
path: etcsRestrictionsConditionsDoc
max count: 1
class: Document
severity: Violation
message: etcsRestrictionsConditionsDoc (1.1.1.3.2.6, 1.2.1.1.1.6): The track or subset with common characteristics has a document regarding the rules or restrictions of a strictly local nature available by the IM value that must be a Document.

EtcsRestrictionsConditionsDocApplicability
type: SPARQLConstraint
affected property: etcsRestrictionsConditionsDoc
affected class: RunningTrack
scope: local
comment: Only applicable when hasETCSRestricionsConditions is true.
rinf index: 1.1.1.3.2.6
rinf index: 1.2.1.1.1.6
severity: Warning
message: etcsRestrictionsConditionsDoc (1.1.1.3.2.6, 1.2.1.1.1.6):The track or subset with common characteristics {$this} ({?label}), has a 'has ETCS Restricions Condition' value 'true' which makes the etcsRestrictionsConditionsDoc parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:hasETCSRestrictionsConditions true. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:etcsRestrictionsConditionsDoc ?value} . }

LocalRulesOrRestrictions
type: PropertyShape
affected property: localRulesOrRestrictions
affected class: RunningTrack
scope: local
comment: Existence of rules and restrictions of a strictly local nature.
rinf index: 1.1.1.4.1
rinf index: 1.2.3.1
path: localRulesOrRestrictions
max count: 1
datatype: boolean
severity: Violation
message: localRulesOrRestrictions (1.1.1.4.1, 1.2.3.1): Each track or subset with common characteristics may define the existence of rules and restrictions of a strictly local nature. This error is due to having more than one value or having a value that is not Y/N (boolean).

SwitchProtectControlWarning
type: PropertyShape
affected property: switchProtectControlWarning
affected class: RunningTrack
scope: local
comment: Indication whether a switch over between different systems whilst running exists.
rinf index: 1.2.1.1.7.1
rinf index: 1.1.1.3.8.1
path: switchProtectControlWarning
max count: 1
datatype: boolean
severity: Violation
message: switchProtectControlWarning (1.2.1.1.7.1, 1.1.1.3.8.1): Each track or subset with common characteristics may define the existence of switch over between different protection, control and warning systems while running. This error is due to having more than one value or having a value that is not Y/N (boolean).

SwitchProtectControlWarningApplicability
type: SPARQLConstraint
affected property: switchProtectControlWarning
affected class: RunningTrack
scope: local
comment: Applicable ('Y') when at least two different class of protection systems exist.
rinf index: 1.2.1.1.7.1
rinf index: 1.1.1.3.8.1
severity: Warning
message: switchProtectControlWarning (1.2.1.1.7.1, 1.1.1.3.8.1):The track or subset with common characteristics {$this} ({?label}), has more than one protection system defined which makes the switchProtectControlWarning parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label ?count WHERE { { SELECT $this (COUNT(?system) AS ?count) WHERE{ {$this era:protectionLegacySystem ?system} UNION {$this era:otherTrainProtection ?system} } GROUP BY $this } OPTIONAL{$this rdfs:label ?label} . FILTER ( ?count > 1) . FILTER NOT EXISTS {$this era:switchProtectControlWarning ?value} . }

SwitchRadioSystem
type: PropertyShape
affected property: switchRadioSystem
affected class: RunningTrack
scope: local
comment: Indication whether a switch over between different radio systems and no communication system whilst running exists.
rinf index: 1.2.1.1.7.2
rinf index: 1.1.1.3.8.2
path: switchRadioSystem
max count: 1
datatype: boolean
severity: Violation
message: switchRadioSystem (1.2.1.1.7.2, 1.1.1.3.8.2): Each track or subset with common characteristics may define the existence of switch over between different radio systems. This error is due to having more than one value or having a value that is not Y/N (boolean).

SwitchRadioSystemApplicability
type: SPARQLConstraint
affected property: switchRadioSystem
affected class: RunningTrack
scope: local
comment: Applicable ('Y') when at least two different radio systems exist.
rinf index: 1.2.1.1.7.2
rinf index: 1.1.1.3.8.2
severity: Violation
message: switchRadioSystem (1.2.1.1.7.2, 1.1.1.3.8.2):The track or subset with common characteristics {$this} ({?label}), has more than one radio system defined which makes the switchRadioSystem parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label ?countRS WHERE { { SELECT $this (COUNT(?radioSystem) AS ?countRS) WHERE{ $this era:legacyRadioSystem ?radioSystem } GROUP BY $this } OPTIONAL{$this rdfs:label ?label} . FILTER ( ?countRS > 1) . FILTER NOT EXISTS {$this era:switchRadioSystem ?value} . }

HasTSITrainDetection
type: PropertyShape
affected property: hasTSITrainDetection
affected class: RunningTrack
scope: local
comment: Indication if there is any train detection system installed and fully compliant with the TSI CCS (Annex I, Appendix A, Table A.2 -Index 77).
rinf index: 1.1.1.3.4.1
rinf index: 1.2.1.1.3.1
path: hasTSITrainDetection
max count: 1
datatype: boolean
severity: Violation
message: hasTSITrainDetection (1.1.1.3.4.1, 1.2.1.1.3.1): Each track or subset with common characteristics may define the existence of train detection system fully compliant with the TSI. This error is due to having more than one value or having a value that is not Y/N (boolean).

GprsForETCS
type: PropertyShape
affected property: gprsForETCS
affected class: RunningTrack
scope: local
comment: Indication if GPRS can be used for ETCS.
rinf index: 1.1.1.3.3.3.2
rinf index: 1.2.1.1.2.3.2
path: gprsForETCS
max count: 1
datatype: boolean
severity: Violation
message: gprsForETCS (1.1.1.3.3.3.2, 1.2.1.1.2.3.2): Each track or subset with common characteristics may define the existence of GPRS for ETCS. This error is due to having more than one value or having a value that is not Y/N (boolean).
message: gprsForETCS (1.1.1.3.3.3.2): The track or subset with common characteristics must define at most one use of GPRS for ETCS value that is Y/N (boolean). This error may be due to the track having more than one value or to having a value that is not Y/N (boolean).

GprsForETCSApplicability
type: SPARQLConstraint
affected property: gprsForETCS
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) and ETCS L2 (parameter 1.1.1.3.2.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.3.2
rinf index: 1.2.1.1.2.3.2
severity: Warning
message: gprsForETCS (1.1.1.3.3.3.2, 1.2.1.1.2.3.2):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the gprsForETCS parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gprsForETCS ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:gprsForETCS} . }

GsmrNetworkCoverage
type: PropertyShape
affected property: gsmrNetworkCoverage
affected class: RunningTrack
scope: local
comment: List of GSM-R networks which are covered by a roaming agreement.
rinf index: 1.1.1.3.3.5
rinf index: 1.2.1.1.2.5
path: gsmrNetworkCoverage
node kind: IRI
severity: Violation
message: gsmrNetworkCoverage (1.1.1.3.3.5, 1.2.1.1.2.5): The track or subset with common characteristics must have a GSM-R networks covered by a roaming agreement value that is an IRI.

GsmrNetworkCoverageSKOS
type: SPARQLConstraint
affected property: gsmrNetworkCoverage
affected class: RunningTrack
scope: local
comment: List of GSM-R networks which are covered by a roaming agreement.
rinf index: 1.1.1.3.3.5
rinf index: 1.2.1.1.2.5
severity: Violation
message: gsmrNetworkCoverage (1.1.1.3.3.5, 1.2.1.1.2.5): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/gsmr-networks/GSMRNetworks.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:gsmrNetworkCoverage ?concept . era:gsmrNetworkCoverage era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

GsmrNetworkCoverageApplicability
type: SPARQLConstraint
affected property: gsmrNetworkCoverage
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.5
rinf index: 1.2.1.1.2.5
severity: Warning
message: gsmrNetworkCoverage (1.1.1.3.3.5, 1.2.1.1.2.5):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the gsmrNetworkCoverage parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmrNetworkCoverage ?value} . }

UsesGroup555
type: PropertyShape
affected property: usesGroup555
affected class: RunningTrack
scope: local
comment: Indication if group 555 is used.
rinf index: 1.1.1.3.3.4
rinf index: 1.2.1.1.2.4
path: usesGroup555
max count: 1
datatype: boolean
severity: Violation
message: usesGroup555 (1.1.1.3.3.4, 1.2.1.1.2.4): Each track or subset with common characteristics may define the existence of GSM-R use of group 555. This error is due to having more than one value or having a value that is not Y/N (boolean).

UsesGroup555Applicability
type: SPARQLConstraint
affected property: usesGroup555
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) and ETCS L2 (parameter 1.1.1.3.2.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.4
rinf index: 1.2.1.1.2.4
severity: Warning
message: usesGroup555 (1.1.1.3.3.4, 1.2.1.1.2.4):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the usesGroup555 parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:usesGroup555 ?value} . }

GsmRVersion
type: PropertyShape
affected property: gsmRVersion
affected class: RunningTrack
scope: local
comment: GSM-R functional requirements specification and system requirements specification in accordance with the specification respectively referenced in TSI CCS (Annex ), version number installed lineside.
rinf index: 1.1.1.3.3.1
rinf index: 1.2.1.1.2.1
path: gsmRVersion
node kind: IRI
severity: Violation
message: gsmRVersion (1.1.1.3.3.1, 1.2.1.1.2.1): The track or subset with common characteristics must have a GSM-R version value that is an IRI.

GsmRVersionSKOS
type: SPARQLConstraint
affected property: gsmRVersion
affected class: RunningTrack
scope: local
comment: GSM-R functional requirements specification and system requirements specification in accordance with the specification respectively referenced in TSI CCS (Annex ), version number installed lineside.
rinf index: 1.1.1.3.3.1
rinf index: 1.2.1.1.2.1
severity: Violation
message: gsmRVersion (1.1.1.3.3.1, 1.2.1.1.2.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/gsmr-versions/GSMRVersions.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:gsmRVersion ?concept . era:gsmRVersion era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

TrackId
type: PropertyShape
affected property: trackId
affected class: RunningTrack
scope: local
comment: Unique track identification or unique track number within an OP or a section of line.
rinf index: 1.1.1.0.0.1
rinf index: 1.2.1.0.0.2
min count: 1
max count: 1
path: trackId
datatype: string
severity: Violation
message: trackId (1.1.1.3.3.3.3, 1.2.1.1.2.3.3): The identification of a track must be a string. This error may be due to having a track with no identification or with more than one value as identification, or having a value that is not a string.

GsmrForcedDeregistrationFunctionalNumber
type: PropertyShape
affected property: gsmrForcedDeregistrationFunctionalNumber
affected class: RunningTrack
scope: local
comment: This feature will determine the applicable operational rules for drivers and signallers when dealing with cab radios registered under wrong numbers.
rinf index: 1.1.1.3.3.11
rinf index: 1.2.1.1.2.11
path: gsmrForcedDeregistrationFunctionalNumber
max count: 1
datatype: boolean
severity: Violation
message: gsmrForcedDeregistrationFunctionalNumber (1.1.1.3.3.11, 1.2.1.1.2.11): Each track or subset with common characteristics may define the existence of GSM-R network configured to allow forced de-registration of a functional number by another driver. This error is due to having more than one value or having a value that is not Y/N (boolean).

GsmrForcedDeregistrationFunctionalNumberApplicability
type: SPARQLConstraint
affected property: gsmrForcedDeregistrationFunctionalNumber
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) and ETCS L2 (parameter 1.1.1.3.2.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.11
rinf index: 1.2.1.1.2.11
severity: Warning
message: gsmrForcedDeregistrationFunctionalNumber (1.1.1.3.3.11, 1.2.1.1.2.11):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the gsmrForcedDeregistrationFunctionalNumber parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmrForcedDeregistrationFunctionalNumber ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:gsmrForcedDeregistrationFunctionalNumber} . }

MNvcontact
type: PropertyShape
affected property: mNvcontact
affected class: RunningTrack
scope: local
comment: On-Board system reaction when T_NVCONTACT expires.
rinf index: 1.1.1.3.2.16.9
rinf index: 1.2.1.1.1.16.9
path: mNvcontact
node kind: IRI
max count: 1
severity: Violation
message: mNvcontact (1.1.1.3.2.16.9, 1.2.1.1.1.16.9): The track or subset with common characteristics may have an M_NVCONTACT value that is an IRI. This error is due to having more than one value or having a value that is not an IRI

MNvcontactSKOS
type: SPARQLConstraint
affected property: mNvcontact
affected class: RunningTrack
scope: local
comment: On-Board system reaction when T_NVCONTACT expires.
rinf index: 1.1.1.3.2.16.9
rinf index: 1.2.1.1.1.16.9
severity: Violation
message: mNvcontact (1.1.1.3.2.16.9, 1.2.1.1.1.16.9): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-reactions-contact/ETCSReactionsNVContact.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:mNvcontact ?concept . era:mNvcontact era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

MNvcontactApplicability
type: SPARQLConstraint
affected property: mNvcontact
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.9
rinf index: 1.2.1.1.1.16.9
severity: Warning
message: mNvcontact (1.1.1.3.2.16.9, 1.2.1.1.1.16.9):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the mNvcontact parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:mNvcontact ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:mNvcontact} . }

MNvderun
type: PropertyShape
affected property: mNvderun
affected class: RunningTrack
scope: local
comment: Entry of Driver ID permitted while running.
rinf index: 1.1.1.3.2.16.10
rinf index: 1.2.1.1.1.16.10
path: mNvderun
max count: 1
datatype: boolean
severity: Violation
message: mNvderun (1.1.1.3.2.16.10, 1.2.1.1.1.16.10): Each track or subset with common characteristics may define the M_NVDERUN value. This error is due to having more than one value or having a value that is not Y/N (boolean).

MNvderunApplicability
type: SPARQLConstraint
affected property: mNvderun
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.10
rinf index: 1.2.1.1.1.16.10
severity: Warning
message: mNvderun (1.1.1.3.2.16.10, 1.2.1.1.1.16.10):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the mNvderun parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:mNvderun ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:mNvderun} . }

MinimumHorizontalRadius
type: PropertyShape
affected property: minimumHorizontalRadius
affected class: RunningTrack
scope: local
comment: Radius of the smallest horizontal curve of The track or subset with common characteristics in metres.
rinf index: 1.1.1.1.3.7
rinf index: 1.2.2.0.3.2
path: minimumHorizontalRadius
max count: 1
datatype: integer
pattern: ^([1-9]\d{0,5}|0)$
severity: Violation
message: minimumHorizontalRadius (1.1.1.1.3.7, 1.2.2.0.3.2): The track or subset with common characteristics defines a minimum radius of horizontal curve. This error is due to having more than one value, having a value that is not an integer or having an integer that does not follow the pattern [NNNNNN].

NationalValuesBrakeModel
type: PropertyShape
affected property: nationalValuesBrakeModel
affected class: RunningTrack
scope: local
comment: Set of parameters for adapting the braking curves calculated by the ETCS on-board system to match accuracy, performance and safety margins imposed by the infrastructure manager.
rinf index: 1.1.1.3.2.16.13
rinf index: 1.2.1.1.1.16.13
path: nationalValuesBrakeModel
datatype: string
max count: 1
severity: Violation
message: nationalValuesBrakeModel (1.1.1.3.2.16.13, 1.2.1.1.1.16.13): The track or subset with common characteristics has a National Value used for the brake model that must be a string and follow the format [±NNNN.NNN]. The error is due to having more than one value, having a vaalue that is not a string, or it is due to the value not following the pattern.

NationalValuesBrakeModelApplicability
type: SPARQLConstraint
affected property: nationalValuesBrakeModel
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.13
rinf index: 1.2.1.1.1.16.13
severity: Warning
message: nationalValuesBrakeModel (1.1.1.3.2.16.13, 1.2.1.1.1.16.13):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the nationalValuesBrakeModel parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:nationalValuesBrakeModel ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:nationalValuesBrakeModel} . }

GsmRNoCoverage
type: PropertyShape
affected property: gsmRNoCoverage
affected class: RunningTrack
scope: local
comment: Indication if there is no GSMR coverage.
rinf index: 1.1.1.3.3.8
rinf index: 1.2.1.1.2.8
path: gsmRNoCoverage
max count: 1
datatype: boolean
severity: Violation
message: gsmRNoCoverage (1.1.1.3.3.8, 1.2.1.1.2.8): Each track or subset with common characteristics may define the indication of existence of GSMR coverage. This error is due to having more than one value or having a value that is not Y/N (boolean).

GsmRNoCoverageApplicability
type: SPARQLConstraint
affected property: gsmRNoCoverage
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.8
rinf index: 1.2.1.1.2.8
severity: Warning
message: gsmRNoCoverage (1.1.1.3.3.8, 1.2.1.1.2.8):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the gsmRNoCoverage parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmRNoCoverage ?value} . }

GsmRActiveMobiles
type: PropertyShape
affected property: gsmRActiveMobiles
affected class: RunningTrack
scope: local
comment: Number of simultaneous communication session on board for ETCS level 2 required for a smooth running of the train. This relates to the radio block centre (RBC) handling of communication sessions. Not safety critical and no matter of interoperability.
rinf index: 1.1.1.3.3.2
rinf index: 1.2.1.1.2.2
path: gsmRActiveMobiles
node kind: IRI
max count: 1
severity: Violation
message: gsmRActiveMobiles (1.1.1.3.3.2, 1.2.1.1.2.2): The track or subset with common characteristics must have a number of active GSM-R mobiles (EDOR) or simultaneous communication session on-board for ETCS Level 2 needed to perform radio block centre handovers without having an operational disruption value that is a single IRI. This error is due to having more than one value or having a value that is not an IRI.

GsmRActiveMobilesSKOS
type: SPARQLConstraint
affected property: gsmRActiveMobiles
affected class: RunningTrack
scope: local
comment: Number of simultaneous communication session on board for ETCS level 2 required for a smooth running of the train. This relates to the radio block centre (RBC) handling of communication sessions. Not safety critical and no matter of interoperability.
rinf index: 1.1.1.3.3.2
rinf index: 1.2.1.1.2.2
severity: Violation
message: gsmRActiveMobiles (1.1.1.3.3.2, 1.2.1.1.2.2): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/gsmr-number-active-mobiles/NumberActiveMobiles.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:gsmRActiveMobiles ?concept . era:gsmRActiveMobiles era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

GsmRActiveMobilesApplicability
type: SPARQLConstraint
affected property: gsmRActiveMobiles
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) and ETCS L2 (parameter 1.1.1.3.2.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.2
rinf index: 1.2.1.1.2.2
severity: Warning
message: gsmRActiveMobiles (1.1.1.3.3.2, 1.2.1.1.2.2):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the gsmRActiveMobiles parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmRActiveMobiles ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:gsmRActiveMobiles} . }

GsmROptionalFunctions
type: PropertyShape
affected property: gsmROptionalFunctions
affected class: RunningTrack
scope: local
comment: Use of optional GSM-R functions which might improve operation on the line. They are for information only and not for network access criteria.
rinf index: 1.1.1.3.3.3, 1.2.1.1.2.3
path: gsmROptionalFunctions
node kind: IRI
severity: Violation
message: gsmROptionalFunctions (1.1.1.3.3.3, 1.2.1.1.2.3): The track or subset with common characteristics must have optional GSM-R functions value that is an IRI. This error is due to having a avalue that is not an IRI

GsmROptionalFunctionsSKOS
type: SPARQLConstraint
affected property: gsmROptionalFunctions
affected class: RunningTrack
scope: local
comment: Use of optional GSM-R functions which might improve operation on the line. They are for information only and not for network access criteria.
rinf index: 1.1.1.3.3.2
rinf index: 1.2.1.1.2.2
severity: Violation
message: gsmROptionalFunctions (1.1.1.3.3.2, 1.2.1.1.2.2): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/gsmr-optional-functions/OptionalFunctions.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:gsmROptionalFunctions ?concept . era:gsmROptionalFunctions era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

GsmROptionalFunctionsApplicability
type: SPARQLConstraint
affected property: gsmROptionalFunctions
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.2
rinf index: 1.2.1.1.2.2
severity: Warning
message: gsmROptionalFunctions (1.1.1.3.3.2, 1.2.1.1.2.2):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the gsmROptionalFunctions parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmROptionalFunctions ?value} . }

OtherCantDeficiencyBasicSSP
type: PropertyShape
affected property: otherCantDeficiencyBasicSSP
affected class: RunningTrack
scope: local
comment: Essential information for drivers of trains with a worse (lower) tolerated cant deficiency than those for which the ETCS trackside provides SSP (Static Speed Profiles) in conjunction with parameter 'Cant Deficiency used for the basic SSP'.
rinf index: 1.1.1.3.2.14.1
rinf index: 1.2.1.1.1.14.1
path: otherCantDeficiencyBasicSSP
max count: 1
node kind: IRI
severity: Violation
message: otherCantDeficiencyBasicSSP (1.1.1.3.2.14.1, 1.2.1.1.1.14.1): The track or subset with common characteristics must have other Cant Deficiency train categories basic SSP value that is an IRI. This error is due to having more than one value or having a value that is not an IRI

OtherCantDeficiencyBasicSSPSKOS
type: SPARQLConstraint
affected property: otherCantDeficiencyBasicSSP
affected class: RunningTrack
scope: local
comment: Essential information for drivers of trains with a worse (lower) tolerated cant deficiency than those for which the ETCS trackside provides SSP (Static Speed Profiles) in conjunction with parameter 'Cant Deficiency used for the basic SSP'.
rinf index: 1.1.1.3.2.14.1
rinf index: 1.2.1.1.1.14.1
severity: Violation
message: otherCantDeficiencyBasicSSP (1.1.1.3.2.14.1, 1.2.1.1.1.14.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/cant-deficiencies/CantDeficiencies.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:otherCantDeficiencyBasicSSP ?concept . era:otherCantDeficiencyBasicSSP era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

OtherCantDeficiencyBasicSSPApplicability
type: SPARQLConstraint
affected property: otherCantDeficiencyBasicSSP
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.14.1
rinf index: 1.2.1.1.1.14.1
severity: Warning
message: otherCantDeficiencyBasicSSP (1.1.1.3.2.14.1, 1.2.1.1.1.14.1):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the otherCantDeficiencyBasicSSP parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:otherCantDeficiencyBasicSSP ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:otherCantDeficiencyBasicSSP} . }

LegacyRadioSystem
type: PropertyShape
affected property: legacyRadioSystem
affected class: RunningTrack
scope: local
comment: Indication of radio legacy systems installed.
rinf index: 1.1.1.3.6.1
rinf index: 1.2.1.1.5.1
path: legacyRadioSystem
node kind: IRI
severity: Violation
message: legacyRadioSystem (1.1.1.3.6.1, 1.2.1.1.5.1): The track or subset with common characteristics may have other radio systems installed (Radio Legacy Systems) value that is an IRI. This error is due to having a value that is not an IRI

LegacyRadioSystemSKOS
type: SPARQLConstraint
affected property: legacyRadioSystem
affected class: RunningTrack
scope: local
comment: Indication of radio legacy systems installed.
rinf index: 1.1.1.3.6.1
rinf index: 1.2.1.1.5.1
severity: Violation
message: legacyRadioSystem (1.1.1.3.6.1, 1.2.1.1.5.1): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/legacy-radio-systems/LegacyRadioSystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:legacyRadioSystem ?concept . era:legacyRadioSystem era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

OtherTrainProtection
type: PropertyShape
affected property: otherTrainProtection
affected class: RunningTrack
scope: local
comment: Indication of existence of other system than ETCS for degraded situation.
rinf index: 1.1.1.3.10.2
rinf index: 1.2.1.1.9.2
path: otherTrainProtection
max count: 1
node kind: IRI
severity: Violation
message: otherTrainProtection (1.1.1.3.10.2, 1.2.1.1.9.2): The track or subset with common characteristics may have other train protection, control and warning systems for degraded situation value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

OtherTrainProtectionSKOS
type: SPARQLConstraint
affected property: otherTrainProtection
affected class: RunningTrack
scope: local
comment: Indication of existence of other system than ETCS for degraded situation.
rinf index: 1.1.1.3.10.2
rinf index: 1.2.1.1.9.2
severity: Violation
message: otherTrainProtection (1.1.1.3.10.2, 1.2.1.1.9.2): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/other-protection-control-warning/OtherProtectionControlWarnings.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:otherTrainProtection ?concept . era:otherTrainProtection era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

OtherTrainProtectionApplicability
type: SPARQLConstraint
affected property: otherTrainProtection
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.10.2
rinf index: 1.2.1.1.9.2
severity: Warning
message: otherTrainProtection (1.1.1.3.10.2, 1.2.1.1.9.2):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the otherTrainProtection parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:otherTrainProtection ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:otherTrainProtection} . }

FreightCorridorShape
type: PropertyShape
affected property: freightCorridor
affected class: RunningTrack
scope: local
comment: Indication whether the line is designated to a Railway Freight Corridor
rinf index: 1.1.1.1.2.3
rinf index: 1.2.1.0.2.3
path: freightCorridor
node kind: IRI
severity: Violation
message: freightCorridor (1.1.1.1.2.3, 1.2.1.0.2.3): Each track or subset with common characteristics may have an indication whether the line is designated to a Railway Freight Corridor that is an IRI. This error is due to having a value that is not an IRI.

FreightCorridorSKOS
type: SPARQLConstraint
affected property: freightCorridor
affected class: RunningTrack
scope: local
comment: Indication whether the line is designated to a Railway Freight Corridor
rinf index: 1.1.1.1.2.3
rinf index: 1.2.1.0.2.3
severity: Violation
message: Indication whether the line is designated to a Railway Freight Corridor (1.1.1.1.2.3, 1.2.1.0.2.3): The National Line {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/freight-corridor/FreightCorridors.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:freightCorridor ?concept . era:freightCorridor era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

QNvdriverAdhes
type: PropertyShape
affected property: qNvdriverAdhes
affected class: RunningTrack
scope: local
comment: Qualifier determining whether the driver is allowed to modify the adhesion factor used by the ETCS on-board to calculate the braking curves.
rinf index: 1.1.1.3.2.16.11
rinf index: 1.2.1.1.1.16.11
path: qNvdriverAdhes
max count: 1
node kind: IRI
severity: Violation
message: qNvdriverAdhes (1.1.1.3.2.16.11, 1.2.1.1.1.16.11): The track or subset with common characteristics must have a single Q_NVDRIVER_ADHES value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

QNvdriverAdhesSKOS
type: SPARQLConstraint
affected property: qNvdriverAdhes
affected class: RunningTrack
scope: local
comment: Qualifier determining whether the driver is allowed to modify the adhesion factor used by the ETCS on-board to calculate the braking curves.
rinf index: 1.1.1.3.2.16.11
rinf index: 1.2.1.1.1.16.11
severity: Violation
message: qNvdriverAdhes (1.1.1.3.2.16.11, 1.2.1.1.1.16.11): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/adhf-qualifier/AdhesionFactorChange.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:qNvdriverAdhes ?concept . era:qNvdriverAdhes era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

QNvdriverAdhesApplicability
type: SPARQLConstraint
affected property: qNvdriverAdhes
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.11
rinf index: 1.2.1.1.1.16.11
severity: Warning
message: qNvdriverAdhes (1.1.1.3.2.16.11, 1.2.1.1.1.16.11):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the qNvdriverAdhes parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:qNvdriverAdhes ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:qNvdriverAdhes} . }

QNvemrrls
type: PropertyShape
affected property: qNvemrrls
affected class: RunningTrack
scope: local
comment: Qualifier defining whether the application of the emergency brake for reasons other than a trip can be revoked as soon as the conditions for it have disappeared or after the train has come to a complete standstill.
rinf index: 1.1.1.3.2.16.2
rinf index: 1.2.1.1.1.16.2
path: qNvemrrls
max count: 1
node kind: IRI
severity: Violation
message: qNvemrrls (1.1.1.3.2.16.2, 1.2.1.1.1.16.2): The track or subset with common characteristics must have a single Q_NVEMRRLS value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

QNvemrrlsSKOS
type: SPARQLConstraint
affected property: qNvemrrls
affected class: RunningTrack
scope: local
comment: Qualifier defining whether the application of the emergency brake for reasons other than a trip can be revoked as soon as the conditions for it have disappeared or after the train has come to a complete standstill.
rinf index: 1.1.1.3.2.16.2
rinf index: 1.2.1.1.1.16.2
severity: Warning
message: qNvemrrls (1.1.1.3.2.16.2, 1.2.1.1.1.16.2): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ebr-qualifier/EBReleaseQualifier.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:qNvemrrls ?concept . era:qNvemrrls era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

QNvemrrlsApplicability
type: SPARQLConstraint
affected property: qNvemrrls
affected class: RunningTrack
scope: local
comment: Only applicable when parameter 1.1.1.3.2.1 is applicable (its Applicable: 'Y').
rinf index: 1.1.1.3.2.16.2
rinf index: 1.2.1.1.1.16.2
severity: Warning
message: qNvemrrls (1.1.1.3.2.16.2, 1.2.1.1.1.16.2):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the qNvemrrls parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:qNvemrrls ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:qNvemrrls} . }

QNvsbtsmperm
type: PropertyShape
affected property: qNvsbtsmperm
affected class: RunningTrack
scope: local
comment: Permission to use service brake in target speed monitoring.
rinf index: 1.1.1.3.2.16.12
rinf index: 1.2.1.1.1.16.12
path: qNvsbtsmperm
max count: 1
datatype: boolean
severity: Violation
message: qNvsbtsmperm (1.1.1.3.2.16.12, 1.2.1.1.1.16.12): Each track or subset with common characteristics may define the Q_NVSBTSMPERM value. This error is due to having more than one value or having a value that is not Y/N (boolean).

QNvsbtsmpermApplicability
type: SPARQLConstraint
affected property: qNvsbtsmperm
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.12
rinf index: 1.2.1.1.1.16.12
severity: Warning
message: qNvsbtsmperm (1.1.1.3.2.16.12, 1.2.1.1.1.16.12):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the qNvsbtsmperm parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:qNvsbtsmperm ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:qNvsbtsmperm} . }

RadioNetworkId
type: PropertyShape
affected property: radioNetworkId
affected class: RunningTrack
scope: local
comment: Unique identification of the GSM-R network the calling mobile station has to register with, as defined in the specification referenced in TSI CCS.
rinf index: 1.1.1.3.3.12
rinf index: 1.2.1.1.2.13
path: radioNetworkId
datatype: string
pattern: ^([1-9]\d{0,5}|0)$
severity: Violation
message: radioNetworkId (1.1.1.3.3.12, 1.2.1.1.2.13): The track or subset with common characteristics has a Radio Network ID that must be a string and follow the format [NNNNNN]. The error is due to the value not being a string or not following the pattern.

RadioNetworkIdApplicability
type: SPARQLConstraint
affected property: radioNetworkId
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.12
rinf index: 1.2.1.1.2.13
severity: Warning
message: radioNetworkId (1.1.1.3.3.12, 1.2.1.1.2.13):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the radioNetworkId parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:radioNetworkId ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:radioNetworkId} . }

DataRadioCompatible
type: PropertyShape
affected property: dataRadioCompatible
affected class: RunningTrack
scope: local
comment: Radio requirements used for demonstrating technical compatibility data.
rinf index: 1.1.1.3.3.10
rinf index: 1.2.1.1.2.10
path: dataRadioCompatible
node kind: IRI
severity: Violation
message: dataRadioCompatible (1.1.1.3.3.10, 1.2.1.1.2.10): The track or subset with common characteristics may have a radio system compatibility data value that is an IRI. This error is due to having a value that is not an IRI.

DataRadioCompatibleSKOS
type: SPARQLConstraint
affected property: dataRadioCompatible
affected class: RunningTrack
scope: local
comment: Radio requirements used for demonstrating technical compatibility data.
rinf index: 1.1.1.3.3.10
rinf index: 1.2.1.1.2.10
severity: Violation
message: dataRadioCompatible (1.1.1.3.3.10, 1.2.1.1.2.10): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/radio-system-compatibilities-data/RadioSystemCompatibilitiesData.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:dataRadioCompatible ?concept . era:dataRadioCompatible era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

DataRadioCompatibleApplicability
type: SPARQLConstraint
affected property: dataRadioCompatible
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) and ETCS L2 (parameter 1.1.1.3.2.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.10
rinf index: 1.2.1.1.2.10
severity: Warning
message: dataRadioCompatible (1.1.1.3.3.10, 1.2.1.1.2.10):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the dataRadioCompatible parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:dataRadioCompatible ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:dataRadioCompatible} . }

VoiceRadioCompatible
type: PropertyShape
affected property: voiceRadioCompatible
affected class: RunningTrack
scope: local
comment: Radio requirements used for demonstrating technical compatibility voice.
rinf index: 1.1.1.3.3.9
rinf index: 1.2.1.1.2.9
path: voiceRadioCompatible
node kind: IRI
severity: Violation
message: voiceRadioCompatible (1.1.1.3.3.9, 1.2.1.1.2.9): The track or subset with common characteristics may have a radio system compatibility voice value that is an IRI. This error is due to having a value that is not an IRI.

VoiceRadioCompatibleSKOS
type: SPARQLConstraint
affected property: voiceRadioCompatible
affected class: RunningTrack
scope: local
comment: Radio requirements used for demonstrating technical compatibility voice.
rinf index: 1.1.1.3.3.9
rinf index: 1.2.1.1.2.9
severity: Violation
message: voiceRadioCompatible (1.1.1.3.3.9, 1.2.1.1.2.9): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/radio-system-compatibilities-voice/RadioSystemCompatibilitiesVoice.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:voiceRadioCompatible ?concept . era:voiceRadioCompatible era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

VoiceRadioCompatibleApplicability
type: SPARQLConstraint
affected property: voiceRadioCompatible
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) must be installed for this parameter to be applicable.
rinf index: 1.1.1.3.3.9
rinf index: 1.2.1.1.2.9
severity: Warning
message: voiceRadioCompatible (1.1.1.3.3.9, 1.2.1.1.2.9):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined which makes the voiceRadioCompatible parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:voiceRadioCompatible ?value} . }

ErrorCorrectionsOnboardExplanation
type: PropertyShape
affected property: errorCorrectionsOnboardExplanation
affected class: RunningTrack
scope: local
comment: Explanation on why a mandatory onboard CR required to be solved in the on-board (ETCS, GSM-R and/or ATO) was accepted by the IM.
rinf index: 1.1.1.3.1.2
rinf index: 1.2.1.1.1.19
path: errorCorrectionsOnboardExplanation
max count: 1
datatype: string
severity: Violation
message: errorCorrectionsOnboardExplanation (1.1.1.3.1.2, 1.2.1.1.1.19): The errorCorrectionsOnboardExplanation must be a string. This error is due to having more than one value or having a value that is not a string.

ReasonsEtcsRadioBlockCenterReject
type: PropertyShape
affected property: reasonsEtcsRadioBlockCenterReject
affected class: RunningTrack
scope: local
comment: List of cases subject to system design choices made by the infrastructure manager according to the specification referenced in TSI CCS.
rinf index: 1.1.1.3.2.15
rinf index: 1.2.1.1.1.15
path: reasonsEtcsRadioBlockCenterReject
max count: 1
node kind: IRI
severity: Violation
message: reasonsEtcsRadioBlockCenterReject (1.1.1.3.2.15, 1.2.1.1.1.15): The track or subset with common characteristics must have a single reasons for which an ETCS Radio Block Center can reject a train value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

ReasonsEtcsRadioBlockCenterRejectSKOS
type: SPARQLConstraint
affected property: reasonsEtcsRadioBlockCenterReject
affected class: RunningTrack
scope: local
comment: List of cases subject to system design choices made by the infrastructure manager according to the specification referenced in TSI CCS.
rinf index: 1.1.1.3.2.15
rinf index: 1.2.1.1.1.15
severity: Violation
message: reasonsEtcsRadioBlockCenterReject (1.1.1.3.2.15, 1.2.1.1.1.15): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/etcs-rbc-reject-reasons/ETCSRBCRejectionReasons.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:reasonsEtcsRadioBlockCenterReject ?concept . era:reasonsEtcsRadioBlockCenterReject era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

SafeConsistLengthInformationNecessary
type: PropertyShape
affected property: safeConsistLengthInformationNecessary
affected class: RunningTrack
scope: local
comment: Indication whether safe consist train length information from on-board is required to access the line for safety reasons and the required safety integrity level.
rinf index: 1.1.1.3.2.11
rinf index: 1.2.1.1.1.11
path: safeConsistLengthInformationNecessary
max count: 1
node kind: IRI
severity: Violation
message: safeConsistLengthInformationNecessary (1.1.1.3.2.11, 1.2.1.1.1.11): The track or subset with common characteristics must have a single Safe consist length information from on-board necessary for access the line and SIL value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

SafeConsistLengthInformationNecessarySKOS
type: SPARQLConstraint
affected property: safeConsistLengthInformationNecessary
affected class: RunningTrack
scope: local
comment: Indication whether safe consist train length information from on-board is required to access the line for safety reasons and the required safety integrity level.
rinf index: 1.1.1.3.2.11
rinf index: 1.2.1.1.1.11
severity: Violation
message: safeConsistLengthInformationNecessary (1.1.1.3.2.11, 1.2.1.1.1.11): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/safe-consist-length/SafeConsistLengthNecessary.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:safeConsistLengthInformationNecessary ?concept . era:safeConsistLengthInformationNecessary era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

SafeConsistLengthInformationNecessaryApplicability
type: SPARQLConstraint
affected property: safeConsistLengthInformationNecessary
affected class: RunningTrack
scope: local
comment: Only applicable when parameter 1.1.1.3.2.1 is applicable (its Applicable: 'Y').
rinf index: 1.1.1.3.2.11
rinf index: 1.2.1.1.1.11
severity: Warning
message: safeConsistLengthInformationNecessary (1.1.1.3.2.11, 1.2.1.1.1.11):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the safeConsistLengthInformationNecessary parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:safeConsistLengthInformationNecessary ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:safeConsistLengthInformationNecessary} . }

ConditionsSwitchTrainProtectionSystems
type: PropertyShape
affected property: conditionsSwitchTrainProtectionSystems
affected class: RunningTrack
scope: local
comment: Conditions to switch over between different class B train protection, control and warning systems.
rinf index: 1.1.1.3.8.1.1
rinf index: 1.2.1.1.7.1.1
path: conditionsSwitchTrainProtectionSystems
datatype: string
max count: 1
severity: Violation
message: conditionsSwitchTrainProtectionSystems (1.1.1.3.8.1.1, 1.2.1.1.7.1.1): The track or subset with common characteristics has a Special conditions to switch over between different class B train protection, control and warning systems value that must be a string and follow the format [NNN]. The error is due to having more than one value, having a value that is not a string, or it is due to the value not following the pattern.

InstructionsSwitchRadioSystems
type: PropertyShape
affected property: instructionsSwitchRadioSystems
affected class: RunningTrack
scope: local
comment: Name and/or reference of the document specifying the Special instructions to switch over between different radio systems.
rinf index: 1.1.1.3.8.2.1
rinf index: 1.2.1.1.7.2.1
path: instructionsSwitchRadioSystems
class: Document
severity: Violation
message: instructionsSwitchRadioSystems (1.1.1.3.8.2.1, 1.2.1.1.7.2.1): The track or subset with common characteristics has Special instructions to switch over between different radio systems value that must be a Document.

InstructionsSwitchRadioSystemsApplicability
type: SPARQLConstraint
affected property: instructionsSwitchRadioSystems
affected class: RunningTrack
scope: local
comment: Applicable ('Y') when at least two different radio systems exist.
rinf index: 1.1.1.3.8.2.1
rinf index: 1.2.1.1.7.2.1
severity: Violation
message: instructionsSwitchRadioSystems (1.1.1.3.8.2.1, 1.2.1.1.7.2.1):The track or subset with common characteristics {$this} ({?label}), has a more than one radio system defined which makes the instructionsSwitchRadioSystems parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label ?countRS WHERE { { SELECT $this (COUNT(?radioSystem) AS ?countRS) WHERE{ $this era:legacyRadioSystem ?radioSystem } GROUP BY $this } OPTIONAL{$this rdfs:label ?label} . FILTER ( ?countRS > 1) . FILTER NOT EXISTS {$this era:instructionsSwitchRadioSystems ?value} . }

ConditionsSwitchClassBSystems
type: PropertyShape
affected property: conditionsSwitchClassBSystems
affected class: RunningTrack
scope: local
comment: Name and/or reference of the document specifying the Special technical conditions required to switch over between ERTMS/ETCS and Class B systems.
rinf index: 1.1.1.3.8.3
rinf index: 1.2.1.1.7.3
path: conditionsSwitchClassBSystems
class: Document
max count: 1
severity: Violation
message: conditionsSwitchClassBSystems (1.1.1.3.8.3, 1.2.1.1.7.3): The track or subset with common characteristics has Special technical conditions required to switch over between ERTMS/ETCS and Class B systems value that must be a Document. This error is due to having more than one value or having a value that is not an instance of Document.

ConditionsSwitchClassBSystemsApplicability
type: SPARQLConstraint
affected property: conditionsSwitchClassBSystems
affected class: RunningTrack
scope: local
comment: Applicable ('Y') when at least two different class of protection systems exist.
rinf index: 1.1.1.3.8.3
rinf index: 1.2.1.1.7.3
severity: Warning
message: conditionsSwitchClassBSystems (1.1.1.3.8.3, 1.2.1.1.7.3):The track or subset with common characteristics {$this} ({?label}), has a more than one protection system defined which makes the conditionsSwitchClassBSystems parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label ?count WHERE { { SELECT $this (COUNT(?system) AS ?count) WHERE{ {$this era:protectionLegacySystem ?system} UNION {$this era:otherTrainProtection ?system} } GROUP BY $this } OPTIONAL{$this rdfs:label ?label} . FILTER ( ?count > 1) . FILTER NOT EXISTS {$this era:conditionsSwitchClassBSystems ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:conditionsSwitchClassBSystems} . }

TNvovtrp
type: PropertyShape
affected property: tNvovtrp
affected class: RunningTrack
scope: local
comment: Maximum time for overriding the train trip in seconds.
rinf index: 1.1.1.3.2.16.6
rinf index: 1.2.1.1.1.16.6
path: tNvovtrp
max count: 1
datatype: integer
pattern: ^([1-9]\d{0,2}|0)$
severity: Violation
message: tNvovtrp (1.1.1.3.2.16.6 , 1.2.1.1.1.16.6): The track or subset with common characteristics defines a T_NVOVTRP. This error is due to having more than one value, having a value that is not an integer or having an integer that does not follow the pattern [NNN].

TNvovtrpApplicability
type: SPARQLConstraint
affected property: tNvovtrp
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.6
rinf index: 1.2.1.1.1.16.6
severity: Warning
message: tNvovtrp (1.1.1.3.2.16.6, 1.2.1.1.1.16.6):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the tNvovtrp parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:tNvovtrp ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:tNvovtrp} . }

TrainIntegrityOnBoardRequired
type: PropertyShape
affected property: trainIntegrityOnBoardRequired
affected class: RunningTrack
scope: local
comment: Indication whether train confirmation from on-board is required to access the line for safety reasons. In hybrid operation, the confirmation can be optional.
rinf index: 1.1.1.3.2.8
rinf index: 1.2.1.1.1.8
path: trainIntegrityOnBoardRequired
in: N
in: Optional
in: Y
max count: 1
severity: Violation
message: trainIntegrityOnBoardRequired (1.1.1.3.2.8, 1.2.1.1.1.8): The track or subset with common characteristics defines a train integrity confirmation from on-board (not from driver) necessary for line access. This error is due to having more than one value or having a value that is not in the list of valid alternatives.

EddyCurrentBraking
type: PropertyShape
affected property: eddyCurrentBraking
affected class: RunningTrack
scope: local
comment: Indication of limitations on the use of eddy current brakes.
rinf index: 1.1.1.1.6.2
rinf index: 1.2.1.0.4.2
path: eddyCurrentBraking
max count: 1
node kind: IRI
severity: Violation
message: eddyCurrentBraking (1.1.1.1.6.2, 1.2.1.0.4.2): The track or subset with common characteristics must have a single use of eddy current brakes value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

EddyCurrentBrakingSKOS
type: SPARQLConstraint
affected property: eddyCurrentBraking
affected class: RunningTrack
scope: local
comment: Indication of limitations on the use of eddy current brakes.
rinf index: 1.1.1.1.6.2
rinf index: 1.2.1.0.4.2
severity: Violation
message: eddyCurrentBraking (1.1.1.1.6.2, 1.2.1.0.4.2): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/eddy-current-braking/EddyCurrentBraking.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:eddyCurrentBraking ?concept . era:eddyCurrentBraking era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

MagneticBraking
type: PropertyShape
affected property: magneticBraking
affected class: RunningTrack
scope: local
comment: Indication of limitations on the use of magnetic brakes.
rinf index: 1.1.1.1.6.3
rinf index: 1.2.1.0.4.3
path: magneticBraking
max count: 1
node kind: IRI
severity: Violation
message: magneticBraking (1.1.1.1.6.3, 1.2.1.0.4.3): The track or subset with common characteristics must have a single use of magnetic brakes value that is an IRI. This error is due to having more than one value or having a value that is not an IRI.

MagneticBrakingSKOS
type: SPARQLConstraint
affected property: magneticBraking
affected class: RunningTrack
scope: local
comment: Indication of limitations on the use of magnetic brakes.
rinf index: 1.1.1.1.6.3
rinf index: 1.2.1.0.4.3
severity: Violation
message: magneticBraking (1.1.1.1.6.3, 1.2.1.0.4.3): The track or subset with common characteristics {$this} (label {?label}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/magnetic-braking/MagneticBraking.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?label WHERE { OPTIONAL {$this rdfs:label ?label} . $this era:magneticBraking ?concept . era:magneticBraking era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

VNvallowovtrp
type: PropertyShape
affected property: vNvallowovtrp
affected class: RunningTrack
scope: local
comment: Speed limit allowing the driver to select the “override” function in km/h.
rinf index: 1.1.1.3.2.16.3
rinf index: 1.2.1.1.1.16.3
path: vNvallowovtrp
max count: 1
min inclusive: 0
max inclusive: 600
datatype: unsignedInt
pattern: ^([1-9]\d{0,1}[0,5]|[0,5])$
severity: Violation
message: vNvallowovtrp (1.1.1.3.2.16.3, 1.2.1.1.1.16.3): The track or subset with common characteristics defines a speed limit allowing the driver to select the “override” function (V_NVALLOWOVTRP). This error is due to having more than one value, having a value that is not an integer or having an integer that does not follow the pattern [NNF], with N a decimal number (0÷9), F=(0|5), max. `600`.

VNvallowovtrpApplicability
type: SPARQLConstraint
affected property: vNvallowovtrp
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.3
rinf index: 1.2.1.1.1.16.3
severity: Warning
message: vNvallowovtrp (1.1.1.3.2.16.3, 1.2.1.1.1.16.3):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the vNvallowovtrp parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:vNvallowovtrp ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:vNvallowovtrp} . }

VNvsupovtrp
type: PropertyShape
affected property: vNvsupovtrp
affected class: RunningTrack
scope: local
comment: Override speed limit to be supervised when the “override” function is active in km/h.
rinf index: 1.1.1.3.2.16.4
rinf index: 1.2.1.1.1.16.4
path: vNvsupovtrp
max count: 1
min inclusive: 0
max inclusive: 600
datatype: unsignedInt
pattern: ^([1-9]\d{0,1}[0,5]|[0,5])$
severity: Violation
message: vNvsupovtrp (1.1.1.3.2.16.4, 1.2.1.1.1.16.4): The track or subset with common characteristics defines a override speed limit to be supervised when the “override” function is active (V_NVSUPOVTRP). This error is due to having more than one value, having a value that is not an integer or having an integer that does not follow the pattern [NNF], with N a decimal number (0÷9), F=(0|5), max. `600`.

VNvsupovtrpApplicability
type: SPARQLConstraint
affected property: vNvsupovtrp
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.4
rinf index: 1.2.1.1.1.16.4
severity: Warning
message: vNvsupovtrp (1.1.1.3.2.16.4, 1.2.1.1.1.16.4):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the vNvsupovtrp parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:vNvsupovtrp ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:vNvsupovtrp} . }

GsmrConstraintsOperateOnlyInCircuitSwitchApplicability
type: SPARQLConstraint
affected property: gsmrConstraintsOperateOnlyInCircuitSwitch
affected class: RunningTrack
scope: local
comment: GSM-R (parameter 1.1.1.3.3.1) and ETCS L2 (parameter 1.1.1.3.2.1) must be installed for this parameter to be applicable.
rinf index: 1.2.1.1.2.12
severity: Warning
message: gsmrConstraintsOperateOnlyInCircuitSwitch (1.1.1.3.3.10, 1.2.1.1.2.10):The track or subset with common characteristics {$this} ({?label}), has a 'GSM-R version' defined and a 'ETCS level' type selected which makes the gsmrConstraintsOperateOnlyInCircuitSwitch parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:gsmRVersion ?gsmRVersion; era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:gsmrConstraintsOperateOnlyInCircuitSwitch ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:gsmrConstraintsOperateOnlyInCircuitSwitch} . }

TNvcontact
type: PropertyShape
affected property: tNvcontact
affected class: RunningTrack
scope: local
comment: Maximum time without a safe message from Radio Block Center before train reacts in seconds.
rinf index: 1.1.1.3.2.16.8
rinf index: 1.2.1.1.1.16.8
path: tNvcontact
max count: 1
datatype: integer
pattern: ^([1-9]\d{0,2}|0)$
severity: Violation
message: tNvcontact (1.1.1.3.2.16.8, 1.2.1.1.1.16.8): The track or subset with common characteristics defines a maximum time without a safe message from Radio Block Center. This error is due to having more than one value, having a value that is not an integer or having an integer that does not follow the pattern [NNN].

TNvcontactApplicability
type: SPARQLConstraint
affected property: tNvcontact
affected class: RunningTrack
scope: local
comment: Only applicable when selected value for 1.1.1.3.2.1 (ETCS present).
rinf index: 1.1.1.3.2.16.8
rinf index: 1.2.1.1.1.16.8
severity: Warning
message: tNvcontact (1.1.1.3.2.16.8, 1.2.1.1.1.16.8):The track or subset with common characteristics {$this} ({?label}), has an 'ETCS Level Type' defined which makes the tNvcontact parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:etcs ?etcs. ?etcs era:etcsLevelType ?etcsType. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:tNvcontact ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:tNvcontact} . }

HasBridge
type: PropertyShape
affected property: hasBridge
affected class: RunningTrack
scope: local
comment: Whether or not a track is associated with a bridge.
path: hasBridge
datatype: boolean
severity: Violation
message: hasBridge: The track specifies if it is associated with a bridge and the value must be boolean. This error is due to the value not being Y/N (boolean)

ContactLineSystem
type: PropertyShape
affected property: contactLineSystem
affected class: RunningTrack
scope: local
comment: Contact line system present in the section of line.
path: contactLineSystem
class: ContactLineSystem
rinf index: 1.1.1.2.2
rinf index: 1.2.2.0.6.1
node kind: IRI
severity: Violation
message: contactLineSystem (1.2.2.0.6.1, 1.1.1.2.2) : The track or subset with common characteristics may have a value of a contact line system that must be an instance of ContactLineSystem. This error may be due to having a value that is not an instance of the class ContactLineSystem.

HasPartSoL
type: PropertyShape
affected class: SectionOfLine
affected property: hasPart
scope: local
comment: Indicates that a SectionOfLine hasPart at least one Track.
path:
  alternative path: hasPart
  alternative path:
    inverse path: isPartOf
class: Track
min count: 1
node kind: IRI
severity: Violation
message: hasPart: The SectionOfLine must have a hasPart reference that is an IRI that refers to an instance of Track. This error is due to not having a value or having a value that is not an instance of Track.

NoRepeatedTrackIdsSoL
type: SPARQLConstraint
affected property: trackId
affected class: SectionOfLine
affected class: RunningTrack
scope: global
comment: Each track shall have unique identification or number within the SoL. This number cannot be used for naming any other track in the same SoL.
rinf index: 1.1.1.0.0.1
severity: Violation
message: trackId (1.1.1.0.0.1): Each track shall have unique identification or number within the SoL. This number cannot be used for naming any other track in the same SoL. There is a problem with SoL {$this} ({?solLabel}) and tracks {?track1} ({?track1Label}) and {?track2} ({?track2Label}), since they have the same identifier: {?value}.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?opLabel ?track1 ?track1Label ?track2 ?track2Label ?value WHERE { $this a era:OperationalPoint ; era:hasPart ?track1 ; era:canonicalURI ?cano1 . $this a era:OperationalPoint ; era:hasPart ?track2 ; era:canonicalURI ?cano2 . ?track1 era:trackId ?value . ?track2 era:trackId ?value . FILTER(?track1 != ?track2) . FILTER(?cano1 != ?cano2) . OPTIONAL{$this rdfs:label ?opLabel} . OPTIONAL{?track1 rdfs:label ?track1Label} . OPTIONAL{?track2 rdfs:label ?track2Label} . }

SoLTrackDirectionMinCount
type: SPARQLConstraint
affected property: trackDirection
affected class: RunningTrack
affected class: SectionOfLine
scope: local
comment: The normal running direction is: 1) the same as the direction defined by the start and end of the SoL 2) the opposite to the direction defined by the start and end of the SoL 3) both directions defined for SoL.
rinf index: 1.1.1.0.0.2
severity: Violation
message: There should be at least one Track Direction. There is a problem with SoL {$this} ({?solLabel}) and its track {?track} ({?trackLabel}). This track has no values for this property
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?solLabel ?track ?trackLabel ?value WHERE { $this era:hasPart ?track . OPTIONAL{?track rdfs:label ?trackLabel} . OPTIONAL{$this rdfs:label ?solLabel} . FILTER NOT EXISTS{?track era:trackDirection ?value} . }

SoLTrackDirectionMaxCount
type: SPARQLConstraint
affected property: trackDirection
affected class: RunningTrack
affected class: SectionOfLine
scope: local
comment: The normal running direction is: 1) the same as the direction defined by the start and end of the SoL 2) the opposite to the direction defined by the start and end of the SoL 3) both directions defined for SoL.
rinf index: 1.1.1.0.0.2
severity: Violation
message: There should be at most one Track Direction. There is a problem with SoL {$this} ({?solLabel}) and its track {?track} ({?trackLabel}). This track has at least two different values for this property: {?value1} and {?value2}
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?solLabel ?track ?trackLabel ?value1 ?value2 WHERE { $this era:hasPart ?track . OPTIONAL{?track rdfs:label ?trackLabel} . OPTIONAL{$this rdfs:label ?solLabel} . ?track era:trackDirection ?value1 . ?track era:trackDirection ?value2 . FILTER(?value1 < ?value2) . }

TrackDirectionSKOS
type: SPARQLConstraint
affected property: trackDirection
affected class: RunningTrack
scope: local
comment: The normal running direction is: 1) the same as the direction defined by the start and end of the SoL 2) the opposite to the direction defined by the start and end of the SoL 3) both directions defined for SoL.
rinf index: 1.1.1.0.0.2
severity: Violation
message: Indication of the trackDirection (1.1.1.0.0.2):): The track {?track} in the Section of Line {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/track-running-directions/TrackRunningDirections.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:hasPart ?track . ?track era:trackDirection ?concept . era:trackDirection era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

TenGISId
type: PropertyShape
affected property: tenGISId
affected class: RunningTrack
scope: local
comment: Indication of the GIS identity (GIS ID) of the section of TEN-T database to which the track belongs.
rinf index: 1.1.1.1.2.1.2
path: tenGISId
max count: 1
datatype: string
severity: Warning
message: This parameter will be deprecated in a next revision. Please use value "Not applicable" until the RINF regulation is aligned. tenGISId (1.1.1.1.2.1.2): The track or subset with common characteristics must have at most one character string value (GIS Id) of the section of TEN-T database to which the track belongs. This error may be due to having a track with more than one TEN GIS identity or that the value is not a string.

TrackLoadCapability
type: PropertyShape
affected property: trackLoadCapability
affected class: RunningTrack
scope: local
comment: Relates the track with the class LoadCapability. A combination of the line category and speed at the weakest point of the track.
rinf index: 1.1.1.1.2.4
path: trackLoadCapability
class: LoadCapability
severity: Violation
message: trackLoadCapability (1.1.1.1.2.4): The track or subset with common characteristics defines a load capability value that must be an instance of LoadCapability.

LoadCapabilitySpeed
type: PropertyShape
affected property: loadCapabilitySpeed
affected class: LoadCapability
scope: local
comment: Load capability is a combination of the line category and speed at the weakest point of the track.
rinf index: 1.1.1.1.2.4
path: loadCapabilitySpeed
datatype: integer
min count: 1
max count: 1
severity: Violation
message: loadCapabilitySpeed (1.1.1.1.2.4): The track or subset with common characteristics must have a load capability with a value of speed that is an integer. This error may be due to having an instance of LoadCapability with no value of speed, more than one value of speed, or that the value is not an integer.

LoadCapabilityLineCategory
type: PropertyShape
affected property: loadCapabilityLineCategory
affected class: LoadCapability
scope: local
comment: Load capability is a combination of the line category and speed at the weakest point of the track.
rinf index: 1.1.1.1.2.4
path: loadCapabilityLineCategory
node kind: IRI
min count: 1
max count: 1
severity: Violation
message: loadCapabilityLineCategory (1.1.1.1.2.4): The track or subset with common characteristics must have a load capability with a value of line category that is an URI. This error may be due to having an instance of Load capability with no value of a line category, more than one value of a line category, or a value that is not an IRI.

LoadCapabilityLineCategorySKOS
type: SPARQLConstraint
affected property: loadCapabilityLineCategory
affected class: LoadCapability
scope: local
comment: Load capability is a combination of the line category and speed at the weakest point of the track.
rinf index: 1.1.1.1.2.4
severity: Violation
message: Indication of the load capability line category (1.1.1.1.2.4):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/load-capability-line-categories/LoadCapabilityLineCategories.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:trackLoadCapability ?loadCapability . ?loadCapability era:loadCapabilityLineCategory ?concept . era:loadCapabilityLineCategory era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

NationalLoadCapability
type: PropertyShape
affected property: nationalLoadCapability
affected class: RunningTrack
scope: local
comment: National classification for load capability
rinf index: 1.1.1.1.2.4.1
path: nationalLoadCapability
datatype: string
severity: Violation
message: nationalLoadCapability (1.1.1.1.2.4.1): The track or subset with common characteristics has a national load capability value that must be a string. This error may be due to the track having a value of national load capability that is not a character string.

HighSpeedLoadModelCompliance
type: PropertyShape
affected property: highSpeedLoadModelCompliance
affected class: RunningTrack
scope: local
comment: National classification for load capability
comment: For sections of line with a maximum permitted speed of 200km/h or more information regarding the procedure to be used to perform the dynamic compatibility check
rinf index: 1.1.1.1.2.4.2
path: highSpeedLoadModelCompliance
max count: 1
datatype: boolean
severity: Violation
message: highSpeedLoadModelCompliance (1.1.1.1.2.4.2): The track or subset with common characteristics must have at most one high speed load model compliance value that must be Y/N (boolean). This error may be due to the track having more than one value or having a value of high speed load model compliance that is not Y/N.

StructureCheckLocation
type: PropertyShape
affected property: structureCheckLocation
affected class: RunningTrack
scope: local
comment: Localisation of structures requiring specific checks.
rinf index: 1.1.1.1.2.4.3
path: structureCheckLocation
datatype: double
pattern: ^(\+|\-)?([1-9]\d{1,3}|[0-9])\.\d{1,3}$
severity: Violation
message: structureCheckLocation (1.1.1.1.2.4.3): The track or subset with common characteristics has a location of the structure check value that must be a double (real) number and follow the format [±NNNN.NNN]. This error may be due to the track having a value that does not follow the pattern or is not a double (real) number.

CompatibilityProcedureDocument
type: PropertyShape
affected property: compatibilityProcedureDocument
affected class: RunningTrack
scope: local
comment: Document with the procedure for static and dynamic compatibility checks.
rinf index: 1.1.1.1.2.4.4
path: compatibilityProcedureDocument
class: Document
severity: Violation
message: compatibilityProcedureDocument (1.1.1.1.2.4.4): The track or subset with common characteristics has a name of the compatibility procedure document that must be a Document.

MaximumPermittedSpeed
type: PropertyShape
affected property: maximumPermittedSpeed
affected class: RunningTrack
scope: local
comment: Maximum permitted speed.
rinf index: 1.1.1.1.2.5
path: maximumPermittedSpeed
max count: 1
datatype: integer
min inclusive: 0
max inclusive: 500
severity: Warning
message: maximumPermittedSpeed (1.1.1.1.2.5): The track or subset with common characteristics must have at most one value of maximum permitted speed that is an integer that lies within the range 0 to 500. This error may be due to the track having more than one value of maximum permitted speed, that the value does not lie within the range, or that the value is not an integer.

TemperatureRange
type: PropertyShape
affected property: temperatureRange
affected class: RunningTrack
scope: local
comment: Indication of the temperature range of track.
rinf index: 1.1.1.1.2.6
path: temperatureRange
node kind: IRI
max count: 1
severity: Violation
message: temperatureRange (1.1.1.1.2.6): Each track or subset with common characteristics may have exactly one temperature range value that must be an IRI. This error may be due to the track not having a temperature range, or having more than one temperature range.

TemperatureRangeSKOS
type: SPARQLConstraint
affected property: temperatureRange
affected class: RunningTrack
scope: local
comment: Indication of the temperature range of track.
rinf index: 1.1.1.1.2.6
severity: Violation
message: Indication of the temperature range (1.1.1.1.2.6):): The track {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/temperature-ranges/TemperatureRanges.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:temperatureRange ?concept . era:temperatureRange era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

MaximumAltitude
type: PropertyShape
affected property: maximumAltitude
affected class: RunningTrack
scope: local
comment: Highest point of the section of line above sea level in reference to Normal Amsterdam's Peil (NAP).
rinf index: 1.1.1.1.2.7
path: maximumAltitude
max count: 1
pattern: ^(\+|\-)?\d{1,4}(\.0*)?$
severity: Violation
message: maximumAltitude (1.1.1.1.2.7): The track or subset with common characteristics must define at most one maximum altitude value that must be a double (real) number with format[±NNNN]. This error may be due to the track having more than one value of maximum altitude or that the value is not a double (real) number.

HasSevereWeatherConditions
type: PropertyShape
affected property: hasSevereWeatherConditions
affected class: RunningTrack
scope: local
comment: Climatic conditions on the line are severe according to European standard.
rinf index: 1.1.1.1.2.8
path: hasSevereWeatherConditions
datatype: boolean
max count: 1
severity: Violation
message: hasSevereWeatherConditions (1.1.1.1.2.8): The track or subset with common characteristics must have at most one existence of severe weather conditions value that must be Y/N (boolean). This error may be due to the track having more than one value of has severe weather conditions or that the value is not Y/N (boolean).

ProfileNumberSwapBodiesSKOS
type: SPARQLConstraint
affected property: profileNumberSwapBodies
affected class: RunningTrack
scope: local
comment: Coding for combined transport with swap bodies as defined in UIC Code.
rinf index: 1.1.1.1.3.4
severity: Violation
message: Indication of the profileNumberSwapBodies(1.1.1.1.3.4):): The track {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/profile-num-swap-bodies/ProfileNumbersSwapBodies.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:profileNumberSwapBodies ?concept . era:profileNumberSwapBodies era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

ProfileNumberSemiTrailersSKOS
type: SPARQLConstraint
affected property: profileNumberSemiTrailers
affected class: RunningTrack
scope: local
comment: Coding for combined transport with semi-trailers as defined in UIC Code.
rinf index: 1.1.1.1.3.5
severity: Violation
message: Indication of the profileNumberSemiTrailers(1.1.1.1.3.5):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/profile-num-semi-trailers/ProfileNumbersSemiTrailers.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:profileNumberSemiTrailers ?concept . era:profileNumberSemiTrailers era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

SpecificInformation
type: PropertyShape
affected property: specificInformation
affected class: RunningTrack
scope: local
comment: Any specific information from the IM.
rinf index: 1.1.1.1.3.5.1
path: specificInformation
datatype: string
severity: Violation
message: specificInformation (1.1.1.1.3.5.1): The track or subset with common characteristics has a specific information value that must be a string. This error may be due to having a value of specific information from the IM that is not a character string.

GradientProfile
type: PropertyShape
affected property: gradientProfile
affected class: RunningTrack
scope: local
comment: Sequence of gradient values and locations of change in gradient.
rinf index: 1.1.1.1.3.6
path: gradientProfile
datatype: string
pattern: ^((\+|\-)\d{1,2}(\.\d{1})?(\((\+|\-)?\d{1,4}(\.\d{1,3})?\))?)(,\s?(\+|\-)\d{1,2}(\.\d{1})?(\((\+|\-)?\d{1,4}(\.\d{1,3})?\))?)*$
severity: Violation
message: gradientProfile (1.1.1.1.3.6): The track or subset with common characteristics has a gradient profile value that must be a string with a sequence of comma-separated values in the format [+/-][NN.N]([+/-][NNNN.NNN]). This error may be due to having a sequence of values that are not a string or that do not follow the pattern.

CantDeficiency
type: PropertyShape
affected property: cantDeficiency
affected class: RunningTrack
scope: local
comment: Maximum cant deficiency expressed in millimeters defined as difference between the applied cant and a higher equilibrium cant the line has been designed for.
rinf index: 1.1.1.1.4.2
path: cantDeficiency
max count: 1
datatype: integer
pattern: ^(\+|\-)?([0-9]\d{0,3})$
severity: Violation
message: cantDeficiency (1.1.1.1.4.2): The track or subset with common characteristics must have at most one cant deficiency value that is an integer. This error may be due to the track having more than one cant deficiency value or to having a value that is not an int.

RailInclination
type: PropertyShape
affected property: railInclination
affected class: RunningTrack
scope: local
comment: An angle defining the inclination of the head of a rail relatie to the running surface.
rinf index: 1.1.1.1.4.3
path: railInclination
max count: 1
node kind: IRI
severity: Violation
message: railInclination (1.1.1.1.4.3): The track or subset with common characteristics must have at most one rail inclination measurement value that is an IRI. This error may be due to the track having more than one rail inclination measurement value or to having a value that is not an IRI.

RailInclinationSKOS
type: SPARQLConstraint
affected property: railInclination
affected class: RunningTrack
scope: local
comment: An angle defining the inclination of the head of a rail relatie to the running surface.
rinf index: 1.1.1.1.4.3
severity: Violation
message: Indication of the rail inclination (1.1.1.1.4.3):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/rail-inclinations/RailInclinations.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:railInclination ?concept . era:railInclination era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

HasBallast
type: PropertyShape
affected property: hasBallast
affected class: RunningTrack
scope: local
comment: Specifies whether the track construction is with sleepers embedded in ballast or not.
rinf index: 1.1.1.1.4.4
path: hasBallast
max count: 1
datatype: boolean
severity: Violation
message: hasBallast (1.1.1.1.4.4): The track or subset with common characteristics must have at most one existence of ballast value that is Y/N (boolean). This error may be due to the track having more than one has ballast value or to having a value that is not Y/N (boolean).

TSISwitchCrossing
type: PropertyShape
affected property: tsiSwitchCrossing
affected class: RunningTrack
scope: local
comment: Switches and crossings are maintained to in service limit dimension as specified in TSI.
rinf index: 1.1.1.1.5.1
path: tsiSwitchCrossing
max count: 1
datatype: boolean
severity: Violation
message: tsiSwitchCrossing (1.1.1.1.5.1): The track or subset with common characteristics must have at most one existence of TSI switches and crossing value that is Y/N (boolean). This error may be due to the track having more than one tsi swith crossing value or to having a value that is not Y/N (boolean).

MinimumWheelDiameter
type: PropertyShape
affected property: minimumWheelDiameter
affected class: RunningTrack
scope: local
comment: Maximum unguided length of fixed obtuse crossings is based on a minimum wheel diameter in service expressed in millimiters.
rinf index: 1.1.1.1.5.2
path: minimumWheelDiameter
max count: 1
min inclusive: 330
datatype: integer
pattern: ^([1-9]\d{1,2}|[0-9])$
severity: Warning
message: minimumWheelDiameter (1.1.1.1.5.2): The track or subset with common characteristics must have at most one minimum wheel diameter value that is an integer. This error may be due to the track having more than one minimum wheel diameter value or to having a value that is not an integer. If the value of the wheel diameter is bigger than 330 mm, it has to be specified.

MaximumTrainDeceleration
type: PropertyShape
affected property: maximumTrainDeceleration
affected class: RunningTrack
scope: local
comment: Limit for longitudinal track resistance given as a maximum allowed train deceleration and expressed in m/s2.
rinf index: 1.1.1.1.6.1
path: maximumTrainDeceleration
max count: 1
datatype: double
pattern: ^[0-9]\.[0-9]$
severity: Violation
message: maximumTrainDeceleration (1.1.1.1.6.1): The track or subset with common characteristics must have at most one maximum train deceleration value that is a double (real) number . This error may be due to the track having more than one maximum train deceleration value or to having a value that is not a real (double) number.

EddyCurrentBrakingConditionsDocument
type: PropertyShape
affected property: eddyCurrentBrakingConditionsDocument
affected class: RunningTrack
scope: local
comment: Electronic document available in two EU languages from the IM stored by the Agency with conditions for the use of eddy current brakes identified in 1.1.1.1.6.2.
rinf index: 1.1.1.1.6.4
path: eddyCurrentBrakingConditionsDocument
class: Document
severity: Violation
message: eddyCurrentBrakingConditionsDocument (1.1.1.1.6.4): The track or subset with common characteristics has an eddy current braking conditions document value that must be a Document.

MagneticBrakingConditionsDocument
type: PropertyShape
affected property: magneticBrakingConditionsDocument
affected class: RunningTrack
scope: local
comment: Electronic documents available in two EU languages from the IM stored by the Agency with conditions for the use of magnetic brakes identified in 1.1.1.1.6.3.
rinf index: 1.1.1.1.6.5
path: magneticBrakingConditionsDocument
class: Document
severity: Violation
message: magneticBrakingConditionsDocument (1.1.1.1.6.5): The track or subset with common characteristics has a magnetic braking conditions document value that must be a Document.

FlangeLubeForbidden
type: PropertyShape
affected property: flangeLubeForbidden
affected class: RunningTrack
scope: local
comment: Indication whether the use of on-board device for flange lubrication is forbidden.
rinf index: 1.1.1.1.7.1
path: flangeLubeForbidden
max count: 1
datatype: boolean
severity: Violation
message: flangeLubeForbidden (1.1.1.1.7.1): The track or subset with common characteristics must have at most one flange lube forbidden value that is Y/N (boolean). This error may be due to having more than one value or having a value that is not Y/N (boolean).

HasLevelCrossings
type: PropertyShape
affected property: hasLevelCrossings
affected class: RunningTrack
scope: local
comment: Indication whether level crossings (including pedestrian track crossing) exist onf the section line.
rinf index: 1.1.1.1.7.2
path: hasLevelCrossings
max count: 1
datatype: boolean
severity: Violation
message: hasLevelCrossings (1.1.1.1.7.2): The track or subset with common characteristics must have at most one existence of level crossings value that is Y/N (boolean). This error may be due to having more than one value or having a value that is not Y/N (boolean).

AccelerationLevelCrossing
type: PropertyShape
affected property: accelerationLevelCrossing
affected class: RunningTrack
scope: local
comment: Existence of limit for acceleration of train if stopping or recovering speed close to a level crossing expressed in a specific reference acceleration curve.
rinf index: 1.1.1.1.7.3
path: accelerationLevelCrossing
max count: 1
node kind: IRI
class: Document
severity: Violation
message: accelerationLevelCrossing (1.1.1.1.7.3): The track or subset with common characteristics must have at most one acceleration level crossing value that is a Document. This error may be due to having more than one value or having a value that is not an instance of Document.

HasHotAxleBoxDetector
type: PropertyShape
affected property: hasHotAxleBoxDetector
affected class: RunningTrack
scope: local
comment: Existence of trackside hot axle box detector.
rinf index: 1.1.1.1.7.4
path: hasHotAxleBoxDetector
max count: 1
datatype: boolean
severity: Violation
message: hasHotAxleBoxDetector (1.1.1.1.7.4): The track or subset with common characteristics must have at most one existence of hot axle box detector value that is Y/N (boolean).

RedLightsRequired
type: PropertyShape
affected property: redLightsRequired
affected class: RunningTrack
scope: local
comment: Sections where two steady red lights are required in accordance with Implementing Regulations (EU) 2019/773.
rinf index: 1.1.1.1.7.10
path: redLightsRequired
max count: 1
datatype: boolean
severity: Violation
message: redLightsRequired (1.1.1.1.7.10): The track or subset with common characteristics must have at most one value that defines if two steady red lights are required and the value must be Y/N (boolean). This error may be due to having more than one value or having a value that is not Y/N (boolean).

RedLightsRequiredCountryApplicability
type: SPARQLConstraint
affected property: redLightsRequired
affected class: RunningTrack
message: redLightsRequired: This property may only be used for RunningTracks located in Belgium, France, Italy, Portugal, or Spain. This error may be due to applying it to a country other that these, or not having an inCountry annotation in the parent element of the RunningTrack.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX eu-country: <http://publications.europa.eu/resource/authority/country/> SELECT ?this WHERE { ?this a era:RunningTrack ; era:redLightsRequired true . # before ?val { ?parent era:hasPart ?this ; era:inCountry ?country . } UNION { ?this era:isPartOf ?parent . ?parent era:inCountry ?country . } FILTER (?country NOT IN ( eu-country:BEL, eu-country:FRA, eu-country:ITA, eu-country:PRT, eu-country:ESP )) }

IsQuietRoute
type: PropertyShape
affected property: isQuietRoute
affected class: RunningTrack
scope: local
comment: Belonging to a 'quiet route' in accordance with Article 5b of Regulation (EU) 1304/2014.
rinf index: 1.1.1.1.7.11
path: isQuietRoute
max count: 1
datatype: boolean
severity: Violation
message: isQuietRoute (1.1.1.1.7.11): The track or subset with common characteristics must have at most one value that defines if it belongs to a 'quiet route' and the value must be Y/N (boolean). This error may be due to having more than one value or having a value that is not Y/N (boolean).

VerificationENE
type: PropertyShape
affected property: verificationENE
affected class: RunningTrack
scope: local
comment: Unique number for EC declarations following format requirements specified in the 'Document about practical arrangents for transmitting interoperability documents' .
rinf index: 1.1.1.2.1.1
path: verificationENE
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: verificationENE (1.1.1.2.1.1): The track or subset with common characteristics has a number for EC declarations that must follow format CC/XXXXXXXXXXXXXX/YYYY/NNNNNN where CC is country code, XXXXX... is a number, YYYY is a year between 1900 and 2100, NNNNNN is the number for the EC declaration. This error may be due to the track having a value that does not follow the pattern.

DemonstrationENE
type: PropertyShape
affected property: demonstrationENE
affected class: RunningTrack
scope: local
comment: Unique number for EI declarations following the same format requirements as specified in the 'Document about practical arrangents for transmitting interoperability documents'.
rinf index: 1.1.1.2.1.2
path: demonstrationENE
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: demonstrationENE (1.1.1.2.1.2): The track or subset with common characteristics has a number for EI declarations that must follow format CC/XXXXXXXXXXXXXX/YYYY/NNNNNN where CC is country code, XXXXX... is a number, YYYY is a year between 1900 and 2100, NNNNNN is the number for the EI declaration. This error may be due to the track having a value that is not a tring or that does not follow the pattern.

TsiPantographHeadSKOS
type: SPARQLConstraint
affected property: tsiPantographHead
affected class: RunningTrack
scope: local
comment: Accepted TSI compliant pantograph heads.
rinf index: 1.1.1.2.3.1
severity: Violation
message: Indication of the tsiPantographHead (1.1.1.2.3.1):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/compliant-pantograph-heads/CompliantPantographHeads.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:tsiPantographHead ?concept . era:tsiPantographHead era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

OtherPantographHeadSKOS
type: SPARQLConstraint
affected property: otherPantographHead
affected class: RunningTrack
scope: local
comment: Indication of which other pantograph heads are allowed to be used.
rinf index: 1.1.1.2.3.2
severity: Warning
deactivated: true
message: Indication of the otherPantographHead (1.1.1.2.3.2):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/other-pantograph-heads/OtherPantographHeads.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:otherPantographHead ?concept . era:otherPantographHead era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

TrackRaisedPantographsDistanceAndSpeed
type: PropertyShape
affected property: trackRaisedPantographsDistanceAndSpeed
affected class: RunningTrack
scope: local
comment: Relates the track with the class RaisedPantporaphsDistanceAndSpeed. Indication of maximum number of raised pantographs per train allowed and minimum spacing centre line to centre line of adjacent pantograph heads, expressed in metres, at the given speed.
rinf index: 1.1.1.2.3.3
path: trackRaisedPantographsDistanceAndSpeed
class: RaisedPantographsDistanceAndSpeed
severity: Violation
message: trackRaisedPantographsDistanceAndSpeed (1.1.1.2.3.3): The track defines a raised pantographs distance and speed value that must be an instance of RaisedPantographsDistanceAndSpeed.

RaisedPantographsDistance
type: PropertyShape
affected property: raisedPantographsDistance
affected class: RaisedPantographsDistanceAndSpeed
scope: local
comment: Indication of maximum number of raised pantographs per train allowed and minumum spacing centre line to centre line of adjacent pantograph heads, expressed in meters, at the given speed.
rinf index: 1.1.1.2.3.3
path: raisedPantographsDistance
min count: 1
max count: 1
datatype: integer
severity: Violation
message: Raised pantographs distance (1.1.1.2.3.3): The track or subset with common characteristics must have a raised pantographs distance and speed with a value of distance that is an integer. This error is due to the track having a RaisedPantographDistanceAndSpeed with no value of distance, more than one value of distance or having a value that is not an integer.

RaisedPantographsSpeed
type: PropertyShape
affected property: raisedPantographsSpeed
scope: local
affected class: RaisedPantographsDistanceAndSpeed
comment: Indication of maximum number of raised pantographs per train allowed and minumum spacing centre line to centre line of adjacent pantograph heads, expressed in meters, at the given speed.
rinf index: 1.1.1.2.3.3
min count: 1
max count: 1
path: raisedPantographsSpeed
datatype: integer
severity: Violation
message: raised pantographs speed (1.1.1.2.3.3): The track or subset with common characteristics must have a raised pantographs distance and speed with a value of speed that is an integer. This error is due to having a RaisedPantographDistanceAndSpeed with no value of speed, more than one value of speed or having a value that is not an integer.

RaisedPantographsNumber
type: PropertyShape
affected property: raisedPantographsNumber
scope: local
affected class: RaisedPantographsDistanceAndSpeed
comment: Indication of maximum number of raised pantographs per train allowed and minumum spacing centre line to centre line of adjacent pantograph heads, expressed in meters, at the given speed.
rinf index: 1.1.1.2.3.3
path: raisedPantographsNumber
min count: 1
max count: 1
datatype: integer
severity: Violation
message: Raised pantographs number (1.1.1.2.3.3): The track or subset with common characteristics must have a raised pantographs distance and number with a value of number that is an integer. This error is due to having a RaisedPantographDistanceAndSpeed with no value of number, more than one value of number or having a value that is not an integer.

ContactStripMaterialSKOS
type: SPARQLConstraint
affected property: contactStripMaterial
affected class: RunningTrack
scope: local
comment: Indication of the material of the contact strip.
rinf index: 1.1.1.2.3.4
severity: Violation
message: Indication of the contactStripMaterial (1.1.1.2.3.4):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/contact-strip-materials/ContactStripMaterials.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:contactStripMaterial ?concept . era:contactStripMaterial era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

ContactStripMaterialMetallicContent
type: PropertyShape
affected property: contactStripMaterialMetallicContent
affected class: RunningTrack
scope: local
comment: In case that the value of the property era:contactStripMaterial is impregnated carbon, it is the metallic content, the maximum percentage allowed.
rinf index: 1.1.1.2.3.4
path: contactStripMaterialMetallicContent
datatype: integer
severity: Violation
message: contactStripMaterialMetallicContent (1.1.1.2.3.4): The track or subset with common characteristics has an indication of the material of the contact strip that must be an integer. This error may be due to the track having a value that is not an integer.

HasPhaseSeparation
type: PropertyShape
affected property: hasPhaseSeparation
affected class: RunningTrack
scope: local
comment: Indication of existence of phase separation and required information.
rinf index: 1.1.1.2.4.1.1
path: hasPhaseSeparation
max count: 1
datatype: boolean
severity: Violation
message: hasPhaseSeparation (1.1.1.2.4.1.1): The track or subset with common characteristics defines at most one existence of phase separation and required information value that is Y/N (boolean). This error may be due to the track having more than one value or having a value that is not Y/N (boolean).

TrackPhaseInfo
type: PropertyShape
affected property: trackPhaseInfo
affected class: RunningTrack
scope: local
comment: Relates the Track with PhaseInfo. Indication of required several information on phase separation.
rinf index: 1.1.1.2.4.1.2
path: trackPhaseInfo
class: PhaseInfo
severity: Violation
message: trackPhaseInfo (1.1.1.2.4.1.2): The track defines a track phase info value that must be an instance of PhaseInfo.

PhaseInfoChangeSupplySystem
type: PropertyShape
affected property: phaseInfoChangeSupplySystem
scope: local
affected class: PhaseInfo
comment: Indication of existence of phase separation and required information.
path: phaseInfoChangeSupplySystem
min count: 1
max count: 1
datatype: boolean
severity: Warning
message: Phase info changeSupplySystem : The track has the phase info with the indication whether the supply system has to be changed value, that must be a boolean. This error is due to the track having a SystemSeparationInfo with no value, more than one value, or a value that is not a boolean.

PhaseInfoKm
type: PropertyShape
affected property: phaseInfoKm
scope: local
affected class: PhaseInfo
comment: Indication of existence of phase separation and required information.
path: phaseInfoKm
min count: 1
max count: 1
datatype: double
severity: Warning
message: Phase info km : The track has a phase info with the location from the start of the line value (km), that must be a double. This error may be due to the track having a PhaseInfo with no value of km, more than one value of km, or a value that is not a double (real) number.

PhaseInfoDistanceType
type: PropertyShape
affected property: phaseInfoDistanceType
scope: local
affected class: PhaseInfo
comment: Indication of existence of phase separation and required information.
path: phaseInfoDistanceType
min count: 1
max count: 1
datatype: string
or:
  has value: MIN
or:
  has value: MAX
severity: Warning
message: Phase info distance type : The track has a phase info with the single selection of 'MIN=minimum' or 'MAX=maximum' to show whether the length is a minimum distance between the inner contact strips of the pantographs or a maximum distance between the outer contact strips of the pantographs, that must be the string MIN or MAX. This error may be due to the track having a PhaseInfo with no value of distancetype, more than one value of distance type, or having a value that is not one of the strings MIN or MAX.

PhaseInfoLength
type: PropertyShape
affected property: phaseInfoLength
scope: local
affected class: PhaseInfo
comment: Indication of existence of phase separation and required information.
path: phaseInfoLength
datatype: integer
min count: 1
max count: 1
severity: Violation
message: Phase infolength (): The track has a phase info with the length of the phase separation value (length), that must be an integer. This error may be due to the track having a PhaseInfo with no value of length, more than one value of length, or having a value that is not an integer.

PhaseInfoPantographLowered
type: PropertyShape
affected property: phaseInfoPantographLowered
scope: local
affected class: PhaseInfo
comment: Indication of existence of phase separation and required information.
path: phaseInfoPantographLowered
datatype: boolean
min count: 1
max count: 1
severity: Violation
message: Phase info (1.1.1.2.4.1.2): The track has the phase info with the indication whether the pantograph is lowered value, that must be Y/N (boolean). This error may be due to the track having a PhaseInfo with no value of phaseInfoPantographLowered, more than one value of phaseInfoPantographLowered, or having a value that is not Y/N (boolean).

PhaseInfoSwitchOffBreaker
type: PropertyShape
affected property: phaseInfoSwitchOffBreaker
scope: local
affected class: PhaseInfo
comment: Indication of existence of phase separation and required information.
path: phaseInfoSwitchOffBreaker
datatype: boolean
severity: Violation
message: Phase info switchOffBreaker : The track has the phase info with the indication whether the breaker may be switched off value, that must be Y/N (boolean). This error may be due to the track having a PhaseInfo with no value of phaseInfoSwitchOffBreaker, more than one value of phaseInfoSwitchOffBreaker, or having a value that is not Y/N (boolean).

HasSystemSeparation
type: PropertyShape
affected property: hasSystemSeparation
affected class: RunningTrack
scope: local
comment: Indication of existence of system separation.
rinf index: 1.1.1.2.4.2.1
path: hasSystemSeparation
max count: 1
datatype: boolean
severity: Violation
message: hasSystemSeparation (1.1.1.2.4.2.1): The track or subset with common characteristics has at most one existence of system separation value that must be Y/N (boolean). This error may be due to the track having more than one value or to having a value that is not Y/N (boolean).

TrackSystemSeparationInfo
type: PropertyShape
affected property: trackSystemSeparationInfo
affected class: RunningTrack
scope: local
comment: Relates the Track with the SystemSeparationInfo. Indication of required several information on system separation.
rinf index: 1.1.1.2.4.2.2
path: trackSystemSeparationInfo
class: SystemSeparationInfo
severity: Violation
message: trackSystemSeparationInfo (1.1.1.2.4.2.2): The track defines a system separation info value that must be an instance of SystemSeparationInfo.

SystemSeparationInfoKm
type: PropertyShape
affected property: systemSeparationInfoKm
scope: local
affected class: SystemSeparationInfo
comment: Indication of required several information on system separation.
path: systemSeparationInfoKm
min count: 1
max count: 1
datatype: double
severity: Warning
message: System separation info km : The track has a system separation info with the location from the start of the line value (km), that must be a double.This error may be due to the track having a SystemSeparationInfo with no value, more than one value, or a value that is not a double (real) number.

SystemSeparationInfoLength
type: PropertyShape
affected property: systemSeparationInfoLength
scope: local
affected class: SystemSeparationInfo
comment: Indication of required several information on system separation.
path: systemSeparationInfoLength
min count: 1
max count: 1
datatype: integer
severity: Violation
message: System separation info length: The track has a system separatione info with the length of the system separation value (length), that must be an integer. This error may be due to the track having a SystemSeparationInfo with no value, more than one value, or a value that is not an integer.

SystemSeparationInfoPantographLowered
type: PropertyShape
affected property: systemSeparationInfoPantographLowered
scope: local
affected class: SystemSeparationInfo
comment: Indication of required several information on system separation.
path: systemSeparationInfoPantographLowered
min count: 1
max count: 1
datatype: boolean
severity: Warning
message: System separation info pantograph lowered: The track has the system separation info with the indication whether the pantograph is lowered value, that must be Y/N (boolean). This error may be due to the track having a SystemSeparationInfo with no value, more than one value, or a value that is not Y/N (boolean).

SystemSeparationInfoSwitchOffBreaker
type: PropertyShape
affected property: systemSeparationInfoSwitchOffBreaker
scope: local
comment: Indication of required several information on system separation.
path: systemSeparationInfoSwitchOffBreaker
min count: 1
max count: 1
affected class: SystemSeparationInfo
datatype: boolean
severity: Warning
message: System separation info switchOffBreaker : The track has the system separation info with the indication wether the breaker may be switched off value, that must be Y/N (boolean). This error is due to the track having a SystemSeparationInfo with no value, more than one value, or a value that is not Y/N (boolean).

SystemSeparationInfoChangeSupplySystem
type: PropertyShape
affected property: systemSeparationInfoChangeSupplySystem
scope: local
affected class: SystemSeparationInfo
comment: Indication of required several information on system separation.
path: systemSeparationInfoChangeSupplySystem
min count: 1
max count: 1
datatype: string
severity: Warning
message: System separation info changeSupplySystem : The track has the system separation info with the indication whether the supply system has to be changed value, that must be a character string. This error is due to the track having a SystemSeparationInfo with no value, more than one value, or a value that is not a string.

DistSignToPhaseEnd
type: PropertyShape
affected property: distSignToPhaseEnd
affected class: RunningTrack
scope: local
comment: Specific for route compatibility check on French network. Distance between the signboard authorizing the driver to 'raise pantograph' or 'close the circuit breaker' after passing the phase separation and the end of the phase separation section.
path: distSignToPhaseEnd
max count: 1
datatype: integer
pattern: ^([1-9]\d{1,2}|[0-9])$
severity: Violation
message: distSignToPhaseEnd: The track or subset with common characteristics must have at most one value of the distance between the signboard authorizing the driver to 'raise pantograph' or 'close the circuit breaker' after passing the phase separation and the end of the phase separation section, and the value is an integer. This error is due to the track having more than one value or to having a value that is not an integer.

PermittedContactForce
type: PropertyShape
affected property: permittedContactForce
affected class: RunningTrack
scope: local
comment: Indication of contact force allowed expressed in newtons.
rinf index: 1.1.1.2.5.2
path: permittedContactForce
max count: 1
datatype: string
severity: Violation
message: permittedContactForce (1.1.1.2.5.2): The track or subset with common characteristics must have at most one value of the contact force allowed expressed in newtons. This error is due to the track having more than one value or to having a value that is not a character string.

AutomaticDroppingDeviceRequired
type: PropertyShape
affected property: automaticDroppingDeviceRequired
affected class: RunningTrack
scope: local
comment: Indication of the requirement of automatic dropping device.
rinf index: 1.1.1.2.5.3
path: automaticDroppingDeviceRequired
max count: 1
datatype: boolean
severity: Violation
message: automaticDroppingDeviceRequired (1.1.1.2.5.3): The track or subset with common characteristics must have at most one value of the requirement of automatic dropping device and it is Y/N (boolean). This error is due to the track having more than one value or to having a value that is not Y/N (boolean).

VerificationCCS
type: PropertyShape
affected property: verificationCCS
affected class: RunningTrack
scope: local
comment: Unique number for EC declarations following format requirements specified in the 'Document about practical arrangements for transmitting interoperability documents'.
rinf index: 1.1.1.3.1.1
path: verificationCCS
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: verificationCCS (1.1.1.3.1.1): The track or subset with common characteristics defines the unique number for EC declarations following format requirements specified in the 'Document about practical arrangements for transmitting interoperability documents; the value must be a string that follows the pattern [CC/RRRRRRRRRRRRRR/YYYY/NNNNNN] where the YYYY characters must be a number between 1900 and 2100, and the NNNNNN characters must be digits. This error is due to having a value that does not follow the pattern.

ProtectionLegacySystemSKOS
type: SPARQLConstraint
affected property: protectionLegacySystem
affected class: RunningTrack
scope: local
comment: Indication of which class B system is installed.
rinf index: 1.1.1.3.5.3
severity: Violation
message: Indication of the protectionLegacySystem (1.1.1.3.5.3): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/train-protection-legacy-systems/TrainProtectionLegacySystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:protectionLegacySystem ?concept . era:protectionLegacySystem era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

MaximumBrakingDistance
type: PropertyShape
affected property: maximumBrakingDistance
affected class: RunningTrack
scope: local
comment: The maximum value of the braking distance [in metres] of a train shall be given for the maximum line speed.
rinf index: 1.1.1.3.11.1
path: maximumBrakingDistance
max count: 1
datatype: integer
pattern: ^([1-9]\d{1,4}|[0-9])$
severity: Violation
message: maximumBrakingDistance (1.1.1.3.11.1): The track or subset with common characteristics must define at most one value of the maximum value of the braking distance [in metres] of a train and it is an integer. This error may be due to the track having more than one value or to having a value that is not an integer.

HasAdditionalBrakingInformation
type: PropertyShape
affected property: hasAdditionalBrakingInformation
affected class: RunningTrack
scope: local
comment: Availability by the IM of additional information as defined in 4.2.2.6.2 (2) Regulation XXX-OPE TSI.
rinf index: 1.1.1.3.11.2
path: hasAdditionalBrakingInformation
max count: 1
datatype: boolean
severity: Violation
message: hasAdditionalBrakingInformation (1.1.1.3.11.2): The track or subset with common characteristics must define at most one value of the availability by the IM of additional information and it is Y/N (boolean). This error may be due to the track having more than one value or to having a value that is not Y/N (boolean).

AdditionalBrakingInformationDocument
type: PropertyShape
affected property: additionalBrakingInformationDocument
affected class: RunningTrack
scope: local
comment: Documents available by the IM relating to braking performance.
rinf index: 1.1.1.3.11.3
path: additionalBrakingInformationDocument
class: Document
severity: Violation
message: additionalBrakingInformationDocument (1.1.1.3.11.3): The track or subset with common characteristics defines the documents available by the IM relating to braking performance value and it must be a Document.

TiltingSupported
type: PropertyShape
affected property: tiltingSupported
affected class: RunningTrack
scope: local
comment: Indication whether tilting functions are supported by the track.
rinf index: 1.1.1.3.12.1
path: tiltingSupported
max count: 1
datatype: boolean
severity: Violation
message: tiltingSupported (1.1.1.3.12.1): The track or subset with common characteristics must define at most one value of the indication whether tilting functions are supported by the track and it is Y/N (boolean).This error may be due to the track having more than one value or to having a value that is not Y/N (boolean).

CurrentLimitationRequired
type: PropertyShape
affected property: currentLimitationRequired
affected class: RunningTrack
scope: local
comment: Indication of whether an on board current or power limitation function on vehicles is required.
rinf index: 1.1.1.2.5.1
path: currentLimitationRequired
datatype: boolean
severity: Violation
message: currentLimitationRequired (1.1.1.2.5.1): The track or subset with common characteristics may have a current limitation required value that is a boolean. This error may be due to the track having a value that is not a boolean.

DocumentRestrictionPositionContactLineSeparation
type: PropertyShape
affected property: documentRestrictionPositionContactLineSeparation
affected class: RunningTrack
scope: local
comment: Document with restriction related to the position of Multiple Traction unit(s) to comply with contact line separation.
rinf index: 1.1.1.2.5.5
path: documentRestrictionPositionContactLineSeparation
class: Document
severity: Violation
message: documentRestrictionPositionContactLineSeparation (1.1.1.2.5.5): The track or subset with common characteristics may have a Document with restriction related to the position of Multiple Traction unit(s) to comply with contact line separation value that is a Document. This error may be due to the track having a value that is not a Document.

DocumentRestrictionPowerConsumption
type: PropertyShape
affected property: documentRestrictionPowerConsumption
affected class: RunningTrack
scope: local
comment: Document with restriction related to power consumption of specific electric traction unit(s).
rinf index: 1.1.1.2.5.4
path: documentRestrictionPowerConsumption
class: Document
severity: Violation
message: documentRestrictionPowerConsumption (1.1.1.2.5.4): The track or subset with common characteristics may have a Document with restriction related to power consumption of specific electric traction unit(s) value that is a Document. This error may be due to the track having a value that is not a Document.

LinesideDistanceIndication
type: PropertyShape
affected property: linesideDistanceIndication
affected class: RunningTrack
scope: local
comment: Indication of types of appearance of track lineside distance indications.
path: linesideDistanceIndication
class: LinesideDistanceIndication
max count: 1
rinf index: 1.1.1.0.0.3
node kind: IRI
severity: Violation
message: linesideDistanceIndication (1.1.1.0.0.3) : The track must have exactly one value of a lineside distance indication that must be an instance of LinesideDistanceIndication. This error may be due to the track having no value, having more than one value or having a value that is not an instance of the class LinesideDistanceIndication.

LinesideDistanceIndicationPositioning
type: PropertyShape
affected property: linesideDistanceIndicationPositioning
affected class: RunningTrack
scope: local
comment: Indication of the side along the track where the lineside indication is positioned (left or right).
path: linesideDistanceIndicationPositioning
min count: 1
max count: 1
node kind: IRI
severity: Violation
message: LinesideDistanceIndicationPositioning: The track must have at most one value of the lineside distance indication positioning. This error may be due to the track having no value, more than one value or to having a value that is not an IRI.

LinesideDistanceIndicationPositioningSKOS
type: SPARQLConstraint
affected property: linesideDistanceIndicationPositioning
affected class: RunningTrack
scope: local
comment: Indication of the side along the track where the lineside indication is positioned (left or right).
severity: Violation
message: Indication of the linesideDistanceIndicationPositioning: The track or subset with common characteristics {$this} has a LinesideDistanceIndication {?linesideDistanceIndication} with a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/lineside-distance-indication-positioning/LinesideDistanceIndicationPositioning.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?linesideDistanceIndication ?concept WHERE { $this era:linesideDistanceIndication ?linesideDistanceIndication . ?linesideDistanceIndication era:linesideDistanceIndicationPositioning ?concept . era:linesideDistanceIndicationPositioning era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

LinesideDistanceIndicationAppearance
type: PropertyShape
affected property: linesideDistanceIndicationAppearance
affected class: RunningTrack
scope: local
comment: Indication of types of appearance of track lineside distance indications.
path: linesideDistanceIndicationAppearance
min count: 1
max count: 1
node kind: IRI
severity: Violation
message: linesideDistanceIndicationAppearance: The track must have at most one value of the lineside distance indication appearance. This error may be due to the track having no value, more than one value or to having a value that is not an IRI.

LinesideDistanceIndicationAppearanceSKOS
type: SPARQLConstraint
affected property: linesideDistanceIndicationAppearance
affected class: RunningTrack
scope: local
comment: Indication of types of appearance of track lineside distance indications.
severity: Violation
message: Indication of the linesideDistanceIndicationAppearance: The track or subset with common characteristics {$this} has a LinesideDistanceIndication {?linesideDistanceIndication} that has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/lineside-distance-indication-appearance/LinesideDistanceIndicationAppearance.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?linesideDistanceIndication ?concept WHERE { $this era:linesideDistanceIndication ?linesideDistanceIndication . ?linesideDistanceIndication era:linesideDistanceIndicationAppearance ?concept . era:linesideDistanceIndicationAppearance era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

LinesideDistanceIndicationFrequency
type: PropertyShape
affected property: linesideDistanceIndicationFrequency
affected class: RunningTrack
scope: local
comment: Frequency of track lineside distance indications..
path: linesideDistanceIndicationFrequency
min count: 1
max count: 1
datatype: integer
severity: Violation
message: linesideDistanceIndicationFrequency: The track must have at most one value of the lineside distance indication frequency. This error may be due to the track having a LineDistanceIndication with no value, more than one value or to having a value that is not an integer.

AccelerationLevelCrossingApplicability
type: SPARQLConstraint
affected property: accelerationLevelCrossing
affected class: RunningTrack
scope: local
comment: Existence of limit for acceleration of train if stopping or recovering speed close to a level crossing expressed in a specific reference acceleration curve.
rinf index: 1.1.1.1.7.3
severity: Warning
message: accelerationLevelCrossing (1.1.1.1.7.3): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Applicable only when selected value of parameter 1.1.1.1.7.2 is ‘Y’
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . FILTER EXISTS {$this era:hasLevelCrossings ?value} . FILTER NOT EXISTS {$this era:accelerationLevelCrossing ?value} . }

TrackPhaseInfoApplicability
type: SPARQLConstraint
affected property: trackPhaseInfo
affected class: RunningTrack
scope: local
comment: Relates the Track with PhaseInfo. Indication of required several information on phase separation.
rinf index: 1.1.1.2.4.1.2
severity: Violation
message: trackPhaseInfo (1.1.1.2.4.1.2): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Applicable when in parameter 1.1.1.2.4.1.1 selected option is ‘Y’
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:hasPhaseSeparation "1"^^xsd:boolean . FILTER NOT EXISTS {$this era:trackPhaseInfo ?value} . }

TrackSystemSeparationInfoApplicability
type: SPARQLConstraint
affected property: trackSystemSeparationInfo
affected class: RunningTrack
scope: local
comment: Relates the Track with the SystemSeparationInfo. Indication of required several information on system separation.
rinf index: 1.1.1.2.4.2.2
severity: Warning
message: trackSystemSeparationInfo (1.1.1.2.4.2.2): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Applicable when in parameter 1.1.1.2.4.2.1 selected option is ‘Y’
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:hasSystemSeparation "1"^^xsd:boolean . FILTER NOT EXISTS {$this era:trackSystemSeparationInfo ?value} . }

TsiPantographHeadApplicability
type: SPARQLConstraint
affected property: tsiPantographHead
affected class: RunningTrack
scope: local
comment: Indication of TSI compliant pantograph heads which are allowed to be used.
rinf index: 1.1.1.2.3.1
severity: Violation
message: tsiPantographHead (1.1.1.2.3.1): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) FILTER EXISTS {$this era:tsiPantographHead ?value} . }

TrackRaisedPantographDistanceAndSpeedApplicability
type: SPARQLConstraint
affected property: trackRaisedPantographsDistanceAndSpeed
affected class: RunningTrack
scope: local
comment: Relates the track with the class RaisedPantographsDistanceAndSpeed. Indication of maximum number of raised pantographs per train allowed and minimum spacing centre line to centre line of adjacent pantograph heads, expressed in metres, at the given speed.
rinf index: 1.1.1.2.3.3
severity: Violation
message: trackRaisedPantographsDistanceAndSpeed (1.1.1.2.3.3): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:trackRaisedPantographsDistanceAndSpeed ?value} . }

HasPhaseSeparationApplicability
type: SPARQLConstraint
affected property: hasPhaseSeparation
affected class: RunningTrack
scope: local
comment: Indication of existence of phase separation and required information.
rinf index: 1.1.1.2.4.1.1
severity: Violation
message: hasPhaseSeparation (1.1.1.2.4.1.1): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:hasPhaseSeparation ?value} . }

ContactStripMaterialApplicability
type: SPARQLConstraint
affected property: contactStripMaterial
affected class: RunningTrack
scope: local
comment: Indication of which contact strip materials are permitted to be used.
rinf index: 1.1.1.2.3.4
severity: Violation
message: contactStripMaterial (1.1.1.2.3.4): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:contactStripMaterial ?value} . }

OtherPantographHeadApplicability
type: SPARQLConstraint
affected property: otherPantographHead
affected class: RunningTrack
scope: local
comment: Indication of pantograph heads which are allowed to be used.
rinf index: 1.1.1.2.3.2
severity: Violation
message: otherPantographHead (1.1.1.2.3.2): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?cls ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:otherPantographHead ?value} . }

HasSystemSeparationApplicability
type: SPARQLConstraint
affected property: hasSystemSeparation
affected class: RunningTrack
scope: local
comment: Indication of existence of system separation.
rinf index: 1.1.1.2.4.2.1
severity: Violation
message: hasSystemSeparation (1.1.1.2.4.2.1): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:hasSystemSeparation ?value} . }

PermittedContactForceApplicability
type: SPARQLConstraint
affected property: permittedContactForce
affected class: RunningTrack
scope: local
comment: Indication of contact force allowed expressed in newton.
rinf index: 1.1.1.2.5.2
severity: Violation
message: permittedContactForce (1.1.1.2.5.2): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:permittedContactForce ?value} . }

AutomaticDroppingDeviceRequiredApplicability
type: SPARQLConstraint
affected property: automaticDroppingDeviceRequired
affected class: RunningTrack
scope: local
comment: Indication of whether an automatic dropping device (ADD) required on the vehicle.
rinf index: 1.1.1.2.5.3
severity: Violation
message: automaticDroppingDeviceRequired (1.1.1.2.5.3): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: This parameter is applicable ('Y') only if “Overhead contact line (OCL)” is selected for 1.1.1.2.2.1.1.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType != <http://data.europa.eu/949/concepts/contact-line-systems/10>) . FILTER EXISTS {$this era:automaticDroppingDeviceRequired ?value} . }

CurrentLimitationRequiredApplicability
type: SPARQLConstraint
affected property: currentLimitationRequired
affected class: RunningTrack
scope: local
comment: Indication of whether an on board current or power limitation function on vehicles is required.
rinf index: 1.1.1.2.5.1
severity: Violation
message: currentLimitationRequired (1.1.1.2.5.1): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: When 'not electrified' is chosen in parameter 1.1.1.2.2.1.1, then this parameter is not applicable selection ‘N’.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:contactLineSystem ?cls . ?cls era:contactLineSystemType ?clsType . FILTER (?clsType = <http://data.europa.eu/949/concepts/contact-line-systems/40>) . FILTER EXISTS {$this era:currentLimitationRequired ?value} . }

HasBallastApplicability
type: SPARQLConstraint
affected property: hasBallast
affected class: RunningTrack
scope: local
comment: Specifies whether track construction is with sleepers embedded in ballast or not.
rinf index: 1.1.1.1.4.4
severity: Violation
message: hasBallast (1.1.1.1.4.4): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Y for tracks with permitted speed (parameter 1.1.1.1.2.5) greater than 250km/h.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:maximumPermittedSpeed ?mps . FILTER (?mps > 250) . FILTER NOT EXISTS {$this era:hasBallast ?value} . }

MagneticBrakingConditionsDocumentApplicability
type: SPARQLConstraint
affected property: magneticBrakingConditionsDocument
affected class: RunningTrack
scope: local
comment: Electronic document available in two EU languages from the IM stored by the Agency with conditions for the use of magnetic brakes identified in 1.1.1.1.6.3.
rinf index: 1.1.1.1.6.5
severity: Warning
message: magneticBrakingConditionsDocument (1.1.1.1.6.5): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Y if the answer to 1.1.1.1.6.3 / Use of magnetic brakes is “allowed under conditions” or “allowed under conditions only for emergency brake”.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:magneticBraking ?mb . FILTER (?mb = <http://data.europa.eu/949/concepts/magnetic-braking/20> || ?mb = <http://data.europa.eu/949/concepts/magnetic-braking/30> ) . FILTER NOT EXISTS {$this era:magneticBrakingConditionsDocument ?value} . }

TenGISIdApplicability
type: SPARQLConstraint
affected property: tenGISId
affected class: RunningTrack
scope: local
comment: Indication of the GIS identity (GIS ID) of the section of TEN-T database to which the track belongs.
rinf index: 1.1.1.1.2.1.2
severity: Warning
message: tenGISId (1.1.1.1.2.1.2): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Y if the answer to parameter 1.1.1.1.2.1 is not off TEN.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:tenClassification ?tc . FILTER (?tc != <http://data.europa.eu/949/concepts/ten-classifications/40>) . FILTER NOT EXISTS {$this era:tenGISId ?value} . FILTER NOT EXISTS {$this era:notApplicable era:tenGISId} . }

AdditionalBrakingInformationDocumentApplicability
type: SPARQLConstraint
affected property: additionalBrakingInformationDocument
affected class: RunningTrack
scope: local
comment: Electronic document available in two EU languages from the IM stored by the Agency providing additional information as defined in point (2) of point 4.2.2.6.2 of TSI OPE.
rinf index: 1.1.1.3.11.3
severity: Violation
message: additionalBrakingInformationDocument (1.1.1.3.11.3): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Y in case of Y for 1.1.1.3.11.2.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:hasAdditionalBrakingInformation "1"^^xsd:boolean . FILTER NOT EXISTS {$this era:additionalBrakingInformationDocument ?value} . }

EddyCurrentBrakingConditionsDocumentApplicability
type: SPARQLConstraint
affected property: eddyCurrentBrakingConditionsDocument
affected class: RunningTrack
scope: local
comment: Electronic document available in two EU languages from the IM stored by the Agency with conditions for the use of eddy current brakes identified in 1.1.1.1.6.2.
rinf index: 1.1.1.1.6.4
severity: Violation
message: eddyCurrentBrakingConditionsDocument (1.1.1.1.6.4): This error is due to the track or subset with common characteristics {?trackLabel} , violating the rule: Y in case of Y for 1.1.1.1.6.2 Use of eddy current brakes is “allowed under conditions” or “allowed under conditions only for emergency brake””.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this rdfs:label ?trackLabel . $this era:eddyCurrentBraking ?ecb . FILTER (?ecb = <http://data.europa.eu/949/concepts/magnetic-braking/20> || ?ecb = <http://data.europa.eu/949/concepts/magnetic-braking/40> ) . FILTER NOT EXISTS {$this era:eddyCurrentBrakingConditionsDocument ?value} . }

ConditionalRegenerativeBrake
type: PropertyShape
affected property: conditionalRegenerativeBrake
affected class: RunningTrack
scope: local
comment: Indication whether regenerative braking is permitted, not permitted, or permitted under specific conditions.
rinf index: 1.1.1.2.2.4
path: conditionalRegenerativeBrake
node kind: IRI
max count: 1
severity: Violation
message: conditionalRegenerativeBrake (1.1.1.2.2.4): The track or subset with common characteristics defines if the regenerative brake is permitted. This error is due to having more than one value for this property or having a value that is not an IRI.

ConditionalRegenerativeBrakeSKOS
type: SPARQLConstraint
affected property: conditionalRegenerativeBrake
affected class: RunningTrack
scope: local
comment: Indication whether regenerative braking is permitted, not permitted, or permitted under specific conditions.
rinf index: .1.1.2.2.4
severity: Violation
message: conditionalRegenerativeBrake (1.1.1.2.2.4):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/regenerative-braking/RegenerativeBraking.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:conditionalRegenerativeBrake ?concept . era:conditionalRegenerativeBrake era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

ConditionsUseReflectivePlates
type: PropertyShape
affected property: conditionsUseReflectivePlates
affected class: RunningTrack
scope: local
comment: Details of any conditions for using the reflective plates on freight corridors. Specific case for Portugal and Spain until 1.1.2025 and Belgium and France until 1.1.2026.
rinf index: 1.1.1.1.7.12.1
path: conditionsUseReflectivePlates
node kind: IRI
severity: Violation
message: conditionsUseReflectivePlates (1.1.1.1.7.12.1): The track or subset with common characteristics may have a value of the conditions for use of reflective plates. This error may be due to the track having a value that is not an IRI.

ConditionsUseReflectivePlatesSKOS
type: SPARQLConstraint
affected property: conditionsUseReflectivePlates
affected class: RunningTrack
scope: local
comment: Details of any conditions for using the reflective plates on freight corridors. Specific case for Portugal and Spain until 1.1.2025 and Belgium and France until 1.1.2026.
rinf index: 1.1.1.1.7.12.1
severity: Violation
message: Indication of the conditionsUseReflectivePlates (1.1.1.1.7.12.1): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/conditions-use-reflective-plates/ConditionsUseReflectivePlates.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:conditionsUseReflectivePlates ?concept . era:conditionsUseReflectivePlates era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

Etcs
type: PropertyShape
affected property: etcs
affected class: RunningTrack
scope: local
comment: European Train Control System (ETCS) application level supported by the track side equipment.
path: etcs
class: ETCS
rinf index: 1.1.1.3.2
node kind: IRI
severity: Violation
message: etcs (1.1.1.3.2) : The track or subset with common characteristics may have a value of a European Train Control System (ETCS) that must be an instance of ETCS. This error may be due to the track having a value that is not an instance of the class ETCS.

StandardCombinedTransportContainers
type: PropertyShape
affected property: standardCombinedTransportContainers
affected class: RunningTrack
scope: local
comment: Coding for combined transport for containers (for all freight and mixed-traffic lines) in accordance with the specification referenced in Appendix A-1, index [B].
rinf index: 1.1.1.1.3.8
path: standardCombinedTransportContainers
node kind: IRI
severity: Violation
message: standardCombinedTransportContainers (1.1.1.1.3.8): The track defines a standard combined transport profile number for containers. This error is due to having a value that is not an IRI.

StandardCombinedTransportContainersSKOS
type: SPARQLConstraint
affected property: standardCombinedTransportContainers
affected class: RunningTrack
scope: local
comment: Coding for combined transport for containers (for all freight and mixed-traffic lines) in accordance with the specification referenced in Appendix A-1, index [B].
rinf index: .1.1.1.1.3.8
severity: Violation
message: standardCombinedTransportContainers (1.1.1.1.3.8):): The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/standard-combined-transport-containers/StandardCombinedTransportContainers.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:standardCombinedTransportContainers ?concept . era:standardCombinedTransportContainers era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

StandardCombinedRollerUnits
type: PropertyShape
affected property: standardCombinedTransportRollerUnits
affected class: RunningTrack
scope: local
comment: Coding for combined transport for roller units (for all freight and mixed-traffic lines) in accordance with the specification referenced in Appendix A-1, index [B].
rinf index: 1.1.1.1.3.9
path: standardCombinedTransportRollerUnits
node kind: IRI
severity: Violation
message: standardCombinedTransportRollerUnits (1.1.1.1.3.9): The track or subset with common characteristics defines a standard combined transport profile number for roller units. This error is due to having or having a value that is not an IRI.

StandardCombinedRollerUnitsSKOS
type: SPARQLConstraint
affected property: standardCombinedTransportRollerUnits
affected class: RunningTrack
scope: local
comment: Coding for combined transport for roller units (for all freight and mixed-traffic lines) in accordance with the specification referenced in Appendix A-1, index [B].
rinf index: 1.1.1.1.3.9
severity: Violation
message: standardCombinedTransportRollerUnits (1.1.1.1.3.9):): The track or subset with common characteristics {$this} in the Section of Line {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/standard-combined-transport-roller-units/StandardCombinedTransportRollerUnits.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:standardCombinedTransportRollerUnits ?concept . era:standardCombinedTransportRollerUnits era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

TrainDetectionSystem
type: PropertyShape
affected property: trainDetectionSystem
affected class: RunningTrack
scope: local
comment: Train detection systems installed in the section of line.
path: trainDetectionSystem
class: TrainDetectionSystem
rinf index: 1.1.1.3.4
node kind: IRI
severity: Violation
message: trainDetectionSystem (1.1.1.3.4) : The track or subset with common characteristics may have a value of a train detection system that must be an instance of TrainDetectionSystem. This error may be due to the track or subset with common characteristics having a value that is not an instance of the class TrainDetectionSystem.

AllocationCompany
type: PropertyShape
affected class: SubsidiaryLocation
affected property: allocationCompany
scope: local
comment: The organisation in charge to allocate the code for the subsidiary location.
path: allocationCompany
node kind: IRI
class: OrganisationRole
severity: Violation
message: allocationCompany: An instance of subsidiary location may have a value for allocation company. This error may be due to having a value that is not an IRI or that does not point to an instance of OrganisationRole.

LinkedToPrimaryLocation
type: PropertyShape
affected class: SubsidiaryLocation
affected property: linkedToPrimaryLocation
scope: local
comment: Linked to primary location.
path: linkedToPrimaryLocation
node kind: IRI
class: PrimaryLocation
severity: Violation
message: linkedToPrimaryLocation: An instance of subsidiary location may have a value for linkedToPrimaryLocation. This error may be due to having a value that is not an IRI or that does not point to an instance of PrimaryLocation.

SubsidiaryLocationType
type: PropertyShape
affected class: SubsidiaryLocation
affected property: subsidiaryLocationType
scope: local
comment: Subsidiary location type.
path: subsidiaryLocationType
node kind: IRI
severity: Violation
message: subsidiaryLocationType: An instance of subsidiary location may have a value for subsidiary location type. This error may be due to having a value that is not an IRI.

SubsidiaryLocationTypeSKOS
type: SPARQLConstraint
affected class: SubsidiaryLocation
affected property: subsidiaryLocationType
scope: local
comment: Subsidiary location type.
severity: Violation
message: subsidiaryLocationType: The Subsidiary Location {$this} (label {?slLabel}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/subsidiary-location-types/SubsidiaryLocationTypes.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?opLabel WHERE { OPTIONAL {$this rdfs:label ?slLabel} . $this era:subsidiaryLocationType ?concept . era:subsidiaryLocationType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

SubsidiaryLocationName
type: PropertyShape
affected class: SubsidiaryLocation
affected property: subsidiaryLocationName
scope: local
comment: The common name given to the subsidiary location
path: subsidiaryLocationName
datatype: langString
node kind: Literal
unique lang: true
severity: Violation
message: subsidiaryLocationName: Each Subsidiary Location may have a name. If it does, there should be at least one name in English (@en). Additional multilingual names are allowed, but only one value per language tag is permitted. All values must be language-tagged string literals.
sparql: SPARQLConstraint
  select: SELECT $this WHERE { # If the property exists $this $PATH ?anyName . # then there should exist at least one English value FILTER NOT EXISTS { $this $PATH ?value . FILTER (LANGMATCHES(lang(?value), "en") ) } }

TrainDetectionSystemType
type: PropertyShape
affected property: trainDetectionSystemType
affected class: TrainDetectionSystem
scope: local
comment: Indication of types of train detection system installed.
rinf index: 1.1.1.3.7.1.1
rinf index: 1.2.1.1.3.1.1
path: trainDetectionSystemType
max count: 1
node kind: IRI
severity: Violation
message: trainDetectionSystemType (1.1.1.3.7.1.1, 1.2.1.1.3.1.1): The train detection system has a train detection system type that must be a single IRI. This error may be due to having more than one value or having a value that is not an IRI.

TrainDetectionSystemTypeSKOS
type: SPARQLConstraint
affected property: trainDetectionSystemType
affected class: TrainDetectionSystem
scope: local
comment: Indication of types of train detection system installed.
rinf index: 1.1.1.3.7.1.1
rinf index: 1.2.1.1.3.1.1
severity: Violation
message: Indication of types of train detection system installed (1.1.1.3.7.1.1, 1.2.1.1.3.1.1): The train detection system {$this} (label {?tdsLabel}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/train-detection/TrainDetectionSystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?tdsLabel WHERE { OPTIONAL {$this rdfs:label ?tdsLabel} . $this era:trainDetectionSystemType ?concept . era:trainDetectionSystemType era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

TrainDetectionSystemSpecificCheck
type: PropertyShape
affected property: trainDetectionSystemSpecificCheck
affected class: TrainDetectionSystem
scope: local
comment: Reference to the technical specification of train detection system.
rinf index: 1.1.1.3.7.1.2
rinf index: 1.2.1.1.6.1
path: trainDetectionSystemSpecificCheck
max count: 1
node kind: IRI
severity: Violation
message: trainDetectionSystemSpecificCheck (1.1.1.3.7.1.2, 1.2.1.1.6.1): The train detection system has a train detection system specific check that must be a single IRI. This error may be due to having more than one value or having a value that is not an IRI.

TrainDetectionSystemSpecificCheckSKOS
type: SPARQLConstraint
affected property: trainDetectionSystemSpecificCheck
affected class: TrainDetectionSystem
scope: local
comment: Reference to the technical specification of train detection system.
rinf index: 1.1.1.3.7.1.2
rinf index: 1.2.1.1.6.1
severity: Violation
message: Indication of specific checks of train detection system installed (1.1.1.3.7.1.2, 1.2.1.1.6.1): The train detection system {$this} (label {?tdsLabel}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/train-detection-specific-checks.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?tdsLabel WHERE { OPTIONAL {$this rdfs:label ?tdsLabel} . $this era:trainDetectionSystemSpecificCheck ?concept . era:trainDetectionSystemSpecificCheck era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

TrainDetectionSystemSpecificCheckApplicability
type: SPARQLConstraint
affected property: trainDetectionSystemSpecificCheck
affected class: TrainDetectionSystem
scope: local
comment: Only applicable, when 1.1.1.3.7.1.1 is applicable.
rinf index: 1.1.1.3.7.1.2
rinf index: 1.2.1.1.6.1
severity: Warning
message: trainDetectionSystemSpecificCheck (1.1.1.3.7.1.2, 1.2.1.1.6.1):The Train Detection System {$this} ({?clsLabel}), has a type that makes the trainDetectionSystemSpecificCheck parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:trainDetectionSystemType ?tdsType. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:trainDetectionSystemSpecificCheck ?value} . }

TrainDetectionSystemSpecificCheckDocument
type: PropertyShape
affected property: trainDetectionSystemSpecificCheckDocument
affected class: TrainDetectionSystem
scope: local
comment: Electronic document available in two EU languages from the IM stored by the Agency with precise procedures for the specific check to be performed for train detection systems identified in 1.1.1.3.7.1.2.
rinf index: 1.1.1.3.7.1.3
rinf index: 1.2.1.1.6.2
path: trainDetectionSystemSpecificCheckDocument
max count: 1
class: Document
severity: Violation
message: trainDetectionSystemSpecificCheckDocument (1.1.1.3.7.1.3, 1.2.1.1.6.2): The track defines the electronic document available in two EU languages value and it must be a Document. This error may be due to having more than one value or having a value that is not a Document.

TrainDetectionSystemSpecificCheckDocumentApplicability
type: SPARQLConstraint
affected property: trainDetectionSystemSpecificCheckDocument
affected class: TrainDetectionSystem
scope: local
comment: Only applicable, when 1.1.1.3.7.1.1 is applicable.
rinf index: 1.1.1.3.7.1.3
rinf index: 1.2.1.1.6.2
severity: Warning
message: trainDetectionSystemSpecificCheckDocument (1.1.1.3.7.1.3, 1.2.1.1.6.2):The Train Detection System {$this} ({?clsLabel}), has a type that makes the trainDetectionSystemSpecificCheckDocument parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:trainDetectionSystemType ?tdsType. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:trainDetectionSystemSpecificCheckDocument ?value} . }

MaximumInterferenceCurrentEvaluation
type: PropertyShape
affected property: maximumInterferenceCurrentEvaluation
affected class: TrainDetectionSystem
scope: local
comment: If the preferred frequency bands are not used, (mandatory) description of the parameters for evaluation of compliance. If the preferred frequency bands are used, this parameter is optional.
rinf index: 1.1.1.3.4.2.1
rinf index: 1.2.1.1.3.2.1
path: maximumInterferenceCurrentEvaluation
max count: 1
datatype: string
severity: Violation
message: maximumInterferenceCurrentEvaluation (1.1.1.3.4.2.1, 1.2.1.1.3.2.1): Each TrainDetectionSystem may have a single value for maximumInterferenceCurrentEvaluation that is a character string. This error is due to having more than one maximumInterferenceCurrentEvaluation value or having a value that is not a string.

FrequencyBandsForDetection
type: PropertyShape
affected property: frequencyBandsForDetection
affected class: TrainDetectionSystem
scope: local
comment: Bands of the frequency management of the train detection systems as defined in the TSI CCS (Annex I, Appendix A, Table A.2 -Index 77), and in the specific cases or technical documents referred to in Article 13 of TSI CCS when they are available.
rinf index: 1.1.1.3.4.2
rinf index: 1.2.1.1.3.2
path: frequencyBandsForDetection
node kind: IRI
max count: 1
severity: Violation
message: frequencyBandsForDetection (1.1.1.3.4.2.1, 1.2.1.1.3.2): The train detection system has a frequency band for detection that must be an IRI. This error may be due to having more than one value or having a value that is not a Document.

FrequencyBandsForDetectionSKOS
type: SPARQLConstraint
affected property: frequencyBandsForDetection
affected class: TrainDetectionSystem
scope: local
comment: Indication of the frequency band for detection of the train detection system
rinf index: 1.1.1.3.4.2
rinf index: 1.2.1.1.3.2
severity: Violation
message: Indication of the frequency band for detection of the train detection system (1.1.1.3.4.2, 1.2.1.1.3.2): The train detection system {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/train-detection/FrequencyBandsForDetection.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:frequencyBandsForDetection ?concept . era:frequencyBandsForDetection era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

MaximumInterferenceCurrent
type: PropertyShape
affected property: maximumInterferenceCurrent
affected class: TrainDetectionSystem
scope: local
comment: Maximum interference current limits allowed for track circuits for a defined frequency band (to be expressed in A/m).
rinf index: 1.1.1.3.4.2.1
rinf index: 1.2.1.1.3.2.1
path: maximumInterferenceCurrent
datatype: double
pattern: ^([1-9]\d{1,2}|[0-9])(\D)?(\.0+)?$
max count: 1
severity: Violation
message: maximumInterferenceCurrent (1.1.1.3.4.2.1, 1.2.1.1.3.2.1): Each train detection system must define the maximum interference current in Amperes. This error may be due to having more than one value or having a value that is not a double (real) number.

TdsMaximumMagneticField
type: PropertyShape
affected class: TrainDetectionSystem
affected property: tdsMaximumMagneticField
scope: local
comment: Relates the Axle Counter TrainDetectionSystem with its MaximumMagneticField in (X,Y,Z). The maximum magnetic field limits allowed for axle counters (in dB µA/m) for a defined frequency band. It should be provided in 3 directions.
rinf index: 1.1.1.3.4.2.3
rinf index: 1.2.1.1.3.2.3
path: tdsMaximumMagneticField
class: MaximumMagneticField
max count: 1
severity: Violation
message: tdsMaximumMagneticField (1.1.1.3.4.2.3, 1.2.1.1.3.2.3): The train detection system has a train detection system maximum magnetic field reference that must be a maximum magnetic field. This error may be due to having more than one value or having a value that is not an instance of a MaximumMagnaticField.

TdsMaximumMagneticFieldApplicability
type: SPARQLConstraint
affected property: tdsMaximumMagneticField
affected class: TrainDetectionSystem
scope: local
comment: Y, for parameter 1.1.1.3.7.1.1 “Axle Counters” only.
rinf index: 1.1.1.3.4.2.3
rinf index: 1.2.1.1.3.2.3
severity: Violation
message: tdsMaximumMagneticField (1.1.1.3.4.2.3, 1.2.1.1.3.2.3):The Train Detection System {$this} ({?clsLabel}), has an 'axle counters' type that makes the tdsMaximumMagneticField parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/eratv/axle-counters>. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:tdsMaximumMagneticField ?value} . }

MaximumMagneticFieldDirectionX
type: PropertyShape
affected property: maximumMagneticFieldDirectionX
affected class: MaximumMagneticField
scope: local
comment: The maximum magnetic field limits allowed for axle counters (in dB µA/m) for a defined frequency band. Direction X.
path: maximumMagneticFieldDirectionX
min count: 1
max count: 1
datatype: integer
severity: Violation
message: maximumMagneticFieldDirectionX : Each MaximumMagneticField may have a single value for maximum magnetic field direction X that is an integer. This error is due to not having a value, having more than one value or having a value that is not an integer.

MaximumMagneticFieldDirectionY
type: PropertyShape
affected property: maximumMagneticFieldDirectionY
affected class: MaximumMagneticField
scope: local
comment: The maximum magnetic field limits allowed for axle counters (in dB µA/m) for a defined frequency band. Direction Y.
path: maximumMagneticFieldDirectionY
min count: 1
max count: 1
datatype: integer
severity: Violation
message: maximumMagneticFieldDirectionY : Each MaximumMagneticField may have a single value for maximum magnetic field direction Y that is an integer. This error is due to not having a value, having more than one value or having a value that is not an integer.

MaximumMagneticFieldDirectionZ
type: PropertyShape
affected property: maximumMagneticFieldDirectionZ
affected class: MaximumMagneticField
scope: local
comment: The maximum magnetic field limits allowed for axle counters (in dB µA/m) for a defined frequency band. Direction Z.
path: maximumMagneticFieldDirectionZ
min count: 1
max count: 1
datatype: integer
severity: Violation
message: maximumMagneticFieldDirectionZ : Each MaximumMagneticField may have a single value for maximum magnetic field direction Z that is an integer. This error is due to not having a value, having more than one value or having a value that is not an integer.

TdsFrenchTrainDetectionSystemLimitation
type: PropertyShape
affected class: TrainDetectionSystem
affected property: tdsFrenchTrainDetectionSystemLimitation
scope: local
comment: Relates the class train detection system with the class that represents the section with train detection limitation. Specific for route compatibility check on French network.
rinf index: 1.1.1.3.7.1.4
rinf index: 1.2.1.1.6.3
path: tdsFrenchTrainDetectionSystemLimitation
class: FrenchTrainDetectionSystemLimitation
max count: 1
severity: Violation
message: tdsFrenchTrainDetectionSystemLimitation (1.1.1.3.7.1.4, 1.2.1.1.6.3): The train detection system has a tds french train detection system limitation reference that must be a french train detection system limitation. This error may be due to having more than one value or having a value that is not an instance of a FrenchTrainDetectionSystemLimitation

FrenchTrainDetectionSystemLimitationNumber
type: PropertyShape
affected property: frenchTrainDetectionSystemLimitationNumber
affected class: TrainDetectionSystem
scope: local
comment: Part of the section with train detection limitation that indicates the type of train detection limitation. Only for the French network
path: frenchTrainDetectionSystemLimitationNumber
node kind: IRI
min count: 1
max count: 1
severity: Violation
message: frenchTrainDetectionSystemLimitationNumber : The train detection system has a french train detection limitation number that must be an IRI. This error may be due to not having a value, having more than one value or having a value that is not an IRI.

FrenchTrainDetectionSystemLimitationNumberSKOS
type: SPARQLConstraint
affected property: frenchTrainDetectionSystemLimitationNumber
affected class: FrenchTrainDetectionSystemLimitation
scope: local
comment: Part of the section with train detection limitation that indicates the type of train detection limitation. Only for the French network
severity: Violation
message: Indication of the frenchTrainDetectionSystemLimitationNumber: The train detection system {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/train-detection-numbers/FrenchTrainDetectionSystemLimitationNumbers.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept WHERE { $this era:frenchTrainDetectionSystemLimitationNumber ?concept . era:frenchTrainDetectionSystemLimitationNumber era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

FrenchTrainDetectionSystemLimitationApplicable
type: PropertyShape
affected property: frenchTrainDetectionSystemLimitationApplicable
affected class: TrainDetectionSystem
scope: local
comment: Part of the section with train detection limitation that indicates if it is applicable. Only for the French network.
path: frenchTrainDetectionSystemLimitationApplicable
datatype: boolean
min count: 1
max count: 1
severity: Violation
message: frenchTrainDetectionSystemLimitationApplicable : The train detection system has a french train detection limitation applicable value that must be a boolean. This error may be due to not having a value, having more than one value or having a value that is not a boolean.

MinVehicleImpedance
type: PropertyShape
affected class: TrainDetectionSystem
affected property: minVehicleImpedance
scope: local
rinf index: 1.1.1.3.4.2.2
path: minVehicleImpedance
class: MinVehicleImpedance
max count: 1
severity: Violation
message: minVehicleImpedance (1.1.1.3.4.2.2): The train detection system has a minimum vehicle impedance reference that must be a minimum vehicle impedance. This error may be due to having more than one value or having a value that is not an instance of a MinVehicleImpedance.

MinVehicleImpedanceApplicability
type: SPARQLConstraint
affected property: minVehicleImpedance
affected class: MinVehicleImpedance
scope: local
rinf index: 1.1.1.3.4.2.2
comment: The parameter minVehicleImpedance is applicable for track circuits.
severity: Warning
message: minVehicleImpedance (1.1.1.3.4.2.2):The Train Detection System {$this} ({?tdsLabel}), has a 'track circuit' type that makes the minVehicleImpedance parameter applicable. This error is due to not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?tdsLabel WHERE { $this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/10> . OPTIONAL{$this rdfs:label ?tdsLabel} . FILTER NOT EXISTS {$this era:minVehicleImpedance ?value} . FILTER NOT EXISTS {$this era:notYetAvailable era:minVehicleImpedance} . }

MinVehicleImpedanceVoltages
type: PropertyShape
affected property: minVehicleImpedanceVoltages
affected class: MinVehicleImpedance
scope: local
comment: Indication of the voltage system valid for the minimal impedance value (track circuits).
path: minVehicleImpedanceVoltages
node kind: IRI
max count: 1
min count: 1
severity: Violation
message: minVehicleImpedanceVoltages: The MinVehicleImpedance has a minVehicleImpedanceVoltage that must be an IRI. This error may be due to not having a value, having more than one value or having a value that is not an IRI.

MinVehicleImpedanceVoltagesSKOS
type: SPARQLConstraint
affected property: minVehicleImpedanceVoltages
affected class: MinVehicleImpedance
scope: local
comment: Indication of the voltage system valid for the minimal impedance value (track circuits).
severity: Violation
message: minVehicleImpedanceVoltages: The minVehicleImpedance {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/energy-supply-systems/EnergySupplySystems.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:minVehicleImpedanceVoltages ?concept . era:minVehicleImpedanceVoltages era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

MinVehicleImpedanceVoltagesApplicability
type: SPARQLConstraint
affected property: minVehicleImpedanceVoltages
affected class: MinVehicleImpedance
scope: local
comment: The parameter minVehicleImpedanceVoltages is applicable for track circuits.
rinf index: 1.2.1.1.3.2.2
rinf index: 1.1.1.3.4.2.2
severity: Warning
message: minVehicleImpedanceVoltages (1.1.1.3.4.2.2, 1.2.1.1.3.2.2):The Train Detection System {$this} ({?clsLabel}), has a 'track circuit' type that makes the minVehicleImpedanceVoltages parameter applicable. This error is due to {?minVehicleImpedance} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/10>; era:minVehicleImpedance ?minVehicleImpedance. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {?minVehicleImpedance era:minVehicleImpedanceVoltages ?value} . }

MinVehicleInputCapacitance
type: PropertyShape
affected property: minVehicleInputCapacitance
affected class: MinVehicleImpedance
scope: local
comment: For the selected DC voltage: [CCCC], as input capacitance [CCCC](Cin).
path: minVehicleInputCapacitance
datatype: double
min count: 1
max count: 1
severity: Violation
message: minVehicleInputCapacitance: Each MinVehicleImpedance must define the minVehicleInputCapacitance. This error may be due to not having a value, having more than one value or having a value that is not a double (real) number.

MinVehicleInputCapacitanceApplicability
type: SPARQLConstraint
affected property: minVehicleInputCapacitance
affected class: MinVehicleImpedance
scope: local
comment: The parameter minVehicleInputCapacitance is applicable for track circuits.
rinf index: 1.2.1.1.3.2.2
rinf index: 1.1.1.3.4.2.2
severity: Warning
message: minVehicleInputCapacitance (1.1.1.3.4.2.2, 1.2.1.1.3.2.2):The Train Detection System {$this} ({?clsLabel}), has a 'track circuit' type that makes the minVehicleInputCapacitance parameter applicable. This error is due to {?minVehicleImpedance} not having a value for such a parameter.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/10>; era:minVehicleImpedance ?minVehicleImpedance. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {?minVehicleImpedance era:minVehicleInputCapacitance ?value} . }

MinVehicleInputImpedance
type: PropertyShape
affected property: minVehicleInputImpedance
affected class: MinVehicleImpedance
scope: local
comment: For the selected DC voltage: [ZZZZ], as input impedance [ZZZZ](Zin).
path: minVehicleInputImpedance
datatype: double
min count: 1
max count: 1
severity: Violation
message: minVehicleInputImpedance: Each MinVehicleImpedance must define the minVehicleInputImpedance. This error may be due to not having a value, having more than one value or having a value that is not a double (real) number.

MinVehicleInputImpedanceApplicability
type: SPARQLConstraint
affected property: minVehicleInputImpedance
affected class: MinVehicleImpedance
scope: local
comment: The parameter minVehicleInputImpedance is applicable for track circuits.
rinf index: 1.2.1.1.3.2.2
rinf index: 1.1.1.3.4.2.2
severity: Warning
message: minVehicleInputImpedance (1.1.1.3.4.2.2, 1.2.1.1.3.2.2):The Train Detection System {$this} ({?clsLabel}), has a 'track circuit' type that makes the minVehicleInputImpedance parameter applicable. This error is due to {?minVehicleImpedance} not having a value for such a parameter.
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:trainDetectionSystemType <http://data.europa.eu/949/concepts/train-detection/rinf/10>; era:minVehicleImpedance ?minVehicleImpedance. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {?minVehicleImpedance era:minVehicleInputImpedance ?value} . }

TunnelIdentification
type: PropertyShape
affected property: tunnelIdentification
affected class: Tunnel
scope: local
comment: Unique tunnel identification or unique number within Member State.
rinf index: 1.1.1.1.8.2
rinf index: 1.2.1.0.5.2
rinf index: 1.2.2.0.5.2
path: tunnelIdentification
min count: 1
max count: 1
datatype: string
severity: Warning
message: tunnelIdentification (1.1.1.1.8.2, 1.2.1.0.5.2, 1.2.2.0.5.2): Each Tunnel can be referred with only one identification. This error may be due to having a Tunnel with no identification, with more than one identification or with an identification that is not a character string.

VerificationSRT
type: PropertyShape
affected property: verificationSRT
affected class: Tunnel
scope: local
comment: Unique number for EC declarations following format requirements specified in the 'Document about practical arrangements for transmitting interoperability documents'
rinf index: 1.1.1.1.8.5
rinf index: 1.2.1.0.5.3
rinf index: 1.2.2.0.5.3
path: verificationSRT
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: verificationSRT (1.1.1.1.8.5, 1.2.1.0.5.3, 1.2.2.0.5.3): Each Tunnel may have one or more verificationSRT following this pattern country code/national registration number/year between 1900 and 2100/progressive counter. This error may be due to having a value that does not follow the pattern or that is not a character string.

DemonstrationSRT
type: PropertyShape
affected property: demonstrationSRT
affected class: Tunnel
scope: local
comment: Unique number for EI declarations following the same format requirements as specified in the 'Document about practical arrangements for transmitting interoperability documents'
rinf index: 1.1.1.1.8.6
rinf index: 1.2.1.0.5.4
rinf index: 1.2.2.0.5.4
path: demonstrationSRT
datatype: string
pattern: ^[A-Z]{2}\/.{14}\/(19[0-9][0-9]|20[0-9][0-9]|2100)\/[0-9]{6}$
severity: Violation
message: demonstrationSRT (1.1.1.1.8.6, 1.2.1.0.5.4, 1.2.2.0.5.4): Each Tunnel may have one or more demonstrationSRT following this pattern country code/national registration number/year between 1900 and 2100/progressive counter. This error may be due to having a value that does not follow the pattern or that is not a character string.

LengthOfTunnel
type: PropertyShape
affected property: lengthOfTunnel
affected class: Tunnel
scope: local
comment: Length of a tunnel in metres from entrance portal to exit portal.
rinf index: 1.1.1.1.8.7
rinf index: 1.2.1.0.5.5
rinf index: 1.2.2.0.5.5
path: lengthOfTunnel
max count: 1
datatype: double
severity: Warning
message: length (1.1.1.1.8.7, 1.2.1.0.5.5, 1.2.2.0.5.5): A Tunnel must have at most one length declaration. This error may be due to having a tunnel with more than one length or to having a value that is not a double (real) number.

CrossSectionAreaT
type: PropertyShape
affected property: crossSectionArea
affected class: Tunnel
scope: local
comment: Smallest cross section area in square metres of the tunnel.
rinf index: 1.1.1.1.8.8
path: crossSectionArea
max count: 1
datatype: integer
severity: Violation
message: crossSectionArea (1.1.1.1.8.8): A Tunnel can have at most one crossSectionArea. This error may be due to having a tunnel with more than one crossSectionArea or having a value that is not an integer number.

CrossSectionAreaApplicability
type: SPARQLConstraint
affected property: crossSectionArea
affected class: Tunnel
scope: local
comment: Y (applicable) if is speed of the line equal or greater than 200km/h.
rinf index: 1.1.1.1.8.8.8
severity: Violation
message: crossSectionArea (1.1.1.1.8.8): The Tunnel {$this} ({?label}) has a maximum permitted speed of {?tunnelSpeed} Km/h . For any tunnel with a speed of the line equal or greater than 200km/h the crossSectionArea parameter is applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:maximumPermittedSpeed ?tunnelSpeed . OPTIONAL{$this rdfs:label ?label} . FILTER (?tunnelSpeed >= 200). FILTER NOT EXISTS {$this era:crossSectionArea ?value} . }

ComplianceInfTsiP
type: PropertyShape
affected property: complianceInfTsi
affected class: Tunnel
scope: local
comment: Compliance of the tunnel with INF TSI at the maximum permitted speed.
rinf index: 1.1.1.1.8.8.1
path: complianceInfTsi
max count: 1
datatype: boolean
severity: Violation
message: complianceInfTsi (1.1.1.1.8.8.1): A Tunnel can have at most one complianceInfTsi. This error may be due to having a tunnel with more than one complianceInfTsi or having a value type different than Y/N (boolean).

ComplianceInfTsiApplicability
type: SPARQLConstraint
affected property: complianceInfTsi
affected class: Tunnel
scope: local
comment: Y (applicable) if is speed of the line equal or greater than 200km/h.
rinf index: 1.1.1.1.8.8.1
severity: Violation
message: complianceInfTsi (1.1.1.1.8.9, 1.2.1.0.5.6, 1.2.2.0.5.6): The Tunnel {$this} ({?label}) has a maximum permitted speed of {?tunnelSpeed} Km/h . For any tunnel with a speed of the line equal or greater than 200km/h the complianceInfTsi parameter is applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:maximumPermittedSpeed ?tunnelSpeed . OPTIONAL{$this rdfs:label ?label} . FILTER (?tunnelSpeed >= 200). FILTER NOT EXISTS {$this era:complianceInfTsi ?value} . }

TunnelDocRef
type: PropertyShape
affected property: tunnelDocRef
affected class: Tunnel
scope: local
comment: Electronic document available from the IM stored by the Agency with precise description of the clearance gauge and geometry of the tunnel
rinf index: 1.1.1.1.8.8.2
path: tunnelDocRef
class: Document
severity: Violation
message: tunnelDocRef (1.1.1.1.8.8.2): A Tunnel has a tunnelDocRef with precise description of the clearance gauge and geometry of the tunnel, and it must be a Document. This error a due to having a value that is not an instance of Document

HasEmergencyPlan
type: PropertyShape
affected property: hasEmergencyPlan
affected class: Tunnel
scope: local
comment: Indication whether emergency plan exists.
rinf index: 1.1.1.1.8.9
rinf index: 1.2.1.0.5.6
rinf index: 1.2.2.0.5.6
path: hasEmergencyPlan
max count: 1
datatype: boolean
severity: Violation
message: hasEmergencyPlan (1.1.1.1.8.9, 1.2.1.0.5.6, 1.2.2.0.5.6): A Tunnel has an indication about the existence of an emergency plan. This error may be due to having a tunnel with more than one value for hasEmergencyPlan or having a value type different than Y/N (boolean).

HasEmergencyPlanApplicability
type: SPARQLConstraint
affected property: hasEmergencyPlan
affected class: Tunnel
scope: local
comment: Applicable for tunnels longer than 1 km.
rinf index: 1.1.1.1.8.9
rinf index: 1.2.1.0.5.6
rinf index: 1.2.2.0.5.6
severity: Warning
message: hasEmergencyPlan (1.1.1.1.8.9, 1.2.1.0.5.6, 1.2.2.0.5.6): The Tunnel {$this} ({?label}) has a length of {?tunnelLength} meters. Any tunnel longer than 1 Km makes the hasEmergencyPlan parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:lengthOfTunnel ?tunnelLength . OPTIONAL{$this rdfs:label ?label} . FILTER (?tunnelLength > 1000). FILTER NOT EXISTS {$this era:hasEmergencyPlan ?value} . }

HasEvacuationAndRescuePoints
type: PropertyShape
affected property: hasEvacuationAndRescuePoints
affected class: Tunnel
scope: local
comment: Indication of existence of evacuation and rescue points.
rinf index: 1.1.1.1.8.13
rinf index: 1.2.1.0.5.11
rinf index: 1.2.2.0.5.10
path: hasEvacuationAndRescuePoints
max count: 1
datatype: boolean
severity: Violation
message: hasEvacuationAndRescuePoints (1.1.1.1.8.13, 1.2.1.0.5.11, 1.2.2.0.5.10): A Tunnel has an indication about the existence of an evacuation and rescue points. This error may be due to having a tunnel with more than one value for hasEvacuationAndRescuePoints or having a value type different than Y/N (boolean).

RollingStockFireCategory
type: PropertyShape
affected property: rollingStockFireCategory
affected class: Tunnel
scope: local
comment: Categorisation on how a passenger train with a fire on board will continue to operate for a defined time period
rinf index: 1.1.1.1.8.10
rinf index: 1.2.1.0.5.7
rinf index: 1.2.2.0.5.7
path: rollingStockFireCategory
max count: 1
node kind: IRI
severity: Violation
message: rollingStockFireCategory (1.1.1.1.8.10, 1.2.1.0.5.7, 1.2.2.0.5.7): A Tunnel may have an indication about the rollingStockFireCategory. This error may be due to having a tunnel without a rollingStockFireCategory declaration or having a literal as value. This error may be due to a tunnel having more than one value or having a value that is not an IRI.

RollingStockFireCategorySKOS
type: SPARQLConstraint
affected property: rollingStockFireCategory
affected class: Tunnel
scope: local
comment: Categorisation on how a passenger train with a fire on board will continue to operate for a defined time period
rinf index: 1.1.1.1.8.10
rinf index: 1.2.1.0.5.7
rinf index: 1.2.2.0.5.7
severity: Violation
message: Categorisation on how a passenger train with a fire on board will continue to operate (1.1.1.1.8.10, 1.2.1.0.5.7, 1.2.2.0.5.7): The tunnel {$this} (label {?tunnelLabel}) has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/rolling-stock-fire/Categories.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?concept ?tunnelLabel WHERE { OPTIONAL {$this rdfs:label ?tunnelLabel} . $this era:rollingStockFireCategory ?concept . era:rollingStockFireCategory era:inSkosConceptScheme ?conceptScheme . FILTER (NOT EXISTS {?concept skos:inScheme ?conceptScheme} || REGEX(?concept, "/eratv/")) }

RollingStockFireCategoryApplicability
type: SPARQLConstraint
affected property: rollingStockFireCategory
affected class: Tunnel
scope: local
comment: Applicable for tunnels longer than 1 km.
rinf index: 1.1.1.1.8.10
rinf index: 1.2.1.0.5.7
rinf index: 1.2.2.0.5.7
severity: Warning
message: rollingStockFireCategory (1.1.1.1.8.10, 1.2.1.0.5.7, 1.2.2.0.5.7): The Tunnel {$this} ({?label}) has a length of {?tunnelLength} meters. Any tunnel longer than 1 Km makes the rollingStockFireCategory parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?tunnelLength WHERE { $this era:lengthOfTunnel ?tunnelLength . OPTIONAL{$this rdfs:label ?label} . FILTER (?tunnelLength > 1000). FILTER NOT EXISTS {$this era:rollingStockFireCategory ?value} . }

NationalRollingStockFireCategory
type: PropertyShape
affected property: nationalRollingStockFireCategory
affected class: Tunnel
scope: local
comment: Categorisation on how a passenger train with a fire on board will continue to operate for a defined time period - according to national rules if they exist.
rinf index: 1.1.1.1.8.11
rinf index: 1.2.1.0.5.8
rinf index: 1.2.2.0.5.8
path: nationalRollingStockFireCategory
max count: 1
datatype: string
severity: Violation
message: nationalRollingStockFireCategory (1.1.1.1.8.11, 1.2.1.0.5.8, 1.2.2.0.5.8): A Tunnel may have an indication about the nationalRollingStockFireCategory. This error may be due to having a tunnel with more than one value or having a value type different than string.

NationalRollingStockFireCategoryApplicability
type: SPARQLConstraint
affected property: nationalRollingStockFireCategory
affected class: Tunnel
scope: local
comment: Applicable only for tunnels when for the parameter 1.1.1.1.8.10 the option 'none' was selected and national rules exist.
rinf index: 1.1.1.1.8.11
rinf index: 1.2.1.0.5.8
rinf index: 1.2.2.0.5.8
severity: Warning
message: nationalRollingStockFireCategory (1.1.1.1.8.11, 1.2.1.0.5.8, 1.2.2.0.5.8): The Tunnel {$this} ({?clsLabel}), has a 'rolling stock fire' category that makes the nationalRollingStockFireCategory parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?clsLabel WHERE { $this era:rollingStockFireCategory <http://data.europa.eu/949/concepts/rolling-stock-fire/rinf/30>. OPTIONAL{$this rdfs:label ?clsLabel} . FILTER NOT EXISTS {$this era:nationalRollingStockFireCategory ?value} . }

DieselThermalAllowed
type: PropertyShape
affected property: dieselThermalAllowed
affected class: Tunnel
scope: local
comment: Indication whether it is allowed to use diesel or other thermal traction in the tunnel.
rinf index: 1.2.1.0.5.9
path: dieselThermalAllowed
max count: 1
datatype: boolean
severity: Violation
message: dieselThermalAllowed (1.2.1.0.5.9): A Tunnel may have an indication about the permission of thermal traction. This error may be due to having a tunnel with more than one dieselThermalAllowed declaration or having a value type different than Y/N (boolean).

StartLocation
type: PropertyShape
affected class: Tunnel
affected property: startLocation
scope: local
comment: Part of the Start of tunnel that indicates the Geographical coordinates according to the standard World Geodetic System (WGS).
path: startLocation
node kind: IRI
max count: 1
or:
  class: Geometry
or:
  class: Point
severity: Violation
message: startLocation (1.1.1.1.8.3): The Tunnel may have a start location (startLocation) reference that is a Geometry object or a Point. This error mey be due to a startLocation relationship from a Tunnel that is not a Geometry nor a Point.

EndLocation
type: PropertyShape
affected class: Tunnel
affected property: endLocation
scope: local
comment: Geographical coordinates in decimal degrees and km of the line at the end of a tunnel.
path: endLocation
node kind: IRI
max count: 1
or:
  class: Geometry
or:
  class: Point
severity: Violation
message: endLocation (1.1.1.1.8.4): The Tunnel may have an end location (endLocation) reference that is a Geometry object or a Point. This error mey be due to an endLocation relationship from a Tunnel that is not a Geometry nor a Point.

HasWalkway
type: PropertyShape
affected property: hasWalkway
affected class: Tunnel
scope: local
comment: Indication of existence of walkways.
rinf index: 1.1.1.1.8.12
rinf index: 1.2.1.0.5.10
rinf index: 1.2.2.0.5.9
path: hasWalkway
max count: 1
datatype: boolean
severity: Violation
message: hasWalkway (1.1.1.1.8.12, 1.2.1.0.5.10, 1.2.2.0.5.9): A Tunnel can have at most one hasWalkway. This error may be due to having a tunnel with more than one hasWalkway or having a value type different than Y/N (boolean).

LineReferenceTunnelEnd
type: PropertyShape
affected class: Tunnel
affected property: lineReferenceTunnelEnd
scope: local
comment: Part of the End of tunnel that indicates the km of the line at the end of a tunnel.
path: lineReferenceTunnelEnd
node kind: IRI
max count: 1
class: NetPointReference
severity: Violation
message: lineReferenceTunnelEnd (1.1.1.1.8.4): A Tunnel may have an end of tunnel location (lineReferenceTunnelEnd). This error may be due to a value that is not an IRI, more than one value being provided, or a value that is not a NetPointReference.

LineReferenceTunnelStart
type: PropertyShape
affected class: Tunnel
affected property: lineReferenceTunnelStart
scope: local
comment: Part of the Start of tunnel that indicates the km of the line at the beginning of a tunnel.
path: lineReferenceTunnelStart
node kind: IRI
max count: 1
class: NetPointReference
severity: Violation
message: lineReferenceTunnelStart (1.1.1.1.8.3): A Tunnel may have a start of tunnel location (lineReferenceTunnelStart). This error may be due to a value that is not an IRI, more than one value being provided, or a value that is not a NetPointReference.

NoDeprecatedClassInstancesShape
type: NodeShape
target subjects of: type
sparql:
  message: Instance {$this} uses deprecated class {?deprecatedClass}
  severity: Violation
  select: PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT $this ?deprecatedClass WHERE { $this rdf:type ?deprecatedClass . ?deprecatedClass owl:deprecated true . }

NoDeprecatedDomainInObjectPropertyShape
type: NodeShape
target class: ObjectProperty
sparql:
  message: ObjectProperty {$this} has deprecated class {?deprecatedClass} in its domain
  severity: Violation
  select: PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?deprecatedClass WHERE { $this rdfs:domain ?deprecatedClass . ?deprecatedClass owl:deprecated true . }

NoDeprecatedRangeInObjectPropertyShape
type: NodeShape
target class: ObjectProperty
sparql:
  message: ObjectProperty {$this} has deprecated class {?deprecatedClass} in its range
  severity: Violation
  select: PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?deprecatedClass WHERE { $this rdfs:range ?deprecatedClass . ?deprecatedClass owl:deprecated true . }

NoDeprecatedDomainInDatatypePropertyShape
type: NodeShape
target class: DatatypeProperty
sparql:
  message: DatatypeProperty {$this} has deprecated class {?deprecatedClass} in its domain
  severity: Violation
  select: PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT $this ?deprecatedClass WHERE { $this rdfs:domain ?deprecatedClass . ?deprecatedClass owl:deprecated true . }

NoDeprecatedPropertyUsageShape
type: NodeShape
target subjects of: Property
sparql:
  message: Instance {$this} uses deprecated property {?deprecatedProperty}
  severity: Violation
  select: PREFIX owl: <http://www.w3.org/2002/07/owl#> PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT $this ?deprecatedProperty WHERE { $this ?deprecatedProperty ?value . ?deprecatedProperty owl:deprecated true . FILTER(?deprecatedProperty != rdf:type) }

InstancesMustHaveTypeShape
type: NodeShape
target: SPARQLTarget
  prefixes: http://data.europa.eu/949/
  select: PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> SELECT DISTINCT $this WHERE { { $this ?p ?o . } UNION { ?s ?p $this . } FILTER(isIRI($this)) }
property:
  path: type
  min count: 1
  severity: Warning
  message: Resource must have at least one rdf:type

NotYetAvailable
type: PropertyShape
affected property: notYetAvailable
affected class: InfrastructureElement
scope: local
path: notYetAvailable
comment: Reference to a property that is not provided.
node kind: IRI
or:
  class: ObjectProperty
or:
  class: DatatypeProperty
severity: Violation
message: The value of this property is a reference to an ontology property that is not provided and it must be an IRI. The error may be due to the property not belonging to the ERA ontology or the property not being an IRI.

NotApplicable
type: PropertyShape
affected property: notApplicable
affected class: InfrastructureElement
scope: local
path: notApplicable
comment: Reference to a property that is not applicable.
node kind: IRI
or:
  class: ObjectProperty
or:
  class: DatatypeProperty
severity: Violation
message: The value of this property is a reference to an ontology property that is not provided and it must be an IRI. The error may be due to the property not belonging to the ERA ontology or the property not being an IRI.

BorderPointValidCoordinatesViaNetReference
type: SPARQLConstraint
affected class: OperationalPoint
affected property: asWKT
scope: local
comment: Coordinates of topology must be sufficiently similar (within tolerance) to the referenced border point.
severity: Violation
message: Coordinates: The OperationalPoint {$this} with label {?opLabel} is a border point that references a ReferenceBorderPoint, whose topology coordinates are too far from the referenced ReferenceBorderPoint (distance: {?distance} degrees, max allowed: 0.0001 degrees ≈ 11 meters). OP coordinates: {?opWKT} Reference coordinates: {?refWKT}
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX geo: <http://www.opengis.net/ont/geosparql#> PREFIX geof: <http://www.opengis.net/def/function/geosparql/> PREFIX uom: <http://www.opengis.net/def/uom/OGC/1.0/> SELECT DISTINCT $this ?opWKT ?refWKT ?opLabel WHERE { $this era:opType <http://data.europa.eu/949/concepts/op-types/90> ; # Border point era:referenceBorderPoint ?refBP ; era:netReference ?netRef . ?refBP a era:ReferenceBorderPoint ; geo:hasGeometry/geo:asWKT ?refWKT . ?netRef geo:hasGeometry/geo:asWKT ?opWKT . OPTIONAL { $this rdfs:label ?opLabel } # Calculate distance between the two point geometries # Using geof:distance in degrees (default for WGS84) BIND(geof:distance(?opWKT, ?refWKT, uom:degree) AS ?distance) # Allow tolerance of 0.0001 degrees (approximately 11 meters at equator) # Adjust this threshold based on your data quality requirements FILTER (?distance > 0.0001) }

PassengerFlag
type: PropertyShape
affected property: passengerFlag
affected class: PrimaryLocation
scope: local
comment: Passenger possible flag.
path: passengerFlag
datatype: boolean
max count: 1
severity: Violation
message: passengerFlag : The PrimaryLocation may have a passengerFlag value that is a boolean. This error may be due to the Primary Location having a value that is not a boolean or more than one value for this property.

TenClassificationPreDeprecationWarning
type: SPARQLConstraint
affected property: tenClassification
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Warning that tentNetworkLevel is to be preferred over the tenClassification.
severity: Warning
message: tenClassification (Warning): The track or subset with common characteristics {$this} uses the property 'tenClassification'. Please use 'tentNetworkLevel' and 'typeOfTraffic' with the respective SKOS concepts instead.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> SELECT $this WHERE { $this era:tenClassification ?value . }

LocalRulesOrRestrictionsDocApplicability
type: SPARQLConstraint
affected property: localRulesOrRestrictionsDoc
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
affected class: OperationalPoint
scope: local
comment: Only applicable when localRulesOrRestrictions is true.
rinf index: 1.1.1.4.2
rinf index: 1.2.3.2
severity: Violation
message: localRulesOrRestrictionsDoc (1.1.1.4.2, 1.2.3.2): The track, subset with common characteristics or operational point {$this} ({?label}), has 'localRulesOrRestrictions' value 'true' which makes the localRulesOrRestrictionsDoc parameter applicable. This error is due to {$this} not having a value for such a parameter.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> SELECT DISTINCT $this ?label WHERE { $this era:localRulesOrRestrictions true. OPTIONAL{$this rdfs:label ?label} . FILTER NOT EXISTS {$this era:localRulesOrRestrictionsDoc ?value} . }

FreightCorridor
type: PropertyShape
affected property: freightCorridor
affected class: RunningTrack
scope: local
comment: Indication whether the line is designated to a Railway Freight Corridor
rinf index: 1.1.1.1.2.3
rinf index: 1.2.1.0.2.3
path: freightCorridor
class: Concept
node kind: IRI
severity: Violation
message: freightCorridor (1.1.1.1.2.3, 1.2.1.0.2.3): Each track or subset with common characteristics may have an indication whether the line is designated to a Railway Freight Corridor that is an IRI. This error is due to having a value that is not an IRI.

FreightCorridorPreDeprecationWarning
type: SPARQLConstraint
affected property: freightCorridor
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Warning that europeanTransportCorridor is to be preferred over the freightCorridor.
severity: Warning
message: freightCorridor (Warning): The track or subset with common characteristics {$this} uses the property 'freightCorridor'. Please use 'europeanTransportCorridor' with the respective SKOS concepts instead.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> SELECT $this WHERE { $this era:freightCorridor ?value . }

TentNetworkLevel
type: PropertyShape
affected property: tentNetworkLevel
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Classification of the element according to its role in the Trans-European Transport Network (TEN-T)
path: tentNetworkLevel
node kind: IRI
class: Concept
severity: Violation
message: tentNetworkLevel: Each track or subset with common characteristics may have a classification according to its role in the Trans-European Transport Network (TEN-T) that is an IRI and a SKOS concept. This error is due to having a value that is not an IRI or not a SKOS concept.

TentNetworkLevelSKOS
type: SPARQLConstraint
affected property: tentNetworkLevel
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Classification of the element according to its role in the Trans-European Transport Network (TEN-T)
severity: Violation
message: Part of TEN-T: The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/ten-t-parts/TENTParts.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:tentNetworkLevel ?concept . era:tentNetworkLevel era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

TypeOfTraffic
type: PropertyShape
affected property: typeOfTraffic
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Classification of the type of traffic carried on the railway line
path: typeOfTraffic
node kind: IRI
class: Concept
severity: Violation
message: typeOfTraffic: Each track or subset with common characteristics may have a classification of the type of traffic carried on the railway line that is an IRI and a SKOS concept. This error is due to having a value that is not an IRI or not a SKOS concept.

TypeOfTrafficSKOS
type: SPARQLConstraint
affected property: typeOfTraffic
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Classification of the type of traffic carried on the railway line
severity: Violation
message: Type of traffic: The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/traffic-types/TrafficTypes.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:typeOfTraffic ?concept . era:typeOfTraffic era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

EuropeanTransportCorridor
type: PropertyShape
affected property: europeanTransportCorridor
affected class: RunningTrack
scope: local
comment: Indication of which European Transport Corridor the railway line belongs to
path: europeanTransportCorridor
node kind: IRI
class: Concept
severity: Violation
message: europeanTransportCorridor: Each track or subset with common characteristics may have an indication of which European Transport Corridor the railway line belongs to that is an IRI and a SKOS concept. This error is due to having a value that is not an IRI or not a SKOS concept.

EuropeanTransportCorridorSKOS
type: SPARQLConstraint
affected property: europeanTransportCorridor
affected class: RunningTrack
scope: local
comment: Indication of which European Transport Corridor the railway line belongs to
severity: Violation
message: European transport corridor: The track or subset with common characteristics {$this} has a value {?concept} that is not one of the predefined values and cannot be converted into a SKOS concept on this list: http://data.europa.eu/949/concepts/european-transport-corridors/EuropeanTransportCorridors.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:europeanTransportCorridor ?concept . era:europeanTransportCorridor era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS{ ?concept skos:inScheme ?conceptScheme . } }

LinesideDistanceIndicationCCS
type: PropertyShape
affected property: linesideDistanceIndication
affected class: CommonCharacteristicsSubset
scope: local
comment: Indication of types of appearance of track lineside distance indications.
path: linesideDistanceIndication
class: LinesideDistanceIndication
max count: 1
rinf index: 1.1.1.0.0.3
node kind: IRI
severity: Violation
message: linesideDistanceIndication (1.1.1.0.0.3) : The common characteristics subset may have at most one value of a lineside distance indication that must be an instance of LinesideDistanceIndication. This error may be due to the subset having more than one value or having a value that is not an instance of the class LinesideDistanceIndication.

LinesideDistanceIndicationRT
type: PropertyShape
affected property: linesideDistanceIndication
affected class: RunningTrack
scope: local
comment: Indication of types of appearance of track lineside distance indications.
path: linesideDistanceIndication
class: LinesideDistanceIndication
min count: 1
max count: 1
rinf index: 1.1.1.0.0.3
node kind: IRI
severity: Violation
message: linesideDistanceIndication (1.1.1.0.0.3) : The track must have exactly one value of a lineside distance indication that must be an instance of LinesideDistanceIndication. This error may be due to the track having no value, having more than one value or having a value that is not an instance of the class LinesideDistanceIndication.

PermitUseReflectivePlates
type: PropertyShape
affected property: permitUseReflectivePlates
affected class: RunningTrack
affected class: CommonCharacteristicsSubset
scope: local
comment: Sections where it is permitted to use reflective plates on rail freight corridors, with a view to prioritise current bottlenecks. Specific case for Belgium, France, Italy, Portugal and Spain until 1.1.2026.
rinf index: 1.1.1.1.7.12
path: permitUseReflectivePlates
datatype: boolean
has value: true
severity: Violation
message: permitUseReflectivePlates (1.1.1.1.7.12): The value, if it exists, must the a boolean 'true'. This error is due to the track or subset with common characteristics having a value that is either 'false' or not a boolean.

MaxPermittedTrainLength
type: PropertyShape
affected property: maxPermittedTrainLength
affected class: RunningTrack
scope: local
comment: Maximum train length permitted on the track.
path: maxPermittedTrainLength
max count: 1
datatype: double
min inclusive: 0
severity: Violation
message: maxPermittedTrainLength: The track must have at most one maximum train length value that is a double (real) number greater than or equal to 0. This error may be due to the track having more than one value, a negative value, or a value that is not a double (real) number.

MaxPermittedTrainLengthApplicability
type: SPARQLConstraint
affected property: maxPermittedTrainLength
affected class: RunningTrack
scope: local
comment: Maximum train length permitted on the track is mandatory for tracks belonging to freight corridors.
severity: Warning
message: maxPermittedTrainLength: This error is due to the track {?trackLabel} belonging to a freight corridor, violating the rule: Maximum train length is mandatory for tracks that are part of freight corridors.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT DISTINCT $this ?trackLabel WHERE { $this a era:RunningTrack . OPTIONAL {$this rdfs:label ?trackLabel} . { $this era:partOfTENT ?tenT . ?tenT era:typeOfTraffic <http://data.europa.eu/949/concepts/traffic-types/02> . } UNION { $this era:freightCorridor ?freightCorridor . } FILTER NOT EXISTS { $this era:maxPermittedTrainLength ?mtl } }

SpecialAreaType
type: PropertyShape
affected property: specialAreaType
affected class: SpecialArea
scope: local
comment: Indicates the special area or location types such as safe areas and restricted area types.
rinf index: 1.1.0.0.1.1
path: specialAreaType
class: Concept
node kind: IRI
severity: Violation
message: specialAreaType (1.1.0.0.1.1): The special area type must be a valid IRI from the SpecialAreaTypes concept scheme.

SpecialAreaTypeSKOS
type: SPARQLConstraint
affected property: specialAreaType
affected class: SpecialArea
scope: local
comment: Validates that the special area type is from the correct SKOS concept scheme.
rinf index: 1.1.0.0.1.1
message: specialAreaType (1.1.0.0.1.1): The value {$concept} for special area type must be from the SpecialAreaTypes concept scheme.
prefixes: http://data.europa.eu/949/
select: PREFIX era: <http://data.europa.eu/949/> PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT $this ?concept WHERE { $this era:specialAreaType ?concept . era:specialAreaType era:inSkosConceptScheme ?conceptScheme . FILTER NOT EXISTS { ?concept skos:inScheme ?conceptScheme } }

SubsidiaryLocationCode
type: PropertyShape
affected class: SubsidiaryLocation
affected property: subsidiaryLocationCode
scope: local
comment: Subsidiary location code.
path: subsidiaryLocationCode
datatype: string
min length: 1
max length: 10
max count: 1
severity: Violation
message: subsidiaryLocationCode: An instance of subsidiary location may have a value for subsidiary location code. This error may be due to having more than one value or a length grather than 10

InXSDDate
type: PropertyShape
affected property: inXSDDate
affected class: Instant
scope: local
comment: Position of an instant, expressed using xsd:date.
path: inXSDDate
datatype: date
severity: Violation
message: time:inXSDDate: The instant position must be expressed as an xsd:date.

InXSDDateTimeStamp
type: PropertyShape
affected property: inXSDDateTimeStamp
affected class: Instant
scope: local
comment: Position of an instant, expressed using xsd:dateTimeStamp.
path: inXSDDateTimeStamp
datatype: dateTimeStamp
severity: Violation
message: time:inXSDDateTimeStamp: The instant position must be expressed as an xsd:dateTimeStamp.

InXSDgYear
type: PropertyShape
affected property: inXSDgYear
affected class: Instant
scope: local
comment: Position of an instant, expressed using xsd:gYear.
path: inXSDgYear
datatype: gYear
severity: Violation
message: time:inXSDgYear: The instant position must be expressed as an xsd:gYear.

InXSDgYearMonth
type: PropertyShape
affected property: inXSDgYearMonth
affected class: Instant
scope: local
comment: Position of an instant, expressed using xsd:gYearMonth.
path: inXSDgYearMonth
datatype: gYearMonth
severity: Violation
message: time:inXSDgYearMonth: The instant position must be expressed as an xsd:gYearMonth.

InDateTime
type: PropertyShape
affected property: inDateTime
affected class: Instant
scope: local
comment: Position of an instant, expressed using a structured description.
path: inDateTime
class: GeneralDateTimeDescription
node kind: BlankNodeOrIRI
severity: Violation
message: time:inDateTime: The instant position must be a time:GeneralDateTimeDescription.

InTimePosition
type: PropertyShape
affected property: inTimePosition
affected class: Instant
scope: local
comment: Position of a time instant expressed as a TimePosition.
path: inTimePosition
class: TimePosition
node kind: BlankNodeOrIRI
severity: Violation
message: time:inTimePosition: The instant position must be a time:TimePosition.

InTemporalPosition
type: PropertyShape
affected property: inTemporalPosition
affected class: Instant
scope: local
comment: Position of a time instant.
path: inTemporalPosition
class: TemporalPosition
node kind: BlankNodeOrIRI
severity: Violation
message: time:inTemporalPosition: The instant position must be a time:TemporalPosition.

Days
type: PropertyShape
affected property: days
affected class: TemporalDuration
scope: local
comment: Length of, or element of the length of, a temporal extent expressed in days.
path: days
datatype: decimal
severity: Violation
message: time:days: The days duration must be expressed as a decimal number (xsd:decimal).

Months
type: PropertyShape
affected property: months
affected class: TemporalDuration
scope: local
comment: Length of, or element of the length of, a temporal extent expressed in months.
path: months
datatype: decimal
severity: Violation
message: time:months: The months duration must be expressed as a decimal number (xsd:decimal).
note: In the Gregorian calendar the length of the month is not fixed. Therefore, a value like '2.5 months' cannot be exactly compared with a similar duration expressed in terms of weeks or days.

Weeks
type: PropertyShape
affected property: weeks
affected class: TemporalDuration
scope: local
comment: Length of, or element of the length of, a temporal extent expressed in weeks.
path: weeks
datatype: decimal
severity: Violation
message: time:weeks: The weeks duration must be expressed as a decimal number (xsd:decimal).

Years
type: PropertyShape
affected property: years
affected class: TemporalDuration
scope: local
comment: Length of, or element of the length of, a temporal extent expressed in years.
path: years
datatype: decimal
severity: Violation
message: time:years: The years duration must be expressed as a decimal number (xsd:decimal).