My ad hoc learning about linked data continues, and this past week I feel like my knowledge grew in leaps and bounds. A few weeks ago I installed Joseki on my local machine. Joseki is a SPARQL query engine (and apparently is no longer being developed; I guess I will have to upgrade to Jena Fuseki), and having it installed allows me to run SPARQL queries on any RDF document anywhere on the web. Just in time for my experimentation, WorldCat announced that they have opened up the WorldCat Linked Data to content negotiation.
Having actual things I can play with and query aided my understanding of linked data immensely. I have been running queries on WorldCat data, Library of Congress data, and Open Library data like a mad woman, and having a silly amount of fun doing it.
My project plan and possible implementation are starting to take place in my mind. What I’m trying to build is a prototype of a very lightweight library metadata system built on Drupal, that would take advantage of linked data to populate metadata elements. My next step is to build a Drupal module that will use the WorldCat Search API to find an OCLC number for any resource based on either ISBN, ISSN, title, author, or keyword search. Ultimately, my goal is to make cataloging library resources way less expensive and more efficient for smaller libraries, using linked data. Is that goal too lofty? Perhaps.
I’ve been using a book called A Developer’s Guide to the Semantic Web by Liyang Yu. It’s a pretty good basic text that introduces concepts in an incremental way, and has been a great tool for me. I’m looking forward to the day when I not only understand these concepts, but can explain them clearly to other people. ๐
If you haven’t checked out the RDF serializations of WorldCat data yet, it’s super easy. Just find a resource on WorldCat, and navigate to the permalink. Then just append the URL with an RDF file extension, and the file should display or download, depending on what browser you’re using. Here’s an example for you: The American Way of Eating in RDF.
Modeling library resources in RDF has definitely become a passion (an obsession?) for me lately. I wish I could say that I felt confident that the BIBFRAME work, which I’m still following, is crafting a model that will really and truly make library work better and more efficient. But that’s a conversation for another day.
If you want to experiment with linked data, installing a local SPARQL endpoint and examining some linked data resources couldn’t be easier. In fact, I’m planning to write up a tutorial for beginner experimentation, so stay tuned.
Comments
4 responses to “Learning about Linked Data: SPARQL and Content Negotiation”
Hi-
I appreciated reading this post, and I’ll be very interested to see what further comments/instruction you have on querying linked datasets, particularly the NAF. I’ve had very limited success (some would call it failure ๐ ) with querying the NAF.
Do you have any experience with OpenRefine/LODRefine?
I look forward to perusing your blog, which I just discovered.
Best,
Christina
Unfortunately, LC doesn’t seem to currently allow direct querying of the RDF data. I find this to be true of too many bib data sets in the linked data cloud. But they do enable OpenSearch, and with a little configuration I suspect that could be used to programmatically find the RDF values.
I just got back from a Semantic Web summer school, and will definitely be writing soon about what I learned, and where I want to go from here.
Hi-
I appreciated reading this post, and I’ll be very interested to see what further comments/instruction you have on querying linked datasets, particularly the NAF. I’ve had very limited success (some would call it failure ๐ ) with querying the NAF.
Do you have any experience with OpenRefine/LODRefine?
I look forward to perusing your blog, which I just discovered.
Best,
Christina
Unfortunately, LC doesn’t seem to currently allow direct querying of the RDF data. I find this to be true of too many bib data sets in the linked data cloud. But they do enable OpenSearch, and with a little configuration I suspect that could be used to programmatically find the RDF values.
I just got back from a Semantic Web summer school, and will definitely be writing soon about what I learned, and where I want to go from here.