RDF: Simpler if you look at it in a different way

01-Mar-10

RDF is not a format, but a model for data! Daniel Lewis demonstrates how you should model your data in a graphical way and then choose which format.

 

 

I have figured out why some people are reluctant to use RDF, and its because they are seeing it as a format and not a model. RDF is a modeling framework, it is not a format!

RDF is supposed to be understood in a visual way:

 

Which is essentially understood as a triple of URIs:

<<a href="http://myopenlink.net/dataspace/person/danieljohnlewis#this>">http://myopenlink.net/dataspace/person/danieljohnlewis#this> <<a href="http://xmlns.com/foaf/0.1/made><<a href="http://uk.youtube.com/watch?v=oWfaoP1Ti2Q">http://uk.youtube.com/watch?v=oWfaoP1Ti2Q>">http://xmlns.com/foaf/0.1/made><<a href="http://uk.youtube.com/watch?v=oWfaoP1Ti2Q">http://uk.youtube.com/watch?v=oWfaoP1Ti2Q>

And this is basically in a format called n3 (Notation3), another option would be to have it in XML format, but that is very complex to understand (but good for machine reading).

There is generally a way to start implementing your data as RDF:

 

How to implement RDF

This really highlights the fact that RDF is not a format, but a model for Data. You model your data in a graphical way and then you choose which format:

 

  1. Visualise your data as a set of atomic objects and relationships between them, this is your RDF.
    1. There are ontologies available, such as FOAF and SIOC which are suited for Social Networking applications.
    2. Linking out is as important as linking in, a link out will provide more meaning to that data that it is linking from. For example I could say that http://myopenlink.net/dataspace/person/danieljohnlewis#this (<- the “Subject”) owl:sameAs (<- the “Predicate”/”Relation”) http://www.facebook.com/people/Daniel_Lewis/277003772 (<- the “Object”). A Semantic Web application would then be able to work out that danieljohnlewis on myopenlink is the same person as 277003772 on Facebook. (This is where the notion of Linked Data comes in)
  2. Format your RDF data
    1. There are a few options. Generally RDF/N3 is suggested for developers who are exploring the Semantic Web, as it is simply a list of URIs. RDF/XML is not suggested for the beginner, as it adds in all of the complexities of XML which don’t really fit in with the simplicity of a triple graph…. but RDF/XML is quite good for machine reading. Generally the format doesn’t matter as they are all interchangeable. Another option is RDF/Turtle.
  3. Expose your data
    1. I highly recommend using a Data Server. OpenLink Virtuoso is a very good option as it is fast and reliable, and you can use it as a Data Server, a Web Server and/or a Database Server… it supports SQL and RDF too.

 

More information

More information is available at these Document Websites:

 

 

This article originally appeared on Daniel Lewis' blog page, copyright 2008.

Details

Author:
Neil Davey
Publisher:
KnowledgeBoard
Date:
01-Mar-10
Sections:
Home , News

This article has been read 1818 times.