Resource Description Framework

From Citizendium
Revision as of 10:30, 22 August 2009 by imported>Roger A. Lohmann (add links)
Jump to navigation Jump to search
This article is developing and not approved.
Main Article
Discussion
Related Articles  [?]
Bibliography  [?]
External Links  [?]
Citable Version  [?]
 
This editable Main Article is under development and subject to a disclaimer.

The Resource Description Framework (RDF) is a standard created by the W3C in 1999 originally for exchanging rich metadata about material on the Web, but which has subsequently been used in a number of different ways to store data. It is seen as one of the fundamental components of the vision of the Semantic Web. The internal data model of RDF is that of a directed acyclic graph - that is to say that of nodes with directed, labeled pointers going between the nodes. In RDF, this is done through triple statements - a 3-tuple data format consisting of a subject, an object and a predicate. This models first-order predicate logic, and allows the building up of graphs - collections of one or more triples. It is possible to then merge multiple graphs together into a compound graph for storage and querying.

In addition, there are other standards built on top of RDF. One of these is the Web Ontology Language (OWL) which, along with the simpler RDF Schema (RDFS) allows authors to specify a set of rules which apply to triples. For instance, one might have a rule that a Car object must have four wheels (the wheels property would, if it were set, be set to four) and a primary driver (which could be a Person object). Other standards built on top of RDF include SPARQL, a query language similar to SQL for getting information out of collections of RDF data, and GRDDL which allows people to describe rules for parsing data out of Web pages and XML documents. Data formats built on top of RDF include Friend Of A Friend (FOAF) and Semantically Interlinked Online Communities (SIOC), both for use in representing online communities and social networks.

RDF is a data model, not a syntax. The same data can be represented in a variety of different ways. The primary way is through an XML syntax - although other syntaxes are commonly in use, including the Notation3 and Turtle syntax which use Unicode plain text with a variety of symbols to distinguish between different parts of the structure. There are also a wide variety of tools which exist to parse and use RDF data in a variety of common programming languages.