3D City Database Software

Free Software Download

All software and documentation is available in the Download section.

Software Project Page

Visit our GitHub Page for details, further material, the GitHub repository, etc. Get access to the Wiki, and report bugs.

Docker for 3DCityDB

The 3DCityDB is also available as Docker images. Find out more.

citygml4j - The Open Source Java API for CityGML

citygml4j is an open source Java class library and API for facilitating work with the OGC City Geography Markup Language (CityGML). citygml4j makes it easy to read, process, and write CityGML datasets, and to develop CityGML-aware software applications.

citygml4j binds the XML Schema definitions of CityGML to a well-defined Java object model. CityGML instance documents are deserialized into a tree of corresponding Java objects representing the content and organization of the instance document. This XML binding approach allows Java developers to incorporate CityGML data and processing functions in Java applications without having to know XML or low-level XML processing APIs. Instead of thinking about parsing XML data, developers can focus on the business logic and work with well-defined CityGML objects. After processing the CityGML data, the Java content tree can be easily serialized back into a CityGML instance document.

Follow citygml4j on GitHub: https://github.com/citygml4j

Key Features

  • Full support for CityGML version 2.0.0 and 1.0.0 (read-only support for version 0.4.0)
  • Support for CityGML specific subset of GML 3.1.1
  • Support for the eXtensible Address Language (xAL)
  • Support for user-defined CityGML Application Domain Extensions (ADE)

How to use citygml4j

  • Download the citygml4j library from the Downloads section
  • Make sure you are using a Java JRE or JDK version 1.7 or higher
  • Put the citygml4j library on your classpath
  • Put all third-party libraries provided in the subfolder lib on the classpath
  • See code examples in the samples subfolder for getting started
  • You have found a bug or want to request a new feature? Please use the GitHub issue tracker


citygml4j is free software under the Apache License, Version 2.0.