TT:blockPart

From railML 2 Wiki
Jump to navigation Jump to search


blockPart
 


Scheme description / Schemenbeschreibung

Position of blockPart in the XML-Tree / Position von blockPart im XML-Baum

Multiplicity / Anzahl

[1..∞]

Semantics / Bedeutung

The element <blockPart> contains all data, which are related to an atomic particle of a block.

In dem Element <blockPart> werden alle Informationen für einen atomaren Bestandteil eines Umlaufs (blocks) beschrieben.
 
Please, be aware of the semantic constraint(s)!

Attributes of blockPart / Attribute von blockPart

  • id: XML-file-wide unique, machine-interpretable identity, required for later referencing that element internally. For a detailed explanation see Dev:identities.
    XML-Datei-weit eindeutige, maschineninterpretierbare Identität, die für die spätere interne Referenzierung dieses Elements erforderlich ist. Für eine detaillierte Erklärung siehe Dev:identities.
  • code (introduced with version 2.1): Machine-interpretable string (e.g. an abbreviation) used for identification of the object across exchange partners, usecase specific uniqueness constraints may apply. Please see our description of the differences between id, code and human-readable identifiers.
    Maschineninterpretierbare Zeichenkette (z.B. Abkürzung), die zur Identifizierung des Objekts auch bei Austauschpartnern verwendet wird, wobei spezifische Eindeutigkeitsbeschränkungen gelten können. Bitte beachten Sie unsere Erläuterung zu den Unterschieden zwischen id, code and menschenlesbaren Kennzeichnungen.
  • name: Established, human-readable short string, giving the object a name. Not intended for machine interpretation, please see our notice on human interpretable data fields.
    Etablierte, menschenlesbare kurze Zeichenkette, die das Objekt benennt. Nicht zur maschinellen Interpretation bestimmt, siehe Hinweise zu menschenlesbaren Datenfeldern.
  • description: Human-readable, more detailed description as addition to the name. It should give additional explanations or hints to the contents of this element. Not intended for machine interpretation, please see our notice on human interpretable data fields.
    Menschenlesbare, detailliertere Beschreibung als Ergänzung zu name. Sie soll zusätzliche Erläuterungen oder Hinweise auf den Inhalt dieses Elements geben. Nicht zur maschinellen Interpretation bestimmt, siehe Hinweise zu menschenlesbaren Datenfeldern.
  • xml:lang (introduced with version 2.1): This is a unique identifier of language. It uses basically the language standard IETF BCP 47 (external link) which may be different to ISO 639-1 (external link) or ISO 639-2 (external link). For mapping hints see relation to other standards (external link).
    This defines the language used for name and description. Use <additionalName> to provide a name and/or description in other languages.
  • begin: This is usually used only if the @mission of the <blockPart> is not timetable. In this case it describes at what time an activity that is described in type by @mission starts. Please also take note of the related semantic constraint below.
  • beginDay: This is usually used only if the @mission of the <blockPart> is not timetable. In this case it describes on which day an activity that is described in type by @mission starts. With @beginDay a start after midnight can be expressed. The same rules as for <times> apply. Please also take note of the related semantic constraint below.
  • end:This is usually used only if the @mission of the <blockPart> is not timetable. In this case it describes at what time an activity that is described in type by @mission ends. Please also take note of the related semantic constraint below.
  • endDay: This is usually used only if the @mission of the <blockPart> is not timetable. In this case it describes on which day an activity that is described in type by @mission ends. With @endDay an end after midnight can be expressed. The same rules as for <times> apply. Please also take note of the related semantic constraint below.
  • startOcpRef: This refers to the id attribute of the associated <ocp> element.
    This is the ocp where the vehicle should start the current task.
  • endOcpRef: This refers to the id attribute of the associated <ocp> element.
    This is the ocp where the vehicle should terminate the current task.
  • trainPartRef: This refers to the id attribute of the associated <trainPart> element.
  • operatingPeriodRef: This refers to the id attribute of the associated <operatingPeriod> element.
    This operatingPeriod constraints the dates the current task is to be fulfilled.
  • mission: Possible values are:
  • timetable - represents a scheduled train movement that is encoded in detail in the referenced <trainPartRef>. / repräsentiert eine geplante Zugfahrt, die in dem referenzierten <trainPartRef> detailliert beschrieben ist.
  • fullRun - represents a train movement that is not further described within the railML® document. However it is known that the train is not moving empty. / stellt eine Zugfahrt dar, die im railML®-Dokument nicht weiter beschrieben wird. Es ist jedoch bekannt, dass der Zug nicht leer fährt.
  • emptyRun - represents a train movement that is not further described within the railML® document. However it is known that the train is moving empty. / stellt eine Zugfahrt dar, die im railML®-Dokument nicht weiter beschrieben wird. Es ist jedoch bekannt, dass der Zug leer fährt.
  • outOfOrder - specifies that it is a defective vehicle. For example, after an accident. spezifiziert, dass es sich um ein defektes Fahrzeug handelt. Bspw. nach einem Unfall.
  • fillIn - represents a placeholder for an indefinite vehicle working within a rostering. Platzhalter für einen unbestimmten Umlauf innerhalb eines Laufplans.
  • preheating - represents the preheating of the train/ steht für das Vorheizen/-kühlen des Zuges
  • refuel - represents a duty where the train is refueled/recharged / steht für einen Dienst, bei dem der Zug aufgetankt/geladen wird
  • shunting - represents a shunting duty/ beschreibt eine Rangierbewegung des Zuges
  • depotrun - describes a journey from or to the stabling point (usually within a node <ocp>). beschreibt eine Fahrt vom oder zum Abstellort (üblicherweise innerhalb eines Knotens <ocp>)
  • standBy - represents a stand by duty / beschreibt einen Bereitschaftsdienst, Fahrzeug ist betriebsbereit und könnte demnach den Dienst eines anderen Fahrzeugs übernehmen.
  • cleaning - specifies that the train is cleaned in this <blockPart>/ <blockPart> zur Reinigung des Zuges
  • maintenance - specifies that the <blockPart> represents a maintenance timeframe/ beschreibt, dass es sich bei dem <blockPart> um ein Wartungszeitfenster handelt
  • inspection - encodes a scheduled inspection of the train / beschreibt eine geplante Überprüfung des Zuges.
  • other:anything: Any value that does not fit any value from the previous enumeration list, fulfilling the constraint: at minimum two characters, whitespace is not allowed. Please, apply Dev:usingAny accordingly.
    Please, be aware of the semantic constraint(s)!
  • fixed: Indicates that the blockPart is fixed in its sequence of blockParts by the dispatcher/planner and shall not be object to optimization procedures.
  • runLength: Defines the distance in km to be travelled by the train for this blockPart.
  • vehicleRef: This refers to the id attribute of the associated <vehicle> element.
    This vehicle should fulfill the current task. It may supersede the referenced vehicle in <rostering>.
  • formationRef: This refers to the id attribute of the associated <formation> element.
    This formation should fulfill the current task. It may supersede the referenced formation in <rostering>.

Syntactic Constraints / Syntaktische Beschränkungen

  • id: xs:ID, required
    a string, starting with a letter (a..zA..Z) or an underscore (_),
    followed by a non-colonized and non-spaced string consisting of letters, digits, points (.), dashes (-) or underscores (_)
  • code: xs:string, optional
  • name: xs:string, optional
  • description: xs:string, optional
  • xml:lang: xs:language, language identification, optional
  • begin: xs:time; optional
  • beginDay: xs:integer; default: 0; optional; shall be lower or equal endDate if both are used; (introduced with version 2.2)
  • end: xs:time; optional, optional
  • endDay: xs:integer; default: 0; optional; shall be higher or equal beginDate if both are used; (introduced with version 2.2)
  • startOcpRef: tGenericRef (xs:IDREF); optional
  • endOcpRef: tGenericRef (xs:IDREF); optional
  • trainPartRef: tGenericRef (xs:IDREF); optional
  • operatingPeriodRef: tGenericRef (xs:IDREF); optional
  • mission: tMission (union of (restriction of xs:string, tOtherEnumerationValue), where tOtherEnumerationValue is an arbitrary string starting with 'other:' followed by at minimum two characters, white space not allowed for extending railML® enumeration lists (pattern other:\w{2,})); optional
  • fixed: xs:boolean; optional
  • runLength: tLengthKM (xs:decimal, 6 fraction digits, length value measured in kilometer); optional
  • vehicleRef: tGenericRef (xs:IDREF); optional
  • formationRef: tGenericRef (xs:IDREF); optional

Semantic Constraints / Semantische Beschränkungen

Private-cloud-icon.png Semantic Constraint "TT:001":
 
Any starting time stamp (as it may result e.g. from a combination of startDate and startTime) shall be lower or equal any ending time stamp (e.g. endDate) if both are given. Must not overlap with other validity periods.
 
Proposed on November 12th 2018
Approved on March 21st 2019
FIXME: add Link to discussion!
Please, recognize our guidelines on semantic constraints

Private-cloud-icon.png Semantic Constraint "TT:003":
 
By means of a <blockPart> it is possible to model both journeys with and without reference to a <trainPart> within a roster, as well as services without change of location (without reference to a <trainPart>). These 3 basic types are distinguished by the attribute mission. The following table presents the semantic constraints:

Mit Hilfe eines <blockPart> können innerhalb eines Umlaufplans sowohl Fahrten mit und ohne Referenz auf einen <trainPart> abgebildet werden, als auch Dienste ohne Ortsveränderung (ohne Referenz auf einen <trainPart>). Unterschieden werden diese 3 Grundtypen anhand des Attributs mission. In der folgenden folgende Tabelle werden die semantischen Abhängigkeiten gegenüber gestellt:

attributes of <blockPart>
mission trainPartRef startOcpRef / endOcpRef begin / end, beginDay / endDay runLength
trip with reference to a <trainPart> timetable mandatory redundant to referenced <trainPart>, must be empty or without contradiction to referenced <trainPart>
trip without reference to a <trainPart> fullRun, emptyRun shall not be used mandatory mandatory optional
service all other values shall not be used mandatory, startOcpRef = endOcpRef mandatory optional

 
Proposed on June 13th 2019
Approved on July 18th 2019
FIXME: add Link to discussion!
Please, recognize our guidelines on semantic constraints

Private-cloud-icon.png Semantic Constraint "TT:004":
 
vehicleRef and formationRef shall not be used within the same blockPart, since a blockPart is either one for a certain vehicle or one for a whole formation.
Es ist nur entweder vehicleRef oder formationRef anzugeben (nicht jedoch beide gleichzeitig), da es sich entweder um einen Blockpart eines Einzelfahrzeugs oder einer Fahrzeuggruppe handelt.
 
Proposed on June 20th 2019
Approved on July 18th 2019
FIXME: add Link to discussion!
Please, recognize our guidelines on semantic constraints

Best practice & Examples / Empfohlene Anwendung & Beispiele

mission

The following characteristics of <blockPart> are allowed:

  • mission=timetable
trainPartRef has to be used; the other attributes (startOcpRef, endOcpRef, begin, end and runLength) are redundant to the corresponding attributes of the respective <trainPart> as defined within the railML® file. The repetition of these attributes is optional; if they are repeated they have to be consistent.
  • mission=fullRun
  • mission=emptyRun
trainPartRef must not be used, startOcpRef, endOcpRef, begin and end have to be used.
  • A duty which is not a run:
  • mission=outOfOrder
  • mission=fillIn
  • mission=preheating
  • mission=refuel
  • mission=shunting
  • mission=depotrun
  • mission=standBy
  • mission=cleaning
  • mission=maintenance
  • mission=inspection
trainPartRef must not be used, startOcpRef, endOcpRef, begin and end have to be used, startOcpRef=endOcpRef

Es sind folgende Ausprägungen von <blockPart> vorgesehen:

  • mission=timetable
trainPartRef ist anzugeben; die übrigen Attribute (startOcpRef, endOcpRef, begin, end und runLength) sind redundant zu den gleichbedeutenden Eigenschaften der Zugteile bei deren Definition in der railML®-Datei. Das Wiederholen dieser Attribute ist optional; sofern sie wiederholt werden, müssen sie widerspruchsfrei sein.
  • mission=fullRun
  • mission=emptyRun
trainPartRef darf nicht angegeben sein, startOcpRef, endOcpRef, begin und end müssen angegeben sein.
  • Dienst, der keine Fahrt ist:
  • mission=outOfOrder
  • mission=fillIn
  • mission=preheating (Vorheizdienst)
  • mission=refuel (Auffüllen von Vorräten, Tanken usw.)
  • mission=shunting (Rangierdienst)
  • mission=depotrun
  • mission=standBy (Bereitschaftdienst)
  • mission=cleaning
  • mission=maintenance (Wartungsdienst)
  • mission=inspection
trainPartRef darf nicht angegeben sein, startOcpRef, endOcpRef, begin und end müssen angegeben sein, startOcpRef=endOcpRef

Further information

See railML®-Beispiel Umlauf aus FBS (external link, 2012-05-23, PDF, 🇩🇪, visited on 2021-06-28; by Dirk Bräuer, iRFP Dresden)

Notes / Anmerkungen

There are two ways to describe an empty run or depot run. If it is planned in all details in the timetable, it will be defined with appropriate ocpTT's in the trainPart, possibly with serviceSectionRef's if known. If it is loosely planned with time constants but not infrastructural references, it will be defined as blockPart with an appropriate mission value.

Open issues / Offene Punkte/Pendenzen

Not yet described. / Noch nicht beschrieben.