Skip to content
Snippets Groups Projects
saref.ttl 72.8 KiB
Newer Older
@prefix : <https://saref.etsi.org/core/> .
Maxime Lefrançois's avatar
Maxime Lefrançois committed
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix xml: <http://www.w3.org/XML/1998/namespace> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix saref: <https://saref.etsi.org/core/> .
Maxime Lefrançois's avatar
Maxime Lefrançois committed
@prefix dcterms: <http://purl.org/dc/terms/> .
Maxime Lefrançois's avatar
Maxime Lefrançois committed
@prefix vann: <http://purl.org/vocab/vann/> .
Maxime Lefrançois's avatar
Maxime Lefrançois committed

<https://saref.etsi.org/core/> rdf:type owl:Ontology ;
                          owl:versionInfo "v3.1.1" ;
                          owl:versionIRI <https://saref.etsi.org/core/v3.1.1/> ;
                          dcterms:modified "2020-05-29"^^xsd:date ;
                          dcterms:title "SAREF: the Smart Applications REFerence ontology"@en ;
                          dcterms:publisher <https://www.etsi.org/> ;
                          dcterms:license <https://forge.etsi.org/etsi-software-license> ;
                          dcterms:creator <https://www.linkedin.com/in/lauradaniele> ;
                          dcterms:creator <http://www.garcia-castro.com/foaf.rdf#me> ;
                          dcterms:creator <https://w3id.org/people/mpoveda/> ;
                          dcterms:creator <http://maxime-lefrancois.info/me#> ;
                          dcterms:source <https://forge.etsi.org/rep/SAREF/saref-core/> ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                          vann:preferredNamespacePrefix "saref" ;
                          vann:preferredNamespaceUri "https://saref.etsi.org/core/" ;
                          dcterms:description "The Smart Applications REFerence ontology (SAREF) is intended to enable interoperability between solutions from different providers and among various activity sectors in the Internet of Things (IoT), thus contributing to the development of the global digital market."@en ;
                          rdfs:comment """Information about changes compared to version 2.1.1: 
 - Added the saref:FeatureOfInterest class and the properties used to relate it to saref:Measurement (saref:hasMeasurement and saref:isMeasurementOf) and to saref:Property (saref:hasProperty and saref:isPropertyOf).
 - Added the saref:measurementMadeBy property as inverse of saref:makesMeasurement.
 - The saref:relatesToProperty and saref:relatesToMeasurement properties are now inverse of each other.
 - The range of saref:hasValue, which was defined as xsd:float, has been removed to support other datatypes for measurements.
 - The range of datatype properties, which was defined as xsd:string, has been removed in order to support strings with language tags (rdf:langString). This affects saref:hasDescription, saref:hasManufacturer, saref:hasModel and saref:hasName, which now have implicitly a range of rdfs:Literal.
 - The saref:hasName property has been removed and the use of rdfs:label is recommended. 
 - The saref:hasDescription property has been deprecated and the use of rdfs:comment is recommended. 
 - Too restrictive restrictions have been removed and in some cases the ontology documentation has been updated to reflect this: a saref:Command having at most one saref:hasDescription; a saref:Task being accomplished by at least one saref:Device; a saref:Device having a typical consumption of only energy or power; a saref:Commodity being measured in units of measure; restrictions on the values of saref:accomplishes that only covered specific use cases; universal restrictions on the saref:actsUpon property have been changed to existential ones; restrictions on the commands that a saref:Function may have, since there could be others not included in the defined enumerations; restrictive documentation of saref:EventFunction and saref:SmokeSensor.
 - Bugs have been fixed: some devices (saref:DoorSwitch, saref:EnergyMeter, saref:LigthSwitch, saref:SmokeSensor, and saref:TemperatureSensor) were defined as subclass of a device and at the same time as consisting of such device; a saref:LightSwitch controls light and does not measure light, since it is an actuator; incorrect documentation of saref:OnState and saref:OffState.
 - The saref:BuildingRelated, saref:EnergyRelated and saref:FunctionRelated classes have been removed, since the different extensions already classify the device types.
 - The instances of the subclasses of saref:Command have been removed, since they represent examples.
 - The instances of saref:UnitOfMeasure have been moved to examples.
 - The classes related to the SAREF4ENER extension have been removed: saref:Generator, saref:Storage, saref:Load and saref:EnergyMeter.
 - Some instances of saref:Device have been moved to examples: saref:WashingMachine, saref:LightingDevice, saref:MicroRenewable, saref:Multimedia, and saref:Network.
 - Added domain and range axioms wherever the definition of a property unambiguously identifies the domain or the range of the property.
 - The OWL Time ontology is not imported anymore.
 - The documentation of some ontology terms has been updated for clarification.
 - Language tags have been added to all labels and comments.
""" ;
                          rdfs:comment """Information about changes compared to version 1.1.1:
 - The classes and properties related to how to represent devices in building spaces (such as the saref:BuildingSpace class,  saref:BuildingObject class and saref:isLocatedIn property) have been removed from SAREF and incorporated  into the SAREF4BLDG extension related to buildings, including the reuse of the W3C¨ WGS84 geo positioning vocabulary.
 - The saref:DeviceCategory and saref:FunctionCategory classes have been removed. Instead, the hierarchy of device categories has been implemented directly as subclasses of the saref:Device class.
 - The information specific for energy efficiency has been moved to the SAREF4ENER extension. For example, the saref:Profile class has been redefined to accommodate only the properties that are general enough for any type of profile, not only for energy and power. Details on how to specifically model a power profile can be found in the SAREF4ENER extension. 
 - The subclasses of the saref:Energy class  have been removed (i.e., Average Energy, Maximum Energy, Minimum Energy, Total Energy, HVAC Energy, Hot Water Energy and Lighting Energy).
 - The saref:Property class has been split into two classes (saref:Property and saref:Measurement), as it is done in the SAREF4ENVI extension, in order to properly accommodate the distinction between the concept of property (an observable quality of something) and the concept of measurement (a concrete value observed for a property).
 - Too restrictive cardinality restrictions have been revised, sometimes making them optional rather than mandatory (better to make properties mandatory in the extensions that specialize SAREF for a specific purpose, rather than restricting SAREF, whose purpose is more general). For example, definitions of units of measurement using an enumeration (owl:oneOf) were too restrictive because they did not allow using other units than those enumerated. Therefore, the individuals of each class are still there, but the owl:oneOf enumeration has been removed.
 - The saref:UnitOfMeasure subclasses use individuals from the OM ontology for unit of measures, but this is not the only solution. It has been clarified in the comments that the OM ontology is an example, but other ontologies can be used.
 - The global restrictions (rdfs:domain and rdfs:range) in object properties have been completely removed not to hinder interoperability. Object properties are now only restricted locally in the classes. 
 - The subclasses of saref:Task have been transormed in individuals.
 - The saref:hasTask property has been removed from the saref:Profile class to resolve an ambiguity with the saref:Task class.""" .

dcterms:issued a owl:AnnotationProperty .
dcterms:modified a owl:AnnotationProperty .
dcterms:source a owl:AnnotationProperty .
dcterms:creator a owl:AnnotationProperty .
dcterms:title a owl:AnnotationProperty .
dcterms:description a owl:AnnotationProperty .
dcterms:license a owl:AnnotationProperty .
dcterms:publisher a owl:AnnotationProperty .
vann:preferredNamespacePrefix a owl:AnnotationProperty .
vann:preferredNamespaceUri a owl:AnnotationProperty .

Maxime Lefrançois's avatar
Maxime Lefrançois committed

#################################################################
#    Object Properties
#################################################################

###  https://saref.etsi.org/core/accomplishes
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:accomplishes rdf:type owl:ObjectProperty ;
                   owl:inverseOf saref:isAccomplishedBy ;
                   rdfs:comment "A relationship between a certain entity (e.g., a device) and the task it accomplishes"@en ;
                   rdfs:range saref:Task ;
                   rdfs:label "accomplishes"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/actsUpon
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:actsUpon rdf:type owl:ObjectProperty ;
               rdfs:comment "A relationship between a command and a state"@en ;
               rdfs:domain saref:Command ;
               rdfs:range saref:State ;
               rdfs:label "acts upon"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/consistsOf
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:consistsOf rdf:type owl:ObjectProperty ;
                 rdfs:comment "A relationship indicating a composite entity that consists of other entities (e.g., a temperature/humidity sensor that consists of a temperature sensor and a humidity sensor)"@en ;
                 rdfs:label "consists of"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/controlsProperty
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:controlsProperty rdf:type owl:ObjectProperty ;
                       rdfs:comment "A relationship specifying the property that can be controlled by a certain device"@en ;
                       rdfs:domain saref:Device ;
                       rdfs:range saref:Property ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                       rdfs:label "controls property"@en .


###  https://saref.etsi.org/core/hasCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasCommand rdf:type owl:ObjectProperty ;
                 owl:inverseOf saref:isCommandOf ;
                 rdfs:comment "A relationship between a function and a command"@en ;
                 rdfs:domain saref:Function ;
                 rdfs:range saref:Command ;
                 rdfs:label "has command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasFunction rdf:type owl:ObjectProperty ;
                  rdfs:comment "A relationship identifying the function of a device"@en ;
                  rdfs:domain saref:Device ;
                  rdfs:range saref:Function ;
                  rdfs:label "has function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasMeasurement
saref:hasMeasurement rdf:type owl:ObjectProperty ;
                     rdfs:comment "A relationship between a feature of interest and a measurement about it"@en ;
                     rdfs:domain saref:FeatureOfInterest ;
                     rdfs:range saref:Measurement ;
                     rdfs:label "has measurement"@en .


###  https://saref.etsi.org/core/hasMeterReading
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasMeterReading rdf:type owl:ObjectProperty ;
                      rdfs:comment "A relationship between a metering function and the measurement of the reading"@en ;
                      rdfs:domain saref:MeteringFunction ;
                      rdfs:range saref:Measurement ;
                      rdfs:label "has meter reading"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasMeterReadingType
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasMeterReadingType rdf:type owl:ObjectProperty ;
                          rdfs:comment "A relationship identifying the reading type of a metering function (e.g., Water, Gas, Pressure , Energy , Power, etc.)"@en ;
                          rdfs:domain saref:MeteringFunction ;
                          rdfs:range saref:Property ;
                          rdfs:label "has meter reading type"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasPrice
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasPrice rdf:type owl:ObjectProperty ;
               rdfs:comment "A relationship indentifying the price associated to an entity"@en ;
               rdfs:range saref:Price ;
               rdfs:label "has price"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasProfile
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasProfile rdf:type owl:ObjectProperty ;
                 rdfs:comment "A relationship associating a profile to a certain device"@en ;
                 rdfs:domain saref:Device ;
                 rdfs:range saref:Profile ;
                 rdfs:label "has profile"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasMeasurement
saref:hasMeasurement rdf:type owl:ObjectProperty ;
                     rdfs:comment "A relationship between a feature of interest and a measurement about it"@en ;
                     rdfs:domain saref:FeatureOfInterest ;
                     rdfs:range saref:Measurement ;
                     rdfs:label "has measurement"@en .


###  https://saref.etsi.org/core/hasProperty
saref:hasProperty rdf:type owl:ObjectProperty ;
                  rdfs:comment "A relationship between a feature of interest and a property of that feature"@en ;
                  rdfs:domain saref:FeatureOfInterest ;
                  rdfs:range saref:Property ;
###  https://saref.etsi.org/core/hasSensingRange
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasSensingRange rdf:type owl:ObjectProperty ;
                      rdfs:comment "A relationship between a sensing function and a measurement identifying the range of a sensor detection"@en ;
                      rdfs:domain saref:SensingFunction ;
                      rdfs:range saref:Measurement ;
                      rdfs:label "has sensing range"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasSensorType
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasSensorType rdf:type owl:ObjectProperty ;
                    rdfs:comment "A relationship identifying the sensing type of a sensor detection (i.e., Temperature, Occupancy, Humidity, Motion , Smoke, Pressure, etc.) "@en ;
                    rdfs:domain saref:SensingFunction ;
                    rdfs:range saref:Property ; 
                    rdfs:label "has sensor type"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasState rdf:type owl:ObjectProperty ;
               rdfs:comment "A relationship identifying the type of state of a device"@en ;
               rdfs:domain saref:Device ;
               rdfs:range saref:State ;
               rdfs:label "has state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasThresholdMeasurement
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasThresholdMeasurement rdf:type owl:ObjectProperty ;
                              rdfs:comment "A relationship associated with an event function to notify that a certain threshold measurement has been exceeded"@en ;
                              rdfs:domain saref:EventFunction ;
                              rdfs:range saref:Measurement ;
                              rdfs:label "has threshold measurement"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasTime rdf:type owl:ObjectProperty ;
              rdfs:comment "A relationship to associate time information to an entity"@en ;
              rdfs:range saref:Time ;
              rdfs:label "has time"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasTypicalConsumption
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasTypicalConsumption rdf:type owl:ObjectProperty ;
                            rdfs:comment "A relationship identifying the typical (energy or power) consumption of a device"@en ;
                            rdfs:label "has typical consumption"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isAbout rdf:type owl:ObjectProperty ;
              rdfs:comment "A relationship identifying what an entity, such as a profile, is about"@en ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
              rdfs:label "isAbout"@en .


###  https://saref.etsi.org/core/isAccomplishedBy
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isAccomplishedBy rdf:type owl:ObjectProperty ;
                       rdfs:comment "A relationship identifying an entity (e.g., a device) that can accomplish a task."@en ;
                       rdfs:domain saref:Task ;
                       rdfs:label "is accomplished by"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/isCommandOf
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isCommandOf rdf:type owl:ObjectProperty ;
                  rdfs:comment "A relationship between a command and a function."@en ;
                  rdfs:domain saref:Command ;
                  rdfs:range saref:Function ;
                  rdfs:label "is command of"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/isControlledByDevice
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isControlledByDevice rdf:type owl:ObjectProperty ;
                           rdfs:comment "A relationship specifying the devices that can control a certain property"@en ;
                           rdfs:domain saref:Property ;
                           rdfs:range saref:Device ;
                           rdfs:label "is controlled by device"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/isMeasuredByDevice
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isMeasuredByDevice rdf:type owl:ObjectProperty ;
                         rdfs:comment "A relationship specifying the devices that can measure a certain property"@en ;
                         rdfs:domain saref:Property ;
                         rdfs:range saref:Device ;
                         rdfs:label "is measured by device"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/isMeasuredIn
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isMeasuredIn rdf:type owl:ObjectProperty ;
                   rdfs:comment "A relationship identifying the unit of measure used for a certain entity."@en ;
                   rdfs:domain saref:Measurement ;
                   rdfs:range saref:UnitOfMeasure ;
                   rdfs:label "is measured in"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/isMeasurementOf
saref:isMeasurementOf rdf:type owl:ObjectProperty ;
                      owl:inverseOf saref:hasMeasurement ;
                      rdfs:comment "A relationship between a measurement and the feature of interest whose quality was measured"@en ;
                      rdfs:domain saref:Measurement ;
                      rdfs:range saref:FeatureOfInterest ;
                      rdfs:label "isMeasurementOf"@en .


###  https://saref.etsi.org/core/isOfferedBy
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isOfferedBy rdf:type owl:ObjectProperty ;
                  owl:inverseOf saref:offers ;
                  rdfs:comment "A relationship between a service and a device that offers the service"@en ;
                  rdfs:domain saref:Service ;
                  rdfs:range saref:Device ;
                  rdfs:label "is offered by"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/isPropertyOf
saref:isPropertyOf rdf:type owl:ObjectProperty ;
                   rdfs:comment "A relationship between a property and the feature of interest it belongs to"@en ;
                   rdfs:domain saref:Property ;
                   rdfs:range saref:FeatureOfInterest ;
###  https://saref.etsi.org/core/isUsedFor
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:isUsedFor rdf:type owl:ObjectProperty ;
                rdfs:comment "A relationship specifying the commodity for which a device is used for"@en ;
                rdfs:label "is used for"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/makesMeasurement
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:makesMeasurement rdf:type owl:ObjectProperty ;
                       owl:inverseOf saref:measurementMadeBy ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                       rdfs:comment "A relation between a device and the measurements it makes. Such measurement will link together the value of the measurement, its unit of measure and the property to which it relates."@en ;
                       rdfs:domain saref:Device ;
                       rdfs:range saref:Measurement ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                       rdfs:label "makes measurement"@en .

###  https://saref.etsi.org/core/measurementMadeBy
saref:measurementMadeBy rdf:type owl:ObjectProperty ;
                        rdfs:comment "A relation between a measurement and the device that made it."@en ;
                        rdfs:domain saref:Measurement ;
                        rdfs:range saref:Device ;
                        rdfs:label "measurement made by"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed

###  https://saref.etsi.org/core/measuresProperty
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:measuresProperty rdf:type owl:ObjectProperty ;
                       rdfs:comment "A relationship specifying the property that can be measured by a certain device"@en ;
                       rdfs:domain saref:Device ;
                       rdfs:range saref:Property ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                       rdfs:label "measures property"@en .


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:offers rdf:type owl:ObjectProperty ;
             rdfs:comment "A relationship between a device and a service"@en ;
             rdfs:domain saref:Device ;
             rdfs:range saref:Service ;
             rdfs:label "offers"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/relatesToMeasurement
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:relatesToMeasurement rdf:type owl:ObjectProperty ;
                           rdfs:comment "A relationship between a property and the measurements it relates to"@en ;
                           rdfs:domain saref:Property ;
                           rdfs:range saref:Measurement ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                           rdfs:label "relates to measurement"@en .


###  https://saref.etsi.org/core/relatesToProperty
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:relatesToProperty rdf:type owl:ObjectProperty ;
                        owl:inverseOf saref:relatesToMeasurement ;
                        rdfs:comment "A relationship between a measurement and the property it relates to"@en ;
                        rdfs:domain saref:Measurement ;
Raul Garcia-Castro's avatar
Raul Garcia-Castro committed
                        rdfs:range saref:Property ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                        rdfs:label "relates to property"@en .


###  https://saref.etsi.org/core/represents
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:represents rdf:type owl:ObjectProperty ;
                 rdfs:comment "A relationship between a service and a function."@en ;
                 rdfs:domain saref:Service ;
                 rdfs:range saref:Function ;
                 rdfs:label "represents"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


#################################################################
#    Data properties
#################################################################

###  https://saref.etsi.org/core/hasDescription
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasDescription rdf:type owl:DatatypeProperty ;
                     owl:deprecated "true"^^xsd:boolean ; 
                     rdfs:comment "DEPRECATED: The use of rdfs:comment is recommended instead."@en ;
                     rdfs:comment "A relationship providing a description of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en ;
                     rdfs:label "has description"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasManufacturer
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasManufacturer rdf:type owl:DatatypeProperty ;
                      rdfs:comment "A relationship identifying the manufacturer of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en ;
                      rdfs:label "has manufacturer"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasModel
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasModel rdf:type owl:DatatypeProperty ;
               rdfs:comment "A relationship identifying the model of an entity (e.g., device). The value is expected to be a string or a string with language tag."@en ;
               rdfs:label "has model"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/hasTimestamp
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasTimestamp rdf:type owl:DatatypeProperty ;
                   rdfs:comment "A relationship stating the timestamp of an entity (e.g. a measurement)."@en ;
                   rdfs:label "has timestamp"@en .


###  https://saref.etsi.org/core/hasValue
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:hasValue rdf:type owl:DatatypeProperty ;
               rdfs:comment "A relationship defining the value of a certain property, e.g., energy or power. Note that, even if numeric values are expected to enable reasoning, measurement values could use other datatypes."@en ;
               rdfs:label "has value"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


#################################################################
#    Classes
#################################################################


###  https://saref.etsi.org/core/ActuatingFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:ActuatingFunction rdf:type owl:Class ;
                        rdfs:subClassOf saref:Function ;
                        rdfs:comment "A function that allows to transmit data to actuators, such as level settings (e.g., temperature) or binary switching (e.g., open/close, on/off)"@en ;
                        rdfs:label "Actuating function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Actuator
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Actuator rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                               [ rdf:type owl:Restriction ;
                                 owl:onProperty saref:hasFunction ;
                                 owl:someValuesFrom saref:ActuatingFunction
                               ] ;
               rdfs:comment "A device responsible for moving or controlling a mechanism or system by performing an actuating function"@en ;
               rdfs:label "Actuator"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Appliance
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Appliance rdf:type owl:Class ;
                rdfs:comment "An electrical/mechanical machine that accomplish some household functions, such as cleaning or cooking"@en ;
                rdfs:label "Appliance"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/CloseCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:CloseCommand rdf:type owl:Class ;
                   rdfs:subClassOf saref:Command ,
                                   [ rdf:type owl:Restriction ;
                                     owl:onProperty saref:actsUpon ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                   ] ,
                                   [ rdf:type owl:Restriction ;
                                     owl:onProperty saref:isCommandOf ;
                                     owl:allValuesFrom saref:OpenCloseFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                   ] ;
                   owl:disjointWith saref:OpenCommand ;
                   rdfs:comment "A type of command"@en ;
                   rdfs:label "Close command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/CloseState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:CloseState rdf:type owl:Class ;
                 rdfs:subClassOf saref:OpenCloseState ;
                 rdfs:comment "The state of a device that is CLOSE"@en ;
                 rdfs:label "Close state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Coal rdf:type owl:Class ;
           rdfs:subClassOf saref:Commodity ;
           rdfs:comment "A type of commodity"@en ;
           rdfs:label "Coal"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Command rdf:type owl:Class ;
              rdfs:subClassOf [ rdf:type owl:Restriction ;
                                owl:onProperty saref:actsUpon ;
                                owl:allValuesFrom saref:State
                              ] ,
                              [ rdf:type owl:Restriction ;
                                owl:onProperty saref:isCommandOf ;
                                owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                owl:onClass saref:Function
                              ] ;
              rdfs:comment "A directive that a device must support to perform a certain function. A command may act upon a state, but does not necessarily act upon a state. For example, the ON command acts upon the ON/OFF state, but the GET command does not act upon any state, it simply gives a directive to retrieve a certain value. We propose here a list of commands that are relevant for the purpose of SAREF, but this list can be extended."@en ;
              rdfs:label "Command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Commodity
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Commodity rdf:type owl:Class ;
                rdfs:comment "A marketable item for which there is demand, but which is supplied without qualitative differentiation across a market. SAREF refers to energy commodities such as electricity, gas, coal and oil. "@en ;
                rdfs:label "Commodity"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Currency
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Currency rdf:type owl:Class ;
               rdfs:subClassOf saref:UnitOfMeasure ;
               rdfs:comment "The class of units of measure for price"@en ;
               rdfs:label "Currency"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Device rdf:type owl:Class ;
             rdfs:subClassOf [ rdf:type owl:Restriction ;
                               owl:onProperty saref:consistsOf ;
                               owl:allValuesFrom saref:Device
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:controlsProperty ;
                               owl:allValuesFrom saref:Property
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:hasProfile ;
                               owl:allValuesFrom saref:Profile
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:hasState ;
                               owl:allValuesFrom saref:State
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:isUsedFor ;
                               owl:allValuesFrom saref:Commodity
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:makesMeasurement ;
                               owl:allValuesFrom saref:Measurement
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:measuresProperty ;
                               owl:allValuesFrom saref:Property
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:offers ;
                               owl:allValuesFrom saref:Service
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:accomplishes ;
                               owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                               owl:onClass saref:Task
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:hasFunction ;
                               owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                               owl:onClass saref:Function
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:hasManufacturer ;
                               owl:maxCardinality "1"^^xsd:nonNegativeInteger
                             ] ,
                             [ rdf:type owl:Restriction ;
                               owl:onProperty saref:hasModel ;
                               owl:maxCardinality "1"^^xsd:nonNegativeInteger
                             ] ;
             rdfs:comment "A tangible object designed to accomplish a particular task. In order to accomplish this task, the device performs one or more functions. For example, a washing machine is designed to wash (task) and to accomplish this task it performs a start and stop function."@en ;
             rdfs:label "Device"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/DoorSwitch
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:DoorSwitch rdf:type owl:Class ;
                 rdfs:subClassOf saref:Switch ,
                                 [ rdf:type owl:Restriction ;
                                   owl:onProperty saref:hasFunction ;
                                   owl:someValuesFrom saref:OpenCloseFunction
                                 ] ,
                                 [ rdf:type owl:Restriction ;
                                   owl:onProperty saref:hasState ;
                                   owl:someValuesFrom saref:OpenCloseState
                                 ] ;
                 rdfs:comment "A switch that performs the saref:OpenCloseFunction, is used for controlling a door, and can be found in the state saref:OpenCloseState. A saref:DoorSwitch is typically used to accomplish saref:Safety."@en ;
                 rdfs:label "Door switch"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Electricity
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Electricity rdf:type owl:Class ;
                  rdfs:subClassOf saref:Commodity ;
                  rdfs:comment "A type of commodity"@en ;
                  rdfs:label "Electricity"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Energy rdf:type owl:Class ;
             rdfs:subClassOf saref:Property ;
             rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value measured in an energy unit (such as Kilowatt_Hour or Watt_hour). Furter specializations of the saref:Energy class can be found in the SAREF4ENER extension, where classes such as EnergyMax, EnergyMin and EnergyExpected are defined. "@en ;
             rdfs:label "Energy"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/EnergyUnit
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:EnergyUnit rdf:type owl:Class ;
                 rdfs:subClassOf saref:UnitOfMeasure ;
                 rdfs:comment "The unit of measure for energy"@en ;
                 rdfs:label "Energy unit"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/EventFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:EventFunction rdf:type owl:Class ;
                    rdfs:subClassOf saref:Function ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty saref:hasThresholdMeasurement ;
                                      owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                      owl:onClass saref:Measurement
                                    ] ;
                    rdfs:comment "A function that allows to notify about some relevant activity; e.g., that a certain threshold value has been exceeded or that some object has moved."@en ;
                    rdfs:label "Event function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/FeatureOfInterest
saref:FeatureOfInterest rdf:type owl:Class ;
                        rdfs:subClassOf [ a owl:Restriction ;
                                          owl:onProperty saref:hasProperty ;
                                          owl:allValuesFrom saref:Property 
                                        ] ,
                                        [ a owl:Restriction ;
                                          owl:allValuesFrom saref:Measurement 
                                        ] ; 
                        rdfs:comment "A feature of interest represents any real world entity from which a property is measured."@en ;
                        rdfs:label "Feature of interest"@en .

###  https://saref.etsi.org/core/Function
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Function rdf:type owl:Class ;
               rdfs:subClassOf [ rdf:type owl:Restriction ;
                                 owl:onProperty saref:hasCommand ;
                                 owl:minQualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                 owl:onClass saref:Command
                               ] ;
               rdfs:comment "The functionality necessary to accomplish the task for which a device is designed. A device can be designed to perform more than one function. Functions can be structured in categories (subclasses) that reflect different points of view, for example, considering the specific application area for which a function can be used (e.g., light, temperature, motion, heat, power, etc.), or the capability that a function can support (e.g., receive, reply, notify, etc.), and so forth. "@en ;
               rdfs:label "Function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Gas rdf:type owl:Class ;
          rdfs:subClassOf saref:Commodity ;
          rdfs:comment "A type of commodity"@en ;
          rdfs:label "Gas"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/GetCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:GetCommand rdf:type owl:Class ;
                 rdfs:subClassOf saref:Command ;
                 rdfs:comment "A type of command"@en ;
                 rdfs:label "Get command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/GetCurrentMeterValueCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:GetCurrentMeterValueCommand rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                  rdfs:subClassOf saref:GetCommand ,
                                                 [ rdf:type owl:Restriction ;
                                                   owl:onProperty saref:isCommandOf ;
                                                   owl:allValuesFrom saref:MeteringFunction
                                                 ] ;
                                  rdfs:comment "A type of get command"@en ;
                                  rdfs:label "Get current meter value command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/GetMeterDataCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:GetMeterDataCommand rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                          rdfs:subClassOf saref:GetCommand ,
                                         [ rdf:type owl:Restriction ;
                                           owl:onProperty saref:isCommandOf ;
                                           owl:allValuesFrom saref:MeteringFunction
                                         ] ;
                          rdfs:comment "A type of get command"@en ;
                          rdfs:label "Get meter data command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/GetMeterHistoryCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:GetMeterHistoryCommand rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                              rdfs:subClassOf saref:GetCommand ,
                                             [ rdf:type owl:Restriction ;
                                               owl:onProperty saref:isCommandOf ;
                                               owl:allValuesFrom saref:MeteringFunction
                                             ] ;
                             rdfs:comment "A type of get command"@en ;
                             rdfs:label "Get meter history command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/GetSensingDataCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:GetSensingDataCommand rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                            rdfs:subClassOf saref:GetCommand ,
                                             [ rdf:type owl:Restriction ;
                                               owl:onProperty saref:isCommandOf ;
                                               owl:allValuesFrom saref:SensingFunction
                                             ] ;
                            rdfs:comment "A type of get command"@en ;
                            rdfs:label "Get sensing data command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:HVAC rdf:type owl:Class ;
           rdfs:comment "Heating, Ventilation and Air Conditioning (HVAC) device that provides indoor environmental comfort. A saref:HVAC is typically used to accomplish saref:Comfort."@en ;
           rdfs:label "HVAC"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Humidity
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Humidity rdf:type owl:Class ;
               rdfs:subClassOf saref:Property ;
               rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit"@en ;
               rdfs:label "Humidity"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/IlluminanceUnit
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:IlluminanceUnit rdf:type owl:Class ;
                      rdfs:subClassOf saref:UnitOfMeasure ;
                      rdfs:comment "The unit of measure for light"@en ;
                      rdfs:label "Illuminance unit"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/LevelControlFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:LevelControlFunction rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                           rdfs:subClassOf saref:ActuatingFunction ;
                           rdfs:comment "An actuating function that allows to do level adjustments of a property in a certain range (e.g., 0%-100%), such as dimming a light in a room or setting the speed of an electric motor. "@en ;
                           rdfs:label "Level control function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Light rdf:type owl:Class ;
            rdfs:subClassOf saref:Property ;
            rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a illuminance unit (lux)"@en ;
            rdfs:label "Light"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/LightSwitch
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:LightSwitch rdf:type owl:Class ;
                  rdfs:subClassOf saref:Switch ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:hasFunction ;
                                    owl:someValuesFrom saref:OnOffFunction
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:hasState ;
                                    owl:someValuesFrom saref:OnOffState
                                  ] ,
                                  [ rdf:type owl:Restriction ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                    owl:onProperty saref:controlsProperty ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                    owl:someValuesFrom saref:Light
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:offers ;
                                    owl:someValuesFrom saref:SwitchOnService
                                  ] ;
                  rdfs:comment "A switch that performs the saref:OnOffFunction, controls the property saref:Light, and can be found in the state saref:OnOffState. It can offer a switch on service. A saref:LightSwitch is typically used to accomplish saref:Lighting."@en ;
                  rdfs:label "Light switch"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Measurement
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Measurement rdf:type owl:Class ;
                  rdfs:subClassOf [ rdf:type owl:Restriction ;
                                    owl:allValuesFrom saref:FeatureOfInterest
                                  ] ,
                                  [ rdf:type owl:Restriction ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                    owl:onProperty saref:isMeasuredIn ;
                                    owl:allValuesFrom saref:UnitOfMeasure
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:relatesToProperty ;
                                    owl:allValuesFrom saref:Property
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:isMeasuredIn ;
                                    owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                    owl:onClass saref:UnitOfMeasure
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:relatesToProperty ;
                                    owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ;
                                    owl:onClass saref:Property
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:hasTimestamp ;
                                    owl:allValuesFrom xsd:dateTime
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:hasValue ;
                                    owl:cardinality "1"^^xsd:nonNegativeInteger
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                  ] ;
                  rdfs:comment "Represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement."@en ;
                  rdfs:label "Measurement"@en .


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Meter rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                            [ rdf:type owl:Restriction ;
                              owl:onProperty saref:hasFunction ;
                              owl:someValuesFrom saref:MeteringFunction
                            ] ;
            rdfs:comment "A device built to accurately detect and display a quantity in a form readable by a human being. Further, a device of category saref:Meter that performs a saref:MeteringFunction."@en ;
            rdfs:label "Meter"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/MeteringFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:MeteringFunction rdf:type owl:Class ;
                       rdfs:subClassOf saref:Function ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty saref:hasMeterReading ;
                                         owl:allValuesFrom saref:Measurement
                                       ] ,
                                       [ rdf:type owl:Restriction ;
                                         owl:onProperty saref:hasMeterReadingType ;
                                         owl:allValuesFrom [ rdf:type owl:Class ;
                                                             owl:unionOf ( saref:Commodity
                                                                           saref:Property
                                                                         )
                                                           ]
                                       ] ;
                       rdfs:comment "A function that allows to get data from a meter, such as current meter reading or instantaneous demand"@en ;
                       rdfs:label "Metering function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Motion rdf:type owl:Class ;
             rdfs:subClassOf saref:Property ;
             rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a unit of measure for motion"@en ;
             rdfs:label "Motion"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/MultiLevelState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:MultiLevelState rdf:type owl:Class ;
                      rdfs:subClassOf saref:State ;
                      rdfs:comment "A type of state"@en ;
                      rdfs:label "Multi level state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/NotifyCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:NotifyCommand rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                    rdfs:subClassOf saref:Command ,
                                    [ rdf:type owl:Restriction ;
                                      owl:onProperty saref:isCommandOf ;
                                      owl:allValuesFrom saref:EventFunction
                                    ] ;
                    rdfs:comment "A type of command"@en ;
                    rdfs:label "Notify command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Occupancy
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Occupancy rdf:type owl:Class ;
                rdfs:subClassOf saref:Property ;
                rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value (saref:hasValue property) that is measured in a unit of measure for occupancy"@en ;
                rdfs:label "Occupancy"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OffCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OffCommand rdf:type owl:Class ;
                 rdfs:subClassOf saref:Command ,
                                 [ rdf:type owl:Restriction ;
                                   owl:onProperty saref:actsUpon ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                 ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:isCommandOf ;
                                    owl:allValuesFrom saref:OnOffFunction
                                  ] ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                 owl:disjointWith saref:OnCommand ;
                 rdfs:comment "A type of command"@en ;
                 rdfs:label "Off command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OffState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OffState rdf:type owl:Class ;
               rdfs:subClassOf saref:OnOffState ;
               rdfs:comment "The state of a device that is Off"@en ;
               rdfs:label "Off state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OnCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OnCommand rdf:type owl:Class ;
                rdfs:subClassOf saref:Command ,
                                [ rdf:type owl:Restriction ;
                                  owl:onProperty saref:actsUpon ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                ] ,
                                [ rdf:type owl:Restriction ;
                                  owl:onProperty saref:isCommandOf ;
                                  owl:allValuesFrom saref:OnOffFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                ] ;
                rdfs:comment "A type of command"@en ;
                rdfs:label "On command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OnOffFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OnOffFunction rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                    rdfs:subClassOf saref:ActuatingFunction ;
                    rdfs:comment "An actuating function that allows to switch on and off an actuator"@en ;
                    rdfs:label "On off function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OnOffState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OnOffState rdf:type owl:Class ;
                 rdfs:subClassOf saref:State ;
                 rdfs:comment "A type of state"@en ;
                 rdfs:label "On off state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OnState rdf:type owl:Class ;
              rdfs:subClassOf saref:OnOffState ;
              rdfs:comment "The state of a device that is On"@en ;
              rdfs:label "On state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OpenCloseFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OpenCloseFunction rdf:type owl:Class ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                        rdfs:subClassOf saref:ActuatingFunction ;
                        rdfs:comment "An actuating function that allows to open and close a device"@en ;
                        rdfs:label "Open close function"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OpenCloseState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OpenCloseState rdf:type owl:Class ;
                     rdfs:subClassOf saref:State ;
                     rdfs:comment "A type of state"@en ;
                     rdfs:label "Open close state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OpenCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OpenCommand rdf:type owl:Class ;
                  rdfs:subClassOf saref:Command ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:actsUpon ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                  ] ,
                                  [ rdf:type owl:Restriction ;
                                    owl:onProperty saref:isCommandOf ;
                                    owl:allValuesFrom saref:OpenCloseFunction
Maxime Lefrançois's avatar
Maxime Lefrançois committed
                                  ] ;
                  rdfs:comment "A type of command"@en ;
                  rdfs:label "Open command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/OpenState
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:OpenState rdf:type owl:Class ;
                rdfs:subClassOf saref:OpenCloseState ;
                rdfs:comment "The state of a device that is OPEN "@en ;
                rdfs:label "Open state"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/PauseCommand
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:PauseCommand rdf:type owl:Class ;
                   rdfs:subClassOf saref:Command ;
                   rdfs:comment "A type of command"@en ;
                   rdfs:label "Pause command"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Power rdf:type owl:Class ;
            rdfs:subClassOf saref:Property ;
            rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a power unit (such as watt or kilowatt).  Further specializations of the saref:Power class can be found in the SAREF4ENER extension, where classes such as PowerMax, PowerMin and PowerExpected are defined."@en ;
            rdfs:label "Power"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/PowerUnit
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:PowerUnit rdf:type owl:Class ;
                rdfs:subClassOf saref:UnitOfMeasure ;
                rdfs:comment "The unit of measure for power"@en ;
                rdfs:label "Power unit"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/Pressure
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Pressure rdf:type owl:Class ;
               rdfs:subClassOf saref:Property ;
               rdfs:comment "A saref:Property related to some measurements that are characterized by a certain value that is measured in a pressure unit (bar or pascal)"@en ;
               rdfs:label "Pressure"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


###  https://saref.etsi.org/core/PressureUnit
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:PressureUnit rdf:type owl:Class ;
                   rdfs:subClassOf saref:UnitOfMeasure ;
                   rdfs:comment "The unit of measure for pressure"@en ;
                   rdfs:label "Pressure unit"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Price rdf:type owl:Class ;
            rdfs:subClassOf saref:Property ;
            rdfs:comment "A saref:Property crelated to some measurements that are characterized by a certain value that is measured using saref:Currency"@en ;
            rdfs:label "Price"@en .
Maxime Lefrançois's avatar
Maxime Lefrançois committed


Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Profile rdf:type owl:Class ;
              rdfs:subClassOf [ rdf:type owl:Restriction ;
                                owl:onProperty saref:consistsOf ;
                                owl:allValuesFrom saref:Profile
                              ] ,
                              [ rdf:type owl:Restriction ;
                                owl:onProperty saref:hasPrice ;
                                owl:allValuesFrom saref:Price
                              ] ,
                              [ rdf:type owl:Restriction ;
                                owl:onProperty saref:hasTime ;
                                owl:allValuesFrom saref:Time
                              ] ,
                              [ rdf:type owl:Restriction ;
                                owl:onProperty saref:isAbout ;
                                owl:allValuesFrom [ rdf:type owl:Class ;
                                                    owl:unionOf ( saref:Commodity
                                                                  saref:Property
                                                                )
                                                  ]
                              ] ;
Raul Garcia-Castro's avatar
Raul Garcia-Castro committed
              rdfs:comment "A specification associated to a device to collect information about a certain Property (e.g., Energy) for optimizing its usage in the home, office or building in which the device is located. This specification is about a certain Property (saref:isAbout), can be calculated over a time span (saref:hasTime) and can be associated to some costs (saref:hasPrice). An example is the Power Profile defined in the SAREF4ENER extension that can be associated to a device for optimizing the Energy efficiency in the home, office or building in which the device is located."@en ;
Maxime Lefrançois's avatar
Maxime Lefrançois committed
              rdfs:label "Profile"@en .


###  https://saref.etsi.org/core/Property
Maxime Lefrançois's avatar
Maxime Lefrançois committed
saref:Property rdf:type owl:Class ;
               rdfs:subClassOf [ rdf:type owl:Restriction ;
                                 owl:onProperty saref:isControlledByDevice ;
                                 owl:allValuesFrom saref:Device
                               ] ,
                               [ rdf:type owl:Restriction ;
                                 owl:onProperty saref:isMeasuredByDevice ;
                                 owl:allValuesFrom saref:Device
                               ] ,
                               [ rdf:type owl:Restriction ;
                                 owl:onProperty saref:isPropertyOf ;