IS:dc:identifier

From wiki.railML.org
Jump to: navigation, search

dc:identifier
 


Scheme description / Schemenbeschreibung / Description du schéma

Position of dc:identifier in the XML-Tree / Position von dc:identifier im XML-Baum / position de dc:identifier dans l’aborescence XML

  • Children: None

Multiplicity / Anzahl / Multiplicité

[1..1]

Semantics / Bedeutung / Sémantique

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 <infrastructure> 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 / Attributs de 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 / Contraintes syntactiques

The Element <dc:identifier> may occur once.

Best practice & Examples / Empfohlene Anwendung & Beispiele / Bonnes pratiques & exemples

   <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 / Notes

None.

Open issues / Offene Punkte/Pedenzen / Questions ouvertes

Not yet described. / Noch nicht beschrieben. / Pas encore décrit.