INTERLIS 2.3; MODEL Planungsperimeter_UR_V1 (de) AT "https://lisag.ch" VERSION "2023-10-03" = IMPORTS GeometryCHLV95_V1,CatalogueObjects_V1; DOMAIN Einzelflaeche = SURFACE WITH (ARCS,STRAIGHTS) VERTEX GeometryCHLV95_V1.Coord2 WITHOUT OVERLAPS>0.05; Planungsperimeter_Rechtsstatus = ( inKraft, AenderungOhneVorwirkung, AenderungMitVorwirkung ); DokumentTyp = ( Rechtsvorschrift, GesetzlicheGrundlage, Hinweis ); !! NEU TypeID = OID TEXT*60; TOPIC Katalog_Planungsperimeter = BASKET OID AS TypeID; CLASS Rechtsstatus_Proj EXTENDS CatalogueObjects_V1.Catalogues.Item = OID AS TypeID; Rechtsstatus : MANDATORY TEXT*80; VerfahrenTyp : MANDATORY TEXT*80; DatumVonBIS_Pflicht : MANDATORY BOOLEAN; SortNr : MANDATORY 1..99; UNIQUE Rechtsstatus,VerfahrenTyp; END Rechtsstatus_Proj; STRUCTURE Rechtsstatus_Proj_KatRef EXTENDS CatalogueObjects_V1.Catalogues.CatalogueReference = Reference (EXTENDED) : MANDATORY REFERENCE TO (EXTERNAL) Rechtsstatus_Proj; END Rechtsstatus_Proj_KatRef; END Katalog_Planungsperimeter; TOPIC Planungsperimeter = DEPENDS ON Planungsperimeter_UR_V1.Katalog_Planungsperimeter; CLASS Planungsperimeter = Auftragsnummer : MANDATORY TEXT*20; Auftragsbeschreibung : MANDATORY TEXT*100; Auftragsdatum : MANDATORY INTERLIS.XMLDate; zustaendiger_Planer : MANDATORY TEXT*50; Auftraggeber : MANDATORY TEXT*50; Rechtsstatus : MANDATORY Planungsperimeter_Rechtsstatus; Bemerkung_Status : TEXT*50; RRB_Nummer : TEXT*20; RRB_Datum : INTERLIS.XMLDate; publiziertAb : INTERLIS.XMLDate; publiziertBis : INTERLIS.XMLDate; !! sfe: Erweitert URec_DossierNr : TEXT*20; Bemerkung_Allgemein : TEXT*50; !!@ name = "Unique_Auftragsnummer" UNIQUE Auftragsnummer; !!@ name = "RRB_Nummer_nur_inKraft" !!@ ilivalid.msg_de = "Rechtsstatus '{Rechtsstatus}' | RRB_Nummer muss/darf nur bei rechtskräftigen Daten erfasst sein" MANDATORY CONSTRAINT (Rechtsstatus == #inKraft AND (DEFINED(RRB_Nummer))) OR (Rechtsstatus != #inKraft AND NOT (DEFINED(RRB_Nummer))); !!@ name = "RRB_Datum_nur_inKraft" !!@ ilivalid.msg_de = "Rechtsstatus '{Rechtsstatus}' | RRB_Datum muss/darf nur bei rechtskräftigen Daten erfasst sein" MANDATORY CONSTRAINT (Rechtsstatus == #inKraft AND (DEFINED(RRB_Datum))) OR (Rechtsstatus != #inKraft AND NOT (DEFINED(RRB_Datum))); !!@ name = "publiziertAb_nur_inKraft" !!@ ilivalid.msg_de = "Rechtsstatus '{Rechtsstatus}' | publiziertAb muss/darf nur bei rechtskräftigen Daten erfasst sein" MANDATORY CONSTRAINT (Rechtsstatus == #inKraft AND (DEFINED(publiziertAb))) OR (Rechtsstatus != #inKraft AND NOT (DEFINED(publiziertAb))); !!@ name = "URec_DossierNr_nur_inKraft" !!@ ilivalid.msg_de = "Rechtsstatus '{Rechtsstatus}' | URec_DossierNr muss/darf nur bei rechtskräftigen Daten erfasst sein" MANDATORY CONSTRAINT (Rechtsstatus == #inKraft AND (DEFINED(URec_DossierNr))) OR (Rechtsstatus != #inKraft AND NOT (DEFINED(URec_DossierNr))); END Planungsperimeter; CLASS Planungsperimeter_Geometrie = Geometrie : MANDATORY Einzelflaeche; END Planungsperimeter_Geometrie; ASSOCIATION Planungsperimeter_GeometrieObjekt = rPlanungsperimeter_Geometrie -- {1..*} Planungsperimeter_Geometrie; rObjekt -- {1} Planungsperimeter; END Planungsperimeter_GeometrieObjekt; CLASS Status_Projektiert = VerfahrensschrittNr : MANDATORY 1..99; Projstatus : MANDATORY Planungsperimeter_UR_V1.Katalog_Planungsperimeter.Rechtsstatus_Proj_KatRef; BeschlussName : MANDATORY TEXT*100; URec_DossierNr : MANDATORY TEXT*20; BeschlussNr : MANDATORY TEXT*20; BeschlussDatum : INTERLIS.XMLDate; /** bedingt obligatorische Felder * Wenn Projstatus == #oeffentliche_Auflage oder #oeffentliche_Mitwirkung, dann muss DatumVON und DatumBIS definiert sein */ DatumVON : INTERLIS.XMLDate; DatumBIS : INTERLIS.XMLDate; !! sfe: Erweitert !!@ name = "DatumVON" !!@ ilivalid.msg_de = "DatumVON nur bei öffentlicher Auflage oder öffentliche Mitwirkung abfüllen" MANDATORY CONSTRAINT (Projstatus -> Reference -> DatumVonBIS_Pflicht == #true AND (DEFINED(DatumVON))) OR (Projstatus -> Reference -> DatumVonBIS_Pflicht == #false AND NOT (DEFINED(DatumVON))); !!@ name = "DatumBIS" !!@ ilivalid.msg_de = "Status 'DatumBIS nur bei öffentlicher Auflage oder öffentliche Mitwirkung abfüllen" MANDATORY CONSTRAINT (Projstatus -> Reference -> DatumVonBIS_Pflicht == #true AND (DEFINED(DatumBIS))) OR (Projstatus -> Reference -> DatumVonBIS_Pflicht == #false AND NOT (DEFINED(DatumBIS))); UNIQUE VerfahrensschrittNr; END Status_Projektiert; ASSOCIATION StatusProjektiert_Planungsperimeter = rStatusProjektiert_von -- {0..*} Status_Projektiert; rPlanungsperimeter -- {1} Planungsperimeter; !!@ name = "StatusProjektiert_Planungsperimeter" !!@ ilivalid.msg_de = "Die Daten zum Planungsperimeter in der Klasse 'Status_Projektiert' wird nur geführt solange die Daten noch nicht inKraft sind." MANDATORY CONSTRAINT (rPlanungsperimeter->Rechtsstatus == #AenderungOhneVorwirkung) OR (rPlanungsperimeter->Rechtsstatus == #AenderungMitVorwirkung); END StatusProjektiert_Planungsperimeter; CLASS Dokument = Typ : MANDATORY DokumentTyp; Titel : MANDATORY TEXT*80; Abkuerzung : TEXT*20; OffizielleNr : TEXT*20; NurInGemeinde : 1200..1299; TextImWeb : MANDATORY URI; !! Daten via Link !! Dokument : Nutzungsplanung_V1_2.MultilingualBlob; AuszugIndex : MANDATORY -1000 .. 1000; Rechtsstatus : MANDATORY Planungsperimeter_Rechtsstatus; publiziertAb : MANDATORY INTERLIS.XMLDate; !! Als Rahmenmodell benötigen wir dies wohl -> Hinblicklich Gmd. Planungszonen publiziertBis : INTERLIS.XMLDate; END Dokument; ASSOCIATION Dokument_Planungsperimeter = rDokument -- {0..*} Dokument; rPlanungsperimeter -- {0..*} Planungsperimeter; END Dokument_Planungsperimeter; END Planungsperimeter; END Planungsperimeter_UR_V1.