RDF Messages is a small yet potentially impactful proposal from the W3C RSP CG for adding the concept of a set of quads that belong together as a single communicative act to the RDF model.
Contrary to just an array of quads, an RDF Message cannot be automatically merged with other quads or messages. An assertion step is needed to interpret the message when processing it.
E.g., a stream of messages may include 3 sensor observations, from which I might want to select the “latest” observation based on a property in the message (the contents of a message is up to the message stream designer, this is just a toy example below of what is possible).
@message .
<sensor1> :value 36 ;
:observationCounter 1 .
@message .
<sensor1> :value 37 ;
:observationCounter 2 .
@message .
<sensor1> :value 34 ;
:observationCounter 3 .
Effect on RDF JS:
- Model: A new type in the data model: RDF.Message which is nothing more than an
RDF.Quad[], with this property that developers understand that they must interpret the contents with an RDF Message Stream Profile
- Parsers and serializers: We’d introduce (on-going) extensions on top of RDF1.2 serializations that allow to keep the quads grouped when writing or reading Message streams and/or logs.
We don’t need another type of stream, but might want to extend the text in https://rdf.js.org/stream-spec/#stream-interface that RDF.Message would also be a typical type of a stream.
Proposal by a.o. @Ostrzyciel, @jpcik, @tobixdev, @keski, @pbonte and myself
RDF Messages is a small yet potentially impactful proposal from the W3C RSP CG for adding the concept of a set of quads that belong together as a single communicative act to the RDF model.
Contrary to just an array of quads, an RDF Message cannot be automatically merged with other quads or messages. An assertion step is needed to interpret the message when processing it.
E.g., a stream of messages may include 3 sensor observations, from which I might want to select the “latest” observation based on a property in the message (the contents of a message is up to the message stream designer, this is just a toy example below of what is possible).
Effect on RDF JS:
RDF.Quad[], with this property that developers understand that they must interpret the contents with an RDF Message Stream ProfileWe don’t need another type of stream, but might want to extend the text in https://rdf.js.org/stream-spec/#stream-interface that RDF.Message would also be a typical type of a stream.
Proposal by a.o. @Ostrzyciel, @jpcik, @tobixdev, @keski, @pbonte and myself