CO:dc:identifier

From railML 2 Wiki
Jump to navigation Jump to search


dc:identifier
 


Scheme description / Schemenbeschreibung

Position of dc:identifier in the XML-Tree / Position von dc:identifier im XML-Baum

Multiplicity / Anzahl

[1..1]

Semantics / Bedeutung

Dublin Core definition
"An unambiguous reference to the resource within a given context."
Dublin Core description
"Recommended best practice is to identify the resource by means of a string conforming to a formal identification system."
railML® semantics
This may be used for identifying the data set (railML® file) independently from the XML file internal id attribute in the <railml> element.

The element <dc:identifier> is intended to contain a compatibility number as a simple integer value. This number only changes if the interpretation of an already existing value (attribute or element) changes after its first release (mostly following of an error correction). A reading software should check this value against a certain expected value - otherwise it risks that the data fields do no more contain the expected contents.

For an example, an attribute for speed values could contain speeds in km per hour. This confesses to be not conform to railML®. To provide railML® conformity, this attribute would have to be changed to meters per second - without to be renamed. In this case <dc:identifier> would be increased by one to avoid that reading software reading it as kph not knowing this change.

The element <dc:identifier> will not be changed if new data are added to a scheme. This is the main difference to dc:format. It is expected that <dc:identifier> changes very seldom compared to dc:format.

Das Element <dc:identifier> soll eine Kompatibilitätsnummer als einfachen Integer-Wert enthalten. Diese Nummer wird nur dann geändert, wenn ein bestehender Datenwert (Attribut oder Element) nachträglich uminterpretiert wird (z. B. in Folge einer Fehlerkorrektur). Ein lesendes Programm sollte dieses Attribut auf exakt den erwarteten Wert prüfen – sonst läuft es Gefahr, dass die auszuwertenden Datenfelder nicht mehr den erwarteten Inhalt enthalten.

Beispielsweise könnte ein Geschwindigkeitsfeld bis zu einem bestimmten Zeitpunkt die Geschwindigkeit in km/h enthalten. Es sei angenommen, dass sich das nachträglich als nicht railML®-konform herausstellte. Um die railML®-Konformität wiederherzustellen, müsste des Geschwindigkeitsfeld nachträglich – ohne umbenannt zu werden – auf die Einheit m/s umgestellt werden. In diesem Falle würde <dc:identifier> um eins weitergezählt werden, um lesende, nicht aktualisierte Programme davon abzuhalten, den neuen Wert als km/h einzulesen.

Das Element <dc:identifier> wird nicht aktualisiert, wenn neue Daten hinzukommen, was es von <dc:format> unterscheidet. Es wird erwartet, dass sich <dc:identifier> im Gegensatz zu <dc:format> nur sehr selten ändert.

Attributes of dc:identifier / Attribute von dc:identifier

  • 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).
    The usage of xml:lang does not make any sense in the context of an identifier.

Syntactic Constraints / Syntaktische Beschränkungen

The Element <dc:identifier> may occur once.

Best practice & Examples / Empfohlene Anwendung & Beispiele

   <dc:identifier>1</dc:identifier>

see also railML® recommendation and example for usage of DC elements (external link, 2015-05-08, pdf, German and English, visited on 2018-03-27; by Dirk Bräuer, iRFP Dresden)

Notes / Anmerkungen

None.

Open issues / Offene Punkte/Pendenzen

Not yet described. / Noch nicht beschrieben.