Example Building 1 model 1#

Example Building 1 is a simplistic, reference tiny office building consisting of a single story with 5 rooms spanning 5 space types.

This reference building was developed for and first described in the journal article “Metadata Schemas and Ontologies for Building Energy Applications: A Critical Review and Use Case Analysis”.

This example Building 1 model 1 is provided by current and former NIST staff and Pacific Northwest National Laboratory. See also Building 1 model 2 for a different modeling approach for the same building.

Schematic view#

image

Contents#

The model contains a representation of the building architecture, mechanical system, and electrical/lighting system.

Source#

The model was created using TopQuadrant TopBraid Composer Maestro Edition.

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:bdg1-1")
model.graph.parse("https://models.open223.info/bdg1-1.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 ns1: <http://qudt.org/schema/qudt/> .
@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 <http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1HeatingCoil> ;
            sh:resultMessage "Less than 1 values have shape <urn:well-known/d4c2ef55>" ;
            sh:resultPath ns2:hasConnectionPoint ;
            sh:resultSeverity sh:Violation ;
            sh:sourceConstraintComponent sh:QualifiedMinCountConstraintComponent ;
            sh:sourceShape <urn:well-known/6d0da63c> ],
        [ a sh:ValidationResult ;
            sh:focusNode <http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#MixedAirDamperActuator> ;
            sh:resultMessage "s223: Predicate ns2:commandedByProperty is not defined for instance <http://data.ashrae.org/standard223/
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUSupplyOutlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUSupplyOutlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#RoomSupply2
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#RoomSupply2 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00060
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00060 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OutsideAirDamperActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OutsideAirDamperActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#HeatingCoilValveActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#HeatingCoilValveActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00055
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00055 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2InternalConnection
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2InternalConnection needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00048
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00048 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1MotorizedDamper
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1MotorizedDamper needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1MotorizedDamper needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OAJunctionInlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OAJunctionInlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OA-to-EconDamper
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OA-to-EconDamper needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1CCT
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1CCT needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00049
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00049 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1Inlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1Inlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustToExteriorAir
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustToExteriorAir needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#PrivateOfficeInletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#PrivateOfficeInletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00056
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00056 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00056 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00015
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00015 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExhaustAirDamperActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExhaustAirDamperActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomOutletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomOutletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1InternalWire
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1InternalWire needs to be a http://data.ashrae.org/standard223#Constituent-Electricity
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1InternalWire needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00019
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00019 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Driver1
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Driver1 needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00027
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00027 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00053
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00053 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire2Intensity
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire2Intensity needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#PrivateOfficeOutletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#PrivateOfficeOutletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00016
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00016 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00016 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00051
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00051 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00051 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorInletConnectionPointPO
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorInletConnectionPointPO needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00052
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00052 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00023
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00023 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2Outlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2Outlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVSupply
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVSupply needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00037
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00037 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00013
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00013 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1HeatingCoil
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1HeatingCoil needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1HeatingCoil needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00038
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00038 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1DamperOutletCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1DamperOutletCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00047
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00047 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00047 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00061
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00061 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00061 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpenOfficeInletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpenOfficeInletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire2OnOff
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire2OnOff needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00059
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00059 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#FanOutletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#FanOutletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00018
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00018 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#FanInletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#FanInletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00058
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00058 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1OnOff
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1OnOff needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00025
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00025 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00025 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#SupplyFromExteriorAir
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#SupplyFromExteriorAir needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00009
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00009 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#MixedAirDamperActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#MixedAirDamperActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2ReheatValveActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2ReheatValveActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OAJunctionOutletToEcon
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OAJunctionOutletToEcon needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00014
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00014 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalBoilerInletCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalBoilerInletCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1InternalConnection
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1InternalConnection needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningKC
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningKC needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2MotorizedDamper
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2MotorizedDamper needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2MotorizedDamper needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OutletIntraCorridor5CP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OutletIntraCorridor5CP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OutsideAirJunction
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OutsideAirJunction needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExhaustToExteriorAir
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExhaustToExteriorAir needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustDuct
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustDuct needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire2CCT
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire2CCT needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustFan
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustFan needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomExhaustFan needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00036
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00036 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00036 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00020
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00020 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OAJunctionOutletToMin
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OAJunctionOutletToMin needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalBoiler
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalBoiler needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1Outlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1Outlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ReturnFanActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ReturnFanActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00007
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00007 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00007 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00026
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00026 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1Intensity
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Luminaire1Intensity needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2HeatingCoil
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2HeatingCoil needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2HeatingCoil needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomInletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomInletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningCOO
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningCOO needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningCB
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningCB needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#LightEngine1Inlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#LightEngine1Inlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUExhaustOutlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUExhaustOutlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#InletIntraCorridor4CP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#InletIntraCorridor4CP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00001
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00001 needs between 1 and None instances of http://data.ashrae.org/standard223#OutletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00001 needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CoolingCoilValveActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CoolingCoilValveActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00006
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00006 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningPOC
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpeningPOC needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2DamperOutletCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2DamperOutletCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00064
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00064 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorOutletConnectionPointOO
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorOutletConnectionPointOO needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2DamperInletCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2DamperInletCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1InletReheatCoilCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1InletReheatCoilCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUReturnInlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUReturnInlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1DamperActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1DamperActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#TU1ReheatValvePositionCommand
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#TU1ReheatValvePositionCommand needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00010
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00010 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#RoomSupply1
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#RoomSupply1 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorInletConnectionPointK
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorInletConnectionPointK needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#KitchenetteInletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#KitchenetteInletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00050
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00050 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#SupplyFanActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#SupplyFanActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1DamperInletCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1DamperInletCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#TU1DamperPositionCommand
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#TU1DamperPositionCommand needs to be a http://data.ashrae.org/standard223#Function
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#KitchenetteOutletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#KitchenetteOutletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OA-to-MinDamper
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OA-to-MinDamper needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2InletReheatCoilCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2InletReheatCoilCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00035
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00035 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomFanExhaustDuct
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#BathroomFanExhaustDuct needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUOAInlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#AHUOAInlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1OuletReheatCoilCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV1OuletReheatCoilCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2OuletReheatCoilCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAV2OuletReheatCoilCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2DamperActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2DamperActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#HVAC4-5Connection
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#HVAC4-5Connection needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalChillerInletCP
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalChillerInletCP needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorOutletConnectionPointB
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#CorridorOutletConnectionPointB needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00046
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00046 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Driver1Outlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#Driver1Outlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalChiller
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ExternalChiller needs between 1 and None instances of http://data.ashrae.org/standard223#InletConnectionPoint on path http://data.ashrae.org/standard223#hasConnectionPoint
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ReturnDuct
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#ReturnDuct needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00024
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00024 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1ReheatValveActuator
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox1ReheatValveActuator needs between 1 and None instances of http://data.ashrae.org/standard223#ActuatableProperty on path http://data.ashrae.org/standard223#actuatedByProperty
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00063
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#i00063 needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2Inlet
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#VAVBox2Inlet needs to be a http://data.ashrae.org/standard223#Substance-Medium
http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpenOfficeOutletConnectionPoint
  - http://data.ashrae.org/standard223/1.0/data/pd-sr-mp-pritoni#OpenOfficeOutletConnectionPoint needs to be a http://data.ashrae.org/standard223#Substance-Medium