SPARQL

When I learned that release 2.8.5 of ARQ implements all of SPARQL 1.1 Query (“except for corner cases of property paths”, and Andy Seaborne recently told me that they’ve finished up that part) I decided to try out some of the SPARQL 1.1 features, and it was all pretty easy. I used ARQ from the command line and went through Lee Feigenbaum’s slides on the status of SPARQL 1.1 as a checklist of things to try. For sample queries and data I tried to use the examples in the…

RESTful SPARQL queries of RDFa

No local parsing or querying software needed.

Facebook’s OpenGraph, Google’s Rich Snippets, BestBuy’s use of the GoodRelations vocabulary and other recent events are boosting RDFa’s popularity for storing machine-readable data in web pages. There are several tools and programming libraries available (not to mention built-in features of development platforms such as TopQuadrant’s TopBraid Suite for application development) that let you extract the RDF triples from this RDFa markup and use it, but I recently…

Is SPIN the Schematron of RDF?

Represent business rules using an implemented standard, then flagging violations in a machine-readable way.

Christian Fürber and Martin Hepp (the latter being the source of the increasingly popular GoodRelations ontology) have published a paper titled “Using SPARQL and SPIN for Data Quality Management on the Semantic Web” (pdf) for the 2010 Business Informations Systems conference in Berlin. TopQuadrant’s Holger Knublach designed SPIN, or the SPARQL Inferencing Notation, as a SPARQL-based way to express constraints and inferencing rules on sets of triples, and Fürber and Hepp have…

Federated SPARQL queries

Using a Jena extension.

Much of the promise of RDF and Linked Data is the ease of pulling data from multiple sources and combining it. I recently discovered the SERVICE extension that Jena adds to SPARQL, letting you send subqueries off to multiple SPARQL endpoints and then combine the results. Because a given SPARQL endpoint may be an interface to a triplestore or a relational data store or something else, the ability to query several endpoints with one query is very nice.

A rules language for RDF

Right under our noses.

Last May, in Adding semantics to make data more valuable: the secret revealed, I showed how storing a little bit of semantics about the word “spouse”—the fact that it’s a symmetric property (that is, that if A is the spouse of B, then B is the spouse of A)—let me look up someone’s home phone number in my address book even if my entry for him there lacks his home phone number. I like this story because unlike biotech and some of the other popular domains for Semantic Web…

Appreciating SPARQL CONSTRUCT more

Another way to get more out of your data.

As with SQL, SPARQL’s most popular verb is SELECT. It lets you request the data you want from a collection, whether you’re asking for a single phone number or you want a list of first and last names and phone numbers of all employees hired after January 1st, sorted by last name.