Commits (2)
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/demandDrivenProfile/> .
@prefix operationModeProfile: <http://ontology.tno.nl/interconnect/data/operationModeProfile#> .
@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 s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix vann: <http://purl.org/vocab/vann/> .
@prefix voaf: <http://purl.org/vocommons/voaf#> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/demandDrivenProfile#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
dcterms:title "SAREF4ENER Demand Driven Profile Examples"@en ;
dcterms:abstract "This example file exemplifies how to model a Demand Driven profile in the SAREF4ENER extension." ;
dcterms:description "This example file exemplifies how to model a Demand Driven profile in the SAREF4ENER extension." ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
owl:imports saref:, s4ener: ;
.
#######################################
### Devices, actuators and profiles ###
#######################################
:HybridHeatPump
a saref:Device ;
rdfs:comment "An example device that exhibits a demand driven profile" ;
rdfs:label "Hybrid heat pump" ;
saref:hasProfile :DemandDrivenProfile_1 ;
.
:DemandDrivenProfile_1
a s4ener:DemandDrivenProfile ;
s4ener:hasDemandRateForecast :TimeSeries_1 ;
s4ener:isActuatedBy :HeatPump ;
s4ener:hasDemandRate :NumberRange_1 ;
s4ener:hasEarliestStartTime "2023-01-29T09:00:00Z"^^xsd:dateTimeStamp ;
rdfs:label "Demand driven profile 1" ;
.
:HeatPump rdf:type saref:Actuator ;
saref:isUsedFor :Electricity ;
s4ener:hasOperationMode :OperationMode_1 ;
s4ener:hasTransition :Transition_1 ;
s4ener:hasTimer :Timer_1 ;
s4ener:hasActiveOperationMode :OperationMode_1 ;
s4ener:hasOperationModeFactor "0.8"^^xsd:decimal ;
s4ener:hasPreviousOperationMode :OperationMode_1 ;
s4ener:hasTransitionTimestamp "2023-01-29T16:55:00Z"^^xsd:dateTimeStamp ;
.
:NumberRange_1
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_1 ;
s4ener:startOfRange :Measurement_2 ;
rdfs:label "Number range 1" ;
.
:Measurement_1
a saref:Measurement ;
saref:hasValue "2500"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_2
a saref:Measurement ;
saref:hasValue "2000"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
############################################
### Operation modes and related concepts ###
############################################
:OperationMode_1 rdf:type s4ener:OperationMode, saref:OffState ;
rdfs:label "off" ;
s4ener:hasPowerRange :PowerRange_1 ;
s4ener:hasSupplyRange :NumberRange_2 ;
s4ener:hasRunningCosts :Measurement_7 ;
s4ener:abnormalConditionOnly "false"^^xsd:boolean ;
.
:Measurement_7 rdf:type saref:Measurement ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Price_1 ;
saref:isMeasuredIn <https://spec.edmcouncil.org/fibo/ontology/FND/Accounting/ISO4217-CurrencyCodes/EUR> ;
.
:PowerRange_1 rdf:type s4ener:PowerRange ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
s4ener:hasNumberRange :NumberRange_3 ;
.
:NumberRange_3 rdf:type s4ener:NumberRange ;
s4ener:endOfRange :Measurement_5 ;
s4ener:startOfRange :Measurement_6 ;
rdfs:label "Number range 3" ;
.
:Measurement_5 rdf:type saref:Measurement ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_6 rdf:type saref:Measurement ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:NumberRange_2 rdf:type s4ener:NumberRange ;
rdfs:label "Supply range";
s4ener:endOfRange :Measurement_3 ;
s4ener:startOfRange :Measurement_4 ;
rdfs:label "Number range 2" ;
.
:Measurement_3 rdf:type saref:Measurement ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_4 rdf:type saref:Measurement ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Transition_1 rdf:type s4ener:Transition ;
rdfs:comment "See the OperationModeProfile examples for an extensive example containing multiple instances the Transition class." ;
.
:Timer_1 rdf:time s4ener:Timer ;
rdfs:comment "See the OperationModeProfile examples for an extensive example containing multiple instances of the Transition class." ;
.
################################################
### Average demand rate forecast time series ###
################################################
:TimeSeries_1
a s4ener:TimeSeries ;
s4ener:hasDataPoint :DataPoint_1 ;
s4ener:hasDataPoint :DataPoint_2 ;
s4ener:hasDataPoint :DataPoint_3 ;
rdfs:label "Average demand rate forecast" ;
.
:DataPoint_1
a s4ener:DataPoint ;
rdfs:label "Data point 1" ;
saref:hasTimestamp "2023-01-29T14:40:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "2000" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_2
a s4ener:DataPoint ;
rdfs:label "Data point 2" ;
saref:hasTimestamp "2023-01-29T14:45:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "2500" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_3
a s4ener:DataPoint ;
rdfs:label "Data point 3" ;
saref:hasTimestamp "2023-01-29T15:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "2000" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Price_1 rdf:type saref:Price .
:Power_1 rdf:type saref:Power .
:Electricity rdf:type saref:Electricity .
dcterms:abstract a owl:AnnotationProperty .
\ No newline at end of file
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/fillRateProfile/> .
@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 s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix unit: <http://qudt.org/vocab/unit/> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/fillRateProfile#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
owl:imports saref:, s4ener: ;
dcterms:title "SAREF4ENER Fill Rate Based Profile Example"@en ;
dcterms:abstract "This example file exemplifies how to model a Fill Rate Based Flexibility profile in the SAREF4ENER extension." ;
dcterms:description "This example file exemplifies how to model a Fill Rate Based Flexibility profile in the SAREF4ENER extension." ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
### Device and flexibility profile ###
:ThermalBuffer
a saref:Device, s4ener:Storage ;
rdfs:label "Thermal buffer" ;
saref:hasProfile :FillRateProfile_1 ;
s4ener:hasFillLevelRange :TimeSeries_3 ;
s4ener:hasLeakageBehaviour :LeakageBehaviour_1 ;
s4ener:presentFillLevel :PresentFillLevel_1 ;
s4ener:hasFillLevelTargetProfile :FillLevelTargetProfile_1 ;
s4ener:hasUsageForecast :TimeSeries_4 ; #add TimeSeries
rdfs:comment "Hot water" ;
rdfs:label "Storage 1" ;
.
:PresentFillLevel_1
a saref:Measurement ;
saref:hasValue "60"^^xsd:decimal ;
saref:isMeasuredIn unit:PERCENT ;
saref:relatesToProperty :Energy_1 ;
.
:Power_1 a saref:Power .
:FillLevelTargetProfileElement_1
a s4ener:FillLevelTargetProfileElement ;
s4ener:hasDuration "P2H" ;
rdfs:label "Fill level target profile element 1" ;
.
:FillLevelTargetProfileElement_2
a s4ener:FillLevelTargetProfileElement ;
rdfs:label "Fill level target profile element 2" ;
.
:FillLevelTargetProfile_1
a s4ener:FillLevelTargetProfile ;
s4ener:hasFillLevelTargetProfileElement :FillLevelTargetProfileElement_1 ;
s4ener:hasFillLevelTargetProfileElement :FillLevelTargetProfileElement_2 ;
s4ener:hasEarliestStartTime "2023-01-25T17:30:00Z"^^xsd:dateTimeStamp ;
rdfs:label "Fill level target profile 1" ;
.
:FillRateProfile_1
a s4ener:FillRateProfile ;
s4ener:isActuatedBy :HeatPump ;
s4ener:hasStorage :ThermalBuffer ;
s4ener:hasEarliestStartTime "2023-01-19T17:00:00Z"^^xsd:dateTimeStamp ;
rdfs:label "Fill rate profile 1" ;
.
#########################
### Leakage behaviour ###
#########################
:LeakageBehaviour_1
# change to TimeSeries???
# !!!change to TimeSeries difficult, because the x-axis is not time, but the fill level range
a s4ener:LeakageBehaviour ;
s4ener:hasLeakageBehaviourElement :LeakageBehaviourElement_1 ;
s4ener:hasLeakageBehaviourElement :LeakageBehaviourElement_2 ;
s4ener:hasStartTime "2023-01-19T17:00:30Z"^^xsd:dateTimeStamp ;
rdfs:label "Leakage behaviour 1" ;
.
:LeakageBehaviourElement_1
a s4ener:LeakageBehaviourElement ;
s4ener:hasFillLevelRange :NumberRange_1 ;
s4ener:leakageRate :DataPoint_11 ; #"10"^^xsd:decimal ; # todo: make measurement
rdfs:label "Leakage behaviour element 1" ;
.
:DataPoint_11 rdf:type s4ener:DataPoint . # todo: extend
:LeakageBehaviourElement_2
a s4ener:LeakageBehaviourElement ;
s4ener:hasFillLevelRange :NumberRange_2 ;
s4ener:leakageRate :DataPoint_12 ; # "20"^^xsd:decimal ; # todo: make measurement
rdfs:label "Leakage behaviour element 2" ;
.
:DataPoint_12 rdf:type s4ener:DataPoint .
:NumberRange_1
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_1 ; #"25"^^xsd:decimal ;
s4ener:startOfRange :Measurement_2 ; #"15"^^xsd:decimal ;
rdfs:label "Number range 1" ;
.
:Measurement_1
a saref:Measurement ;
saref:relatesToProperty :Energy_1 ;
saref:hasValue "25"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_2
a saref:Measurement ;
saref:relatesToProperty :Energy_1 ;
saref:hasValue "15"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
.
:NumberRange_2
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_3 ; #"35"^^xsd:decimal ;
s4ener:startOfRange :Measurement_4 ; #"25"^^xsd:decimal ;
rdfs:label "Number range 2" ;
.
:Measurement_3
a saref:Measurement ;
saref:relatesToProperty :Energy_1 ;
saref:hasValue "35"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_4
a saref:Measurement ;
saref:relatesToProperty :Energy_1 ;
saref:hasValue "25"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
.
######################
### Usage forecast ###
######################
:TimeSeries_4
rdfs:label "Usage forecast" ;
rdfs:comment "The usage forecast of January 29th from 10 am to 16 pm." ;
a s4ener:TimeSeries ;
s4ener:hasDataPoint :DataPoint_7 ;
s4ener:hasDataPoint :DataPoint_8 ;
s4ener:hasDataPoint :DataPoint_9 ;
s4ener:hasDataPoint :DataPoint_10 ;
.
:DataPoint_7
a s4ener:DataPoint ;
saref:hasValue "1000"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
saref:hasTimestamp "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
.
:DataPoint_8
a s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
saref:hasTimestamp "2023-01-29T14:00:00Z"^^xsd:dateTimeStamp ;
.
:DataPoint_9
a s4ener:DataPoint ;
saref:hasValue "1500"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
saref:hasTimestamp "2023-01-29T15:00:00Z"^^xsd:dateTimeStamp ;
.
:DataPoint_10
a s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
saref:hasTimestamp "2023-01-29T16:00:00Z"^^xsd:dateTimeStamp ;
.
########################################
### Actuator and its operation modes ###
########################################
:HeatPump rdf:type saref:Actuator ;
saref:isUsedFor :Electricity ;
s4ener:hasOperationMode :OperationMode_1 ;
s4ener:hasTransition :Transition_1 ;
s4ener:hasTimer :Timer_1 ;
s4ener:hasActiveOperationMode :OperationMode_1 ;
s4ener:hasOperationModeFactor "0.8"^^xsd:decimal ;
s4ener:hasPreviousOperationMode :OperationMode_1 ;
s4ener:hasTransitionTimestamp "2023-01-29T16:55:00Z"^^xsd:dateTimeStamp ;
.
:OperationMode_1 rdf:type s4ener:OperationMode, saref:OffState ;
rdfs:label "off" ;
s4ener:hasOperationModeElement :OperationModeElement_1 ;
s4ener:abnormalConditionOnly "false"^^xsd:boolean ;
.
:OperationModeElement_1 rdf:type s4ener:OperationModeElement ;
s4ener:hasFillLevelRange :fillLevelRange_1 ;
s4ener:fillRate :NumberRange_4 ;
s4ener:hasPowerRange :PowerRange_1 ;
.
:fillLevelRange_1 rdf:type s4ener:NumberRange ;
s4ener:startOfRange :StartOfRange_3 ;
s4ener:endOfRange :EndOfRange_3 ;
rdfs:label "Fill level range for Operation Mode Element 1" ;
.
:StartOfRange_3 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Occupancy ;
saref:isMeasuredIn om:percent ;
.
:EndOfRange_3 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Occupancy ;
saref:isMeasuredIn om:percent ;
.
:NumberRange_4 rdf:type s4ener:NumberRange ;
s4ener:startOfRange :StartOfRange_4 ;
s4ener:endOfRange :EndOfRange_4 ;
rdfs:label "Fill rate" ;
.
:StartOfRange_4 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Motion ;
saref:isMeasuredIn om:percent ;
.
:EndOfRange_4 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Motion ;
saref:isMeasuredIn om:percent ;
.
:PowerRange_1 rdf:type s4ener:PowerRange ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
s4ener:hasNumberRange :NumberRange_5 ;
.
:NumberRange_5 rdf:type s4ener:NumberRange ;
s4ener:startOfRange :StartOfRange_5 ;
s4ener:endOfRange :EndOfRange_5 ;
rdfs:label "Power range" ;
.
:StartOfRange_5 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
.
:StartOfRange_6 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
.
:Transition_1 rdf:type s4ener:Transition ;
rdfs:comment "See the OperationModeProfile examples for an extensive example containing multiple instances the Transition class." ;
.
:Timer_1 rdf:time s4ener:Timer ;
rdfs:comment "See the OperationModeProfile examples for an extensive example containing multiple instances of the Transition class." ;
.
:Occupancy rdf:type saref:Occupancy .
dcterms:abstract a owl:AnnotationProperty .
\ No newline at end of file
@prefix ex: <https://saref.etsi.org/saref4ener/v1.2.1/example/heatingSystemPowerProfile/> .
@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 s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/heatingSystemPowerProfile#> a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
dcterms:title "SAREF4ENER Power Profile Example"@en ;
dcterms:description "Example power profile of a heatingsystem based on how a power profile would be defined in SPINE."@en ;
dcterms:abstract "Example power profile of a heatingsystem based on how a power profile would be defined in SPINE."@en ;
owl:imports saref:, s4ener: ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
time:Instant a owl:Class .
time:DateTimeInterval a owl:Class .
time:inXSDDateTime a owl:DatatypeProperty .
time:hasBeginning a owl:ObjectProperty .
time:hasEnd a owl:ObjectProperty .
ex:Beginning_PowerProfile-1-HS0001
rdf:type time:Instant ;
rdfs:label "Beginning Power profile-1-HS0001"^^xsd:string ;
time:inXSDDateTime "2016-12-15T00:01:01.01"^^xsd:dateTime ;
.
ex:Beginning_PowerSequence-HS0001_afternoon
rdf:type time:Instant ;
rdfs:label "Beginning Power sequence-HS0001 afternoon"^^xsd:string ;
time:inXSDDateTime "2016-12-15T15:30:00.00"^^xsd:dateTime ;
.
ex:Beginning_PowerSequence-HS0001_morning
rdf:type time:Instant ;
rdfs:label "Beginning Power sequence-HS0001 morning"^^xsd:string ;
time:inXSDDateTime "2016-12-15T08:45:00.00"^^xsd:dateTime ;
.
ex:DateTimeInterval_PowerProfile-1-HS0001
rdf:type time:DateTimeInterval ;
rdfs:label "Date time interval Power profile-1-HS0001"^^xsd:string ;
time:hasBeginning ex:Beginning_PowerProfile-1-HS0001 ;
time:hasEnd ex:End_PowerProfile-1-HS0001 ;
.
ex:End_PowerProfile-1-HS0001
rdf:type time:Instant ;
rdfs:label "End Power profile-1-HS0001"^^xsd:string ;
time:inXSDDateTime "2016-12-15T00:23:59.59"^^xsd:dateTime ;
.
ex:End_PowerSequence-HS0001_afternoon
rdf:type time:Instant ;
rdfs:label "End Power sequence-HS0001 afternoon"^^xsd:string ;
time:inXSDDateTime "2016-12-15T00:18:00.00"^^xsd:dateTime ;
.
ex:End_PowerSequence-HS0001_morning
rdf:type time:Instant ;
rdfs:label "End Power sequence-HS0001 morning"^^xsd:string ;
time:inXSDDateTime "2016-12-15T00:12:00.00"^^xsd:dateTime ;
.
ex:PowerSequence-HS0001_afternoon
rdf:type time:DateTimeInterval ;
rdfs:label "Power sequence-HS0001 afternoon"^^xsd:string ;
time:hasBeginning ex:Beginning_PowerSequence-HS0001_afternoon ;
time:hasEnd ex:End_PowerSequence-HS0001_afternoon ;
.
ex:PowerSequence-HS0001_morning
rdf:type time:DateTimeInterval ;
rdfs:label "Power sequence-HS0001 morning"^^xsd:string ;
time:hasBeginning ex:Beginning_PowerSequence-HS0001_morning ;
time:hasEnd ex:End_PowerSequence-HS0001_morning ;
.
ex:AlternativesGroup-1-HS0001
rdf:type s4ener:AlternativesGroup ;
rdfs:label "Alternatives group-1-HS0001"^^xsd:string ;
saref:consistsOf ex:PowerSequence-1-HS0001 ;
s4ener:alternativesGroupID 1 ;
s4ener:belongsTo ex:PowerProfile-1-HS0001 ;
.
ex:AlternativesGroup-2-HS0001
rdf:type s4ener:AlternativesGroup ;
rdfs:label "Alternatives group-2-HS0001"^^xsd:string ;
saref:consistsOf ex:PowerSequence-2-HS0001 ;
saref:consistsOf ex:PowerSequence-3-HS0001 ;
s4ener:alternativesGroupID 2 ;
s4ener:belongsTo ex:PowerProfile-1-HS0001 ;
.
ex:Energy_1
rdf:type s4ener:Energy ;
rdfs:label "Energy 1"^^xsd:string ;
saref:isMeasuredByDevice ex:HeatingSystem ;
.
ex:Heating
rdf:type saref:Task ;
rdfs:label "Heating"^^xsd:string ;
.
ex:HeatingSystem
rdf:type s4ener:Device ;
rdfs:label "Heating system"^^xsd:string ;
saref:accomplishes saref:EnergyEfficiency ;
saref:accomplishes ex:Heating ;
saref:hasDescription "Heating system HS0001 is an example of how to instantiate a heating system with hot water tank using SAREF4ENER"^^xsd:string ;
.
ex:Measurement_1
rdf:type saref:Measurement ;
rdfs:label "Measurement 1"^^xsd:string ;
saref:hasValue "0.2"^^xsd:string ;
saref:isMeasuredIn <http://www.wurvoc.org/vocabularies/om-1.8/kilowatt_hour> ;
saref:relatesToProperty ex:Energy_1 ;
.
ex:Measurement_2
rdf:type saref:Measurement ;
rdfs:label "Measurement 2"^^xsd:string ;
saref:hasValue "0.2"^^xsd:string ;
saref:isMeasuredIn <http://www.wurvoc.org/vocabularies/om-1.8/kilowatt> ;
saref:relatesToProperty ex:Power_1 ;
.
ex:PowerProfile-1-HS0001
rdf:type s4ener:PowerProfile ;
rdfs:label "Power profile-1-HS0001"^^xsd:string ;
saref:consistsOf ex:AlternativesGroup-1-HS0001 ;
saref:consistsOf ex:AlternativesGroup-2-HS0001 ;
saref:hasTime ex:Time_PowerProfile-1-HS0001 ;
s4ener:alternativesCount 2 ;
s4ener:belongsTo ex:HeatingSystem ;
s4ener:nodeRemoteControllable "true"^^xsd:boolean ;
s4ener:supportsReselection "true"^^xsd:boolean ;
s4ener:supportsSingleSlotSchedulingOnly "true"^^xsd:boolean ;
s4ener:totalSequencesCountMax "1"^^xsd:unsignedInt ;
.
ex:PowerSequence-1-HS0001
rdf:type s4ener:PowerSequence ;
rdfs:label "Power sequence-1-HS0001"^^xsd:string ;
saref:consistsOf ex:Slot-1-HS0001 ;
saref:hasTime ex:PowerSequence-HS0001_morning ;
s4ener:belongsTo ex:AlternativesGroup-1-HS0001 ;
s4ener:isPausable "false"^^xsd:boolean ;
s4ener:isStoppable "false"^^xsd:boolean ;
.
ex:PowerSequence-2-HS0001
rdf:type s4ener:PowerSequence ;
rdfs:label "Power sequence-2-HS0001"^^xsd:string ;
saref:consistsOf ex:Slot-2-HS0001 ;
saref:hasTime ex:PowerSequence-HS0001_afternoon ;
s4ener:belongsTo ex:AlternativesGroup-2-HS0001 ;
s4ener:greenest "true"^^xsd:boolean ;
s4ener:isPausable "false"^^xsd:boolean ;
s4ener:isStoppable "false"^^xsd:boolean ;
.
ex:PowerSequence-3-HS0001
rdf:type s4ener:PowerSequence ;
rdfs:label "Power sequence-3-HS0001"^^xsd:string ;
saref:consistsOf ex:Slot-3-HS0001 ;
saref:hasTime ex:PowerSequence-HS0001_afternoon ;
s4ener:belongsTo ex:AlternativesGroup-2-HS0001 ;
s4ener:cheapest "true"^^xsd:boolean ;
s4ener:isPausable "false"^^xsd:boolean ;
s4ener:isStoppable "false"^^xsd:boolean ;
.
ex:Power_1
rdf:type s4ener:Power ;
rdfs:label "Power 1"^^xsd:string ;
saref:isMeasuredByDevice ex:HeatingSystem ;
.
ex:Slot-1-HS0001
rdf:type s4ener:Slot ;
rdfs:label "Slot 1 HS0001"^^xsd:string ;
s4ener:belongsTo ex:PowerSequence-1-HS0001 ;
s4ener:hasSlotValue ex:Measurement_1, ex:Measurement_2 ;
s4ener:slotNumber "1"^^xsd:unsignedInt ;
.
ex:Slot-2-HS0001
rdf:type s4ener:Slot ;
rdfs:label "Slot 2 HS0001"^^xsd:string ;
s4ener:belongsTo ex:PowerSequence-2-HS0001 ;
s4ener:slotNumber "2"^^xsd:unsignedInt ;
.
ex:Slot-3-HS0001
rdf:type s4ener:Slot ;
rdfs:label "Slot 3 HS0001"^^xsd:string ;
s4ener:belongsTo ex:PowerSequence-3-HS0001 ;
s4ener:slotNumber "3"^^xsd:unsignedInt ;
.
ex:Time_PowerProfile-1-HS0001
rdf:type saref:Time ;
rdfs:label "Time Power profile-1-HS0001"^^xsd:string ;
saref:consistsOf ex:DateTimeInterval_PowerProfile-1-HS0001 ;
.
dcterms:abstract a owl:AnnotationProperty .
\ No newline at end of file
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/incentiveTable/> .
@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 s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix time: <http://www.w3.org/2006/time> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/incentiveTable#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
dcterms:title "SAREF4ENER Incentive Table Flexilibity Profile Examples"@en ;
owl:imports saref:, s4ener: ;
dcterms:abstract "This example file exemplifies how to model an Incentive Table flexibility profile in the SAREF4ENER extension." ;
dcterms:description "This example file exemplifies how to model an Incentive Table flexibility profile in the SAREF4ENER extension. This Incentive Table is based on the example in EEBUS Use Case Specification Incentive-Table based power consumption management Version 1.0.0 RC3. This example has been simplified by reducing the number of slots to three." ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
:Device_1 rdf:type saref:Device ;
rdfs:label "Example device" ;
saref:hasProfile :IncentiveTable_1;
.
:IncentiveTable_1 rdf:type s4ener:IncentiveTableBasedProfile ;
rdfs:label "Incentive table" ;
s4ener:hasScopeType s4ener:Committed ;
saref:consistsOf :Slot_1, :Slot_2, :Slot_3 ;
s4ener:hasTier :Tier_1, :Tier_2, :Tier_3 ;
s4ener:requiresUpdate "false"^^xsd:boolean ;
s4ener:isChangeable "false"^^xsd:boolean ;
s4ener:hasUsageForecast :PowerPlan ;
s4ener:hasIncentiveType s4ener:AbsoluteCost ;
.
:Slot_1 rdf:type s4ener:IncentiveTableSlot ;
rdfs:label "Morning slot" ;
rdfs:comment "This slot covers the period from 4:00 to 12:00 during dawn when PV panels are gathering power.";
s4ener:hasStartTime "2023-01-29T04:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasEndTime "2023-01-29T11:59:59Z"^^xsd:dateTimeStamp ;
saref:hasIdentifier "1"^^xsd:string ;
s4ener:hasIncentive :Incentive_1 ;
.
:Slot_2 rdf:type s4ener:IncentiveTableSlot ;
rdfs:label "Afternoon slot" ;
rdfs:comment "This slot covers the period from 12:00 to 21:00 when the PV panels have already gathered power." ;
s4ener:hasStartTime "2023-01-29T12:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasEndTime "2023-01-29T20:59:59Z"^^xsd:dateTimeStamp ;
saref:hasIdentifier "1"^^xsd:string ;
s4ener:hasIncentive :Incentive_2, :Incentive_3, :Incentive_4 ;
.
:Slot_3 rdf:type s4ener:IncentiveTableSlot ;
rdfs:label "Night slot" ;
rdfs:comment "This slot covers the period from 21:00 to 4:00, when the PV panels do not generate any power." ;
s4ener:hasStartTime "2023-01-29T21:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasEndTime "2023-01-30T03:59:59Z"^^xsd:dateTimeStamp ;
saref:hasIdentifier "1"^^xsd:string ;
s4ener:hasIncentive :Incentive_5 ;
.
:Tier_1 rdf:type s4ener:IncentiveTableTier, s4ener:TimeSeries ;
rdfs:label "Grid power" ;
saref:hasIdentifier "1"^^xsd:string ;
s4ener:hasIncentive :Incentive_1, :Incentive_4, :Incentive_5 ;
.
:Tier_2 rdf:type s4ener:IncentiveTableTier, s4ener:TimeSeries ;
rdfs:label "PV panels" ;
saref:hasIdentifier "2"^^xsd:string ;
s4ener:hasIncentive :Incentive_3 ;
.
:Tier_3 rdf:type s4ener:IncentiveTableTier, s4ener:TimeSeries ;
rdfs:label "Surplus power PV panels" ;
saref:hasIdentifier "3"^^xsd:string ;
s4ener:hasIncentive :Incentive_4 ;
.
:Incentive_1 rdfs:type s4ener:Incentive, s4ener:DataPoint ;
saref:isMeasuredIn s4ener:EuroPerKilowattHour ;
saref:hasValue "0.30"^^xsd:decimal ;
saref:relatesToProperty :Price ;
s4ener:hasLowerBoundary :LowerBoundary_1 ;
.
:LowerBoundary_1 rdf:type s4ener:DataPoint ;
rdfs:label "Lower boundary early morning" ;
rdfs:comment "At this moment it's only possible to use power from the grid, so the lower boundary is at 0 and there's no upper boundary." ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Energy ;
.
:Incentive_2 rdfs:type s4ener:Incentive, s4ener:DataPoint ;
rdfs:label "Boundary for surplus power" ;
rdfs:comment "It is free to use the surplus power of the PV panels." ;
saref:isMeasuredIn s4ener:EuroPerKilowattHour ;
saref:hasValue "0.0"^^xsd:decimal ;
saref:relatesToProperty :Price ;
s4ener:hasLowerBoundary :LowerBoundary_2 ;
.
:LowerBoundary_2 rdf:type s4ener:DataPoint ;
rdfs:label "Boundary surplus power" ;
rdfs:comment "The lower boundary is at zero, because the first incentive is to use the surplus power of the PV panels." ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Energy ;
.
:Incentive_3 rdfs:type s4ener:Incentive, s4ener:DataPoint ;
rdfs:label "Boundary for PV power" ;
rdfs:comment "It costs 0.12 euro per kilowatthour to use the energy of the PV panels. This starts at the lower boundary, which is 1500W." ;
saref:isMeasuredIn s4ener:EuroPerKilowattHour ;
saref:hasValue "0.12"^^xsd:decimal ;
saref:relatesToProperty :Price ;
s4ener:hasLowerBoundary :LowerBoundary_3 ;
.
:LowerBoundary_3 rdf:type s4ener:DataPoint ;
rdfs:label "Boundary PV panels" ;
rdfs:comment "Starting at 1500W the energy is drawn from the PV panels." ;
saref:hasValue "1500"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Energy ;
.
:Incentive_4 rdfs:type s4ener:Incentive, s4ener:DataPoint ;
rdfs:label "Boundary for grid energy during the day" ;
rdfs:comment "It costs 0.30 euro per kilowatthour to draw energy from the grid during the day." ;
saref:isMeasuredIn s4ener:EuroPerKilowattHour ;
saref:hasValue "0.30"^^xsd:decimal ;
saref:relatesToProperty :Price ;
s4ener:hasLowerBoundary :LowerBoundary_3 ;
.
:LowerBoundary_4 rdf:type s4ener:DataPoint ;
rdfs:label "Lower boundary grid usage day" ;
rdfs:comment "Starting at 4000W the energy will be drawn from the grid." ;
saref:hasValue "4000"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Energy ;
.
:Incentive_5 rdfs:type s4ener:Incentive, s4ener:DataPoint ;
rdfs:label "Boundary night usage" ;
rdfs:comment "Energy usage during the night costs 0.30 euro per kilowatthour." ;
saref:isMeasuredIn s4ener:EuroPerKilowattHour ;
saref:hasValue "0.30"^^xsd:decimal ;
saref:relatesToProperty :Price ;
s4ener:hasLowerBoundary :LowerBoundary_3 ;
.
:LowerBoundary_5 rdf:type s4ener:DataPoint ;
rdfs:label "Lower boundary night" ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Energy ;
.
:PowerPlan rdf:type s4ener:TimeSeries ;
rdfs:label "Anticipated power consumption" ;
rdfs:comment """The usage forecast or Power Plan for an EEBUS Incentive Table consists of three interlinked timeseries. The first coveres the minimum power consumption, the second the average, and the third the maximum consumption.
The length of the TimeSeries is for brevity's sake kept to a single data point per time series. This can be arbitrarily extended.""" ;
saref:consistsOf :MinimumConsumption, :AverageConsumption, :MaximumConsumption ;
s4ener:hasCreationTime "2023-01-29T00:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasEffectivePeriod :EffectivePeriod ;
.
:EffectivePeriod rdf:type time:Interval ;
time:hasBeginning "2023-01-29T00:00:00Z"^^xsd:dateTimeStamp ;
time:hasEnd "2023-01-30T00:00:00Z"^^xsd:dateTimeStamp ;
.
:MinimumConsumption rdf:type s4ener:TimeSeries ;
s4ener:hasDataPoint :DataPoint_1, :DataPoint_2 ;
s4ener:hasUsage s4ener:Minimum ;
.
:DataPoint_1 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power ;
saref:hasTimestamp "2023-01-29T00:00:00Z"^^xsd:dateTimeStamp
.
:DataPoint_2 rdf:type s4ener:DataPoint ;
saref:hasValue "250"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power ;
saref:hasTimestamp "2023-01-29T07:00:00Z"^^xsd:dateTimeStamp
.
:AverageConsumption rdf:type s4ener:TimeSeries ;
rdfs:label "Average forecasted consumption" ;
s4ener:hasDataPoint :DataPoint_3, :DataPoint_4 ;
s4ener:hasUsage s4ener:Average ;
.
:DataPoint_3 rdf:type s4ener:DataPoint ;
saref:hasValue "10"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power ;
saref:hasTimestamp "2023-01-29T00:00:00Z"^^xsd:dateTimeStamp
.
:DataPoint_4 rdf:type s4ener:DataPoint ;
saref:hasValue "500"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power ;
saref:hasTimestamp "2023-01-29T07:00:00Z"^^xsd:dateTimeStamp
.
:MaximumConsumption rdf:type s4ener:TimeSeries ;
rdfs:label "Maximum forecasted consumption" ;
s4ener:hasDataPoint :DataPoint_6 ;
s4ener:hasUsage s4ener:Maximum ;
.
:DataPoint_5 rdf:type s4ener:DataPoint ;
saref:hasValue "50"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power ;
saref:hasTimestamp "2023-01-29T00:00:00Z"^^xsd:dateTimeStamp
.
:DataPoint_6 rdf:type s4ener:DataPoint ;
saref:hasValue "1000"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power ;
saref:hasTimestamp "2023-01-29T07:00:00Z"^^xsd:dateTimeStamp
.
:Power rdf:type saref:Power .
:Price rdf:type saref:Price .
:Energy rdf:type saref:Energy .
dcterms:abstract a owl:AnnotationProperty .
saref:hasIdentifier a owl:DatatypeProperty .
time:hasBeginning a owl:DatatypeProperty .
time:hasEnd a owl:DatatypeProperty .
time:Interval a owl:Class .
\ No newline at end of file
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/operationModeProfile/> .
@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 saref: <https://saref.etsi.org/core/> .
@prefix s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/operationModeProfile#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
owl:imports saref:, s4ener: ;
dcterms:title "SAREF4ENER Operation Mode Profile Examples"@en ;
dcterms:abstract "This example file exemplifies how to model an Operation Mode profile in the SAREF4ENER extension." ;
dcterms:description "This example file exemplifies how to model an Operation Mode profile in the SAREF4ENER extension." ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
:DieselGenerator
a saref:Device ;
rdfs:comment "A Diesel Generator that exhibits a demand driven profile" ;
rdfs:label "Diesel generator" ;
saref:hasProfile :OperationModeProfile_1 ;
.
:OperationModeProfile_1
a s4ener:OperationModeProfile ;
s4ener:hasOperationMode :OperationMode_1 ;
s4ener:hasOperationMode :OperationMode_2 ;
s4ener:hasOperationMode :OperationMode_3 ;
s4ener:hasTimer :Timer_1 ;
s4ener:hasTimer :Timer_2 ;
s4ener:hasTimer :Timer_3 ;
s4ener:hasDemandRateForecast :TimeSeries_1 ;
s4ener:hasTransition :Transition_1 ;
s4ener:hasTransition :Transition_2 ;
s4ener:hasTransition :Transition_3 ;
s4ener:hasTransition :Transition_4 ;
s4ener:hasTransition :Transition_5 ;
s4ener:hasTransition :Transition_6 ;
rdfs:comment "An operation mode profile following the example in section 7.6.4 (page 28) of the S2 specification." ;
rdfs:label "Operation mode profile 1" ;
.
:OperationMode_1
a s4ener:OperationMode, saref:OffState ;
s4ener:abnormalConditionOnly false ;
s4ener:hasPowerRange :NumberRange_1 ;
rdfs:comment "The heat pump is turned off" ;
rdfs:label "Off" ;
.
:OperationMode_2
a s4ener:OperationMode ;
s4ener:abnormalConditionOnly false ;
s4ener:hasPowerRange :NumberRange_2 ;
rdfs:comment "The heat pump runs at full power" ;
rdfs:label "Full power" ;
.
:OperationMode_3
a s4ener:OperationMode ;
s4ener:abnormalConditionOnly false ;
s4ener:hasPowerRange :NumberRange_3 ;
rdfs:comment "The machine runs at reduced power when in this state or operation mode" ;
rdfs:label "Reduced power" ;
.
:Timer_1
a s4ener:Timer ;
s4ener:hasDuration "P5M"^^xsd:duration ;
rdfs:comment "This timer indicates the minimum on time for this device of 5 minutes." ;
rdfs:label "Timer (5 minutes)" ;
.
:Timer_2
a s4ener:Timer ;
s4ener:hasDuration "P8M"^^xsd:duration ;
rdfs:comment "This timer indicates the minimum off time for this device of 8 minutes." ;
rdfs:label "Timer (8 minutes)" ;
.
:Timer_3
a s4ener:Timer ;
s4ener:hasDuration "P1M"^^xsd:duration ;
rdfs:comment "This timer indicates the minimun modulation time of 1 minute between switching from reduced power to full power or vice versa." ;
rdfs:label "Timer (1 minute)" ;
.
:Transition_1
a s4ener:Transition ;
s4ener:isBlockedBy :Timer_2 ;
s4ener:fromOperationMode :OperationMode_1 ;
s4ener:startsTimer :Timer_1 ;
s4ener:startsTimer :Timer_3 ;
s4ener:toOperationMode :OperationMode_2 ;
rdfs:label "Transition 1" ;
.
:Transition_2
a s4ener:Transition ;
s4ener:isBlockedBy :Timer_1 ;
s4ener:isBlockedBy :Timer_3 ;
s4ener:fromOperationMode :OperationMode_2 ;
s4ener:startsTimer :Timer_2 ;
s4ener:toOperationMode :OperationMode_1 ;
rdfs:label "Transition 2" ;
.
:Transition_3
a s4ener:Transition ;
s4ener:isBlockedBy :Timer_2 ;
s4ener:fromOperationMode :OperationMode_1 ;
s4ener:startsTimer :Timer_1 ;
s4ener:startsTimer :Timer_3 ;
s4ener:toOperationMode :OperationMode_3 ;
rdfs:label "Transition 3" ;
.
:Transition_4
a s4ener:Transition ;
s4ener:isBlockedBy :Timer_1 ;
s4ener:isBlockedBy :Timer_3 ;
s4ener:fromOperationMode :OperationMode_3 ;
s4ener:startsTimer :Timer_2 ;
s4ener:toOperationMode :OperationMode_1 ;
rdfs:label "Transition 4" ;
.
:Transition_5
a s4ener:Transition ;
s4ener:isBlockedBy :Timer_3 ;
s4ener:fromOperationMode :OperationMode_2 ;
s4ener:startsTimer :Timer_3 ;
s4ener:toOperationMode :OperationMode_3 ;
rdfs:label "Transition 5" ;
.
:Transition_6
a s4ener:Transition ;
s4ener:isBlockedBy :Timer_3 ;
s4ener:fromOperationMode :OperationMode_3 ;
s4ener:startsTimer :Timer_3 ;
s4ener:toOperationMode :OperationMode_2 ;
rdfs:label "Transition 6" ;
.
:NumberRange_1
a s4ener:NumberRange ;
s4ener:endOfRange :EndOfRange_1 ;
s4ener:startOfRange :StartOfRange_1 ;
rdfs:label "Number range 1" ;
.
:NumberRange_2
a s4ener:NumberRange ;
s4ener:endOfRange :EndOfRange_2 ;
s4ener:startOfRange :StartOfRange_2 ;
rdfs:label "Number range 2" ;
.
:NumberRange_3
a s4ener:NumberRange ;
s4ener:endOfRange :EndOfRange_3 ;
s4ener:startOfRange :StartOfRange_3 ;
rdfs:label "Number range 3" ;
.
:StartOfRange_1
a saref:Measurement ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
saref:hasValue "0"^^xsd:decimal ;
.
:StartOfRange_2
a saref:Measurement ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
saref:hasValue "-3000"^^xsd:decimal ;
.
:StartOfRange_3
a saref:Measurement ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
saref:hasValue "-2500"^^xsd:decimal ;
.
:EndOfRange_1
a saref:Measurement ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
saref:hasValue "0"^^xsd:decimal ;
.
:EndOfRange_2
a saref:Measurement ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
saref:hasValue "-3000"^^xsd:decimal ;
.
:EndOfRange_3
a saref:Measurement ;
saref:isMeasuredIn om:watt ;
saref:relatesToProperty :Power_1 ;
saref:hasValue "-1500"^^xsd:decimal ;
.
:TimeSeries_1 rdf:type s4ener:TimeSeries ;
rdfs:label "Average demand rate forecast" ;
rdfs:comment "This time series can be instantiated following the other s4ener:TimeSeries examples to function as an average demand rate forecast for this operation mode. " ;
.
:Power_1 rdf:type saref:Power .
dcterms:abstract a owl:AnnotationProperty .
\ No newline at end of file
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/PowerEnvelopeProfile/> .
@prefix s4ener: <https://saref.etsi.org/saref4tsrs/> .
@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 s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/powerEnvelopeProfile#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
dcterms:title "SAREF4ENER Power Envelope Flexilibity Profile Examples"@en ;
owl:imports saref:, s4ener: ;
dcterms:abstract "This example file exemplifies how to model a Power Envelope profile in the SAREF4ENER extension." ;
dcterms:description "This example file exemplifies how to model a Power Envelope profile in the SAREF4ENER extension." ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
:AllowedLimitRange_1
a s4ener:AllowedLimitRange ;
s4ener:abnormalConditionOnly false ;
s4ener:limitType s4ener:UpperLimit ;
s4ener:rangeBoundary :NumberRange_1 ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
rdfs:label "Allowed limit range 1" ;
.
:AllowedLimitRange_2
a s4ener:AllowedLimitRange ;
s4ener:abnormalConditionOnly false ;
s4ener:limitType s4ener:UpperLimit ;
s4ener:rangeBoundary :NumberRange_2 ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
rdfs:label "Allowed limit range 2" ;
.
:AllowedLimitRange_3
a s4ener:AllowedLimitRange ;
s4ener:abnormalConditionOnly false ;
s4ener:limitType s4ener:LowerLimit ;
s4ener:rangeBoundary :NumberRange_3 ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
rdfs:label "Allowed limit range 3" ;
.
:AllowedLimitRange_4
a s4ener:AllowedLimitRange ;
s4ener:abnormalConditionOnly false ;
s4ener:limitType s4ener:LowerLimit ;
s4ener:rangeBoundary :NumberRange_4 ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
rdfs:label "Allowed limit range 4" ;
.
:DataPoint_1
a s4ener:DataPoint, saref:Measurement ;
rdfs:label "Data point 1" ;
saref:hasTimestamp "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "100" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_2
a s4ener:DataPoint, saref:Measurement ;
rdfs:label "Data point 2" ;
saref:hasTimestamp "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "200" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_3
a s4ener:DataPoint, saref:Measurement ;
rdfs:label "Data point 3" ;
saref:hasTimestamp "2023-01-29T13:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "1000" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_4
a s4ener:DataPoint, saref:Measurement ;
rdfs:label "Data point 4" ;
saref:hasTimestamp "2023-01-30T13:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "150" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_5
a s4ener:DataPoint, saref:Measurement ;
rdfs:label "Data point 5" ;
saref:hasTimestamp "2023-01-30T17:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "200" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:DataPoint_6
a s4ener:DataPoint, saref:Measurement ;
rdfs:label "Data point 6" ;
saref:hasTimestamp "2023-01-29T17:00:00Z"^^xsd:dateTimeStamp ;
saref:hasValue "200" ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Power_1 rdf:type saref:Power .
:EnergyConstraint_1
a s4ener:EnergyConstraint ;
s4ener:rangeBoundary :EnergyConstraintsRange_1 ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
s4ener:hasStartTime "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasEndTime "2023-01-29T18:00:00Z"^^xsd:dateTimeStamp ;
rdfs:label "Energy constraint 1" ;
.
:EnergyConstraintsRange_1 rdf:type s4ener:NumberRange ;
s4ener:endOfRange :Measurement_15 ;
s4ener:startOfRange :Measurement_16 ;
rdfs:label "Energy constraint average power boundary" ;
.
:Measurement_15 rdf:type s4ener:DataPoint ;
saref:hasValue "1000"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_16 rdf:type s4ener:DataPoint ;
saref:hasValue "100"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:NumberRange_1
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_7 ; # "550"^^xsd:decimal ;
s4ener:startOfRange :Measurement_8 ; #"400"^^xsd:decimal ;
rdfs:label "Number range 1" ;
.
:NumberRange_2
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_9 ; # "1100"^^xsd:decimal ;
s4ener:startOfRange :Measurement_10 ; #"800"^^xsd:decimal ;
rdfs:label "Number range 2" ;
.
:NumberRange_3
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_11 ; # "150"^^xsd:decimal ;
s4ener:startOfRange :Measurement_12 ; # "0"^^xsd:decimal ;
rdfs:label "Number range 3" ;
.
:NumberRange_4
a s4ener:NumberRange ;
s4ener:endOfRange :Measurement_13 ; # "-500"^^xsd:decimal ;
s4ener:startOfRange :Measurement_14 ; #"-500"^^xsd:decimal ;
rdfs:label "Number range 4" ;
.
:Measurement_7
a saref:Measurement ;
saref:hasValue "550"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_8
a saref:Measurement ;
saref:hasValue "400"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_9
a saref:Measurement ;
saref:hasValue "1100"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_10
a saref:Measurement ;
saref:hasValue "800"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_11
a saref:Measurement ;
saref:hasValue "150"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_12
a saref:Measurement ;
saref:hasValue "0"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_13
a saref:Measurement ;
saref:hasValue "-500"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:Measurement_14
a saref:Measurement ;
saref:hasValue "500"^^xsd:decimal ;
saref:relatesToProperty :Power_1 ;
saref:isMeasuredIn om:kilowatt ;
.
:PowerConstraint_1
a s4ener:PowerConstraint ;
s4ener:allowedLimitRange :AllowedLimitRange_1 ;
s4ener:allowedLimitRange :AllowedLimitRange_2 ;
s4ener:allowedLimitRange :AllowedLimitRange_3 ;
s4ener:allowedLimitRange :AllowedLimitRange_4 ;
s4ener:hasConsequenceType s4ener:Defer ;
s4ener:hasStartTime "2023-01-29T10:00:00Z"^^xsd:dateTime ;
s4ener:hasEndTime "2023-01-30T18:00:00Z"^^xsd:dateTime ;
rdfs:comment "Implementation of the power constraints consisting of a set of allowed limit ranges following Figure 7 in section 7.6.2.1 of the S2 standard." ;
rdfs:label "Power constraint 1" ;
.
:PowerEnvelopeProfile_1
a s4ener:PowerEnvelopeProfile ;
s4ener:hasConstraints :EnergyConstraint_1 ;
s4ener:hasConstraints :PowerConstraint_1 ;
s4ener:hasPowerEnvelope :PowerEnvelope_1 ;
rdfs:label "Power envelope profile 1" ;
.
:PowerEnvelope_1
a s4ener:PowerEnvelope ;
s4ener:hasEnvelope :TimeSeries_1 ;
s4ener:relatesToCommodityQuantity s4ener:ElectricPowerL1 ;
rdfs:label "Power envelope 1" ;
.
:SolarPanelInverter
a saref:Device ;
saref:hasProfile :PowerEnvelopeProfile_1 ;
rdfs:label "Solar panel inverter" ;
.
:TimeSeries_1
a s4ener:TimeSeries ;
s4ener:hasDataPoint :DataPoint_1 ;
s4ener:hasDataPoint :DataPoint_2 ;
s4ener:hasDataPoint :DataPoint_3 ;
s4ener:hasDataPoint :DataPoint_4 ;
s4ener:hasDataPoint :DataPoint_5 ;
s4ener:hasDataPoint :DataPoint_6 ;
rdfs:label "Time series 1" ;
.
dcterms:abstract a owl:AnnotationProperty .
\ No newline at end of file
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/PowerLimitProfile/> .
@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 s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix om: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/powerLimitProfile#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
dcterms:title "SAREF4ENER Power Envelope Flexilibity Profile Examples"@en ;
owl:imports saref:, s4ener: ;
dcterms:abstract "This example file exemplifies how to model a Power Limit profile in the SAREF4ENER extension." ;
dcterms:description "This example file exemplifies how to model a Power Envelope profile in the SAREF4ENER extension." ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
:SolarPanelInverter
a saref:Device ;
saref:hasProfile :PowerLimitProfile_1 ;
rdfs:label "Solar panel inverter" ;
#saref:hasState :FailSafeState ; # This triple only exists when the device actually is in a failsafe state.
.
:FailsafeState rdf:type s4ener:FailsafeState ;
rdfs:label "Fail safe state for the solar panel inverter." ;
s4ener:hasFailsafeDuration "P2H" ;
.
:PowerLimitProfile_1 rdf:type s4ener:PowerLimitProfile ;
s4ener:receivesPowerLimit :ReceivedPowerLimit ;
s4ener:isBoundTo :ContractualPowerLimit ;
s4ener:isProtectedBy :NominalPowerLimit ;
s4ener:isLimitedWith :FailsafePowerLimit ;
.
:ReceivedPowerLimit rdf:type s4ener:PowerLimit ;
s4ener:isChangeable "false"^^xsd:boolean ;
s4ener:isObligatory "true"^^xsd:boolean ;
s4ener:hasEarliestStartTime "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasLatestEndTime "2023-01-29T19:00:00Z"^^xsd:dateTimeStamp ;
s4ener:isActive "true"^^xsd:boolean ;
s4ener:hasPowerLimitConsumptionMax :Measurement_1 ;
s4ener:hasPowerLimitProductionMax :Measurement_2 ;
.
:ReceivedPowerLimit rdf:type s4ener:ContractualPowerLimit ;
s4ener:isChangeable "false"^^xsd:boolean ;
s4ener:isObligatory "true"^^xsd:boolean ;
s4ener:hasEarliestStartTime "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasLatestEndTime "2023-01-29T19:00:00Z"^^xsd:dateTimeStamp ;
s4ener:isActive "true"^^xsd:boolean ;
s4ener:hasContractualConsumptionMax :Measurement_3 ;
s4ener:hasContractualProductionMax :Measurement_4 ;
.
:ReceivedPowerLimit rdf:type s4ener:NominalPowerLimit ;
s4ener:isChangeable "false"^^xsd:boolean ;
s4ener:isObligatory "false"^^xsd:boolean ;
s4ener:hasEarliestStartTime "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasLatestEndTime "2023-01-29T19:00:00Z"^^xsd:dateTimeStamp ;
s4ener:isActive "true"^^xsd:boolean ;
s4ener:hasNominalConsumption :Measurement_5 ;
s4ener:hasNominalProduction :Measurement_6 ;
.
:ReceivedPowerLimit rdf:type s4ener:FailsafePowerLimit ;
s4ener:isChangeable "false"^^xsd:boolean ;
s4ener:isObligatory "true"^^xsd:boolean ;
s4ener:hasEarliestStartTime "2023-01-29T10:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasLatestEndTime "2023-01-29T19:00:00Z"^^xsd:dateTimeStamp ;
s4ener:isActive "false"^^xsd:boolean ;
s4ener:hasFailsafeConsumptionMax :Measurement_7 ;
s4ener:hasFailsafeProductionMax :Measurement_8 ;
.
:Measurement_1 rdf:type s4ener:DataPoint ;
saref:hasValue "500"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_2 rdf:type s4ener:DataPoint ;
saref:hasValue "1000"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_3 rdf:type s4ener:DataPoint ;
saref:hasValue "400"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_4 rdf:type s4ener:DataPoint ;
saref:hasValue "1500"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_5 rdf:type s4ener:DataPoint ;
saref:hasValue "50"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_6 rdf:type s4ener:DataPoint ;
saref:hasValue "1250"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_7 rdf:type s4ener:DataPoint ;
saref:hasValue "10"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_8 rdf:type s4ener:DataPoint ;
saref:hasValue "0"^^xsd:decimal ;
saref:isMeasuredIn om:kilowatt ;
saref:relatesToProperty :Power_1 ;
.
:Power_1 rdf:type saref:Power .
dcterms:abstract a owl:AnnotationProperty .
@prefix : <https://saref.etsi.org/saref4ener/v1.2.1/example/PowerProfileExample/> .
@prefix dc: <http://purl.org/dc/terms/> .
@prefix om-ucum: <http://www.ontology-of-units-of-measure.org/resource/om-2-ucum/> .
@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 s2: <http://ontology.tno.nl/interconnect/s2#> .
@prefix s4ener: <https://saref.etsi.org/saref4ener/> .
@prefix saref: <https://saref.etsi.org/core/> .
@prefix time: <http://www.w3.org/2006/time#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dctype: <http://purl.org/dc/dcmitype/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
<https://saref.etsi.org/saref4ener/v1.2.1/example/powerProfileExample#>
a dctype:Dataset ;
dcterms:conformsTo <https://saref.etsi.org/saref4ener/v1.2.1/> ;
dcterms:abstract "This example file exemplifies how to model a Power Profile in the SAREF4ENER extension following the definition in the S2 standard." ;
dcterms:description "This example file exemplifies how to model a Power profile in the SAREF4ENER extension." ;
dcterms:title "SAREF4ENER examples for a Power Profile"@en ;
owl:imports saref:, s4ener: ;
dcterms:license <https://forge.etsi.org/etsi-software-license> ;
.
:AlternativesGroup_1
a s4ener:AlternativesGroup ;
rdfs:comment "This Alternatives Group example follows the PowerProfileDefinition example from page 28 of the S2 documentation. The difference in modelling choice is that Saref4Energy does not contain an equivalent for the PowerSequenceContainers used in S2. Therefore, the PowerSequences in this example together form the cartesian product of the PowerSequenceContainers in" ;
rdfs:label "Alternatives group 1" ;
rdfs:label "Power Sequence Container" ;
saref:consistsOf :PowerSequence_1 ;
saref:consistsOf :PowerSequence_2 ;
saref:consistsOf :PowerSequence_3 ;
saref:consistsOf :PowerSequence_4 ;
saref:consistsOf :PowerSequence_5 ;
saref:consistsOf :PowerSequence_6 ;
s4ener:hasEarliestStartTime "2023-02-24T17:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasLatestEndTime "2023-02-24T21:00:00Z"^^xsd:dateTimeStamp ;
.
:Device_1
a saref:Device ;
rdfs:comment "An example washing machine that exhibits the example power profile of the S2 documentation." ;
rdfs:label "Washing Machine" ;
saref:hasProfile :PowerProfile_1 ;
.
:Energy_1
a saref:Energy ;
rdfs:label "Energy 1" ;
.
:Measurement_1
a saref:Measurement ;
rdfs:label "Measurement 1" ;
saref:hasValue "2000" ;
saref:isMeasuredIn om-ucum:kilowattHour ;
saref:relatesToProperty :Energy_1 ;
.
:Measurement_2
a saref:Measurement ;
rdfs:label "Measurement 2" ;
saref:hasValue "1500" ;
saref:isMeasuredIn om-ucum:kilowattHour ;
saref:relatesToProperty :Power_1 ;
.
:Measurement_3
a saref:Measurement ;
rdfs:label "Measurement 3" ;
saref:hasValue "100" ;
saref:isMeasuredIn om-ucum:kilowattHour ;
saref:relatesToProperty :Energy_1 ;
saref:relatesToProperty :Power_1 ;
.
:PowerProfile_1
a s4ener:PowerProfile ;
rdfs:comment """The Power Profile was the only flexibility profile that was in the original saref4Ener. In this extension we added several other forms of energy flexibility drawn from the S2 standard.
A major difference in modelling is that S2 divides a appliance task into various phases, where in each phases the Energy Management System can choose the appropriate profile. In EEBUS we (for now) only have the option of choosing the whole program before starting it. Therefore, we appended the various slots of the S2 example into six PowerSequence, each concatenating three consecutive S2 PowerSequences. """ ;
rdfs:label "Power profile 1" ;
saref:consistsOf :AlternativesGroup_1 ;
saref:isAbout :Energy_1 ;
saref:isAbout :Power_1 ;
s4ener:belongsTo :Device_1 ;
s4ener:nodeRemoteControllable true ;
s4ener:supportsReselection true ;
s4ener:supportsSingleSlotSchedulingOnly true ;
s4ener:totalSequencesCountMax "1"^^xsd:unsignedInt ;
.
:PowerSequence_1
a s4ener:PowerSequence ;
s4ener:abnormalConditionOnly false ;
s4ener:hasMaxPauseDuration "P0M"^^xsd:duration ;
rdfs:comment "This power sequence is the combination of the first PowerSequences of all three PowerSequenceContainers in the S2 PowerProfile example." ;
rdfs:label "Power sequence 1" ;
saref:consistsOf :Slot_1 ;
saref:consistsOf :Slot_2 ;
saref:consistsOf :Slot_3 ;
saref:consistsOf :Slot_4 ;
saref:consistsOf :Slot_5 ;
saref:consistsOf :Slot_6 ;
saref:consistsOf :Slot_7 ;
saref:consistsOf :Slot_8 ;
saref:consistsOf :Slot_9 ;
s4ener:hasEndTime "2023-02-17T21:00:00Z"^^xsd:dateTimeStamp ;
s4ener:hasStartTime "2023-02-17T17:00:00Z"^^xsd:dateTimeStamp ;
s4ener:isPausable false ;
.
:PowerSequence_2
a s4ener:PowerSequence ;
rdfs:label "Power sequence 2" ;
.
:PowerSequence_3
a s4ener:PowerSequence ;
rdfs:label "Power sequence 3" ;
.
:PowerSequence_4
a s4ener:PowerSequence ;
rdfs:label "Power sequence 4" ;
.
:PowerSequence_5
a s4ener:PowerSequence ;
rdfs:label "Power sequence 5" ;
.
:PowerSequence_6
a s4ener:PowerSequence ;
rdfs:label "Power sequence 6" ;
.
:Power_1
a saref:Power ;
rdfs:label "Power 1" ;
.
:Slot_1
a s4ener:Slot ;
rdfs:label "Slot 1" ;
s4ener:belongsTo :PowerSequence_1 ;
s4ener:hasDurationDefault "PT1H"^^xsd:duration ;
s4ener:hasDurationMin "PT30M"^^xsd:duration ;
s4ener:hasSlotValue :Measurement_3 ;
s4ener:slotNumber "1"^^xsd:unsignedInt ;
.
:Slot_2
a s4ener:Slot ;
rdfs:label "Slot 2" ;
s4ener:slotNumber "2"^^xsd:unsignedInt ;
.
:Slot_3
a s4ener:Slot ;
rdfs:label "Slot 3" ;
s4ener:slotNumber "3"^^xsd:unsignedInt ;
.
:Slot_4
a s4ener:Slot ;
rdfs:label "Slot 4" ;
s4ener:slotNumber "4"^^xsd:unsignedInt ;
.
:Slot_5
a s4ener:Slot ;
rdfs:comment """The PowerProfile example has a max pause before the first slot of the only power sequence of the second power sequence container. To properly model this we add a maximum activation delay to the fifth slot.
Throughout this example we give several ways to model the duration or time, such that we can consider the pros and cons of the various options: include Time ontology or directly use the xsd:decimal datatype.""" ;
rdfs:label "Slot 5 maximum activation delay" ;
s4ener:hasActivationDelayMax "PT10M"^^xsd:duration ;
s4ener:slotNumber "5"^^xsd:unsignedInt ;
.
:Slot_6
a s4ener:Slot ;
rdfs:label "Slot 6" ;
s4ener:slotNumber "6"^^xsd:unsignedInt ;
.
:Slot_7
a s4ener:Slot ;
rdfs:label "Slot 7" ;
s4ener:slotNumber "7"^^xsd:unsignedInt ;
.
:Slot_8
a s4ener:Slot ;
rdfs:label "Slot 8" ;
s4ener:hasActivationDelayMax "PT5M"^^xsd:duration ;
s4ener:slotNumber "8"^^xsd:unsignedInt ;
.
:Slot_9
a s4ener:Slot ;
rdfs:label "Slot 9" ;
s4ener:slotNumber "9"^^xsd:unsignedInt ;
.
dcterms:abstract a owl:AnnotationProperty .
dcterms:conformsTo a owl:AnnotationProperty .
\ No newline at end of file
This diff is collapsed.