ACCU Home page ACCU Conference Page
Search Contact us ACCU at Flickr ACCU at GitHib ACCU at Facebook ACCU at Linked-in ACCU at Twitter Skip Navigation

Search in Book Reviews

The ACCU passes on review copies of computer books to its members for them to review. The result is a large, high quality collection of book reviews by programmers, for programmers. Currently there are 1949 reviews in the database and more every month.
Search is a simple string search in either book title or book author. The full text search is a search of the text of the review.
    View all alphabetically
Practical RDF
Shelley Powers
Ivan Uemlianin
internet; xml
Appeared in:
This book introduces the Resource Description Framework (RDF). It concentrates on syntax and editing tools with use cases and RDF's USPs considered secondarily. It is pleasantly written but unimaginative, adding little to what is freely available on the net. Not recommended.

After an introductory chapter, Chapters 2-6 describe RDF concepts and XML syntax; Chapters 7-11 describe software to manipulate RDF; Chapters 12-15 describe RDF applications, including the W3C's Web Ontology Language (OWL) and RSS.

Information coverage is adequate, and the coverage of commercial RDF application is creditable, as RDF is still far from the mainstream. However the organisation of the book - syntax, tools, and applications - soon reads like a catalogue, and the reader is not drawn forwards. Some big issues hover frustratingly in the background.

First: the semantics-based nature of RDF. This is covered early on, but treated as a difficulty rather than as a fundamental property of RDF.

Initially RDF had no syntax: even now RDF/XML is one of several possible syntaxes. While SGML, HTML and XML all started as syntax and derived semantics (or a data model), RDF began as semantics, with firm mathematical/logical foundations.

The basic unit of the semantics is a proposition, analysed into subject and predicate, predicate being further analysed into property and value. This subject property value structure is the RDF triple. For example, the proposition 'The secretary bird has grey feathers' might become secretary_bird feathers grey. Given bird_abc123 species secretary_bird, RDF supports the deduction bird_abc123 feathers grey. RDF builds on this to improve the granularity of representation: for example by enabling triples to be subjects or property values (reification).

OWL provides basic datatypes like Class, ObjectProperty, DataType, upon which domain-specific ontologies can build. RDF's data structures can be tailored exactly to problem domains. The chapter on OWL is misplaced in the uses section: it is effectively part of RDF (like C++'s STL). Keeping it till the end only hides the usability of RDF.

Second: RDF and RDBMS. RDF has native support for deduction, and semantics close to natural language; it is extensible in that any two RDF data structures can easily be merged or translated into a third. These properties make RDF attractive to people dissatisfied with the relational data model: most of the commercial RDF applications covered are 'RDF databases'. The book uses the relational model to illustrate RDF concepts and gives a few urls and commercial applications, but it feels like an important chapter is missing.

It could have been better:

1. Categorise use cases (e.g., next-generation dbms, document metadata, UI design) and give concrete examples.

2. Discuss important features of RDF fully: RDF's semantic base; its support of deduction; how its data model differs from other data models.

3. Review syntax and tools.