RDF is a promising standard for representing meta-data about documents on the web as well as exchanging frame-based data (e.g. ontologies). RDF is often associated with‘semantics on the web'. It consists of a formal data-model defined in terms of triples. In addition, a graph model is defined for visualisation and an XML application is defined for exchange.
‘Semantics on the web' is also associated with the Prolog
programming language. It is assumed that Prolog is a suitable vehicle to
reason with the data expressed in RDF models. Most of the related
web-infra structure (e.g. XML parsers, DOM implementations) are defined
in Java, Perl, C or C++
.
Various routes are available to the Prolog user. Low-level XML
parsing is due to its nature best done in C or C++
. These
languages produce fast code. As XML/SGML are at the basis of most of the
other web-related formats we will benefit most here. XML and SGML, being
very stable specifications, make fast compiled languages even more
attractive.
But what about RDF? RDF-XML is defined in XML, and provided with a Prolog term representing the XML document processing it according to the RDF syntax is quick and easy in Prolog. The alternative, getting yet another library and language attached to the system, is getting less attractive. In this document we explore the suitability of Prolog for processing XML documents in general and into RDF in particular.