From ccaf9d95b0246634cacc43ee40d7e8e99118ff6a Mon Sep 17 00:00:00 2001 From: Rob Warren Date: Tue, 15 Oct 2024 23:56:31 -0400 Subject: [PATCH 1/7] Fix minor typo --- ssn/rdf/ontology/alignments/sdo-sosa-schema.rdfa.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/ssn/rdf/ontology/alignments/sdo-sosa-schema.rdfa.html b/ssn/rdf/ontology/alignments/sdo-sosa-schema.rdfa.html index 28ba0b7c..4561a8ad 100644 --- a/ssn/rdf/ontology/alignments/sdo-sosa-schema.rdfa.html +++ b/ssn/rdf/ontology/alignments/sdo-sosa-schema.rdfa.html @@ -196,10 +196,10 @@

Schema.org SOSA schema

For example, if variableMeasured is: molecule concentration, measurementTechnique could be: "mass spectrometry" or "nmr spectroscopy" or "colorimetry" or "immunofluorescence". If the variableMeasured is "depression rating", the measurementTechnique could be "Zung Scale" or "HAM-D" or "Beck Depression Inventory". If there are several variableMeasured properties recorded for some given data object, use a PropertyValue for each variableMeasured and attach the corresponding measurementTechnique. - Domain: DataCatalog - Domain: DataDownload - Domain: Dataset - Domain: PropertyValue + Domain: DataCatalog + Domain: DataDownload + Domain: Dataset + Domain: PropertyValue Range: Text Range: URL From ea026187e002f16b002e93e41fc995483575753b Mon Sep 17 00:00:00 2001 From: Rob Warren Date: Tue, 15 Oct 2024 23:57:37 -0400 Subject: [PATCH 2/7] Add new ssn-system:Range abstract class and subclass relevant ranging classes. Add example on survival and measurement range. --- ssn/chapters/System-capabilities.html | 50 +++++++++++++++++++--- ssn/index.html | 22 ++++++++++ ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl | 43 +++++++++++++++++++ ssn/rdf/ontology/extensions/ssn-system.ttl | 12 ++++++ 4 files changed, 122 insertions(+), 5 deletions(-) create mode 100644 ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl diff --git a/ssn/chapters/System-capabilities.html b/ssn/chapters/System-capabilities.html index f6681ce4..05955e79 100644 --- a/ssn/chapters/System-capabilities.html +++ b/ssn/chapters/System-capabilities.html @@ -71,6 +71,7 @@

Specification

, ssn-system:Latency , ssn-system:Precision , ssn-system:Resolution + , ssn-system:Range , ssn-system:ResponseTime , ssn-system:Selectivity , ssn-system:Sensitivity @@ -453,7 +454,8 @@
ssn-system:MeasurementRange
Sub class of ssn-system:SystemProperty + href="#SSNSYSTEMSystemProperty">ssn-system:SystemProperty, ssn-system:Range @@ -517,7 +519,8 @@
ssn-system:ActuationRange
Sub class of ssn-system:SystemProperty + href="#SSNSYSTEMSystemProperty">ssn-system:SystemProperty, ssn-system:Range @@ -909,6 +912,40 @@
ssn-system:Resolution
+
+
ssn-system:Range
+

IRI: http://www.w3.org/ns/ssn/systems/Range

+

an OWL Class

+ + Range - + A primitive class to represent that the value is within a numerical range. +

The use of schema:minValue and schema:maxValue are suggested to record the bounds of the numerical range.

+ + + + + + + +
is Defined By + http://www.w3.org/ns/ssn/systems/ +
+ +
+ +
ssn-system:ResponseTime

IRI: http://www.w3.org/ns/ssn/systems/ResponseTime

@@ -1134,7 +1171,8 @@
ssn-system:OperatingRange
Sub class of sosa:Property + href="#SOSAProperty">sosa:Property, ssn-system:Range @@ -1367,7 +1405,8 @@
ssn-system:OperatingPowerRangeSub class of ssn-system:OperatingProperty + href="#SSNSYSTEMOperatingProperty">ssn-system:OperatingProperty, ssn-system:Range @@ -1462,7 +1501,8 @@
ssn-system:SurvivalRange
Sub class of sosa:Property + href="#SOSAProperty">sosa:Property, ssn-system:Range diff --git a/ssn/index.html b/ssn/index.html index 91f4e47f..27c615be 100644 --- a/ssn/index.html +++ b/ssn/index.html @@ -612,6 +612,28 @@

IP68 Smart Sensor


       
     
+ +
+

InkBird IBS TH2 Sensor

+
+

These examples describe a commercially available platform, the IBS TH2, marketed under the InkBird brand.

+ +

Recording survival and operating ranges for a sensor

+ +

In this example we represent the capability of the platform's temperature sensor to measure ambient air and the physical + survival limits of its plastic construction. Note that this should apply to the platform as well, but in SOSA/SSN survival ranges only + apply to sensors and systems, not platforms.

+

An RDF file containing a graph + corresponding to this example is available.

+

+      
+
+ + + + +
diff --git a/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl b/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl new file mode 100644 index 00000000..5826600e --- /dev/null +++ b/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl @@ -0,0 +1,43 @@ +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . +@prefix skos: . +@prefix qudt: . +@prefix unit: . +@prefix foaf: . +@prefix schema: . +@prefix gs1: . +@prefix equipment: . +@prefix owl: . +@prefix sosa: . +@prefix ssn: . +@prefix ssn-system: . +@base . + +# This example is a partial specification for a common over-the-shelf temperature and humidity sensor. Different instantions can +# be derived for each specific physical the product. + + a owl:Class; + rdfs:label "Inkbird IBS-TH2"@en ; + rdfs:subClassOf gs1:Product, sosa:Platform, equipment:Equipment, ; + sosa:hosts . + + rdfs:subClassOf sosa:Sensor ; + rdfs:label "Inkbird IBS-TH2 built-in Temperature Sensor"@en ; + sosa:observes ; + ssn-system:hasOperatingRange ; + ssn-system:hasSurvivalRange . + + a ssn-system:OperatingRange ; + schema:unitCode qudt-unit:DEG_C ; + schema:maxValue "60" ; + schema:minValue "-40" ; + rdfs:label "Inkbird IBS-TH2 Temperature Sensor Limits"@en . + +# Physical limits of the sensor (and platform) where structural failure occurs. + a ssn-system:SurvivalRange ; + schema:unitCode qudt-unit:DEG_C ; + schema:maxValue "80" ; + schema:minValue "-273" ; + rdfs:label "Inkbird IBS-TH2 Failiure limits"@en . \ No newline at end of file diff --git a/ssn/rdf/ontology/extensions/ssn-system.ttl b/ssn/rdf/ontology/extensions/ssn-system.ttl index 531c7d54..2bbc5008 100644 --- a/ssn/rdf/ontology/extensions/ssn-system.ttl +++ b/ssn/rdf/ontology/extensions/ssn-system.ttl @@ -49,6 +49,13 @@ ssn-system: a owl:Ontology , voaf:Vocabulary ; vann:preferredNamespaceUri "http://www.w3.org/ns/ssn/systems/" ; owl:imports ssn-act: , ssn-obs: , ssn-dep: . +# Range + +ssn-system:Range a owl:Class ; +rdfs:label "Range"@en ; +skos:definition "A primitive class to represent that the value is within a numerical range."@en ; +skos:definition "A primitive class to represent that the value is within a numerical range."@en ; +rdfs:isDefinedBy ssn-system: . # Quality of Observation @@ -138,6 +145,7 @@ ssn-system:hasSystemCapability a owl:ObjectProperty ; rdfs:label "Measurement Range"@en ; skos:definition "The set of values that the Sensor can return as the Result of an Observation under the defined Conditions."@en ; rdfs:comment "The set of values that the Sensor can return as the Result of an Observation under the defined Conditions."@en ; + rdfs:subClassOf ssn-system:Range; rdfs:subClassOf ssn-system:SystemProperty ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty [ owl:inverseOf ssn-system:hasSystemProperty ] ; owl:allValuesFrom [ a owl:Restriction ; owl:onProperty [ owl:inverseOf ssn-system:hasSystemCapability ] ; owl:allValuesFrom sosa:Sensor ] ] ; rdfs:isDefinedBy ssn-system: . @@ -146,6 +154,7 @@ ssn-system:hasSystemCapability a owl:ObjectProperty ; rdfs:label "Actuation Range"@en ; skos:definition "The set of values that the Actuator can return as the Result of an Actuation under the defined Conditions with the defined system properties."@en ; rdfs:comment "The set of values that the Actuator can return as the Result of an Actuation under the defined Conditions with the defined system properties."@en ; + rdfs:subClassOf ssn-system:Range; rdfs:subClassOf ssn-system:SystemProperty ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty [ owl:inverseOf ssn-system:hasSystemProperty ] ; owl:allValuesFrom [ a owl:Restriction ; owl:onProperty [ owl:inverseOf ssn-system:hasSystemCapability ] ; owl:allValuesFrom sosa:Actuator ] ] ; rdfs:isDefinedBy ssn-system: . @@ -267,6 +276,7 @@ ssn-system:hasOperatingRange a owl:ObjectProperty ; In the absence of OperatingProperties, simply describes the Conditions in which a System is expected to operate. The System continues to operate as defined using SystemCapability. If, however, the SurvivalRange is violated, the System is 'damaged' and SystemCapability specifications may no longer hold."""@en ; + rdfs:subClassOf ssn-system:Range ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty ssn-system:inCondition ; owl:minCardinality "1"^^xsd:nonNegativeInteger ] ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty ssn-system:inCondition ] ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty [ owl:inverseOf ssn-system:hasOperatingRange ] ; owl:allValuesFrom ssn:System ] ; @@ -301,6 +311,7 @@ ssn-system:hasOperatingRange a owl:ObjectProperty ; rdfs:label "Operating Power Range"@en ; skos:definition "Power range in which a System is expected to operate in the specified Conditions."@en ; rdfs:comment "Power range in which a System is expected to operate in the specified Conditions."@en ; + rdfs:subClassOf ssn-system:Range; rdfs:subClassOf ssn-system:OperatingProperty ; rdfs:isDefinedBy ssn-system: . @@ -326,6 +337,7 @@ ssn-system:hasSurvivalRange a owl:ObjectProperty ; In the absence of SurvivalProperties, simply describes the Conditions a System can be exposed to without damage. For example, the temperature range a System can withstand before being considered damaged. The System continues to operate as defined using SystemCapability. If, however, the OperatingProperty is violated, the System is operating 'out of operating range' and SystemCapability specifications may no longer hold."""@en ; + rdfs:subClassOf ssn-system:Range ; rdfs:subClassOf ssn:Property ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty ssn-system:inCondition ; owl:minCardinality "1"^^xsd:nonNegativeInteger ] ; rdfs:subClassOf [ a owl:Restriction ; owl:onProperty ssn-system:hasSurvivalProperty ; owl:allValuesFrom ssn-system:SurvivalProperty ] ; From 8c25f06583bfee1d0803a6043cf0daaed4a5c7dc Mon Sep 17 00:00:00 2001 From: Rob Warren Date: Tue, 10 Dec 2024 23:12:34 -0500 Subject: [PATCH 3/7] This resolves all concerns about xsd uses. --- ssn/chapters/System-capabilities.html | 4 +++- ssn/index.html | 10 +++++++++- ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl | 14 +++++++------- ssn/rdf/ontology/extensions/ssn-system.ttl | 4 +++- 4 files changed, 22 insertions(+), 10 deletions(-) diff --git a/ssn/chapters/System-capabilities.html b/ssn/chapters/System-capabilities.html index 05955e79..9124c9c4 100644 --- a/ssn/chapters/System-capabilities.html +++ b/ssn/chapters/System-capabilities.html @@ -919,7 +919,9 @@
ssn-system:Range
Range - A primitive class to represent that the value is within a numerical range. -

The use of schema:minValue and schema:maxValue are suggested to record the bounds of the numerical range.

+

Both xsd:minInclusive and xsd:maxInclusive are used to record the upper and lower bound of + the range as simple properties. While SOSA/SSN only specifies the use of these properties to list bounding values, individual + implementations may add additional axioms to restrict observation values or deployment conditions.

diff --git a/ssn/index.html b/ssn/index.html index 3225c1c1..cf7f600c 100644 --- a/ssn/index.html +++ b/ssn/index.html @@ -539,9 +539,17 @@

InkBird IBS TH2 Sensor

Recording survival and operating ranges for a sensor

-

In this example we represent the capability of the platform's temperature sensor to measure ambient air and the physical +

In this example we represent the capability of the platform temperature sensor to measure ambient air and the physical survival limits of its plastic construction. Note that this should apply to the platform as well, but in SOSA/SSN survival ranges only apply to sensors and systems, not platforms.

+ +

xsd:minInclusive and xsd:maxInclusive are used to report the maximum and minimum operating and survival ranges for the + sensor. These are simple properties that are not encoded here as ontological restrictions on observation results. Besides the fact that these + ranges apply to the sensor type and not the sensor instance, it is often necessary to report + out-of-range values to record the occurance of an operating condition leading to failiure. It should also be noted that + system lifespan can exceed the specification. The Voyager 2 spacecraft is a well know example: designed to function for 5 + years, it is still partially operational after 43 years.

+

An RDF file containing a graph corresponding to this example is available.

diff --git a/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl b/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl index 5826600e..464adab2 100644 --- a/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl +++ b/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl @@ -19,7 +19,7 @@ a owl:Class; rdfs:label "Inkbird IBS-TH2"@en ; - rdfs:subClassOf gs1:Product, sosa:Platform, equipment:Equipment, gs1:pip ; sosa:hosts . @@ -30,14 +30,14 @@ ssn-system:hasSurvivalRange . a ssn-system:OperatingRange ; - schema:unitCode qudt-unit:DEG_C ; - schema:maxValue "60" ; - schema:minValue "-40" ; + qudt:unit qudt-unit:DEG_C ; + xsd:maxInclusive "60" ; + xsd:minInclusive "-40" ; rdfs:label "Inkbird IBS-TH2 Temperature Sensor Limits"@en . # Physical limits of the sensor (and platform) where structural failure occurs. a ssn-system:SurvivalRange ; - schema:unitCode qudt-unit:DEG_C ; - schema:maxValue "80" ; - schema:minValue "-273" ; + qudt:unit qudt-unit:DEG_C ; + xsd:maxInclusive "80" ; + xsd:minInclusive "-273" ; rdfs:label "Inkbird IBS-TH2 Failiure limits"@en . \ No newline at end of file diff --git a/ssn/rdf/ontology/extensions/ssn-system.ttl b/ssn/rdf/ontology/extensions/ssn-system.ttl index 1741f2c8..630c8f31 100644 --- a/ssn/rdf/ontology/extensions/ssn-system.ttl +++ b/ssn/rdf/ontology/extensions/ssn-system.ttl @@ -54,9 +54,11 @@ ssn-system: a owl:Ontology , voaf:Vocabulary ; ssn-system:Range a owl:Class ; rdfs:label "Range"@en ; skos:definition "A primitive class to represent that the value is within a numerical range."@en ; -skos:definition "A primitive class to represent that the value is within a numerical range."@en ; rdfs:isDefinedBy ssn-system: . +xsd:minInclusive rdfs:domain ssn-system:Range . +xsd:maxInclusive rdfs:domain ssn-system:Range . + # Quality of Observation ssn-system:qualityOfObservation a owl:ObjectProperty ; From 66bac62d40f33bfc0c190bb69ab5c0fbbea97fe5 Mon Sep 17 00:00:00 2001 From: Rob Warren Date: Tue, 10 Dec 2024 23:26:47 -0500 Subject: [PATCH 4/7] Standardize all ranges in examples to xsd:maxInclusive / xsd:minInclusive / qudt:unit --- ssn/rdf/examples/2017ex21.ttl | 28 ++++++++++++++-------------- ssn/rdf/examples/2017ex25.ttl | 18 +++++++++--------- ssn/rdf/examples/InkBird.ttl | 8 ++++---- ssn/rdf/examples/dht22.ttl | 28 ++++++++++++++-------------- ssn/rdf/examples/house134.ttl | 10 +++++----- ssn/rdf/examples/ip68.ttl | 19 ++++++++++--------- 6 files changed, 56 insertions(+), 55 deletions(-) diff --git a/ssn/rdf/examples/2017ex21.ttl b/ssn/rdf/examples/2017ex21.ttl index 082ee50b..5075a410 100644 --- a/ssn/rdf/examples/2017ex21.ttl +++ b/ssn/rdf/examples/2017ex21.ttl @@ -57,15 +57,15 @@ a ssn-system:Condition , schema:PropertyValue ; rdfs:comment "A temperature range of -40 to 80 Celsius."@en ; - schema:minValue -40.0 ; - schema:maxValue 80.0 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -40.0 ; + xsd:maxInclusive 80.0 ; + qudt:unit unit:DegreeCelsius . a ssn-system:Condition , schema:PropertyValue ; rdfs:comment "A relative humidity range of 5 to 85 %."@en ; - schema:minValue 5.0 ; - schema:maxValue 85.0 ; - schema:unitCode unit:PERCENT . + xsd:minInclusive 5.0 ; + xsd:maxInclusive 85.0 ; + qudt:unit unit:PERCENT . @@ -76,25 +76,25 @@ a sosa:Property , ssn-system:Accuracy , schema:PropertyValue ; rdfs:comment "The accuracy of the temperature sensor is +-0.5 °C in normal temperature and humidity conditions."@en ; - schema:minValue -0.5 ; - schema:maxValue 0.5 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -0.5 ; + xsd:maxInclusive 0.5 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Sensitivity , ssn-system:Resolution , schema:PropertyValue ; rdfs:comment "The sensitivity and resolution of the temperature sensor is 0.1 °C in normal temperature and humidity conditions."@en ; schema:value 0.1 ; - schema:unitCode unit:DegreeCelsius . + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Precision , schema:PropertyValue ; rdfs:comment "The precision (= repeatability) of the temperature sensor is +-0.2 °C in normal temperature and humidity conditions."@en ; - schema:minValue 0.2 ; - schema:maxValue 0.2 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive 0.2 ; + xsd:maxInclusive 0.2 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Frequency , schema:PropertyValue ; rdfs:comment "The smallest possible time between one observation and the next is 2 s on average."@en ; schema:value 2 ; - schema:unitCode unit:Second . + qudt:unit unit:Second . rdf:type sosa:Observation ; diff --git a/ssn/rdf/examples/2017ex25.ttl b/ssn/rdf/examples/2017ex25.ttl index 3483e7c6..55e3e3d0 100644 --- a/ssn/rdf/examples/2017ex25.ttl +++ b/ssn/rdf/examples/2017ex25.ttl @@ -34,9 +34,9 @@ a ssn-system:Condition , schema:PropertyValue ; rdfs:comment "A temperature range of -20 to 70 Celsius."@en ; - schema:minValue -20.0 ; - schema:maxValue 70.0 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -20.0 ; + xsd:maxInclusive 70.0 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:SystemCapability ; rdfs:comment "The sensor capability in normal operating conditions."@en ; @@ -45,23 +45,23 @@ a sosa:Property , ssn-system:Sensitivity , schema:PropertyValue ; schema:value -137 ; - schema:unitCode unit:DecibelReferredToOneMilliwatt . + qudt:unit unit:DecibelReferredToOneMilliwatt . a sosa:Property , ssn-system:Accuracy , schema:PropertyValue ; sosa:forProperty ; - schema:minValue -0.2 ; - schema:maxValue 0.2 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -0.2 ; + xsd:maxInclusive 0.2 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Resolution , schema:PropertyValue ; sosa:forProperty ; schema:value 0.0625 ; - schema:unitCode unit:DegreeCelsius . + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Resolution , schema:PropertyValue ; sosa:forProperty ; schema:value 3.937e-3 ; - schema:unitCode unit:PERCENT . + qudt:unit unit:PERCENT . a sosa:Sample ; rdfs:label "The air at lat 45.75 and long 4.85."@en ; diff --git a/ssn/rdf/examples/InkBird.ttl b/ssn/rdf/examples/InkBird.ttl index adbc7b2f..9c110683 100644 --- a/ssn/rdf/examples/InkBird.ttl +++ b/ssn/rdf/examples/InkBird.ttl @@ -19,8 +19,8 @@ sosa:observes qk:Temperature ; system:hasSystemProperty [ a system:MeasurementRange ; - schema:maxValue "60"^^unit:DEG_C ; - schema:minValue "-40"^^unit:DEG_C ; + xsd:maxInclusive "60"^^unit:DEG_C ; + xsd:minInclusive "-40"^^unit:DEG_C ; ] ; system:hasSystemProperty [ a system:Accuracy ; @@ -33,8 +33,8 @@ sosa:observes qk:RelativeHumidity ; system:hasSystemProperty [ a system:MeasurementRange ; - schema:maxValue "100"^^unit:PERCENT ; - schema:minValue "0"^^unit:PERCENT ; + xsd:maxInclusive "100"^^unit:PERCENT ; + xsd:minInclusive "0"^^unit:PERCENT ; ] ; system:hasSystemProperty [ a system:Resolution ; diff --git a/ssn/rdf/examples/dht22.ttl b/ssn/rdf/examples/dht22.ttl index 12cbba32..a070ba22 100644 --- a/ssn/rdf/examples/dht22.ttl +++ b/ssn/rdf/examples/dht22.ttl @@ -57,15 +57,15 @@ a schema:PropertyValue ; rdfs:comment "A temperature range of -40 to 80 Celsius."@en ; - schema:minValue -40.0 ; - schema:maxValue 80.0 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -40.0 ; + xsd:maxInclusive 80.0 ; + qudt:unit unit:DegreeCelsius . a schema:PropertyValue ; rdfs:comment "A relative humidity range of 5 to 85 %."@en ; - schema:minValue 5.0 ; - schema:maxValue 85.0 ; - schema:unitCode unit:PERCENT . + xsd:minInclusive 5.0 ; + xsd:maxInclusive 85.0 ; + qudt:unit unit:PERCENT . @@ -76,25 +76,25 @@ a sosa:Property , ssn-system:Accuracy , schema:PropertyValue ; rdfs:comment "The accuracy of the temperature sensor is +-0.5 °C in normal temperature and humidity conditions."@en ; - schema:minValue -0.5 ; - schema:maxValue 0.5 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -0.5 ; + xsd:maxInclusive 0.5 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Sensitivity , ssn-system:Resolution , schema:PropertyValue ; rdfs:comment "The sensitivity and resolution of the temperature sensor is 0.1 °C in normal temperature and humidity conditions."@en ; schema:value 0.1 ; - schema:unitCode unit:DegreeCelsius . + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Precision , schema:PropertyValue ; rdfs:comment "The precision (= repeatability) of the temperature sensor is +-0.2 °C in normal temperature and humidity conditions."@en ; - schema:minValue 0.2 ; - schema:maxValue 0.2 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive 0.2 ; + xsd:maxInclusive 0.2 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Frequency , schema:PropertyValue ; rdfs:comment "The smallest possible time between one observation and the next is 2 s on average."@en ; schema:value 2 ; - schema:unitCode unit:Second . + qudt:unit unit:Second . rdf:type sosa:Observation ; diff --git a/ssn/rdf/examples/house134.ttl b/ssn/rdf/examples/house134.ttl index c1827eab..af02ba53 100644 --- a/ssn/rdf/examples/house134.ttl +++ b/ssn/rdf/examples/house134.ttl @@ -96,14 +96,14 @@ a schema:PropertyValue ; rdfs:comment "A temperature range of -40 to 80 Celsius."@en ; - schema:minValue -40.0 ; - schema:maxValue 80.0 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -40.0 ; + xsd:maxInclusive 80.0 ; + qudt:unit unit:DegreeCelsius . a sosa:Property, ssn-system:Sensitivity, ssn-system:Resolution, schema:PropertyValue ; rdfs:comment "The sensitivity and resolution of the temperature sensor is 0.1 °C in normal temperature and humidity conditions."@en ; schema:value 0.1 ; - schema:unitCode unit:DegreeCelsius . + qudt:unit unit:DegreeCelsius . a sosa:Deployment ; rdfs:comment "Deployment of PCB Board 1 and 2 in the kitchen for the purpose of observing the temperature."@en ; @@ -149,7 +149,7 @@ a sosa:Observation ; sosa:hasResult [ a qudt:QuantityValue ; - qudt:hasUnit unit:DegreeCelsius ; + qudt:unit unit:DegreeCelsius ; qudt:numericValue "22.9"^^xsd:double ] . diff --git a/ssn/rdf/examples/ip68.ttl b/ssn/rdf/examples/ip68.ttl index 791aceac..c384e9b2 100644 --- a/ssn/rdf/examples/ip68.ttl +++ b/ssn/rdf/examples/ip68.ttl @@ -7,6 +7,7 @@ @prefix unit: . @prefix prov: . @prefix owl: . +@prefix xsd: . @prefix seas: . @prefix cdt: . @prefix rdfs: . @@ -34,9 +35,9 @@ a schema:PropertyValue ; rdfs:comment "A temperature range of -20 to 70 Celsius."@en ; - schema:minValue -20.0 ; - schema:maxValue 70.0 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -20.0 ; + xsd:maxInclusive 70.0 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:SystemCapability ; rdfs:comment "The sensor capability in normal operating conditions."@en ; @@ -45,23 +46,23 @@ a sosa:Property , ssn-system:Sensitivity , schema:PropertyValue ; schema:value -137 ; - schema:unitCode unit:DecibelReferredToOneMilliwatt . + qudt:unit unit:DecibelReferredToOneMilliwatt . a sosa:Property , ssn-system:Accuracy , schema:PropertyValue ; sosa:forProperty ; - schema:minValue -0.2 ; - schema:maxValue 0.2 ; - schema:unitCode unit:DegreeCelsius . + xsd:minInclusive -0.2 ; + xsd:maxInclusive 0.2 ; + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Resolution , schema:PropertyValue ; sosa:forProperty ; schema:value 0.0625 ; - schema:unitCode unit:DegreeCelsius . + qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Resolution , schema:PropertyValue ; sosa:forProperty ; schema:value 3.937e-3 ; - schema:unitCode unit:PERCENT . + qudt:unit unit:PERCENT . a sosa:Sample ; rdfs:label "The air at lat 45.75 and long 4.85."@en ; From 517ba17fef29b698ff1e98359462dcb613503a53 Mon Sep 17 00:00:00 2001 From: Rob Warren Date: Tue, 10 Dec 2024 23:30:55 -0500 Subject: [PATCH 5/7] Fix typo --- ssn/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ssn/index.html b/ssn/index.html index cf7f600c..e8168ded 100644 --- a/ssn/index.html +++ b/ssn/index.html @@ -546,7 +546,7 @@

Recording survival and operating ranges for a sensor

xsd:minInclusive and xsd:maxInclusive are used to report the maximum and minimum operating and survival ranges for the sensor. These are simple properties that are not encoded here as ontological restrictions on observation results. Besides the fact that these ranges apply to the sensor type and not the sensor instance, it is often necessary to report - out-of-range values to record the occurance of an operating condition leading to failiure. It should also be noted that + out-of-range values to record the occurrence of an operating condition leading to failure. It should also be noted that system lifespan can exceed the specification. The Voyager 2 spacecraft is a well know example: designed to function for 5 years, it is still partially operational after 43 years.

From 1e4b47b4c9e3253514aeb5c30628ddbf47fc1352 Mon Sep 17 00:00:00 2001 From: Rob Warren Date: Wed, 11 Dec 2024 06:47:28 -0500 Subject: [PATCH 6/7] Move some examples to qudt:value --- ssn/rdf/examples/InkBird.ttl | 4 ++-- ssn/rdf/examples/dht22.ttl | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/ssn/rdf/examples/InkBird.ttl b/ssn/rdf/examples/InkBird.ttl index 9c110683..c6fbd00f 100644 --- a/ssn/rdf/examples/InkBird.ttl +++ b/ssn/rdf/examples/InkBird.ttl @@ -24,7 +24,7 @@ ] ; system:hasSystemProperty [ a system:Accuracy ; - schema:value "0.5"^^unit:DEG_C ; + qudt:value "0.5"^^unit:DEG_C ; ] ; ] ; @@ -38,7 +38,7 @@ ] ; system:hasSystemProperty [ a system:Resolution ; - schema:value "2"^^unit:PERCENT ; + qudt:value "2"^^unit:PERCENT ; ] ; ] ; diff --git a/ssn/rdf/examples/dht22.ttl b/ssn/rdf/examples/dht22.ttl index a070ba22..f48bf1ae 100644 --- a/ssn/rdf/examples/dht22.ttl +++ b/ssn/rdf/examples/dht22.ttl @@ -82,7 +82,7 @@ a sosa:Property , ssn-system:Sensitivity , ssn-system:Resolution , schema:PropertyValue ; rdfs:comment "The sensitivity and resolution of the temperature sensor is 0.1 °C in normal temperature and humidity conditions."@en ; - schema:value 0.1 ; + qudt:value 0.1 ; qudt:unit unit:DegreeCelsius . a sosa:Property , ssn-system:Precision , schema:PropertyValue ; @@ -93,7 +93,7 @@ a sosa:Property , ssn-system:Frequency , schema:PropertyValue ; rdfs:comment "The smallest possible time between one observation and the next is 2 s on average."@en ; - schema:value 2 ; + qudt:value 2 ; qudt:unit unit:Second . From 270d3575864b00032832131159600f66d3caf1c1 Mon Sep 17 00:00:00 2001 From: oldskeptic <69051964+oldskeptic@users.noreply.github.com> Date: Wed, 8 Jan 2025 07:03:10 -0500 Subject: [PATCH 7/7] Missing semicolon InkBird-IBS-TH2-Range.ttl --- ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl b/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl index 464adab2..e1946c00 100644 --- a/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl +++ b/ssn/rdf/examples/InkBird-IBS-TH2-Range.ttl @@ -19,7 +19,7 @@ a owl:Class; rdfs:label "Inkbird IBS-TH2"@en ; - rdfs:subClassOf gs1:Product, sosa:Platform, equipment:Equipment, + rdfs:subClassOf gs1:Product, sosa:Platform, equipment:Equipment, ; gs1:pip ; sosa:hosts . @@ -40,4 +40,4 @@ qudt:unit qudt-unit:DEG_C ; xsd:maxInclusive "80" ; xsd:minInclusive "-273" ; - rdfs:label "Inkbird IBS-TH2 Failiure limits"@en . \ No newline at end of file + rdfs:label "Inkbird IBS-TH2 Failiure limits"@en .