Guten Tag,
leider habe ich keine Berechtigung, einen Anhang hochzuladen, daher hier die Fehlermeldung:
…
Info: ilifile <C:\Users\tdco006.ilicache\models.geo.admin.ch\V_D\DMAV_Gebaeudeadressen_V1_1.ili>
Info: ilifile <C:\Users\tdco006.ilicache\models.geo.admin.ch\V_D\DMAVTYM_Alles_V1_1.ili>
Info: assume unknown external objects
Info: validate simple boundaries
Exception in thread „main“ java.lang.IllegalArgumentException: unexpected Class ch.interlis.ili2c.metamodel.Expression$Inequality
at ch.ehi.ilishaper.IliGenerator.containsRefsWithSkippedElements(IliGenerator.java:323)
at ch.ehi.ilishaper.IliGenerator.containsRefsWithSkippedElements(IliGenerator.java:251)
at ch.ehi.ilishaper.IliGenerator.containsRefsWithSkippedElements(IliGenerator.java:195)
at ch.ehi.ilishaper.IliGenerator.collectSkipElements_Helper(IliGenerator.java:110)
at ch.ehi.ilishaper.IliGenerator.collectSkipElements_Helper(IliGenerator.java:118)
at ch.ehi.ilishaper.IliGenerator.collectSkipElements_Helper(IliGenerator.java:118)
at ch.ehi.ilishaper.IliGenerator.collectSkipElements_Helper(IliGenerator.java:118)
at ch.ehi.ilishaper.IliGenerator.collectSkipElements(IliGenerator.java:80)
at ch.ehi.ilishaper.XtfShaper.(XtfShaper.java:84)
at ch.ehi.ilishaper.DeriveData.deriveData(DeriveData.java:149)
at ch.ehi.ilishaper.Main.main(Main.java:163)
ich glaube, dass ilishaper für das Splitten eines DMAV_alles.xtf nicht funktionieren wird. Die Fehlermeldung ist aber tatsächlich ein Fehler. Im Gebäudeadressen-Modell gibt es diesen Constraint:
MANDATORY CONSTRAINT CH121701: (Lokalisation->Nummerierungsprinzip!=#keineNummern) OR NOT(DEFINED(Gebaeudeeingang->Hausnummer)); END LokalisationGebaeudeeingang;
Dort gibt es ein „!=“. Das entspricht „ch.interlis.ili2c.metamodel.Expression$Inequality“ aus der Fehlermeldung. Die Behandlung von „Expression.Inequality“ ist meines Erachtens vergessen gegangen in ilishaper. Darum kommt dann die Fehlermeldung. Aber auch wenn das gefixed ist, glaube ich, dass es nicht funktionieren wird mit ilishaper.
„fosnr“ ist die BFS-Nummer. Wird nur für die Filenamen verwendet, die entstehen. Der Splitter erstellt aus einer „Alles“-Datei einzelne XTF-Dateien pro Modell.