XTF (2.4) Modellname/-Version + Validierung

In 2.4er-XTF wird für das Modell ein Namespace definiert und im Element <ili:model> wird der Modellname angegeben. Im Transfer ist – wenn ich das korrekt sehe – ausschliesslich der Modellname vorhanden, kein Hinweis auf die Modell-VERSION.

  • Wie kann bei der Validierung sichergestellt werden, dass das Prüfwerkzeug genau das korrekte Modell verwendet?
  • Anders herum: wäre es also denkbar, dass gemäss «Semantic Versioning» Transferdaten so lange validieren (müssten), wie ausschliesslich rückwärtskompatible Änderungen modelliert wurden (Daten zur Version 1.1.0 würden mit dem Modell 1.1.1 und 1.3.0 validieren)?
  • Was macht der ilivalidator hier genau?

Es würde für die Modellversionierung und das Change Management neue Möglichkeiten eröffnen …

… dann, in der Folge: ili2db & Co. müssten in der Lage sein, Transferdaten z.B. gemäss Modell-Version 1.1.0 in ein DB-Schema gemäss Version 1.1.1 oder 1.3.0 importieren können.

Läuft (grundsätzlich): ein simples Testmodell 1.0.0 → XTF-Daten validieren gegen das Modell 1.0.1 (formale Korrektur) und auch 1.1.0 (Minor Change). XTF-Daten 1.0.0 können in eine DB gemäss Modell 1.1.0 importiert werden!

Nun stellt sich die Herausforderung, dass der ilivalidator genau weiss, welches Modell er verwenden soll. Im Validator wird ja nur der Modellname angegeben.

Möglichkeit 1: der validator könne erweitert werden, so dass auch die Version (Inhalt des VERSION-Elements) angegeben werden kann/muss.

Möglichkeit 2: erhöhte Anforderungen an die Model Repositories, dass im gezeigten Beispiel die Modelle 1.0.0 und 1.0.1 in den Ordner \replaced\ (Konvention) verschoben werden und entsprechende precursorVersion-Informationen in ilimodels.xml erfasst werden.

Die Versionsangabe im Modell hat ausschliesslich einen dokumentatorischen Zweck. Sie für eine irgendwie geartet Modell-Wahl zu verwenden wäre also falsch (Und würde schon auf Stufe Modell nicht funktionieren, weil der IMPORT ohne Versionsangabe funktioniert).

Merci für die Klärung.
Dann würde es dabei bleiben, dass die Model Repositories hinsichtlich verschiedener Modellversionen sauber geführt werden müssen (Stichwort precursorVersion).