-
-
Save gtfierro/c7aa9817d41ce956fbfeb71622f8cad8 to your computer and use it in GitHub Desktop.
@prefix owl: <http://www.w3.org/2002/07/owl#> . | |
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . | |
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |
@prefix tag: <https://brickschema.org/schema/1.1/BrickTag#> . | |
@prefix unit: <http://qudt.org/vocab/unit/> . | |
@prefix bot: <https://w3c-lbd-cg.github.io/> . | |
@prefix sosa: <http://www.w3.org/ns/sosa/> . | |
@prefix ssn: <http://www.w3.org/ns/ssn/> . | |
@prefix ex: <urn:bot#> . | |
# using best practices from https://www.researchgate.net/publication/325644558_The_Modular_SSN_Ontology_A_Joint_W3C_and_OGC_Standard_Specifying_the_Semantics_of_Sensors_Observations_Sampling_and_Actuation/citation/download | |
ex:Site a bot:Site ; | |
bot:hasBuilding ex:Building ; | |
. | |
ex:Building a bot:Building ; | |
bot:hasSorey ex:Floor ; | |
. | |
ex:Floor a bot:Storey ; | |
bot:containsZone ex:HVAC_Zone_1, ex:HVAC_Zone_2, ex:Lighting_Zone_OO1, ex:Lighting_Zone_OO2, | |
ex:Lighting_Zone_Bathroom, ex:Lighting_Zone_PO, ex:Lighting_Zone_Kitchenette, | |
ex:Lighting_Zone_Corridor ; | |
bot:hasSpace ex:Open_Office, ex:Bathroom, ex:Private_Office, ex:Kitchenette, ex:Corridor ; | |
. | |
ex:HVAC_Zone_1 a bot:Space ; | |
bot:hasSpace ex:Open_Office, ex:Bathroom, ex:Corridor, ex:Private_Office ; | |
bot:adjacentZone ex:HVAC_Zone_2 ; | |
. | |
ex:HVAC_Zone_2 a bot:Space ; | |
bot:hasSpace ex:Kitchenette, ex:Corridor ; | |
bot:adjacentZone ex:HVAC_Zone_1 ; | |
. | |
# graph-specific, so not generally usable | |
ex:Illuminance a sosa:ObservableProperty ; | |
ssn:isPropertyOf ex:Open_Office, ex:Bathroom, ex:Private_Office, ex:Kitchenette, ex:Corridor ; | |
. | |
ex:VAVDamperPostition a sosa:ActuatableProperty . | |
ex:SupplyFanFrequency a sosa:ActuatableProperty . | |
ex:ReturnFanFrequency a sosa:ActuatableProperty . | |
ex:ExhaustFanFrequency a sosa:ActuatableProperty . | |
ex:HeatingCoilValvePosition a sosa:ActuatableProperty . | |
ex:CoolingCoilValvePosition a sosa:ActuatableProperty . | |
ex:ExhaustDamperPostition a sosa:ActuatableProperty . | |
ex:MixedAirDamperPostition a sosa:ActuatableProperty . | |
ex:OutsideDamperPostition a sosa:ActuatableProperty . | |
ex:SupplyAirFlow a sosa:ObservableProperty . | |
ex:ReturnAirFlow a sosa:ObservableProperty . | |
ex:SupplyAirTemperature a sosa:ObservableProperty . | |
ex:OutsideAirTemperature a sosa:ObservableProperty . | |
ex:MixedAirTemperature a sosa:ObservableProperty . | |
ex:ReturnAirTemperature a sosa:ObservableProperty . | |
ex:SupplyAirFlowSensor a sosa:Sensor ; | |
sosa:observes ex:SupplyAirFlow ; | |
. | |
ex:ReturnAirFlowSensor a sosa:Sensor ; | |
sosa:observes ex:ReturnAirFlow ; | |
. | |
ex:SupplyAirTemperatureSensor a sosa:Sensor ; | |
sosa:observes ex:SupplyAirTemperature ; | |
. | |
ex:OutsideAirTemperatureSensor a sosa:Sensor ; | |
sosa:observes ex:OutsideAirTemperature ; | |
. | |
ex:MixedAirTemperatureSensor a sosa:Sensor ; | |
sosa:observes ex:MixedAirTemperature ; | |
. | |
ex:ReturnAirTemperatureSensor a sosa:Sensor ; | |
sosa:observes ex:ReturnAirTemperature ; | |
. | |
ex:SupplyAirTemperatureSetpoint a sosa:ActuatableProperty . | |
ex:SupplyAirFlowSetpoint a sosa:ActuatableProperty . | |
# While this follows the practice laid out in the paper, it does not | |
# allow for describing *which* illuminance is being observed. One alternative | |
# would be to have different ObservableProperty for each room, e.g. | |
# ex:OpenOfficeIlluminance a sosa:ObservableProperty | |
ex:OO_Lighting_1_Sensor a sosa:Sensor ; | |
sosa:observes ex:Illuminance ; | |
. | |
ex:OO_Lighting_2_Sensor a sosa:Sensor ; | |
sosa:observes ex:Illuminance ; | |
. | |
ex:Bathroom_Lighting_Sensor a sosa:Sensor ; | |
sosa:observes ex:Illuminance ; | |
. | |
ex:Private_Office_Lighting_Sensor a sosa:Sensor ; | |
sosa:observes ex:Illuminance ; | |
. | |
ex:Kitchenette_Lighting_Sensor a sosa:Sensor ; | |
sosa:observes ex:Illuminance ; | |
. | |
ex:Corridor_Lighting_Sensor a sosa:Sensor ; | |
sosa:observes ex:Illuminance ; | |
. | |
ex:Lighting_Zone_OO1 a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_OO2 ; | |
. | |
ex:Lighting_Zone_OO2 a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_OO1 ; | |
. | |
ex:Lighting_Zone_Bathroom a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_Corridor ; | |
. | |
ex:Lighting_Zone_PO a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_Corridor ; | |
. | |
ex:Lighting_Zone_Kitchenette a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_Corridor ; | |
. | |
ex:Lighting_Zone_Corridor a bot:Space . | |
ex:Open_Office a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_OO2, ex:Lighting_Zone_OO2 ; | |
. | |
ex:Bathroom a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_Bathroom ; | |
. | |
ex:Private_Office a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_PO ; | |
. | |
ex:Kitchenette a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_Kitchenette ; | |
. | |
ex:Corridor a brick:Space ; | |
bot:hasSpace ex:Lighting_Zone_Corridor ; | |
. |
@prefix owl: <http://www.w3.org/2002/07/owl#> . | |
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . | |
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |
@prefix tag: <https://brickschema.org/schema/1.1/BrickTag#> . | |
@prefix unit: <http://qudt.org/vocab/unit/> . | |
@prefix bot: <https://w3c-lbd-cg.github.io/> . | |
@prefix ex: <urn:bot#> . | |
ex:Site a bot:Site ; | |
bot:hasBuilding ex:Building ; | |
. | |
ex:Building a bot:Building ; | |
bot:hasSorey ex:Floor ; | |
. | |
ex:Floor a bot:Storey ; | |
bot:containsZone ex:HVAC_Zone_1, ex:HVAC_Zone_2, ex:Lighting_Zone_OO1, ex:Lighting_Zone_OO2, | |
ex:Lighting_Zone_Bathroom, ex:Lighting_Zone_PO, ex:Lighting_Zone_Kitchenette, | |
ex:Lighting_Zone_Corridor ; | |
bot:hasSpace ex:Open_Office, ex:Bathroom, ex:Private_Office, ex:Kitchenette, ex:Corridor ; | |
. | |
ex:HVAC_Zone_1 a bot:Space ; | |
bot:hasSpace ex:Open_Office, ex:Bathroom, ex:Corridor, ex:Private_Office ; | |
bot:adjacentZone ex:HVAC_Zone_2 ; | |
. | |
ex:HVAC_Zone_2 a bot:Space ; | |
bot:hasSpace ex:Kitchenette, ex:Corridor ; | |
bot:adjacentZone ex:HVAC_Zone_1 ; | |
. | |
ex:Lighting_Zone_OO1 a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_OO2 ; | |
. | |
ex:Lighting_Zone_OO2 a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_OO1 ; | |
. | |
ex:Lighting_Zone_Bathroom a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_Corridor ; | |
. | |
ex:Lighting_Zone_PO a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_Corridor ; | |
. | |
ex:Lighting_Zone_Kitchenette a bot:Space ; | |
bot:adjacentZone ex:Lighting_Zone_Corridor ; | |
. | |
ex:Lighting_Zone_Corridor a bot:Space . | |
ex:Open_Office a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_OO2, ex:Lighting_Zone_OO2 ; | |
. | |
ex:Bathroom a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_Bathroom ; | |
. | |
ex:Private_Office a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_PO ; | |
. | |
ex:Kitchenette a bot:Space ; | |
bot:hasSpace ex:Lighting_Zone_Kitchenette ; | |
. | |
ex:Corridor a brick:Space ; | |
bot:hasSpace ex:Lighting_Zone_Corridor ; | |
. |
@prefix brick: <https://brickschema.org/schema/1.1/Brick#> . | |
@prefix owl: <http://www.w3.org/2002/07/owl#> . | |
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . | |
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |
@prefix tag: <https://brickschema.org/schema/1.1/BrickTag#> . | |
@prefix unit: <http://qudt.org/vocab/unit/> . | |
@prefix ex: <urn:brick#> . | |
# Spatial elements | |
ex:Site a brick:Site ; | |
brick:hasPart ex:Building ; | |
. | |
ex:Building a brick:Building ; | |
brick:hasPart ex:Floor ; | |
. | |
ex:Floor a brick:Floor ; | |
brick:hasPart ex:HVAC_Zone_1, ex:HVAC_Zone_2, ex:Open_Office, | |
ex:Bathroom, ex:Private_Office, ex:Kitchenette, ex:Corridor, | |
ex:Lighting_Zone_OO1, ex:Lighting_Zone_OO2, ex:Lighting_Zone_Bathroom, | |
ex:Lighting_Zone_PO, ex:Lighting_Zone_Kitchenette, ex:Lighting_Zone_Corridor ; | |
. | |
ex:Open_Office a brick:Room . | |
ex:Bathroom a brick:Room . | |
ex:Private_Office a brick:Room . | |
ex:Kitchenette a brick:Room . | |
ex:Corridor a brick:Space . | |
ex:HVAC_Zone_1 a brick:HVAC_Zone ; | |
brick:hasPart ex:Open_Office, ex:Bathroom, ex:Corridor, ex:Private_Office ; | |
. | |
ex:HVAC_Zone_2 a brick:HVAC_Zone ; | |
brick:hasPart ex:Kitchenette, ex:Corridor ; | |
. | |
# Lighting elements | |
ex:OO_Lighting_1_Sensor a brick:Illuminance_Sensor . | |
ex:OO_Lighting_2_Sensor a brick:Illuminance_Sensor . | |
ex:Bathroom_Lighting_Sensor a brick:Illuminance_Sensor . | |
ex:Private_Office_Lighting_Sensor a brick:Illuminance_Sensor . | |
ex:Kitchenette_Lighting_Sensor a brick:Illuminance_Sensor . | |
ex:Corridor_Lighting_Sensor a brick:Illuminance_Sensor . | |
ex:OO_Lighting_1 a brick:Luminaire ; | |
brick:hasPoint ex:OO_Lighting_1_Sensor ; | |
. | |
ex:OO_Lighting_2 a brick:Luminaire ; | |
brick:hasPoint ex:OO_Lighting_2_Sensor ; | |
. | |
ex:Bathroom_Lighting a brick:Luminaire ; | |
brick:hasPoint ex:Bathroom_Lighting_Sensor ; | |
. | |
ex:Private_Office_Lighting a brick:Luminaire ; | |
brick:hasPoint ex:Private_Office_Lighting_Sensor ; | |
. | |
ex:Kitchenette_Lighting a brick:Luminaire ; | |
brick:hasPoint ex:Kitchenette_Lighting_Sensor ; | |
. | |
ex:Corridor_Lighting a brick:Luminaire ; | |
brick:hasPoint ex:Corridor_Lighting_Sensor ; | |
. | |
ex:Lighting_Zone_OO1 a brick:Lighting_Zone ; | |
brick:isFedBy ex:OO_Lighting_1 ; | |
brick:isPartOf ex:Open_Office ; | |
. | |
ex:Lighting_Zone_OO2 a brick:Lighting_Zone ; | |
brick:isFedBy ex:OO_Lighting_2 ; | |
brick:isPartOf ex:Open_Office ; | |
. | |
ex:Lighting_Zone_Bathroom a brick:Lighting_Zone ; | |
brick:isFedBy ex:Bathroom_Lighting ; | |
brick:isPartOf ex:Bathroom ; | |
. | |
ex:Lighting_Zone_Private_Office a brick:Lighting_Zone ; | |
brick:isFedBy ex:Private_Office_Lighting ; | |
brick:isPartOf ex:Private_Office ; | |
. | |
ex:Lighting_Zone_Kitchenette a brick:Lighting_Zone ; | |
brick:isFedBy ex:Kitchenette_Lighting ; | |
brick:isPartOf ex:Kitchenette ; | |
. | |
ex:Lighting_Zone_Corridor a brick:Lighting_Zone ; | |
brick:isFedBy ex:Corridor_Lighting ; | |
brick:isPartOf ex:Corridor ; | |
. | |
# VAVs | |
ex:VAV_Box_1 a brick:VAV ; | |
brick:hasPoint ex:SATS_1, ex:SATSP_1 ; | |
brick:hasPart ex:Damper_1, ex:Heating_Coil_1 ; | |
brick:feeds ex:HVAC_Zone_1 ; | |
. | |
ex:SATS_1 a brick:Supply_Air_Temperature_Sensor . | |
ex:SATSP_1 a brick:Supply_Air_Temperature_Setpoint . | |
ex:Damper_1 a brick:Damper ; | |
brick:hasPoint ex:Damper_1_Position ; | |
. | |
ex:Damper_1_Position a brick:Damper_Position_Command . | |
ex:Heating_Coil_1 a brick:Heating_Coil ; | |
brick:hasPart ex:Heating_Valve_1 ; | |
. | |
ex:Heating_Valve_1 a brick:Heating_Valve ; | |
brick:hasPoint ex:Valve_Command_1 ; | |
. | |
ex:Valve_Command_1 a brick:Valve_Command . | |
ex:VAV_Box_2 a brick:VAV ; | |
brick:hasPoint ex:SATS_2, ex:SATSP_2 ; | |
brick:hasPart ex:Damper_2, ex:Heating_Coil_2 ; | |
brick:feeds ex:HVAC_Zone_2 ; | |
. | |
ex:SATS_2 a brick:Supply_Air_Temperature_Sensor . | |
ex:SATSP_2 a brick:Supply_Air_Temperature_Setpoint . | |
ex:Damper_2 a brick:Damper ; | |
brick:hasPoint ex:Damper_2_Position ; | |
. | |
ex:Damper_2_Position a brick:Damper_Position_Command . | |
ex:Heating_Coil_2 a brick:Heating_Coil ; | |
brick:hasPart ex:Heating_Valve_2 ; | |
. | |
ex:Heating_Valve_2 a brick:Heating_Valve ; | |
brick:hasPoint ex:Valve_Command_2 ; | |
. | |
ex:Valve_Command_2 a brick:Valve_Command . | |
ex:Exhaust_Fan_1 a brick:Exhaust_Fan ; | |
brick:isFedBy ex:Bathroom ; | |
. | |
# AHU | |
ex:AHU a brick:AHU ; | |
brick:hasPart ex:Supply_Fan, ex:Return_Fan, | |
ex:Cooling_Coil, ex:Heating_Coil, ex:Filter, | |
ex:Outside_Damper, ex:Mixed_Damper, ex:Exhaust_Damper ; | |
brick:feeds ex:VAV_Box_1, ex:VAV_Box_2 ; | |
brick:isFedBy ex:HVAC_Zone_1 ; | |
brick:hasPoint ex:OATS, ex:RATS, ex:MATS, ex:SATS, | |
ex:pre_hc_temp, ex:pre_cc_temp, | |
ex:RAFS, ex:SAFS ; | |
. | |
ex:OATS a brick:Outside_Air_Temperature_Sensor . | |
ex:RATS a brick:Return_Air_Temperature_Sensor . | |
ex:MATS a brick:Mixed_Air_Temperature_Sensor . | |
ex:SATS a brick:Supply_Air_Temperature_Sensor . | |
ex:pre_hc_temp a brick:Temperature_Sensor . | |
ex:pre_cc_temp a brick:Temperature_Sensor . | |
ex:SAFS a brick:Supply_Air_Flow_Sensor . | |
ex:RAFS a brick:Return_Air_Flow_Sensor . | |
ex:Supply_Fan a brick:Supply_Fan ; | |
brick:hasPoint ex:SF_Speed ; | |
. | |
ex:SF_Speed a brick:Frequency_Command . | |
ex:Return_Fan a brick:Return_Fan ; | |
brick:hasPoint ex:SF_Speed ; | |
. | |
ex:RF_Speed a brick:Frequency_Command . | |
ex:Cooling_Coil a brick:Cooling_Coil ; | |
brick:hasPoint ex:CC_Valve ; | |
. | |
ex:CC_Valve a brick:Cooling_Valve ; | |
brick:hasPoint ex:CC_Valve_CMD ; | |
. | |
ex:CC_Valve_CMD a brick:Valve_Command ; | |
. | |
ex:Heating_Coil a brick:Heating_Coil ; | |
brick:hasPoint ex:HC_Valve ; | |
. | |
ex:HC_Valve a brick:Heating_Valve ; | |
brick:hasPoint ex:HC_Valve_CMD ; | |
. | |
ex:HC_Valve_CMD a brick:Valve_Command ; | |
. | |
ex:Filter a brick:Filter . | |
ex:Outside_Damper a brick:Damper ; | |
brick:hasPoint ex:Outside_Damper_Command ; | |
. | |
ex:Outside_Damper_Command a brick:Damper_Position_Command . | |
ex:Mixed_Damper a brick:Damper ; | |
brick:hasPoint ex:Mixed_Damper_Command ; | |
. | |
ex:Mixed_Damper_Command a brick:Damper_Position_Command . | |
ex:Exhaust_Damper a brick:Damper ; | |
brick:hasPoint ex:Exhaust_Damper_Command ; | |
. | |
ex:Exhaust_Damper_Command a brick:Damper_Position_Command . | |
# controller | |
ex:Controller a brick:Controller ; | |
brick:controls ex:RF_Speed ; | |
brick:hasInput ex:RAFS ; | |
. | |
# internal topology of AHU | |
ex:RATS brick:feeds ex:Return_Fan . | |
ex:Return_Fan brick:feeds ex:RAFS . | |
ex:RAFS brick:feeds ex:Exhaust_Damper, ex:Mixed_Damper . | |
ex:Mixed_Damper brick:feeds ex:MATS . | |
ex:Outside_Damper brick:feeds ex:MATS . | |
ex:MATS brick:feeds ex:Filter . | |
ex:Filter brick:feeds ex:pre_hc_temp . | |
ex:pre_hc_temp brick:feeds ex:Heating_Coil . | |
ex:Heating_Coil brick:feeds ex:pre_cc_temp . | |
ex:pre_cc_temp brick:feeds ex:Cooling_Coil . | |
ex:Cooling_Coil brick:feeds ex:SATS . | |
ex:SATS brick:feeds ex:Supply_Fan . | |
ex:Supply_Fan brick:feeds ex:SAFS . |
@prefix owl: <http://www.w3.org/2002/07/owl#> . | |
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . | |
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |
@prefix tag: <https://brickschema.org/schema/1.1/BrickTag#> . | |
@prefix unit: <http://qudt.org/vocab/unit/> . | |
@prefix core: <https://w3id.org/rec/core> . | |
@prefix bldg: <https://w3id.org/rec/building> . | |
@prefix dev: <https://w3id.org/rec/device> . | |
@prefix ex: <urn:rec#> . | |
# spatial components | |
ex:Site a core:RealEstate ; | |
core:hasRealEstatecomponent ex:Building ; | |
. | |
ex:Building a core:Building ; | |
core:hasBuildingComponent ex:Open_Office, ex:Bathroom, ex:Private_Office, ex:Kitchenette, ex:Corridor ; | |
. | |
ex:Open_Office a core:Room ; | |
core:hasType bldg:Office ; | |
. | |
ex:Bathroom a core:Room ; | |
core:hasType bldg:Bathroom ; | |
. | |
ex:Private_Office a core:Room ; | |
core:hasType bldg:Office ; | |
. | |
ex:Kitchenette a core:Room ; | |
core:hasType bldg:DishingRoom, bldg:CookingRoom ; | |
. | |
ex:Corridor a core:Room ; | |
core:hasType bldg:Hallway ; | |
. | |
# TODO: zones? | |
ex:HVAC_Zone_1 a bldg:VirtualBuildingComponent ; | |
core:hasBuildingComponent ex:Open_Office, ex:Bathroom, ex:Corridor, ex:Private_Office ; | |
. | |
ex:HVAC_Zone_2 a bldg:VirtualBuildingComponent ; | |
core:hasBuildingComponent ex:Kitchenette, ex:Corridor ; | |
. | |
# VAVs: | |
ex:VAV_Box_1 a core:Device ; | |
core:hasSubDevice ex:Damper_1, ex:Heating_Coil_1 ; | |
core:servesBuildingComponent ex:HVAC_Zone_1 ; | |
. | |
ex:Damper_1 a core:Device ; | |
dev:hasDeviceFunctionType dev:Damper ; | |
core:hasPlacementContext dev:SupplyAir ; | |
. | |
ex:Heating_Coil_1 a core:Device ; | |
core:hasType dev:Coil ; | |
dev:hasPlacementContext dev:HotWaterFlow, dev:SupplyAir ; | |
. | |
ex:VAV_Box_2 a core:Device ; | |
core:hasSubDevice ex:Damper_2, ex:Heating_Coil_2 ; | |
core:servesBuildingComponent ex:HVAC_Zone_2 ; | |
. | |
ex:Damper_2 a core:Device ; | |
core:hasType dev:Damper ; | |
core:hasPlacementContext dev:SupplyAir ; | |
. | |
ex:Heating_Coil_2 a core:Device ; | |
dev:hasDeviceFunctionType dev:Coil ; | |
dev:hasPlacementContext dev:HotWaterFlow, dev:SupplyAir ; | |
. | |
# AHU | |
ex:AHU a core:Device ; | |
dev:hasDeviceFunctionType dev:AirHandlingUnit ; | |
core:servesDevice ex:VAV_Box_1, ex:VAV_Box_2 ; | |
core:hasSubDevice ex:Supply_Fan, ex:Return_Fan, | |
ex:Cooling_Coil, ex:Heating_Coil, ex:Filter, | |
ex:Outside_Damper, ex:Mixed_Damper, ex:Exhaust_Damper ; | |
. | |
ex:Supply_Fan a core:Device ; | |
dev:hasDeviceFunctionType dev:Fan ; | |
core:hasPlacementContext dev:SupplyAir ; | |
. | |
ex:Return_Fan a core:Device ; | |
dev:hasDeviceFunctionType dev:Fan ; | |
# no return air in REC | |
# core:hasPlacementContext dev:ReturnAir ; | |
. | |
ex:Cooling_Coil a core:Device ; | |
dev:hasDeviceFunctionType dev:Coil ; | |
dev:hasPlacementContext dev:PrimaryCoolingFlow, dev:SupplyAir ; | |
. | |
ex:Heating_Coil a core:Device ; | |
dev:hasDeviceFunctionType dev:Coil ; | |
dev:hasPlacementContext dev:PrimaryHeatingFlow, dev:SupplyAir ; | |
. | |
ex:Filter a core:Device ; | |
dev:hasDeviceFunctionType dev:Filter ; | |
# circulation isn't quite mixed | |
dev:hasPlacementContext dev:CirculationAir ; | |
. | |
ex:Outside_Damper a core:Device ; | |
core:hasType dev:Damper ; | |
core:hasPlacementContext dev:OutdoorAir ; | |
. | |
# circulation isn't quite mixed | |
ex:Mixed_Damper a core:Device ; | |
core:hasType dev:Damper ; | |
core:hasPlacementContext dev:CirculationAir ; | |
. | |
ex:Exhaust_Damper a core:Device ; | |
core:hasType dev:Damper ; | |
core:hasPlacementContext dev:ExhaustAir ; | |
. | |
# internal topology | |
ex:Return_Fan core:servesDevice ex:Exhaust_Damper, ex:Mixed_Damper . | |
ex:Mixed_Damper core:servesDevice ex:Filter . | |
ex:Outside_Damper core:servesDevice ex:Filter . | |
ex:Filter core:servesDevice ex:Heating_Coil . | |
ex:Heating_Coil core:servesDevice ex:Cooling_Coil . | |
ex:Cooling_Coil core:servesDevice ex:Supply_Fan . | |
ex:Supply_Fan core:servesDevice ex:VAV_Box_1, ex:VAV_Box_2 . |
@prefix owl: <http://www.w3.org/2002/07/owl#> . | |
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> . | |
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . | |
@prefix tag: <https://brickschema.org/schema/1.1/BrickTag#> . | |
@prefix unit: <http://qudt.org/vocab/unit/> . | |
@prefix sarefcore: <https://saref.etsi.org/core/> . | |
@prefix s4syst: <https://saref.etsi.org/saref4syst/> . | |
@prefix s4bldg: <https://saref.etsi.org/saref4bldg/> . | |
@prefix ex: <urn:saref#> . | |
ex:Building a s4bldg:Building ; | |
s4bldg:hasSpace ex:Floor ; | |
. | |
ex:Floor a s4bldg:BuildingSpace ; | |
s4bldg:hasSpace ex:HVAC_Zone_1, ex:HVAC_Zone_2, ex:Open_Office, | |
ex:Bathroom, ex:Private_Office, ex:Kitchenette, ex:Corridor, | |
ex:Lighting_Zone_OO1, ex:Lighting_Zone_OO2, ex:Lighting_Zone_Bathroom, | |
ex:Lighting_Zone_PO, ex:Lighting_Zone_Kitchenette, ex:Lighting_Zone_Corridor ; | |
. | |
ex:Open_Office a s4bldg:BuildingSpace . | |
ex:Bathroom a s4bldg:BuildingSpace . | |
ex:Private_Office a s4bldg:BuildingSpace . | |
ex:Kitchenette a s4bldg:BuildingSpace . | |
ex:Corridor a s4bldg:BuildingSpace . | |
ex:HVAC_Zone_1 a s4bldg:BuildingSpace ; | |
s4bldg:hasSpace ex:Open_Office, ex:Bathroom, ex:Corridor, ex:Private_Office ; | |
. | |
ex:Window_1 a s4bldg:ShadingDevice ; | |
s4bldg:shadingDeviceType "window" ; | |
s4bldg:isContainedIn ex:HVAC_Zone_1 ; | |
. | |
ex:Window_2 a s4bldg:ShadingDevice ; | |
s4bldg:shadingDeviceType "window" ; | |
s4bldg:isContainedIn ex:HVAC_Zone_1 ; | |
. | |
ex:HVAC_Zone_2 a s4bldg:BuildingSpace ; | |
s4bldg:hasSpace ex:Kitchenette, ex:Corridor ; | |
. | |
# lighting | |
ex:OO_Lighting_1 a s4bldg:Lamp . | |
ex:OO_Lighting_2 a s4bldg:Lamp . | |
ex:Bathroom_Lighting a s4bldg:Lamp . | |
ex:Private_Office_Lighting a s4bldg:Lamp . | |
ex:Kitchenette_Lighting a s4bldg:Lamp . | |
ex:Corridor_Lighting a s4bldg:Lamp . | |
# VAVs: there is no way in s4bldg to put one device "inside" another | |
ex:VAV_Box_1 a s4bldg:FlowTerminal . | |
ex:SATS_1 a sarefcore:TemperatureSensor . | |
ex:Damper_1 a s4bldg:Damper . | |
ex:Damper_1_Position a s4bldg:Actuator . | |
ex:Heating_Coil_1 a s4bldg:Coil . | |
ex:Valve_Command_1 a s4bldg:Actuator . | |
ex:VAV_Box_2 a s4bldg:FlowTerminal . | |
ex:SATS_2 a sarefcore:TemperatureSensor . | |
ex:Damper_2 a s4bldg:Damper . | |
ex:Damper_2_Position a s4bldg:Actuator . | |
ex:Heating_Coil_2 a s4bldg:Coil . | |
ex:Valve_Command_2 a s4bldg:Actuator . | |
ex:Exhaust_Fan_1 a s4bldg:Fan . | |
# AHU | |
ex:AHU a s4bldg:DistributionFlowDevice . | |
ex:Return_Fan a s4bldg:Fan . | |
ex:Supply_Fan a s4bldg:Fan . | |
ex:Filter a s4bldg:Filter . | |
ex:Outside_Damper a s4bldg:Damper . | |
ex:Mixed_Damper a s4bldg:Damper . | |
ex:Exhaust_Damper a s4bldg:Damper . | |
ex:Heating_Coil a s4bldg:Coil . | |
ex:Cooling_Coil a s4bldg:Coil . | |
ex:OATS a sarefcore:TemperatureSensor . | |
ex:RATS a sarefcore:TemperatureSensor . | |
ex:MATS a sarefcore:TemperatureSensor . | |
ex:SATS a sarefcore:TemperatureSensor . | |
ex:SF_Speed a s4bldg:Actuator . | |
ex:RF_Speed a s4bldg:Actuator . | |
ex:CC_Valve_CMD a s4bldg:Actuator . | |
ex:HC_Valve_CMD a s4bldg:Actuator . | |
ex:Controller a s4bldg:DistributionControlDevice . |
I was just chatting with Marco. For the SSN/SOSA model you also leveraged BOT to be able to represent anything substantial from Marco's model I guess?
We were debating whether having the combination is in line with the goal of showing how little or how much any one of these ontologies can represent. Having a TTL file of just SSN/SOSA, without leveraging BOT, would leave huge gaps based on my understanding.
What are your thoughts?
It should be fairly easy to separate out the SSN/SOSA stuff. I included them both in the same model because they are largely complementary, and the philosophy of these ontologies is such that you would probably use a "mix-n-match" approach to cover the full domain. SSN/SOSA and BOT are not trying to describe the full system here --- they are trying to provide a framework for one particular perspective on these kinds of systems, and evaluating them like they are trying to be complete isn't quite fair to them.
Right that makes sense. I can see leaving them integrated and having more discussion about their complementarity as a good thing, as we've discussed before.
At the moment I'm working on figuring out how we should be referencing and incorporating these files in the paper.
I was careful to use the same names for all of the "things" in each of the TTL files. While I haven't gone so far as to add what is fully expressible using each of the ontologies (i.e. adding numeric properties), we could adopt a graph visualization where the "things" are in a neutral color (like white), and we color the edges/nodes that are ascribed to each of the other ontologies. This would illustrate which parts of the building graph come from each ontology. Bushier parts of the graph show where a particular ontology can provide more detail. To make the visualization tractable, we could create figures for certain subparts of the figure: the Open Office, a VAV, the AHU, etc. I'll try to throw together an example
That would be very helpful and likely would satisfy what Marco is looking for nicely
Given how much of a mess their docs are things are easy to miss!