| ... | ... | @@ -52,7 +52,7 @@ To integrate different spatial datasets in a single CityGML document, a correct |
|
|
|
# **CityGML 2.0 Building Data Model**
|
|
|
|
|
|
|
|
The CityGML building data model (simplified excerpt shown below as a UML diagram) defines the geometric and semantic properties to represent a building object in its different LODs. A building object is either a building (Building) or a building part
|
|
|
|
(BuildingPart). A building can consist of any number of building parts; these in turn can contain other building parts. In principle, a building object in CityGML can be broken down into many hierarchically linked building parts representing real world building construction. The common properties of both Building and BuildPart classes are gathered in the AbstractBuilding superclass, which can be modeled with MultiSurface or a Solid geometry. The semantic properties for a BoundarySurface modeled with a MultiSurface geometry are defined beginning from LOD2. For example, semantic properties of RoofSurface, WallSurface, GroundSurface, and ClosureSurface are added in LoD2. From LOD3, in addition to LoD2 the wall and roof surfaces can also have semantic properties of door and window openings. For LOD4, in addition to LOD3 the semantic properties of a Room bounded by FloorSurface, CeilingSurface, InteriorWallSurface can also be added.
|
|
|
|
(BuildingPart). A building can consist of any number of building parts; these in turn can contain other building parts. In principle, a building object in CityGML can be broken down into many hierarchically linked building parts representing real world building construction. The common properties of both Building and BuildPart classes are gathered in the AbstractBuilding superclass, which can be modeled with MultiSurface or a Solid geometry. The semantic properties for a BoundarySurface modeled with a MultiSurface geometry are defined beginning from LOD2 with a property of boundedBy. For example, semantic properties of RoofSurface, WallSurface, GroundSurface, and ClosureSurface are added in LoD2. From LOD3, in addition to LoD2 the wall and roof surfaces can also have semantic properties of door and window openings. For LOD4, in addition to LOD3 the semantic properties of a Room bounded by FloorSurface, CeilingSurface, InteriorWallSurface can also be added.
|
|
|
|
|
|
|
|
The CityGML standard also defines attributes for every CityObject. The standard defines two types of attributes: Schema attributes and generic attributes. Schema attributes are part of the data model for each thematic module. The CityGML building data model defines schema attributes such as building class, function, yearOfConstruction, yearOfDemolition, measuredHeight, storeysAboveGround etc. Values of certain schema attributes for example building class, function, usage, roof types must be defined as a code of a valid XML code list. A sample code list of all the schema attributes which must be defined as a code is available [here](https://www.sig3d.org/codelists/citygml/2.0/building/2.0/). Custom or external code list based on individual study areas can also be developed and used. Generic attributes are defined by the user to store additional information in a city object. There is no restriction in the number or the names of the generic attributes, as long as they conform to the XML syntactic rules.
|
|
|
|
|
| ... | ... | @@ -75,10 +75,12 @@ CityGML 3.0 revises the LOD concept, which now allows representing the interior |
|
|
|

|
|
|
|
**Representation of CityGML 3.0 Building in LOD 0 (Left) and LOD2 (Right) with interiors**[^1]
|
|
|
|
|
|
|
|
Concerning the data model changes in CityGML 3.0
|
|
|
|
CityGML 3.0 also revising the data model of Building modules. New super(abstract) classes are introduced to inprove interoperability with other standardized data models such as IFC. First _AbstractConstruction_ class as subclass of _AbstractOccupiedSpace_ is introduced which is associated with the different thematic surfaces (previously boundary surfaces in CityGML 2.0). CityObjects such as buildings, bridges, and tunnels, are defined as subclasses of the class _AbstractConstruction_. Furthermore, a new feature type AbstractConstructiveElement is introduced and corresponding subclasses for example BuildingConstructiveElement is defined to allow easy mapping of constructive ements such as IfcWall, IfcBeam, IfcSlab etc. from BIM data sets modeled in IFC standard. Another new class _AbstractBuildingSubdivision_ which is modeled as a subclass of _AbstractLogicalSpace_ is introduced to model BuildingUnit and Storey for representing real world building units (e.g apartments) and building storeys. Class _AbstractBoundarySurface_ from CityGML 2.0 is now revised as _AbstractThematicSurface_ have two subclass of AbstractConstruction and FillingSurface with a property of boundary. Doors and Windows which were elements of AbstractOpening class in CityGML 2.0 are represented as filling elements in CityGML 3.0 in addition to the classes WindowSurface and DoorSurface introduced to represent filling surfaces. Similarly GroundSurface, RoofSurface, WallSurface, ClosureSurface etc. are modeled as ConstructionSurface in CityGML 3.0. A simplified excerpt of CityGML 3.0 building data model is shown below as a UML diagram
|
|
|
|
|
|
|
|

|
|
|
|
|
|
|
|
As mentioned before, CityGML 3.0 is a recent development and thus has a limited support with exisitng softwares. A free tool to convert CitGML 2.0 datasets to CityGML 3.0 is available [here](https://github.com/tum-gis/citygml2-to-citygml3) as an open source release. Converted CityGML 3.0 datasets of building and other CityObjects from CityGML 2.0 is available at the [OGC CityGML 3.0 standard repository](https://github.com/opengeospatial/CityGML3.0-GML-Encoding/tree/main/resources/examples).
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
|
|
|
**Next Chapter** [chapter 2.1: Building LOD1](https://transfer.hft-stuttgart.de/gitlab/coors/3d-stadtmodelle/-/wikis/EN/CityGML-Tutorial/chapter%202:%20Building/LOD1)
|
| ... | ... | |