LBNL Example SMB Radiant

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 2024-10-21 09:58:46. The model file was last updated on 2024-09-12 17:10:55

LBNL Example SMB Radiant#

This is a reference model provided by LBNL of a medium office building using a radiant system. Labels have been anonymized, and may not be interpretable.

Downloads#

Queries#

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 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://github.com/open223/models.open223.info/raw/main/ontologies/223p.ttl")

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

# validate the model against 223P ontology
ctx = model.validate([s223.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 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 <urn:ex/aldnlUFo357> ;
            sh:resultMessage "s223: A ConnectionPoint must be associated with exactly one Connectable using the relation isConnectionPointOf." ;
            sh:resultPath ns2:isConnectionPointOf ;
            sh:resultSeverity sh:Violation ;
            sh:sourceConstraintComponent sh:MinCountConstraintComponent ;
            sh:sourceShape <urn:well-known/0771e390> ],
        [ a sh:ValidationResult ;
            sh:focusNode <urn:ex/Apko0TOe520> ;
            sh:resultMessage "s223: A ConnectionPoint must be associated with exactly one Connectable using the relation isConnectionPointOf." ;
            sh:resultPath ns2:isConnectionPointOf ;
            sh:resultSeverity sh:Violation ;
            sh:s
urn:ex/aldnlUFo357
  - urn:ex/aldnlUFo357 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/Pj1x4yV9368
  - urn:ex/Pj1x4yV9368 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/YKbncoJN336
  - urn:ex/YKbncoJN336 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/fVWrrgPi606
  - urn:ex/fVWrrgPi606 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/NzYF9trZ71
  - urn:ex/NzYF9trZ71 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/tGPgeyRr355
  - urn:ex/tGPgeyRr355 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/qZg3DGvk316
  - urn:ex/qZg3DGvk316 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/uCwEUFeI345
  - urn:ex/uCwEUFeI345 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/4L9brF9m219
  - urn:ex/4L9brF9m219 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/BiKiJvUX264
  - urn:ex/BiKiJvUX264 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/b5tdvVHM39
  - urn:ex/b5tdvVHM39 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/hlzlZfkY164
  - urn:ex/hlzlZfkY164 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/2ME0tCwW456
  - urn:ex/2ME0tCwW456 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/ppGOzxUO461
  - urn:ex/ppGOzxUO461 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/Apko0TOe520
  - urn:ex/Apko0TOe520 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/BfCfCErP353
  - urn:ex/BfCfCErP353 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/SBePB6sI137
  - urn:ex/SBePB6sI137 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/lvpLQvmp354
  - urn:ex/lvpLQvmp354 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/68PIcWok524
  - urn:ex/68PIcWok524 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/amTwuuDu463
  - urn:ex/amTwuuDu463 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/sKh9n6ON367
  - urn:ex/sKh9n6ON367 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/aR68jkur483
  - urn:ex/aR68jkur483 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/CsJNd2CT297
  - urn:ex/CsJNd2CT297 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/XGPv8y1i250
  - urn:ex/XGPv8y1i250 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/SrkSOnTF89
  - urn:ex/SrkSOnTF89 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/vGQfwGxo176
  - urn:ex/vGQfwGxo176 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/SWdxEIhn26
  - urn:ex/SWdxEIhn26 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/LZjshvIF340
  - urn:ex/LZjshvIF340 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/78Qbi7Fo352
  - urn:ex/78Qbi7Fo352 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/yBpJjQAV389
  - urn:ex/yBpJjQAV389 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/1JpP6zXv670
  - urn:ex/1JpP6zXv670 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/KJ4qilWW90
  - urn:ex/KJ4qilWW90 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/OATdW6VI72
  - urn:ex/OATdW6VI72 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/a4DCmbwh420
  - urn:ex/a4DCmbwh420 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/dLYt0KIT319
  - urn:ex/dLYt0KIT319 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/6bLp9flF404
  - urn:ex/6bLp9flF404 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/ICJhYnMh502
  - urn:ex/ICJhYnMh502 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/DRxxau5r601
  - urn:ex/DRxxau5r601 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/BmiW3IeK330
  - urn:ex/BmiW3IeK330 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/4fh7GlSA277
  - urn:ex/4fh7GlSA277 needs between 1 and None instances of http://data.ashrae.org/standard223#BidirectionalConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
urn:ex/AOowjS3s200
  - urn:ex/AOowjS3s200 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/ihjgobmS409
  - urn:ex/ihjgobmS409 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/uVlW5FMz445
  - urn:ex/uVlW5FMz445 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/XfllCghn64
  - urn:ex/XfllCghn64 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/kyIAgAAq325
  - urn:ex/kyIAgAAq325 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/1yoTn6BP186
  - urn:ex/1yoTn6BP186 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/7Yn4H59D273
  - urn:ex/7Yn4H59D273 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/bjwSmEDY138
  - urn:ex/bjwSmEDY138 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/z7sTel3w320
  - urn:ex/z7sTel3w320 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/LBWzUtoZ442
  - urn:ex/LBWzUtoZ442 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/pv235IR9229
  - urn:ex/pv235IR9229 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/mOefS7S2337
  - urn:ex/mOefS7S2337 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/BRYT4HS582
  - urn:ex/BRYT4HS582 needs between 1 and None instances of http://data.ashrae.org/standard223#BidirectionalConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
urn:ex/auqKqKUP540
  - urn:ex/auqKqKUP540 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/HnEWaTyu25
  - urn:ex/HnEWaTyu25 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/1KK5lI2d83
  - urn:ex/1KK5lI2d83 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/VaZzJCtS350
  - urn:ex/VaZzJCtS350 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/y62223k0107
  - urn:ex/y62223k0107 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/t0oRv7hG233
  - urn:ex/t0oRv7hG233 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/hqp0aUUN168
  - urn:ex/hqp0aUUN168 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/2GPPHY5B129
  - urn:ex/2GPPHY5B129 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/oyQ1DgZx70
  - urn:ex/oyQ1DgZx70 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/KDRab1lr370
  - urn:ex/KDRab1lr370 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/CJ1DEcTJ550
  - urn:ex/CJ1DEcTJ550 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/6xP216Xu27
  - urn:ex/6xP216Xu27 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/RsJOTyRV373
  - urn:ex/RsJOTyRV373 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/UzGWRDPZ9
  - urn:ex/UzGWRDPZ9 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/Xx7MnV9M582
  - urn:ex/Xx7MnV9M582 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/dv8t7etb101
  - urn:ex/dv8t7etb101 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf
urn:ex/mloUlnTr344
  - urn:ex/mloUlnTr344 needs between 1 and 1 instances of http://data.ashrae.org/standard223#Connectable on path http://data.ashrae.org/standard223#isConnectionPointOf