GRDDL (pronounced "griddle") is a markup format forGleaning Resource Descriptions from Dialects of Languages. It is aW3C Recommendation, and enables users to obtainRDFtriples out ofXML documents, includingXHTML. The GRDDL specification shows examples usingXSLT, however it was intended to be abstract enough to allow for other implementations as well. It became a Recommendation on September 11, 2007.[1]
A document specifies associated transformations, using one of a number of ways.
For instance, an XHTML document may contain the following markup:
<headprofile="http://www.w3.org/2003/g/data-viewhttp://dublincore.org/documents/dcq-html/http://gmpg.org/xfn/11"><linkrel="transformation"href="grokXFN.xsl"/>
Document consumers are informed that there are GRDDL transformations available in this page, by including the following in theprofile
attribute of thehead
element:
http://www.w3.org/2003/g/data-view
The available transformations are revealed through one or morelink
elements:
<linkrel="transformation"href="grokXFN.xsl"/>
This code is valid forXHTML 1.x only. Theprofile
attribute has been dropped inHTML5, including its XML serialisation.
If an XHTML page containsMicroformats, there is usually a specific profile.
For instance, a document with hcard information should have:
<headprofile="http://www.w3.org/2003/g/data-view http://www.w3.org/2006/03/hcard">
When fetchedhttp://www.w3.org/2006/03/hcard has:
<headprofile="http://www.w3.org/2003/g/data-view">
and
<p>UseofthisprofilelicensesRDFdataextractedby<arel="profileTransformation"href="../vcard/hcard2rdf.xsl">hcard2rdf.xsl</a>from<ahref="http://www.w3.org/2006/vcard/ns">the2006vCard/RDFwork</a>.</p>
The GRDDL aware agent can then use that profileTransformation to extractall hcard data from pages that reference that link.
In a similar fashion to XHTML, GRDDL transformations can be attached to XML documents.
Just like a profileTransformation, an XML namespace can have a transformation associated with it.
This allows entire XML dialects (for instance, KML or Atom) to provide meaningful RDF.
An XML document simply points to a namespace
<fooxmlns="http://example.com/1.0/"><!-- document content here --></foo>
and when fetched,http://example.com/1.0/
points to a namespaceTransformation.
This also allows very large amounts of the existing XML data in the wild to become RDF/XML with minimal effort from the namespace author.
Once a document has been transformed, there is anRDF representation of that data.
This output is generally put into a database and queried viaSPARQL.