Change: RDF Container

created on Feb. 18, 2013, 11:58 a.m. by Hevok & updated on March 29, 2013, 10:13 a.m. by Hevok

There are different kind of Containers in RDF. In a sequential container there is an ordered list of elements, thus the order is of somehow importance. On the other hand if there is simple a collection and it should represent and unordered set where the order has no importance at all then a rdf:Bag is defined. It should be simple of type rdf:Bag and the order has no relevance. Another possibility is a third kind of collection where one has to choice among all of these elements just one then one defines an RDF alternative, rdf:Alt.

  • the Root Node of the container is assigned a Container-type via rdf:type.

  • rdf:Bag

    • unordered set of elements,
    • there is no given order of elements
  • rdf:Seq

    • ordered set of elements
  • rdf:Alt

    • defines alternatives of Elements
    • only one element of the given alternatives is relevant for the Application

For a RDF Sequence, Blank nodes need to be stated to be of type list, i.e. rdf:Seq, which means Sequential List where the order of the items matters. The properties from this Blank Node are enumerated with rdf:_1, rdf:_2, etc.

In Turtle after defining some prefixes that are required to the necessary URIs, the beginning of the Blank Node bracket is followed by defining that it is of type a rdf:Seq; and the items in the list separated by semicolon defined by their URI.

@prefix rdf: <http://www.w3.org/1999/02/22-rdf-synthax-nx#>] .
@prefix ev: <http://denigma.de/events>] .
@base <http://denigma.de/>] .

:swt ev:hasParticipants [
    a rdf:Seq;
    rdf:_1 <Hevok> ;
    rdf:_2 <EVA> .
 ]

Such a List can afterwards be extended.

container.jpg

Categories: Tutorial
Parent: List

Comment: Updated entry

See entry | Admin

Comment on This Data Unit