W3C TF home

hGRDDL Profile for XHTML1

DISCLAIMER: This is an internal document with no official standing whatsoever within W3C. It is meant only for internal task force discussions.


hGRDDL is a proposal to use GRDDL techniques to extract RDF serialized as RDFa. Since RDFa enables metadata embedding into a human-renderable page, hGRDDL allows a metadata-containing document to be rendered as HTML with the metadata intact.

In particular, an HTML page with embedded microformats or eRDF can be converted to XHTML+RDFa on the fly.

The hGRDDL proposal also considers the possibility that certain XHTML dialects, like XHTML 1.1 and XHTML 2.0, contain default hGRDDL profiles so that metadata implicit in these dialects can be made explicit using RDFa. This document proposes to do just that with XHTML 1.1.

XHTML1.1 Implicit Metadata

A number of XHTML 1.1 elements provide clear implicit metadata.


The REL attribute in LINK or A elements is specified with certain reserved values. These are clearly standardized metadata, which should become scoped appropriately. For example:

<a rel="next" href="http://example.org/page2">next page</a>

should be extracted as:

<a rel="xhtml:next" href="http://example.org/page2">next page</a>

The reserved words are: alternate, stylesheet, start, next, prev,contents, index, glossary, copyright, chapter, section, subsection, appendix, help, bookmark.


The class attribute is currently being considered as a syntactic sugar for rdf:type. This decision has not been finalized, but we assume, for the purposes of this document, that it has, so as to explain how hGRDDL would handle this.

For example, the following:

<div class="foo"> ...

would become:

<div class="foo"> <link rel="rdf:type" href="[foo]" /> ...


This section is in progress.

<ul id="..." about="..."> <li>foo</li> <li>bar</li> <li>baz</li> </ul>


<ul id="..." about="..."> <link rel="rdf:type" href="[rdf:Bag]" /> <li rel="rdf:_1">foo</li> <li rel="rdf:_2">bar</li> <li rel="rdf:_3">baz</li> </ul>

Javascript & Bookmarklet

We propose a Javascript-based hGRDDL transform, based on DOM manipulations.

$Revision: 1.2 $ of $Date: 2006/10/09 15:50:14 $