From W3C Wiki

RDF Path Languages And Templating

There have been many RDF Path languages. This is a non-authoritative list, begun because people have asked about them (or, indeed, invented them) periodically. RDF Path languages and template languages are used to transform RDF triples (or graphs) into another form, typically a web interface in HTML. This list helps you to find out which template languages and Path languages exist, perhaps with an implementation of it.

If you want to transform RDF to XML/HTML/Text, read on! You may also wish to read a 2007 survey of the state of the art of RDF templating, in the form of a morning-long discussion on #swig.


[1] (query only)

N3 Paths

[2] (expressions usable as queries)

RDF Path

[3] (SBP) [4] (AaronSw) [5] (Stefan)

None implemented (?), but many good ideas here, some of which can be found in other implementations.

RDF Twig

[6] (outputs XML)

Provides XPath extension functions (for Saxon or Xalan, in Java) which lets you access RDF from XSLT. Roughly, one can create trees (breadth or depth first) from part of a graph, and then navigate over it using XPath. Uses Jena.

Graph Path

[7] (query only; but nifty)


[8] (query only). See [9] for templating.


[10] (outputs XML)

Tricks XPath into working over a Jena RDF graph (including RDFS and OWL inferred). XQuery and XSLT (1.0 and 2.0) support thanks to Saxon.

RDF Templates

[11] (demo broken; outputs XML?)


[12] (RxSLT can presumably output XML)


[13] (language-agnostic output)

FSL implementations for Jena 2, Sesame 1.2.x and Sesame 2 are available. IsaViz also features a visual FSL debugger.

RDF Path as binary relation


Wilbur Query Language (WilburQL)

Central to the Wilbur toolkit is a path query language.