CityGML: An Open Standard for 3D City Models

By Thomas Kolbe and Sam Bacharach

Google Earth and Google’s recent acquisition of SketchUp has sparked tremendous interest in 3D city modeling. Microsoft’s recent acquisition of the 3D visualization company GeoTango suggests that Microsoft's Virtual Earth, too, will soon be providing 3D capabilities. 3D in other Web mapping services is likely to follow.

Like most virtual 3D city modeling efforts, these Web services provide only graphic or geometric models, neglecting the semantic and topological aspects of the buildings and terrain being modeled. These models can only be used for visualization purposes but not, in most cases, for thematic queries, analytical tasks or spatial data mining. Another problem with these and other city 3D modeling efforts is lack of interoperability. Web-aligned open standard geometry models for computer graphics (e.g., X3D and geospatial technologies (Geography Markup Language 3 (GML3)) are available but still relatively new and not yet widely adopted. Though their common XML foundation provides the elements needed for convergence, this convergence has not been addressed - yet. Also, in those cases where semantic and topologic aspects are considered, there are no widely used standard application schemas, though such schemas are under development, drawing on a considerable body of previous data modeling work. Without a common definition of the basic entities, attributes and relations that can be shared over different applications, those who develop and own the models find it difficult to share and maintain them.

Significant new commercial applications await the availability of such standards. As Google and Microsoft clearly understand, there is a latent demand for 3D visualization of cities. But visualization is just the tip of the iceberg. Many other applications would also benefit. There is no technical reason that these application areas could not use profiles of the same standard, if such a standard existed. Indeed, some applications of great importance to society, such as disaster management, homeland security and advancement of sustainable energy facilities, would benefit immensely from being able to immediately integrate 3D city models developed for other purposes. This will only become possible through the development and widespread use of an open 3D city model standard that is harmonized with various other standards. CityGML is intended to enable and achieve all these goals.

What is CityGML?
CityGML is a common information model for representing 3D urban objects. It defines classes and relations for the most relevant topographic objects in cities and regional models with respect to their geometric, topological, semantic and appearance properties. "City" is broadly defined to include not just built structures, but also elevation, vegetation, water bodies, “sidewalk furniture” and more. Included are generalization hierarchies between thematic classes, aggregations, relationships between objects and spatial properties.

These thematic information types go beyond graphic exchange formats and allow users to employ virtual 3D city models for sophisticated analysis tasks in different application domains such as simulation, urban data mining, facilities management, decision support and thematic inquiries.

CityGML is an open data model and XML-based format for storing and exchanging virtual 3D city models. It is implemented as an application schema of GML3, the extensible international standard for spatial data exchange developed within the Open Geospatial Consortium (OGC) and ISO TC211.

GML3, used with other OGC standards - mainly the OpenGIS Web Feature Service (WFS) Specification - provides a framework for exchange of simple and complex 3D models. However, WFS and GML3 only establish syntactic interoperability. A GML3 document needs to be structured by the definition of an application schema that is tailored to a specific application domain. In this case, the application domain is 3D city modeling and the GML3 application schema (or profile) is CityGML.

CityGML takes advantage of other open standards and its development has proceeded in careful cooperation with other groups. For example, graphic rendering of data encoded in CityGML can be accomplished using standardized computer graphics data formats like VRML, GeoVRML, X3D or Universal 3D (U3D). To ensure European acceptance, the developers of CityGML have coordinated with EuroSDR, a spatial data research organization consisting of delegates from geographic information production organizations and research centers from 18 member states in Europe, together with participants from industry and the commercial sector.

Within the OGC, discussion of CityGML takes place within the OGC CAD/GIS/3D Interoperability Working Group. CityGML will be submitted to the OGC Technical Committee, meeting in Edinburgh, Scotland during the week of June 26-29, as a candidate OpenGIS specification for review and possible adoption by the membership. The intention is for it to become an open standard and therefore to be used free of charge.

Development of CityGML began in 2002 by the members of the Special Interest Group 3D (SIG 3D) of the Geodata Infrastructure North-Rhine Westphalia (GDI NRW) initiative in Germany. The GDI NRW has been active in the OGC since 1999. The SIG 3D is an open group consisting of more than 70 companies, municipalities, and research institutions working on developing and commercially exploiting interoperable 3D models and visualization. Another product of SIG 3D’s activities is a proposed Web 3D Service (W3DS) standard, a 3D portrayal service that currently has the status of a discussion paper in the OGC (OGC Doc. No. 05-002).

Some of the entities working on and supporting CityGML are the municipalities of Berlin, Hamburg, Cologne, Düsseldorf, Recklinghausen and Leverkusen; the Ordnance Survey Great Britain; the State Mapping Agency of North-Rhine Westphalia; companies including T-Mobile, Rheinmetall Defence Electronics, Snowflake, CPA Geo-Information, GIStec and 3D Geo; and research institutions including the universities of Bonn, Potsdam, Dortmund, Applied Sciences Stuttgart, the Helmholtz Research Centre Karlsruhe, and the Fraunhofer Institute for Graphics Research in Darmstadt.

CityGML Features
CityGML represents the graphic appearance of city models and also the semantic or thematic properties, taxonomies and aggregations of digital terrain models, sites (including buildings, bridges and tunnels), vegetation, water bodies, transportation facilities, etc. The underlying model differentiates five consecutive levels of detail (LoD), where objects become more detailed with increasing LoD, both in geometry and thematic differentiation. CityGML files can - but don't have to - contain multiple representations for each object in different LoD simultaneously.

Figure 1: The five levels of detail (LoD) defined by CityGML [from "CityGML – Interoperable Access to 3D City Models," Thomas H. Kolbe, Gerhard Gröger, Lutz Plümer] (Click for larger image)

Figure 2: Urban planning application: visualizing the remodeling of the Graf-Wilhelm-Plaza in Solingen [from "CityGML - A GML3 Application Profile for virtual 3D City Models," by Dr. Thomas H. Kolbe and Dr. Gerhard Gröger, January 2005] (Click for larger image)

Figure 3: Mixing Levels of Detail in a scene. (Click for larger image)

Further developments beyond V1.0 might address dynamic features (e.g. moving objects, water tides), time and history, and possibly the incorporation of the geometric modeling principle of Constructive Solid Geometry.

What is available?
At this point, the UML diagrams, XML schema definitions, example datasets and free viewer applications are available from the CityGML homepage. Basic concepts and most of the modeling decisions are explained in a number of conference papers and presentation slides which can also be found on the website. The OGC will publish the CityGML specification document when it becomes an approved Discussion Paper.

An open source GML3 3D viewer application called Aristoteles has been developed by the Institute for Cartography and Geoinformation at the University of Bonn. It is based on Java 1.5 and Java3D. Aristoteles is not restricted to CityGML files; it can visualize arbitrary GML3 files (like the German cadastre standard ALKIS/NAS or the OS Mastermap from UK). Further information is available on the Aristoteles project homepage.

A free CityGML viewer application called LandXPlorer was developed by 3DGeo and the Hasso-Plattner-Institute (HPI) of the University of Potsdam. The LandXplorer CityGML Tool allows users to interactively view, import and export CityGML-based model data. For non-profit use and with limitations regarding the model size and the available functions, the LandXplorer CityGML Tool can be used for free. Further information and download are available.

CityGML in the OGC OWS-4 Testbed
The OGC’s main interoperability initiative this year is the fourth OGC Web Services testbed (OWS-4). OWS-4 kicked off in June and will conclude with an interoperability demonstration in the fall of 2006. OWS-4 sponsors agreed that this initiative would advance geospatial standards in the area of CAD/GIS/BIM (building information model) integration, as well as in other areas such as sensor webs, geoprocessing workflow and geospatial digital rights management.

OWS-4 is based on a fictitious scenario that will be played out in the final demonstration. The CAD/GIS/BIM use case in the scenario involves siting and planning a temporary field hospital in an emergency situation. The commander determines that a desirable potential site is an abandoned building at the local airport. Facility planners analyze the location, including consideration of access by road and helicopter. Security is a high concern.

CityGML will be rigorously exercised and perhaps extended by the OWS-4 participants. A CAD Model Server (CMS) will be created to provide access to various kinds of CAD data, such as as-built data for buildings originally in CAD files without coordinate system information, road data in civil design applications, underground utilities CAD drawings and manholes in photogrammetric, planimetric data in a CAD file.

A Web Feature Service (implementing the OGC WFS standard) will be developed to provide client programs with access to GIS site data (terrain, orthophotos, land use), accessible as GML, and to Aeronautical Information Exchange Model (AIXM) data available for a helicopter pad.

The scenario outlines a basic course of action that will put the various servers and clients through a series of operations designed to test and demonstrate the utility of CityGML.

A virtual reality constructed from diverse kinds of data representing the built environment can benefit millions of people working in a long list of industries. As bandwidth, processing and storage keep getting faster and cheaper, lowering technical and financial hurdles, it makes more and more sense for stakeholder groups to imagine how such a shared virtual reality might benefit them.

CityGML is the result of a well-organized effort to bring together related standards through careful coordination with various standards groups and user groups. After years of development, it is now in “beta” and it will be tested in OWS-4. CityGML deserves careful review by a wide range of industry groups studying geospatial data sharing, CAD/GIS interoperability, industry foundation classes (IFCs), building information models (BIMs), and workflow and business models in building-related professions.

Published Monday, July 3rd, 2006

Written by Thomas Kolbe and Sam Bacharach