Extensions

Table of contents

  1. How to create an extension?
  2. Registry of current Extensions

CityJSON uses JSON Schemas to document and validate the data model, schemas should be seen as basically validating the syntax of a JSON document.

A CityJSON Extension is a JSON file that allows us to document how the core data model of CityJSON may be extended, and to validate CityJSON files containing new objects and/or attributes. This is conceptually akin to the Application Domain Extensions (ADEs) in CityGML; see Section 10.13 of the official CityGML documentation.

CitySON v2.0 Extension specifications

How to create an extension?

See the Extensions specifications for v2.0.1 for an overview of how the file should be structured.

This tutorial to create a noise extension guides you through the process, and explains how to validate the extension itself and datasets that uses the extension.

As a template/example, you can have a look at an Extension for CityJSON v2.0 having +GenericCityObect with a new semantic surface.

Registry of current Extensions

Data Quality
A collection of metrics to represent city model data quality
v1.0 | schema | details | Grigory Ilizirov & Sagi Dalyot

Energy Extension
Energy Extension for Space Heating Demand Calculation (basically a conversion from the KIT Energy ADE)
v1.1.0 | schema | details | Özge Tufan

Generic
Extension to handle GenericCityObject in v1.1
v2.0 | schema | CityJSON core team

Human perception of urban buildings
Integration of the visual perception of buildings as extra attributes
v0.5 | schema | details | NUS urban analytics lab

Linear Cell Complex
An extension that allows topological information of a city model to be stored as a Combinatorial Map based Linear Cell Complex
v0.2 | schema | details | 3D geoinformation TU Delft

Noise
Conversion of the CityGML Noise ADE
v1.1 | schema | details | CityJSON core team

pointcloud
Support LAS 3D point clouds for CityObjects geometries
v1.0 | schema | details | Gilles-Antoine Nys, Université Liège