Journal 3 – RDF and Linked Open Data

This morning we worked with Turtle(s?), a nickname for Terse RDF Triple Language. Turtle allows the long text of complex triples to be written in an abbreviated format. For the purposes of the class, or at least my own benefit as a beginner with RDF, writing-out the triples in long form is best. Once the entire triple is there in its extended form, it’s easier to see the connection between the full triple and the abbreviated Turtle version of the triple. Going over Turtle this morning was helpful because it made us think about the triples we were using, their composition, and how they could be better structured.

RDF (Resource Description Framework) is not a programming language, so there’s no way for it to throw an error if something is missing or incorrect. An error message could come later from another program that can’t find information, or if information isn’t presented as expected. However, this delay can make working with RDF triples a bit tricky.

JSON-LD is a way to use both JSON (Javascript Object Notation (it’s not using “Javascript” anymore, but it was initially part of the format)) and Linked Data. JSON is relatively new, used by tech startups, and its popularity is growing because of the many web applications being developed. JSONlint is a validator for JSON, and the playground at can be used for further testing. JSON-LD is designed to build on existing APIs (Application Program Interface) in semantic ways to make them more usable and data rich. This enhancement isn’t for human readability, but for machines so that APIs are more easily accessed and actionable.

JSON-LD is a relatively new way of transporting data. Its initial development began in 2010, and it became a W3C Recommendation as of January 2014. There’s a quite a bit of controversy surrounding JSON-LD, but it’s not really about the method or the technical specifications. Instead, the argument is whether JSON-LD is for the Semantic Web (human readable) or for API enhancement (machine readable). On the surface the discourse surrounding JSON-LD might appear to be trivial, only a matter for technical debate. The deeper question though, is how information is represented in digital space, and what role people have as developers and consumers in our modern and machine-actionable world.

This example of a Turtle at contains errors, it should read ( :a :b :c ) - no spaces between the colon and the b & c values.
This example of a Turtle at contains errors, it should read ( :a :b :c ) – no spaces between the colon and the b & c values.