LBNL Example Building 3 Model 1

Warning

This model has not been updated since the last revision of the 223P ontology, and it may not pass validation. 223P was last updated on 2025-06-24 17:37:14. The model file was last updated on 2025-03-05 23:51:24

LBNL Example Building 3 Model 1#

Example Building 3 is a real-world medium-sized office building. It is approximately 67,000 square feet in size, contains 2 floors, 27 space types, and 469 rooms. Labels have been anonymized, and are not interpretable. It uses an underfloor air distribution system with fan-powered terminal reheat coils for perimeter zones. Four roof-top units with VAV are located on the roof. The lighting system primariliy uses fluorescent luminaires and zone-based lighting controllers that communicate with user interface devices and wireless gatetways over DALI networks. The gateways collect occupancy and light sensor data over an ISM-band wireless network.

Example Building 3 Model 1 is provided by Lawrence Berkeley National Laboratory. See PNNL Example Building 3 model 2 for a different modeling approach for the same building.

Contents#

This model contains a representation of the HVAC system.

Source#

Downloads#

What are these files?
  • Turtle file (original): This is the original source Turtle file that was provided to models.open223.info, usually as the output of some model creation tool.

  • Turtle file (compiled): This is the original Turtle file with all inferred relationships and values added through SHACL inference against the 223P ontology and other dependencies. You should use this file for any further processing. It does not contain any of the ontologies.

  • Turtle file (with all imports): This is the compiled Turtle file with all imports included in the file (223P ontology, QUDT ontology, and others). This is helpful when you do not want to deal with downloading and managing ontology dependencies. It is also much larger than the compiled file.

  • JSON-LD file (original): This is the original Turtle file converted to the JSON-LD format.

Turtle is a syntax for RDF (Resource Description Framework) that is easy to read and write. It is a popular format for representing linked data. Parsers and serializers are available in many programming languages. JSON-LD is a JSON-based format for linked data that is easy to use with JavaScript and other web technologies.

Queries#

Description

Query URL

Zone/room temperature sensors

Query Link

Model Components#

Load and Validate Model#

This code uses the BuildingMOTIF library to load the 223P ontology and the model file into a temporary in-memory instance. It then validates the model against the ontology. If the model is invalid, it will print the validation report.

To run this code, you need to have Java installed on your system. If you do not have Java installed, you can remove the shacl_engine='topquadrant' parameter from the BuildingMOTIF constructor. Be warned that without the shacl_engine='topquadrant' parameter, the validation process will be slower.

from buildingmotif import BuildingMOTIF
from buildingmotif.dataclasses import Library, Model
import ontoenv
import logging

# Create a BuildingMOTIF object. If you do not have Java installed, remove the "shacl_engine" parameter
bm = BuildingMOTIF('sqlite://', shacl_engine='topquadrant', log_level=logging.ERROR)

# load 223P library. We will load a recent copy from the models.open223.info
# git repository; later, we will load this from the location of the actual standard
s223 = Library.load(ontology_graph="https://open223.info/223p.ttl")
unit = Library.load(ontology_graph="http://qudt.org/3.1.1/vocab/unit")
quantitykind = Library.load(ontology_graph="http://qudt.org/3.1.1/vocab/quantitykind")

# load the model into the BuildingMOTIF instance
model = Model.create("urn:lbnl-bdg3-1")
model.graph.parse("https://models.open223.info/lbnl-bdg3-1.ttl")

# validate the model against 223P ontology
ctx = model.validate([s223.get_shape_collection(),
                      unit.get_shape_collection(),
                      quantitykind.get_shape_collection()],
                     error_on_missing_imports=False)

# print the validation result
print(f"Model is valid: {ctx.valid}")

# if the model is invalid, print the validation report
if not ctx.valid:
    print(ctx.report_string[:1000]) # first 1000 characters of the report

# BuildingMOTIF can also interpret the report to provide recommendations on fixes
for focus_node, diffs in ctx.get_reasons_with_severity("Violation").items():
    if len(diffs) == 0:
        continue
    print(focus_node)
    for diff in diffs:
        print("  - " + diff.reason())
Model is valid: 0
@prefix ns2: <http://data.ashrae.org/standard223#> .
@prefix ns3: <http://data.ashrae.org/standard223/data/lbnl-example-2#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

[] a sh:ValidationReport ;
    sh:conforms false ;
    sh:result [ a sh:ValidationResult ;
            sh:focusNode ns3:01619 ;
            sh:resultMessage "s223: `ConnectionPoint` <http://data.ashrae.org/standard223/data/lbnl-example-2#01619> could be missing a `mapsTo` relation to a `ConnectionPoint` of <http://data.ashrae.org/standard223/data/lbnl-example-2#01613> because it is associated with a `Junction` or `Equipment` that is contained by <http://data.ashrae.org/standard223/data/lbnl-example-2#01613>." ;
            sh:resultPath ns2:mapsTo ;
            sh:resultSeverity sh:Info ;
            sh:sourceConstraint _:n9afd80dd9f6f405f99fb7c7b130c5bf8b3 ;
            sh:sourceConstraintComponent sh:SPARQLConstraintComponent ;
            sh:sourceShape <urn:well-k
http://data.ashrae.org/standard223/data/lbnl-example-2#01323
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01323 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00699
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00699 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#02437
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02437 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01434
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01434 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01064
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01064 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01546
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01546 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02847
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02847 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01955
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01955 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01360
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01360 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00743
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00743 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#00529
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00529 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#02066
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02066 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01620
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01620 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00569
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00569 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01249
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01249 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01508
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01508 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02474
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02474 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00573
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00573 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#00658
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00658 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#00610
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00610 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00784
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00784 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#02103
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02103 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00695
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00695 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01027
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01027 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02735
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02735 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01471
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01471 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00739
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00739 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02511
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02511 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01583
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01583 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01806
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01806 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00780
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00780 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01843
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01843 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02140
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02140 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01175
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01175 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01694
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01694 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02661
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02661 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02363
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02363 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01397
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01397 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02288
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02288 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02548
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02548 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01732
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01732 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00484
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00484 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01992
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01992 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02698
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02698 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01657
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01657 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01880
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01880 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02884
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02884 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00989
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00989 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02810
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02810 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01101
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01101 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01286
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01286 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00951
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00951 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02325
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02325 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02177
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02177 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02623
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02623 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02922
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02922 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00654
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00654 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00488
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00488 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#02214
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02214 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02251
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02251 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02029
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02029 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01212
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01212 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02772
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02772 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01917
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01917 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00525
  - http://data.ashrae.org/standard223/data/lbnl-example-2#00525 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#00614
  - http://data.ashrae.org/standard223#EnumerationKind-OnOff on http://data.ashrae.org/standard223/data/lbnl-example-2#00614 needs to be a http://data.ashrae.org/standard223#EnumerationKind
http://data.ashrae.org/standard223/data/lbnl-example-2#02586
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02586 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01769
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01769 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#01138
  - http://data.ashrae.org/standard223/data/lbnl-example-2#01138 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty
http://data.ashrae.org/standard223/data/lbnl-example-2#02400
  - http://data.ashrae.org/standard223/data/lbnl-example-2#02400 expected at least 1 instance(s) of ns2:EnumeratedActuatableProperty on path ns2:hasProperty