Also. Ich hab es jetzt noch getestet. Ich habe das deutsche Modell als 2.3 und 2.4:
INTERLIS 2.3;
MODEL Gebaeudeinventar_V1 (de)
AT "http://modelbaker.ch"
VERSION "2024-08-08" =
IMPORTS GeometryCHLV95_V1;
[...]
bzw.
INTERLIS 2.4;
MODEL Gebaeudeinventar_V2 (de)
AT "http://modelbaker.ch"
VERSION "2024-08-08" =
IMPORTS GeometryCHLV95_V2;
[...]
Und die Übersetzungen:
INTERLIS 2.3;
MODEL InventaireBatiments_V1 (fr)
AT "http://modelbaker.ch"
VERSION "2024-09-24"
TRANSLATION OF Gebaeudeinventar_V1 ["2024-08-08"] =
IMPORTS GeometryCHLV95_V1;
[...]
bzw.
INTERLIS 2.4;
MODEL InventaireBatiments_V2 (fr)
AT "http://modelbaker.ch"
VERSION "2024-09-24"
TRANSLATION OF Gebaeudeinventar_V2 ["2024-08-08"] =
IMPORTS GeometryCHLV95_V2;
[...]
Ich importiere mit ili2gpkg die französischen Modelle:
java -jar /home/dave/dev/opengisch/QgisModelBakerLibrary/modelbaker/iliwrapper/bin/ili2gpkg-5.3.1/ili2gpkg-5.3.1.jar --schemaimport --dbfile /home/dave/qgis-projects/translation-interlis/invtest23.gpkg --smart2Inheritance --createNlsTab --createMetaInfo --models InventaireBatiments_V1 /home/dave/dev/opengisch/teaching-and-talks/teaching-modelbaker-course/data/Translation/InventaireBatiments_V1.ili
bzw.
java -jar /home/dave/dev/opengisch/QgisModelBakerLibrary/modelbaker/iliwrapper/bin/ili2gpkg-5.3.1/ili2gpkg-5.3.1.jar --schemaimport --dbfile /home/dave/qgis-projects/translation-interlis/invtest24.gpkg --smart2Inheritance --createNlsTab --createMetaInfo --models InventaireBatiments_V2 /home/dave/dev/opengisch/teaching-and-talks/teaching-modelbaker-course/data/Translation/InventaireBatiments_V2.ili
Und exportiere wieder, wobei ich hier explizit als --exportModel
das französische Modell angebe (dazu musste ich das Kommando manuell bearbeiten - Model Baker bietet das übersetzte Modell beim Export nicht im GUI an):
java -jar /home/dave/dev/opengisch/QgisModelBakerLibrary/modelbaker/iliwrapper/bin/ili2gpkg-5.3.1/ili2gpkg-5.3.1.jar --dbfile /home/dave/qgis-projects/translation-interlis/invtest23.gpkg --export --disableValidation --exportModels InventaireBatiments_V1 --models Gebaeudeinventar_V1 --iliMetaAttrs NULL /home/dave/qgis-projects/translation-interlis/invtest23.xtf
bzw.
java -jar /home/dave/dev/opengisch/QgisModelBakerLibrary/modelbaker/iliwrapper/bin/ili2gpkg-5.3.1/ili2gpkg-5.3.1.jar --dbfile /home/dave/qgis-projects/translation-interlis/invtest24.gpkg --export --disableValidation --exportModels InventaireBatiments_V2 --models Gebaeudeinventar_V2 --iliMetaAttrs NULL /home/dave/qgis-projects/translation-interlis/invtest24.xtf
Und das Resultat ist:
<?xml version="1.0" encoding="UTF-8"?><TRANSFER xmlns="http://www.interlis.ch/INTERLIS2.3">
<HEADERSECTION SENDER="ili2gpkg-5.3.1-f0afad5e9490e4458bc64826cc8f403aef706816" VERSION="2.3"><MODELS><MODEL NAME="InventaireBatiments_V1" VERSION="2024-09-24" URI="http://modelbaker.ch"></MODEL></MODELS></HEADERSECTION>
<DATASECTION>
<InventaireBatiments_V1.Construction BID="Gebaeudeinventar_V1.Bauwerk">
<InventaireBatiments_V1.Construction.Batiment TID="d30e0fb7-a357-4438-ad5d-465bf0e5b085"><EGID>213</EGID><CantonIdentifiant>ZH</CantonIdentifiant><Coordonnees><COORD><C1>2453924.088</C1><C2>1218700.107</C2></COORD></Coordonnees><PeriodeDeConstruction>1900</PeriodeDeConstruction><AbriDeProtection>false</AbriDeProtection></InventaireBatiments_V1.Construction.Batiment>
</InventaireBatiments_V1.Construction>
</DATASECTION>
</TRANSFER>
bzw.
<?xml version="1.0" encoding="UTF-8"?><ili:transfer xmlns:ili="http://www.interlis.ch/xtf/2.4/INTERLIS" xmlns:geom="http://www.interlis.ch/geometry/1.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:InventaireBatiments_V2="http://www.interlis.ch/xtf/2.4/InventaireBatiments_V2">
<ili:headersection><ili:models><ili:model>InventaireBatiments_V2</ili:model></ili:models><ili:sender>ili2gpkg-5.3.1-f0afad5e9490e4458bc64826cc8f403aef706816</ili:sender></ili:headersection>
<ili:datasection>
<InventaireBatiments_V2:Construction ili:bid="Gebaeudeinventar_V2.Bauwerk">
<InventaireBatiments_V2:Batiment ili:tid="dfc6a7b4-03aa-44f2-96df-7cd1ff1dda4e"><InventaireBatiments_V2:EGID>123</InventaireBatiments_V2:EGID><InventaireBatiments_V2:CantonIdentifiant>ZH</InventaireBatiments_V2:CantonIdentifiant><InventaireBatiments_V2:Coordonnees><geom:coord><geom:c1>2281659.871</geom:c1><geom:c2>1237807.403</geom:c2></geom:coord></InventaireBatiments_V2:Coordonnees><InventaireBatiments_V2:PeriodeDeConstruction>1990</InventaireBatiments_V2:PeriodeDeConstruction><InventaireBatiments_V2:AbriDeProtection>false</InventaireBatiments_V2:AbriDeProtection>
</InventaireBatiments_V2:Batiment>
</ili:datasection>
</ili:transfer>
beides übersetzt…
Fazit:
ili2db generiert das XTF mit 2.4 nach wie vor übersetzt, wenn man den Parameter --exportModel
ensprechend setzt. Da könnte man sagen, dass ili2db dies falsch macht, vorausgesetzt es möchte sich streng an die Spezifikation halten und sich nicht auf die Benutzer:innen verlassen, dass diese auch die Parameter nicht absichtlich „falsch“ setzen.