!! SIA405_Elektrizitaet_2012_2_d.ili INTERLIS 2.3; CONTRACTED MODEL SIA405_Elektrizitaet_2012 (de) AT "http://www.sia.ch/405" VERSION "26.5.2012" = !! CONTRACT ISSUED BY VSE; IMPORTS UNQUALIFIED INTERLIS; !! importiert INTERLIS 2 Basisunits IMPORTS Units; IMPORTS Base; IMPORTS SIA405_Base; !! Copyright 2011 - 2012 SIA und VSE !! Die Nutzung dieser INTERLIS-Datei ist lizenzpflichtig! !! Änderungen und Ergänzungen dürfen zum Eigengebrauch getätigt werden. !! Sie müssen innerhalb der Datei so dokumentiert sein, dass sichtbar wird, !! welche Änderungen getätigt wurden (Einfügen von INTERLIS Kommentar). !! Die Originalmodelldatei SIA405_Elektrizitaet_2012_2.ili und darauf basierende !! abgeänderte Versionen dürfen nicht weiterverkauft werden. !! Die Weitergabe der Originaldatei (als Ganzes oder Teile davon) ist nur !! zusammen mit dem Erwerb einer Lizenz beim sia (www.sia.ch) durch den Empfänger erlaubt. !! Geprueft mit Compiler Version 4.4.3 vom 4.1.2012 !! Anpassungen Stefan Burckhardt / SIA 405 Kommission !! Änderungen aus SIA 405 2012 !! 26.1.2012 Anpassung auf INTERLIS 2.3. statt 2.2. !! 26.1.2012 Anpassung View auf Modell 2012 base~SIA405_Gas_2012.SIA405_Gas. !! 26.11.2012 Anpassung Modelldateiname SIA405_Gas_2012_2_d.ili !! 26.1.2012 Anpassung auf neue Variante von SIA405_Base.Status - Erweiterung Basiswerte im Medium, hierarchische Modellierung !! 26.1.2012 CLASS als Vererbung von SIA405_BaseClass !! 26.1.2012 Damit auch Letzte_Aenderung rausgenommen, weil neu geerbt !! 26.1.2012 Fehlerkorrekturen Version 2004: DatumEingabe: INTERLIS.INTERLIS.INTERLIS_1_DATE; -> einmal INTERLIS. zuviel !! 26.1.2012 Attribut Eigentuemer bei TrenchVertex (Trasseknoten) statt nur bei Anlage !! 26.1.2012 Attribut Eigentuemer bei Ankerstrebe ergänzt !! 5.4.2012 Attribut Eigentuemer neu Eigentuemer: SIA405_Base.OrganisationBezeichnung; !! 5.4.2012 Breite geerbt von SIA405_Base, eingeschränkt auf 4000 mm, darüber als Fläche abbilden !! 23.5.2012 OBJ_ID: TEXT*16 !! neu OID (STANDARDOID) zusätzlich redundant als Attributwert modelliert in SIA405_Base.ili (siehe SIA 405 Merkblatt 2015, Kapitel 2.3.8) !! 23.5.2012 neu UNIQUE OBJ_ID !! 23.5.2012 OBJ_ID bei Edge DOMAIN !! Breite = 0.00 .. 100000.00 [Units.cm]; TrasseTyp = ( unterirdisch, oberirdisch ); AnlageTyp = ( Station, Kabine ); Status EXTENDS SIA405_Base.Status = ( !! Betriebs- und Planungszustand. neu 2010: Erweiterungen dazu in den einzelnen Medien definieren !! 23.1.2012 Anpassung auf neue Variante von SIA405_Base.Status - Erweiterung Basiswerte im Medium, hierarchische Modellierung ausser_Betrieb ( !! fasst ausser_Betrieb und folgende Werte zusammen ausser_Betrieb, Reserve ), in_Betrieb ( in_Betrieb, provisorisch ), tot, unbekannt, weitere ( !! fasst folgende Werte zusammen Berechnungsvariante, geplant, Projekt ) ); FUNCTION LocStartPoint (Linie:Base.Polyline): Base.LKoord // Coordinate of the first point of the POLYLINE attribute Route //; FUNCTION LocEndPoint (Linie:Base.Polyline): Base.LKoord // Coordinate of the last point of the POLYLINE attribute Route //; FUNCTION InnerPointOf (Pos:Base.LKoord; Coverage:Base.Surface): BOOLEAN // TRUE if Pos is inner point of Coverage, ELSE FALSE //; TOPIC SIA405_Elektrizitaet_LK = STRUCTURE Metaattribute EXTENDS SIA405_Base.Metaattribute = DatumEingabe: INTERLIS.INTERLIS_1_DATE; BenutzerEingabe: TEXT*12; DatumAendern: INTERLIS.INTERLIS_1_DATE; BenutzerAendern: TEXT*12; END Metaattribute; !! CLASS Objekt (ABSTRACT) = CLASS Objekt (ABSTRACT) EXTENDS SIA405_Base.SIA405_BaseClass = ATTRIBUTE !! DatumEingabe: INTERLIS.INTERLIS.INTERLIS_1_DATE; !! DatumEingabe: INTERLIS.INTERLIS_1_DATE; !! BenutzerEingabe: TEXT*12; !! DatumAendern: INTERLIS.INTERLIS.INTERLIS_1_DATE; !! BenutzerAendern: TEXT*12; Bemerkung: TEXT*255; Metaattribute (EXTENDED): Metaattribute; END Objekt; CLASS Vertex (ABSTRACT) EXTENDS Objekt = END Vertex; ASSOCIATION Edge (ABSTRACT) = FromVertex -- {1} Vertex; ToVertex -- {1} Vertex; !! DatumEingabe: INTERLIS.INTERLIS.INTERLIS_1_DATE; !! DatumEingabe: INTERLIS.INTERLIS_1_DATE; !! BenutzerEingabe: TEXT*12; !! DatumAendern: INTERLIS.INTERLIS.INTERLIS_1_DATE; -> Letzte_Aenderung !! BenutzerAendern: TEXT*12; ATTRIBUTE OBJ_ID: TEXT*16; !! neu 23.5.2012 OID (STANDARDOID) zusätzlich redundant als Attribut modelliert (siehe SIA 405 Merkblatt 2015, Kapitel 2.3. Bemerkung: TEXT*255; Metaattribute: Metaattribute; MANDATORY CONSTRAINT FromVertex != ToVertex; UNIQUE OBJ_ID; !! neu 23.5.2012 END Edge; CLASS TrenchVertex (ABSTRACT) EXTENDS Vertex = !! !! Trasseknoten !! Status: MANDATORY SIA405_Base.Status; Status: MANDATORY Status; Lagebestimmung: MANDATORY SIA405_Base.Genauigkeit; SymbolPos: MANDATORY Base.LKoord; SymbolOri: MANDATORY Base.Orientierung; Flaeche: Base.Surface; !! neu 26.1.2012 Fehlerkorrektur 2004 Anpassung Objektkatalog - für alle Subklassen !! Eigentuemer: TEXT*64; Eigentuemer: SIA405_Base.OrganisationBezeichnung; !! CONSTRAINT kommentiert da nicht vom Compiler akzeptiert !! MANDATORY CONSTRAINT DEFINED (Coverage) -> InnerPointOf (Symbol,Coverage); END TrenchVertex; CLASS TrenchVertexText EXTENDS SIA405_Base.SIA405_TextPos = END TrenchVertexText; ASSOCIATION TrenchVertexText_TextAssoc = TrenchVertexRef -<#> {1} TrenchVertex; TrenchVertexTextRef -- {0 .. *} TrenchVertexText; END TrenchVertexText_TextAssoc; ASSOCIATION TrenchEdge (ABSTRACT) EXTENDS Edge = !! Trassekante FromVertex (EXTENDED) -- {1} TrenchVertex; ToVertex (EXTENDED) -- {1} TrenchVertex; !! Status: MANDATORY SIA405_Base.Status; Status: MANDATORY Status; Lagebestimmung: MANDATORY SIA405_Base.Genauigkeit; Linie: MANDATORY Base.Polyline; Flaeche: Base.Surface; !! Trasseflaeche !! CONSTRAINT kommentiert da nicht vom Compiler akzeptiert !!MANDATORY CONSTRAINT !! ( (LocStartPoint (Route) == FromVertex.Symbol) AND !! (LocEndPoint (Route) == ToVertex.Symbol) ) OR !! ( (LocStartPoint (Route) == ToVertex.Symbol) AND !! (LocEndPoint (Route) == FromVertex.Symbol) ) ; END TrenchEdge; CLASS TrenchEdgeText EXTENDS SIA405_Base.SIA405_TextPos = END TrenchEdgeText; ASSOCIATION TrenchEdgeText_TextAssoc = TrenchEdgeRef -<#> {1} TrenchEdge; TrenchEdgeTextRef -- {0 .. *} TrenchEdgeText; END TrenchEdgeText_TextAssoc; CLASS OeffentlicherVerbraucher EXTENDS TrenchVertex = END OeffentlicherVerbraucher; CLASS Anlage EXTENDS TrenchVertex = AnlageTyp: MANDATORY AnlageTyp; Name: MANDATORY TEXT*64; !! 26.1.2012 Fehlerkorrektur 2004 Anpassung Objektkatalog - in Superklasse TrenchVertex verschoben !! Eigentuemer: TEXT*64; END Anlage; CLASS Schacht EXTENDS TrenchVertex = !! neu 26.1.2012 Fehlerkorrektur Version 2004, Angleichung an Objektkatalog Schachttyp: ( rund, rechteckig, spezial ); END Schacht; CLASS Tragwerk EXTENDS TrenchVertex = END Tragwerk; CLASS TrasseMuffe EXTENDS TrenchVertex = END TrasseMuffe; CLASS VirtuellerTrasseKnoten EXTENDS TrenchVertex = END VirtuellerTrasseKnoten; CLASS AnkerStrebe EXTENDS Objekt = Status: MANDATORY SIA405_Base.Status; Lagebestimmung: MANDATORY SIA405_Base.Genauigkeit; Linie: Base.Polyline; !! neu 26.1.2012 Fehlerkorrektur 2004 Anpassung Objektkatalog !! Eigentuemer: TEXT*64; Eigentuemer: SIA405_Base.OrganisationBezeichnung; END AnkerStrebe; ASSOCIATION AnkerStrebeTragwerk_Assoc = TragwerkRef -<#> {1} Tragwerk; AnkerStrebeRef -- {0 .. *} AnkerStrebe; END AnkerStrebeTragwerk_Assoc; ASSOCIATION Trasse EXTENDS TrenchEdge = TrasseTyp: MANDATORY TrasseTyp; !! 5.4.2012 Harmonisierung Medien !! Breite: Breite; Breite: SIA405_Base.Breite; END Trasse; END SIA405_Elektrizitaet_LK; !! END SIA405_Elektrizitaet_2004. END SIA405_Elektrizitaet_2012.