Learning SPARQL

Author: Bob DuCharme
Publisher: O'Reilly
Pages: 386
ISBN: 978-1449371432
Aimed at: developers who want to learn SPARQL
Rating: 4.5
Reviewed by: Kay Ewbank

SPARQL is a technology that’s more important than you may realize, making this book equally important.

Tim Berners-Lee, inventor of the Web and director of W3C, says:

“Trying to use the Semantic Web without SPARQL is like trying to use a relational database without SQL”.

The semantic web, of course, is the W3C backed concept that the current web should be converted from unstructured documents to a ‘web of data’. The concept is closely allied to that of the Resource Description Framework (RDF). RDF is a set of W3C specifications that started life as a metadata model, and has moved on to become a general method of modeling web data.



So if SPARQL is going to be a major language for working with web data, learning it is a good idea, which is where this book comes in. This is very much a book for developers, heavy on code and examples. DuCharme starts with a chapter titled ‘Jumping Right In’, where he introduces you to a sample data file in Turtle RDF format, then moves on to how you’d query the file. He then introduces more realistic data and queries, all before page 10!

Having got you started and shown the practical use of SPARQL, the next chapter does look at what exactly the Semantic Web, RDF and SPARQL is all about. From then onwards, though, the chapters are back to SPARQL, starting with a more in-depth look at how to form SPARQL queries, adding filters, combining search conditions, querying named graphs, sorting and aggregating.



By Chapter 4 we’re on to copying, creating and converting data, including how to identify any bad data. The way SPARQL lets you deal with data that doesn’t conform to rules is interesting and given the quality of much of the information on the Web, is probably among its more useful options!

Using datatypes and functions in queries is the subject of the next chapter; essentially SPARQL 1.1 has many new functions for working with numeric values, dates and times, and strings. Update functions get a chapter of their own, including working with named graphs. There’s a good chapter on query efficiency and debugging, and another useful chapter on working with SPARQL query result functions using results in XML, JSON, CSV and TSV formats.

Chapter 9 looks at RDF schema, OWL (the Web Ontology Language), and inferencing. RDFS and OWL let you define and describe classes and properties that a dataset’s triples (identifier, property name, value) might use, and inferencing is the act of working out new triples from existing triples. DuCharme describes the process nice and clearly with minimal jargon. Next comes a chapter on building applications with SPARQL that introduces you to various SPARQL processors and shows how to use SPARQL from HTTP. This chapter was more of an introduction than an in-depth how-to, but at least points you in the right direction. The book closes with a SPARQL cookbook, essentially a set of problems and solutions showing the answers to questions such as ‘How do I treat a URL as a String?’, and ‘How do I Globally Replace a Property Value?’

This is a good book for developers who know how to program, ideally know SQL, and who want to find out about SPARQL. It has plenty of well-constructed examples, and should get you well on the way to being able to use SPARQL in your apps.




Modern Frontend Development with Node.js

Author: Florian Rappl
Publisher: Packt Publishing
Date: November 2022
Pages: 208
ISBN: 978-1804618295
Print: 1804618292
Kindle: B0B9BH5WBS
Audience: Node.js developers
Level: Introductory/Intermediate
Rating: 3
Reviewer: Ian Elliot
Modern development - what else is there?

Data Structures & Algorithms in Python

Author: Dr. John Canning, Alan Broder and Robert Lafore
Publisher: Addison-Wesley
Date: October 2022
Pages: 928
Print: 013485568X
Kindle: B0B1WJF1K9
Audience: Python developers
Rating: 4
Reviewer: Mike James
Data structures in Python - a good idea!

More Reviews