(Anstoss zu diesem Beitrag gab eine Diskussion mit @SeppDorfschmid im Rahmen einer Sitzung der SOGI Fachgruppe 5)
Ausgangslage
Heute ist es so, dass man Modelle in INTERLIS 2.4 nicht mit Modellen in INTERLIS 2.3 mischen kann. Wenn ich also in einem INTERLIS 2.4-Modell eine IMPORTS-Anweisung verwende, um ein anderes Modell zu referenzieren, so muss dieses zwingend ebenfalls in INTERLIS 2.4 modelliert sein.
Sehr viele Modelle liegen heute in INTERLIS 2.3 vor.
Fragestellung
Wäre es sinnvoll, dass man in einem INTERLIS 2.4-Modell in Zukunft auch ein INTERLIS 2.3-Modell importieren könnte?
Vorteile
Es müssten nicht alle bestehenden INTERLIS 2.3-Modelle auf 2.4 gehoben werden (gemäss Change Management Richtlinien wäre dies wohl ein Major Change).
Nachteile
Ich stelle mir die Frage, wie mit den unterschiedlichen Transferformaten von ILI2.3 und ILI2.4 umgegangen werden soll und ob das zu Problemen führen könnte? Ich denke da an externe Kataloge, die in ILI2.3 vorliegen.
Ich stufe den Nutzen im Kontext „Wiederverwendung von Code“ als gering ein. Im Gegenzug eine Steigerung der Komplexität (Verständnis, Tools).
Zudem gehe ich davon aus, dass die meisten Modelle, die heute wohl importiert werden, bereits als ili2.4 vorliegen. Ich würde es sogar als leichtes Druckmittel sehen, damit ili2.4 endlich vermehrt benutzt wird.
Eventuell wäre es ein Vorteil bei Existence Contraints: Da hat man Modelle, die selbständiger sind und vielleicht hat Modell A noch keinen Bock auf ili2.4 zu wechseln. Modell B (mit dem Constraint) ist aber auf 2.4 und kann so jetzt keinen Existence Constraint mehr machen. Habe ich aber noch nicht so oft gesehen.
Die CHBase-Modelle sind alle schon als ili2.4 vorhanden. Das sind die, die am meisten importiert werden. Da also aus meiner Sicht kein Nutzen, wenn ili2.3 importiert werden kann.
Der Aufwand für die Modell-Anpassungen von ili2.3 zu ili2.4 sind IMHO minim, abgesehen von Anpassungen bei den IMPORTS. D. h. Modelle, die importiert werden sollen, können relativ einfach als ili2.4 bereitgestellt werden.
Was ich mich Frage:
Wäre ein Tool sinnvoll, um den ili2.3 > ili2.4 Update zu vereinfachen? Vielleicht gibt es schon etwas im claeis-Universum?
Soll der Modellname wirklich ändern, wenn am Modell sich nichts ändert ausser die ili-Version? Soweit ich es sehe, sollte es kein Problem geben, wenn in ili2.3 und ili2.4 gleiche Modellnamen genutzt werden.
Die Welt würde extrem viel komplizierter, wenn man das mischen könnte. In der Software aber auch aus Benutzersicht. Was ist z.B. mit indirekten IMPORTS: welche Version des zu importierenden Modells soll jeweils importiert werden? Oder gegen welche Version soll eine 2.3 Transferdatei validiert werden, wenn es das Modell auch in 2.4 gibt? Für solche Fragen kann man natürlich Regeln definieren, aber wird es damit einfacher?
Ich könnte mir Fälle vorstellen, wo man quasi ILI-2.4- und ILI-2.3-Modelle gerne „mischen“ würde: wenn in einem neuen 2.4-Datenmodell ein anderes, älteres 2.3-Modell importiert wird, um z.B. Beziehungen zu entsprechenden Objekten realisieren zu können.
Anwendungsfall: GeoIV ID 141 Grundwasseraustritte etc. importiert den Planerischen Gewässerschutz, um Beziehungen zu den Grundwasserschutzzonen realisieren zu können. Der Planerische Gewässerschutz ist ein 2.3-Modell.
Grundsätzlich möchte man das Modell für ID 141 aktuell mit ILI2.4 definieren. Man kann das aber nicht, nur weil das zu importierende Modell 2.3 ist. Das wäre nützlich, wenn man in solchen Fällen 2.3 und 2.4 „mischen“ könnte.
Meinungen dazu? Wenn sinnvoll: was müsste wo angepasst werden (Spezifikation, Tools, …)?