Hallo zusammen
Wir arbeiten gerade an der Überarbeitung des momentan publizierten MGDM für die Einschränkungen der Drohnen in INTERLIS 2.4.
Bei der Definition von einem klassenübergreifenden CONSTRAINT sind wir leider hängen geblieben und kommen nicht mehr weiter. Es handelt sich um folgendes:
Das Attribut startDateTime in der Klasse TimePeriod muss, falls es vorhanden ist, älter sein als das Attribut validFrom in der Klasse DatasetMetadata.
Gibt es eine Möglichkeit diesen CONSTRAINT abzubilden, oder ist dies gar nicht möglich? Wir haben es mit einer VIEW und JOIN OF wie folgt probiert :
VIEW
JOIN OF TimePeriod, DatasetMetadata; =
ATTRIBUTE
ALL OF TimePeriod;
ALL OF DatasetMetadata;
MANDATORY CONSTRAINT (startDateTime > validFrom);
END ;
(In CONSTRAINT gehen wir momentan noch davon aus, dass startDateTime und validFrom bei allen Objekten vorhanden sind, das war einfach für uns zu modellieren)
Ehrlich gesagt, sind wir hier etwas überfragt, da wir nicht wissen ob der CONSTRAINT falsch formuliert ist oder diese Art von CONSTRAINT gar nicht möglich ist.
Zumindest wird in der neusten Version vom ilivalidator keiner unserer FAIL-Cases erkannt, bzw. wir wissen nicht ob der CONSTRAINT überhaupt erkannt wird. Der Compiler zeigt zudem keinen direkten Syntax-Fehler an, aber hier wissen wir auch nicht wie aussagekräftig dies ist.
Wir sind um jede Hilfe froh.
Beste Grüsse
Giacomo und Marc