Skip to content

Taxonomy overview

The diagram below is an overview of the RDF Stream Taxonomy (RDF-STaX). Each term in the diagram is represented by an instance of the stax:RdfStreamType class in the RDF-STaX ontology. The ontology also contains the formal definitions of each stream type.

RDF Stream Taxonomy

Overview of the taxonomy – click to enlarge.

Abstract stream types

Abstract stream types only serve as a basis for the concrete stream types. They are not intended to be used directly.

RDF stream

IRI: https://w3id.org/stax/ontology#rdfStream

An RDF stream is an ordered, potentially infinite sequence of RDF stream elements.


Grouped RDF stream

IRI: https://w3id.org/stax/ontology#groupedStream

A grouped RDF stream is an RDF stream whose elements are either RDF graphs or RDF datasets.


Flat RDF stream

IRI: https://w3id.org/stax/ontology#flatStream

A flat RDF stream is an RDF stream whose elements are statements (either RDF triples or RDF quads).


Concrete stream types (grouped)

RDF graph stream

IRI: https://w3id.org/stax/ontology#graphStream

An RDF graph stream is a grouped RDF stream whose elements are unnamed (default) RDF graphs.

Can be flattened1 into a flat RDF triple stream.
Can be trivially extended3 into an RDF dataset stream.


RDF subject graph stream

IRI: https://w3id.org/stax/ontology#subjectGraphStream

An RDF subject graph stream is an RDF graph stream in which every element contains an IRI node (called the subject node) that uniquely identifies the graph in the stream. Every other node in the graph can be reached by traversing triples, starting from the subject node.

Can be flattened1 into a flat RDF triple stream.
Can be trivially extended3 into an RDF dataset stream.


RDF dataset stream

IRI: https://w3id.org/stax/ontology#datasetStream

An RDF dataset stream is a grouped RDF stream whose elements are RDF datasets.

Can be flattened1 into a flat RDF quad stream.


RDF named graph stream

IRI: https://w3id.org/stax/ontology#namedGraphStream

An RDF named graph stream is an RDF dataset stream in which every element has exactly one named RDF graph pair \(\langle n, G \rangle\), where \(G\) is an RDF graph, and \(n\) is the graph name. Apart from graph \(G\), the dataset may contain any number of triples in the default graph.

Can be flattened1 into a flat RDF quad stream.


Timestamped RDF named graph stream

IRI: https://w3id.org/stax/ontology#timestampedNamedGraphStream

A timestamped named graph is an RDF dataset in which:
(1) there is exactly one named RDF graph pair \(\langle n, G \rangle\), where \(G\) is an RDF graph, and \(n\) is the graph name;
(2) the default graph includes a timestamp triple \(\langle n, p, t \rangle\), where \(p\) is a timestamp predicate that relates \(t\), called the timestamp, and the graph \(G\).

A timestamped RDF named graph stream is an RDF named graph stream in which every element is a timestamped named graph. The elements that share the same timestamp predicate \(p\) are ordered by the partial order associated with \(p\).

Can be flattened1 into a flat RDF quad stream.


Concrete stream types (flat)

Flat RDF triple stream

IRI: https://w3id.org/stax/ontology#flatTripleStream

A flat RDF triple stream is a flat RDF stream whose elements are triples.

Can be grouped2 into an RDF graph stream.
Can be trivially extended3 into a flat RDF quad stream.


Flat RDF quad stream

IRI: https://w3id.org/stax/ontology#flatQuadStream

A flat RDF quad stream is a flat RDF stream whose elements are quads.

Can be grouped2 into an RDF dataset stream.


See also

Footnotes


  1. The flattening is done by enumerating all components of the stream elements in one, flat stream. For example, a graph stream can be flattened into a flat triple stream. 

  2. The grouping is done by splitting the flat stream of statements into groups, which then can be used to construct elements of the grouped stream. For example, a flat triple stream can be grouped into a graph stream. In this operation, the ordering information within a group is lost. 

  3. You can extend a stream that uses triples or graphs into a stream type that uses quads or datasets. The extension is done by (in case of flat RDF streams) adding a fourth component, corresponding to the default graph. In case of grouped RDF streams, the contents of the graph are placed explicitly in the default graph.