Open ltzur opened 2 years ago
<IliRepository09.ModelName_>
<value>Units.ili</value>
<value>BS_Basis_KGDM_V1_0_LV95</value>
</IliRepository09.ModelName_>
<IliRepository09.ModelName_>
<value>Units.ili</value>
</IliRepository09.ModelName_>
<IliRepository09.ModelName_>
<value>BS_Basis_KGDM_V1_0_LV95</value>
</IliRepository09.ModelName_>
Das unterschiedliche Verhalten rührt daher, dass bei --check-repo-ilis
gegen das XML-Schema geprüft wird:
https://github.com/claeis/ili2c/blob/5807305be7818bf22277ee50164a2b7f50dfc08d/src/main/java/ch/interlis/ili2c/CheckReposIlis.java#L93
Warum weiss ich nicht. Vermutung: Die Funktionalität gab es vor ilivalidator (z.B. https://github.com/claeis/ili2c/commit/3e6df821c793fce077914c13d59e1f88754d428c#diff-4d51d7b150b25ad699eddeabf22900047eb68b40d416a0a3118f3133017ace39 von 2015)
@Itzur Wobei im konkreten Fall auch der Modellname Units.ili falsch ist, oder? Sollte doch nur Units sein.
@edigonzales Du hast natürlich recht mit dem XML-Schema, aber dieser Sachverhalt könnte auch bei "normalen" Transferdaten auftauchen und sollte vom ilivalidator reklamiert werden.
Zu units.ili: Ja, das ist definitiv falsch (semantisch aber nicht syntaktisch). Damit meine ich, dass gemäss Modell IliRepository09-20120220.ili der Eintrag einfach als TEXT definiert ist, somit ist Units.ili syntaktisch korrekt, wenn man aber den Kommentar zu diesem Attribut liest, muss es einem Eintrag im IMPORTS- und/oder TRANSLATION OF-Statement des Modells entsprechen und dort sind dann definitiv nur noch echte INTERLIS-Namen (bestehend aus Buchstaben, Ziffern und Unterstriche) erlaubt.
Folgende Sequenz aus einer Transferdatei wird nicht beanstandet:
Die korrekte Codierung wäre:
Hinweis: Wenn man das ganze Repository mit dem Compiler prüft wird der Fehler in der .log-Datei aufgeführt.
«ilimodels.xml:108:28:cvc-complex-type.2.4.d: Ungültiger Content wurde beginnend mit Element 'value' gefunden. An dieser Stelle wird kein untergeordnetes Element erwartet.»