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 1.1 specification consists of a suite of W3C Recommendations and Working Group Notes, published in 2014. 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
W3C has recently set up a new RDF Working Group, whose charter is to make a minor revision of RDF.
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.
- Jena, a Java RDF API and toolkit (last modified: 16 November 2015)
- SPARQL playground (last modified: 22 September 2015)
- RDFSharp (last modified: 7 September 2015)
- A Tool for Efficient, Multilevel Visualization, Exploration & Analysis over Large RDF Datasets (last modified: 26 July 2015)
- The graphVizdb platform (last modified: 12 June 2015)
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).
- outdated-4Suite (programming environment). Directly usable from Python
- 4store (triple store).
- outdated-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
- Jena, a Java RDF API and toolkit (triple store, programming environment, reasoner, rule reasoner, owl reasoner, rdfs reasoner, parser). 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
- Blazegraph (Formerly Bigdata®) (triple store, reasoner, rdfs reasoner). Directly usable from Java
- 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
- outdated-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
- … further results