RDF Template Language
What are RDF Templates?
RDF Templates (RDFT) are an XML format for creating representations of RDF graphs. In a similar way to XSLT, RDF Templates define template rules with patterns which are matched against nodes. Template rules specify output actions and further node selections which trigger further template operation. However, instead of acting on an XML tree, RDFT acts upon an RDF graph. Nodes are specified using a 'nodepath' syntax which defines conditional node/arc/node graph traversals. A macro definition facility is provided to reduce long nodepaths to easier to read strings.
RDFT has been designed to parallel XSLT where sensible and anyone familiar with that language and with the principles of the RDF model should find it very easy to learn. RDFT solves a key problem of processing RDF with XSLT since it acts on the underlying graph and therefore has no dependencies on the RDF serialisation syntax. It also specifies RDF Schema awareness so sub-classes and sub-properties are handled as expected.
Where Can I Find the RDF Templates Specification?
The latest version of the specification can be found at this URL:
http://www.semanticplanet.com/2003/08/rdft/spec
Specific versions are named as follows:
http://www.semanticplanet.com/2003/08/rdft/spec-yyyymmdd
Where yyyymmdd is the date of issue of that version. Each version of the specification includes a reference to the previous version and a list of changes between the two versions.
What is the Status of the RDF Templates Specification?
The RDF Templates specification is in early draft form and is currently subject to frequent improvement and refinement. It is expected that, as the processing model and syntax become more concrete, the frequency of update to the specification will fall.
It is not recommended to depend on any particular feature or syntax defined in the specification at the moment. All parts of the specification are subject to change over the next few months.
What License Applies to RDF Templates?
The specification is copyright Ian Davis and is licensed under a Creative Commons attribution license. This license extends only to the text of the specification and not to the formats and processes it describes. These formats and processes remain the copyright of Ian Davis but may be freely used for any purpose without restriction.
What Implementations of the Specification Exist?
There is currently one reference implementation which is written in PHP. Archives of this can be found at the following URL:
http://www.semanticplanet.com/2003/08/rdft/impl/php/dist
This implementation is provided for study and evaluation purposes and is not intended to be used in a production environment. In particular, conformance to the specification and clarity of implementation have been chosen over speed or efficiency of code.
This implementation is licensed undeer the GNU General Public License (GPL).
How Do I Keep Up To Date With Developments?
I publish my design notes on the Semantic Planet Weblog. A list of all the RDF Templates Design Notes is also available.
Who Can I Contact to Find Out More?
The author of the specification and the PHP implementation is Ian Davis who can be contacted at <iand@internetalchemy.org>
