Profile
Back to NewsBack
GitHub Trending 4 min
Reader Mode
google/digitalbuildings: Digital Buildings (ontology and SDK) currently being used by Google internally to manage our own buildings.

google/digitalbuildings: Digital Buildings (ontology and SDK) currently being used by Google internally to manage our own buildings.

12 hours ago

Tools</a> !Ontology Validator !Node.js CI GitHub stars</a> License</a>

Digital Buildings Project

The Digital Buildings project is an open-source, Apache-licensed effort to create a uniform schema and toolset for representing structured information about buildings and building-installed equipment. A version of the Digital Buildings ontology and toolset is currently being used by Google to manage buildings in its portfolio.

The Digital Buildings project originated from the need to manage a very large and heterogeneous building portfolio in a scalable way. The project aims to enable management applications and analyses that are trivially portable between buildings. This goal is achieved through a combination of semantically-expressive abstract modeling, an easy-to-use configuration language, and robust validation tooling. Digital Buildings work has been inspired by Project Haystack and BrickSchema and maintains cross-compatibility and/or convergence as a long-term objective.

In creating the Digital Buildings project, we have considered the following:

  • Human readability
  • Machine readability and interpretation
  • Composable functionality
  • Dimensional analysis
  • Correctness validation
  • Cross-compatibility

Project Structure

This project is structured as follows:

  • An ontology that defines the parameters of the semantic data model ("Terminology box") and tools for building, validating, and associating real equipment with a specific model. It contains the following formats:
* YAML format * RDF/OWL format

  • A model instance configuration (a.k.a building configuration file) that contains a mapping between the ontology and the "raw" real-world data. Building configuration files are the "Assertion box."
  • Tools that enable the following:
* ABEL: facilitates easier building configuration construction by converting from a templatized Google Sheet to a building configuration file (and from a building configuration file back to a Google Sheet). * Explorer: allows users to explore ontology type fields and compare ontology types to each other. * Instance Validator: validates a concrete application (instance) of DBO (i.e., a building configuration file) with optional telemetry validation. * Ontology Validator: validates the ontology upon a change or an extension (currently supports YAML format only). * RDF/OWL Generator: generates an RDF version from the YAML ontology files.

Learning Modules

The learning modules provide an overview of the following key concepts:
  • The main concepts and components of the Digital Buildings Ontology
  • How to model entities and extend types in the ontology
  • The components of building configuration files
  • How to use the validation tools for ontology extensions and building configuration files

Module 1: Digital Buildings Ontology (DBO)

In this module, you'll fully explore the core modeling and organizational concepts of the DBO. These are essential concepts for data modeling and creating building configuration files.

Module 2: Data Modeling with the DBO

In this module, you'll deepen your understanding of the DBO and practice applying it. Through several hands-on activities, you'll walk through the recommended workflow for creating a building configuration file

Issues

Please post issues in the Issues section.

Discussion

Our team has created an open mailing list to discuss Google's Digital Building effort. The discussion could include general questions, standards, APIs, and more. Join the discussion here: [email protected].

Members are expected to adhere to this code of conduct: https://opensource.google.com/conduct.

How to Contribute

Please see the contribution section.

License

Copyright 2023 Google LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Publications & Talks

Chat with me