Resource Description Framework (RDF)
RDF is a standard model for data interchange on the Web. RDF has features that facilitate data merging even if the underlying schemas differ, and it specifically supports the evolution of schemas over time without requiring all the data consumers to be changed.
RDF extends the linking structure of the Web to use URIs to name the relationship between things as well as the two ends of the link (this is usually referred to as a “triple”). Using this simple model, it allows structured and semi-structured data to be mixed, exposed, and shared across different applications.
This linking structure forms a directed, labeled graph, where the edges represent the named link between two resources, represented by the graph nodes. This graph view is the easiest possible mental model for RDF and is often used in easy-to-understand visual explanations.
The RDF Specification consists of a suite of W3C Recommendations, published in 2004. This suite also includes an RDF Primer. See also Tim Berners-Lee’s writings on Web Design Issues, including Metadata Architecture. Other technologies, like OWL or SKOS, build on RDF and provide language for defining structured, Web-based ontologies which enable richer integration and interoperability of data among descriptive communities.
A number of textbooks have been published on RDF and on Semantic Web in general. Please, refer to a separate page listing some of those, as maintained by the community. That list also includes references to conference proceedings and article collections that might be of general interest.
Discussions on a possible next version of RDF
There is, currently, a discussion on the Semantic Web Interest Group on whether an update of RDF is necessary and, if yes, what form should that take. There is a separate page on this Wiki on that discussion.
Tools that are listed as relevant to RDF
Last modified and/or added
The description of the following tools have been added and/or modified most recently.
- LITEQ (last modified: 3 September 2014)
- Jena, a Java RDF API and toolkit (last modified: 25 August 2014)
- rdf:SynopsViz - A Tool for RDF Visualization, Exploration and Analysis (last modified: 28 July 2014)
- RDFSharp (last modified: 27 July 2014)
- graphVizdb (last modified: 2 July 2014)
All relevant tools
This is a list of all tools listed on this wiki, and that are marked as relevant to RDF.
- 3Store (triple store).
- 4Suite (programming environment). Directly usable from Python
- 4store (triple store).
- ARC RDF Store (triple store). Directly usable from PHP
- ActiveRDF (programming environment). Directly usable from Ruby
- Alchemy API (rdf generator, tagging).
- Alignment API (api, command line tool). Directly usable from Java
- AllegroGraph RDF Store (triple store, programming environment, reasoner, development environment, rdfs reasoner). Directly usable from Java, LISP, Python, Prolog, C, Ruby, Perl
- Apache Any23 (programming environment, rdf generator, converter, api). Directly usable from Java
- Asio (development environment, rdf generator).
- BMEcat2GoodRelations (converter, rdf generator, command line tool).
- babel (converter).
- BaseVISor (reasoner, programming environment, rule reasoner, owl reasoner). Directly usable from Java
- Bigdata® (triple store, reasoner, rdfs reasoner).
- Bossam (reasoner, programming environment, owl reasoner). Directly usable from Java
- Brahms (programming environment). Directly usable from C++
- BrowseRDF (semantic web browser).
- BrowseRDF.com (special browser, rdf or owl browser). Directly usable from Ruby
- CARA (programming environment, api). Directly usable from Perl
- Common Lisp Reasoner (programming environment, rule reasoner, owl reasoner, reasoner). Directly usable from LISP
- Closed World Machine (CWM) (programming environment, rule reasoner, owl reasoner, command line tool). Directly usable from Python
- ClioPatria (triple store, programming environment, reasoner, rule reasoner). Directly usable from Prolog, C
- Conceptual Resource Search Engine (Corese) (programming environment, reasoner, rule reasoner, rdfs reasoner, triple store, sparql endpoint). Directly usable from Java
- … further results