Fork me on GitHub

The SEAS Evaluation ontology

The Evaluation ontology describes evaluation of seas:Propertyies. There may be:

  • direct evaluations, or
  • qualified evaluations.

Figure below provides an overview of the concepts in this ontology:

Overview of the Evaluation ontology

Direct evaluations

The seas:Property may be given a unique, constant, quality or quantity value. This is done using properties:

A quality value may be any resource.

A quantity value may use external vocabularies such as QUDT (it would then be a qudt:Quantity), or OM (it would then be a om:Quantity), or be directly encoded as a literal using an appropriate datatype.

Using QUDT

The SEAS ontologies are compatible with the QUDT ontologies. The alignment between SEAS and QUDT is expressed in an external module that imports the Evaluation ontology:

  • qudt:Quantity is a subclass of seas:Property;
  • qudt:quantityValue is a subproperty of seas:evaluation;
  • qudt:QuantityValue is a subclass of seas:Evaluation;
  • qudt:numericValue is a subproperty of seas:evaluatedValue.

Using OM

The SEAS ontologies are compatible with the OM ontologies. The alignment between SEAS and OM has not yet been expressed in an external module. Please get in contact with us if this is of interest to your project.

Expressing values using custom datatypes

We are working on a custom datatype identified by cdt:ucum. The lexical value of a cdt:ucum is defined as follows :

unum ::= number   unit
number ::= noDecimalPtNumeral | decimalPtNumeral |
scientificNotationNumeral
unit ::= (see the Unified Code of Units of Measure specification)

noDecimalPtNumeral, decimalPtNumeral and scientificNotationNumeral are defined in the XSD 1.1 recommendation. This datatype should either be hardcoded in RDF engines, or could be specified as a Linked Datatype, making it easy for any SPARQL engine to support the comparison of quantity values.

For example, the following triples quantify the consumption of a fridge using cdt:ucum literals:

<fridge/1/consumption/frequency> seas:simpleValue "50.1 Hz"^^cdt:ucum .
<fridge/1/consumption/voltage> seas:simpleValue "231 V"^^cdt:ucum . 
<fridge/1/consumption/tension> seas:simpleValue "2432 mA"^^cdt:ucum .
<fridge/1/consumption/voltageTensionPhase> seas:simpleValue "1.68 RAD"^^cdt:ucum .

Qualified evaluations

Because property values may evolve in space and time, or because they can be approximate measures or forecasts, class seas:Evaluation qualifies the link seas:value. In particular, an instance of seas:Evaluation may hold metadata about:

  1. the type of evaluation;
  2. the context of validity of the evaluation;
  3. provenance information or any other data.

Let us shortly describe each of these categories.

The type of evaluation

The type of evaluation is defined by the hierarchy of seas:Evaluation sub classes. This hierarchy includes classes such as:

The evaluation validity context

An evaluation validity context is described using functional sub properties of seas:hasValidityContext. The SEAS ontologies define two such properties:

Provenance or other metadata

Other metadata may be added to describe an evaluation instance. For example the W3C PROV Ontology enables to describe the activity that generated the evaluation, or its generation time.

Other vocabularies may be used to further describe evaluations. See the Linked Open Vocabulary cloud.

Examples

The day-ahead forecasted temperature at Aeroport de Lyon is 28.3 °C:

<air/temperature> seas:evaluation [
  a seas:TemperatureEvaluation , seas:exactEvaluation , seas:Forecast ;
  prov:wasGeneratedBy <algorithm/1/execution/234> ;
  prov:generatedAtTime "2016-08-12T12:00:00Z"^^xsd:dateTime ;
  seas:hasTemporalContext [ a time:Instant ; time:inXSDDateTime "2016-08-13T12:00:00Z"^^xsd:dateTime ] ;
  seas:hasSpatialContext [ a geo:Point ; geo:lat 45.7242502 ; geo:long 5.0914517 ] ;
  seas:evaluatedSimpleValue "28.3 °C"^^cdt:ucum ] .

The average frequency of property <fridge/1/consumption/frequency> over time interval 12:00 - 13:00, as generated by <algorithm/1/execution/12>, is 50.1054 Hz:

<fridge/1/consumption/frequency> seas:evaluation [
  a seas:FrequencyEvaluation , seas:TimeAverageEvaluation ;
  prov:wasGeneratedBy <algorithm/2/execution/12> ;
  seas:hasTemporalContext [ a time:Interval ; time:hasBeginning [ time:inXSDDateTime "2016-09-10T12:00:00Z"^^xsd:dateTime ] ; time:hasEnd [ time:inXSDDateTime "2016-09-10T13:00:00Z"^^xsd:dateTime ] ] ;
  seas:evaluatedSimpleValue "50.1054 Hz"^^cdt:ucum ] .

The minimal operating value of <fridge/1/consumption/frequency> is 47.0 Hz:

<fridge/1/consumption/frequency> seas:evaluation [
  a seas:MinimalOperatingValueEvaluation ;
  seas:evaluatedSimpleValue "47.0 Hz"^^cdt:ucum ;
] .

Classes

AverageEvaluation

Label: Average Evaluation

IRI: https://w3id.org/seas/AverageEvaluation

Average Evaluation is an Evaluation wich evaluate the sum of a list of evaluations divided by the number of evalautions in the list.

Evaluation

Label: Evaluation

IRI: https://w3id.org/seas/Evaluation

Evaluations qualify the link seas:value. In particular, they may hold metadata about:

  1. the type of evaluation;
  2. the context of validity of the evaluation;
  3. provenance information or any other data.

MaximumEvaluation

Label: Maximum Evaluation

IRI: https://w3id.org/seas/MaximumEvaluation

Maximum Evaluation is an Evaluation which is the maximum value that the evaluation can take for the evaluated property.

MinimumEvaluation

Label: Minimum Evaluation

IRI: https://w3id.org/seas/MinimumEvaluation

Minimum Evaluation is an Evaluation which is the minimum value that the evaluation can take for the evaluated property.

Object Properties

evaluatedValue

Label: evaluated value

IRI: https://w3id.org/seas/evaluatedValue

Links an evaluation to the literal that qualifies some aspect of the property, modeled as a RDF IRI or blank node.

evaluation

Label: evaluation

IRI: https://w3id.org/seas/evaluation

Links a property to one of its evaluations.

evaluationOf

Label: evaluation of

IRI: https://w3id.org/seas/evaluationOf

Links an evaluation to the one and only property it evaluates.

hasSpatialContext

Label: has spatial context

IRI: https://w3id.org/seas/hasSpatialContext

Links an evaluation to its spatial validity context, a geo:SpatialThing.

hasTemporalContext

Label: has temporal context

IRI: https://w3id.org/seas/hasTemporalContext

Links an evaluation to its temporal validity context, a time:TemporalEntity.

hasValidityContext

Label: has validity context

IRI: https://w3id.org/seas/hasValidityContext

Links some object to one of its validity contexts.

A validity context is described using functional sub properties of seas:hasValidityContext. There are two such properties defined:

value

Label: value

IRI: https://w3id.org/seas/value

Links a property to a unique, constant, quality or quantity value for that property, modeled as a RDF IRI or blank node.

For example, the exact length of <car/1> is 4.27 m, and this is true in the validity context of the RDF graph.

  <car/1/length> a seas:Property ;
    seas:value [ a qudt:QuantityValue ; qudt:numericalValue 4.27 ; qudt:unit qudt-unit:meter ] .

This property is a shortcut for an exact evaluation with all context being the most generic contexts (although this notion is not planned to be formalized).

Data Properties

evaluatedSimpleValue

Label: evaluated simple value

IRI: https://w3id.org/seas/evaluatedSimpleValue

Links an evaluation to the literal that qualifies some aspect of the property, modeled as a RDF Literal.

simpleValue

Label: simple value

IRI: https://w3id.org/seas/simpleValue

Links a property to a unique, constant, quality or quantity value for that property, modeled as a RDF Literal.

For example, the exact length of <car/1> is 4.27 m, and this is true in the validity context of the RDF graph.

  <car/1/length> a seas:Property ;
    seas:simpleValue "4.27 m"^^cdt:ucum .

This property is a shortcut for an exact evaluation with all context being the most generic contexts (although this notion is not planned to be formalized).