With this book, the promise of the Semantic Web -- in which machines can find, share, and combine data on the Web -- is not just a technical possibility, but a practical reality Programming the Semantic Web demonstrates several ways to implement semantic web applications, using current and emerging standards and technologies. You'll learn how to incorporate existing data sources into semantically aware applications and publish rich semantic data.
Each chapter walks you through a single piece of semantic technology and explains how you can use it to solve real problems. Whether you're writing a simple mashup or maintaining a high-performance enterprise solution, Programming the Semantic Web provides a standard, flexible approach for integrating and future-proofing systems and data.
I read the first half of the book without access to a computer, and it still made perfect sense. This bodes well for it being a good explanation of how to do semantic web/MetaWeb-style programming without getting the AI religion. I enjoyed it, and found its vision of linked data to be quite seductive.
I've gone through the book once and it is very useful for someone who is biased toward Python and would like to know how to get their hands dirty with the tools available today. Oh, and this term "Semantic Web" is too narrow for this book since what you are really learning is how to do semantic modeling for the web or any other environment.
All the incredible things we used to believe about the semantic web! Includes a section "A word about Artificial Intelligence" which amusingly assumes people care about logic or about making sense. Clearly outdated in the age of the senseless web.
Note: this review is based on a pre-release copy of the book.
When I first encountered RDF years ago, I wrote it off. It seemed unlikely that it would get much use. But the recent arrival of collections of so-called 'semantic' data via organizations like Freebase, has made me rethink that position. Of course, figuring out how to make use of this data is another proposition, but Programming the Semantic Web serves as a solid introduction and survey of the tools and techniques necessary to make it into something worth your effort.
I can say that after reading this book, I finally get the concept of semantic data and the relationships it defines. The book begins by walking through the building of a basic triple-store (that is, a data store full of triples -- if you don't know what they are, you should read the book). This and the ensuing discussion of the graph structures built from these triples leads into an introduction to RDF. In this context, it really starts to make sense.
The examples in this book are quite useful and not too abstract. For instance, one of the examples shows how to take legacy data from an RDBMS and generate an RDF graph, going from implicit to explicit semantics. Another uses a programmatic version of the popular 'Six Degrees of Kevin Bacon' trivia game to show how you can use a semantic database of movie data to find the shortest path between two given actors (one, clearly, being the ever-popular Kevin Bacon). The final example in the book shows in brief how you might build a system for managing job listings for various companies. The example is thorough and reasonably complex, but still manages to cover a lot of ground, including integration with libraries for visualizing the data. The majority of the examples in the book are written in Python, though Java makes an appearance in the toolkit chapter, which covers various libraries available for working with RDF.
One item of note is that in the conclusion, the authors do stress caution about this technology or at least particular approaches or tools. It's important to sort out the hype from the real deal and it takes a realists perspective to understand that semantic web tools have been considered the 'next great thing' by various pundits for much of the last decade -- clearly it's not what some envisioned back when the ideas were first brought forth.
I can't say that I'm going to be rushing out and building next great application after having read this book, nor will I be looking at bring RDF into each system I build. But I do have an appreciation for what semantic data and RDF can bring to aspects of future projects I might work on. I would have enjoyed seeing more details about using external, non-semantic data source and using that data in a semantic graph, but given the range of material to cover, I can understand that this could be an entire book of it's own.
It is not readable due to non-existent codes within the examples. However, the book provides a great introduction to RDF and explains how the foundation of RDF comes from the graph data structure.
If you want to learn about the Semantic Web, there is no single book that will tell you everything you need to know, however, there are a few books that can help; this is one of them. I highly recommend this book. It has some qualities that I appreciate in a computer programming book: It's well written, the code is well written, and it's thin. As I read it, I also downloaded and ran as much of the code as possible. I didn't know Python very well when I started, so I also read David Beazley's "Python: Essential Reference" at the same time. I learned a lot about Python by reading both books at the same time, but more importantly, I learned a great deal about the Semantic Web and the ecosystem of tools & technologies that can be used to leverage it -- not just in Python, but also in Java, Ruby, C/C++, RDF, OWL, etc.
One of the things I really liked about the book was the early look, in Chapters 2 & 3, at working code for a simple RDF-like triple-store, a SPARQL-like query language, and even a reasoning/inference mechanism. By the way, for Python fans, the same code also demonstrates the power of Python's generators (no pun intended). In later chapters, a Python library called 'rdflib' is used instead the home-grown one from Chapters 2 & 3. One can find similar libraries in other languages (e.g., Jena for Java applications).
If you try running any of the book's code, you may want to check out the errata sheet at the book's web site. There are some typos or errors, but nothing out of ordinary. One important thing I should note, however, is that the API for 'rdflib' has changed since book was written. Here's a quote about rdflib that I copied into the margin of my copy of the book, "In version 3.X, SPARQL is no longer shipped with core rdflib - instead it is now part of rdfextras." (see http://code.google.com/p/rdflib/wiki/...).
Finally, I think the experience that a person has reading a book--any book--is affected by what they know before they read the book. That is an obvious statement. For example, you would have a really bad experience reading a book on advanced calculus if you have never read a book on calculus before. Prior to reading "Programming the Semantic Web", I read Allemang & Hendlers' most excellent book, "Semantic Web for the Working Ontologist". If you're serious about learning the Semantic Web, you might actually start with Allemang & Hendler. It is not about programming, though, it's about data modeling. Read it, then read PtSW -- that's just my advice.
This is a great introductions to the concepts of the semantic web. It's actually very light on RDF -- it focuses more on the concepts of triples and graphs directly, using Python as the example language. I send every tech employee here to the lobby to get their own copy, or throw it in their oreilly.com ebook account.
I have skimmed this book. It is definitely a book that will be useful if I find a use for the Semantic Web in my current project as it has specific code examples of working with the Semantic Web. To figure out what I want to do with Semantic Web I am reading Pull first and then I may come back to this book.
Good introduction to the technologies of the semantic web. My main complaint was how it gives you a really good explanation and then as it passes to the code just gives you a bunch of code without explaining what it does.
It works that Python is a relatively simple language but still for beginners into semantic tech its kinda hard to follow.
okay... not much to say but it is interesting... I stopped reading it a few weeks ago... maybe I'll pick it up again when I feel like I'm closer to talking the higher-ups into building the sites for the semantic web...
A new book, but no new content. This is mainly because the semantic web hasn't really moved anywhere in the past N years so there isn't anything new to write about.