INTERLIS 2.3; /** Model for showing ORM. */ !!@ technicalContact=stefan.ziegler@bd.so.ch/peter.staub@gl.ch !!@ furtherInformation=- !!@ IDGeoIV=- MODEL Buildings_V2 (en) AT "mailto:stefan.ziegler@bd.so.ch" VERSION "2015-11-03" = TOPIC Buildings = DOMAIN Coord2 = COORD 480000.000 .. 850000.000, 70000.000 .. 310000.000; Roof_type = ( shed, saddle, hip, flat ); STRUCTURE Address = House_number : MANDATORY TEXT*20; Street_name : MANDATORY TEXT*255; RegBL_EGID : 1 .. 999999999; END Address; CLASS Administration = Department_name : MANDATORY TEXT*255; END Administration; CLASS Janitor = Name : MANDATORY TEXT*255; END Janitor; CLASS Building (ABSTRACT) = Storeys : MANDATORY 1 .. 999; Roof : Roof_type; Addresses : BAG {0..*} OF Buildings_V2.Buildings.Address; Geometry : MANDATORY SURFACE WITH (ARCS,STRAIGHTS) VERTEX Buildings_V2.Buildings.Coord2 WITHOUT OVERLAPS>0.02; END Building; CLASS Administrative_building EXTENDS Building = END Administrative_building; CLASS Apartments_building EXTENDS Building = Apartments : MANDATORY 1 .. 9999; END Apartments_building; ASSOCIATION Building_Janitor = Person -- {0..*} Janitor; Building -- {0..*} Building; Starting_date : MANDATORY INTERLIS.XMLTime; END Building_Janitor; ASSOCIATION Admin_building_Department = Department -- {0..1} Administration; Admin_building -- {0..*} Administrative_building; END Admin_building_Department; END Buildings; END Buildings_V2.