Fork me on GitHub

PEP-RDFP Alignemnts

This ontology augments the Process Execution Platform ontology with the describe OF inputs and outputs as RDF Graphs.

Figure below is a precised overview of the PEP Ontology with RDFP concepts.

Overview of the PEP Ontology with RDFP concepts.

This ontology is the basis for:

A process links to the description of the RDF graph it expects as input, and to the description of the graph it outputs. For example, the following RDF graph describes a process where:

  • the topic of the input graph is a car;
  • the topic of the output is the speed of that same car, which is forecasted.
@prefix pep: <https://w3id.org/pep/> .
@prefix rdfp: <https://w3id.org/rdfp/> .
@prefix seas: <https://w3id.org/seas/> .

<process> a pep:Process ;
  pep:hasInput [ a rdfp:GraphDescription ;
    foaf:topic _:car ] ;
  pep:hasOutput [ a rdfp:GraphDescription ;
    foaf:topic _:evaluation ] .

_:car <speed> [ seas:evaluation _:evaluation ] .

_:evaluation a seas:Forecast .

A process executor may link to the description of the RDF graph it expects as input, and to the description of the graph it outputs. These descriptions factorize and extend those of all the processes it implements. For example, the following RDF graph describes a process executor where:

  • the topic of the input graph is a specific car;
  • the topic of the output is the speed of that same car.
@prefix pep: <https://w3id.org/pep/> .
@prefix rdfp: <https://w3id.org/rdfp/> .
@prefix seas: <https://w3id.org/seas/> .

<speedSensor> a pep:ProcessExecutor ;
  pep:hasInput [ a rdfp:GraphDescription ;
    foaf:topic _:car ] ;
  pep:hasOutput [ a rdfp:GraphDescription ;
    foaf:topic _:evaluation ] .

_:car <speed> [ seas:evaluation _:evaluation ] .

_:evaluation a seas:Forecast .

A process execution may link to the names of RDF graphs that represent the input, and the output. For example, the following RDF graph describes a process execution:

@prefix pep: <https://w3id.org/pep/> .

<exec> a pep:ProcessExecution ;
  pep:hasInput <exec/input> ;
  pep:hasOutput <exec/output> .

Then the graph with name <exec/input> contains:

@prefix pep:  <https://w3id.org/pep/>.
@prefix seas: <https://w3id.org/seas/>.
@prefix time: <http://www.w3.org/2006/time#>.
@prefix xsd:  <http://www.w3.org/2001/XMLSchema#>.

<car/1> <speed> <car/1/speed> .
<car/1/speed> seas:evaluation <evaluation> .
<evaluation> pep:hasTemporalContext [ time:inXSDDateTime "2016-07-22T12:05:43Z"^^xsd:dateTime ] .

And the graph with name <exec/output> contains:

@prefix pep:  <https://w3id.org/pep/>.
@prefix seas: <https://w3id.org/seas/>.
@prefix time: <http://www.w3.org/2006/time#>.
@prefix xsd:  <http://www.w3.org/2001/XMLSchema#>.
@prefix cdt: <http://w3id.org/lindt/custom_datatypes#>.

<car/1> <speed> <car/1/speed> .
<car/1/speed> pep:evaluation <evaluation> .
<evaluation> a seas:Forecast ;
  pep:evaluatedValue "73 km/h"^^cdt:ucum ; 
  pep:hasTemporalContext [ time:inXSDDateTime "2016-07-22T12:05:43Z"^^xsd:dateTime ] .