CustomRdfDialects
RDF has a standard XML syntax which has nice merging properties but isn't so nice for authors and doesn't integrate well with DTDs, XML Schemas, and the like. There will always be various alternative formats that can be used to encode information and publish it as structured data on the Web. In order to make this information available to RDF systems, some sort of pre-processing is necessary. This page collects general approaches and concrete mappings.
Approaches
GRDDL is a technique for processing XML/XHTML dialects (especially microformats) as custom RDF syntaxes by having each document point, directly or indirectly, to a transformation to an RDF graph. GRDDL accomodates a wide variety of dialects (at the expense of asking consumers to execute potentially untrusted code). In theory, GRDDL can be combined with arbitrary transformation mechanisms, for now it's mostly based on XSLTs.
RDFa and eRDF are designs for serializing RDF in HTML. They allow a single parser (or GRDDL transformation!) to work for data from any domain and provide a direct relationship between the RDF data and the HTML document structure, which can improve human interaction with enriched Web content (e.g. for copy-and-paste of information).
Custom parsers can be used to convert a particular serialization to RDF. Dialect-specific parsers can be valuable for non-XML/tagsoup formats, or in systems where XSLT is not an efficient approach.
HTML-based Dialects
Dialect | Domain | Schema | Mapping | Status |
Dublin Core in HTML (legacy) | Bibliographic Metadata | Dublin Core | dc-extract | Valid 2003-2003, now superseded |
Dublin Core in HTML (current) | Bibliographic Metadata | Dublin Core | dc-html2rdfxml.xsl | Maintained by DCMI |
eRDF | generic | RDF | extract-rdf.xsl, profile | by IanDavis |
GeoURL markup | Geo (lat/long) | GeoInfo | grokGeoURL.xsl | e.g. Joe Lambda's homepage |
glink | HTML links/link@rel | #html, DC | groklinks.xsl | maintained by DannyAyers |
hCalendar | Calendars and Events | RDF Calendar | glean-hcal.xsl, hcal profile | maintained by DanConnolly since Dec 2002 |
hCard | Contact Information | vcard ontologies (2006) | hcard2rdf.xsl, hcard profile | maintained by Walsh, Halpin, and Suda since Nov 2006; used in xtech schedule |
hDoap | Software project description | DOAP | hDoap | maintained by DannyAyers |
hReview | Opinions, Ratings and Reviews | RDF Review | hreview2rdfxml.xsl | See RDF Review |
hTurtle | generic | RDF | XSLT service, profile | by SeanPalmer |
metaprof | meta/link@rel + generic | various | xh2rdf.xsl | maintained by MasahideKanzaki |
RDFa | generic | RDF | RDFa profile | by Fabien Gandon, collaborating with the GRDDL and RDFa WGs |
Rel-License | Licenses | Creative Commons | grokCC.xsl | e.g. Joe Lambda's homepage |
Rel-Tag | Tags, Keywords, Categories | Tag Ontology, SKOS, DC | ? | (todo DannyAyers) |
Site Summaries | Syndication | RSS | html2rss.xsl | in production on the W3C homepage |
XFN | Social Graph | XFN + # as namespace | grokXFN.xsl | maintained(?) by DanConnolly |
Site Summaries | Syndication | RSS | html2rss.xsl | in production on the W3C homepage |
XFN | Social Graph | XFN+hCard as FoaF | hFoaF.xsl | Maintained by MartinMcEvoy |
hAudio | Audio Syndication | hAudio as Music Ontology | Mo-hAudio.xsl | Maintained by MartinMcEvoy |
RDF-3T | generic | RDF | RDF-3T | Maintained by MartinMcEvoy |
Non-HTML based dialects
Dialect | Domain | Schema | Mapping |
RSS | Syndication | RSS 1.0 | feed-rss1.0.xsl |
Atom | Syndication | Atom/OWL | atom2rdf_xslt-1.0.xsl |
Atom | Syndication | RSS 1.0 | atom2rss10.xsl |
OPML | Feedlists | FOAF/RSS 1.0 | opml2blogroll.xsl |
OPML | Feedlists | FOAF/RSS 1.0/SKOS | opml2skosroll.xsl |
Metalink | File sharing | metalink | (under revision 2007-10) |
APML | Attention Profiling | apml | - |
SAWSDL | web service description | SAWSDL | profile, SAWSDL_GRDDL.xsl |
XTM | topic maps | XTM | profile, XTM_GRDDL.xsl |
- there are several other XSLTs around, discussion is in-progress on which is best for Atom/GRDDL
- * OPML tends to be used ad hoc, it's only minimally specified and data in the wild varies wildly, hence it's impossible to give definitive mappings
migrating from MicroModels, grddlmicromodels, EmbeddingRDFinHTML, CustomRdfDialects/GrddableMicroformats, etc.