semantic web

What the Semantic Web can learn from JavaScript

RDF 1.1 Primer starts with the following example: <Bob> <is a> <person>. <Bob> <is a friend of> <Alice>. <Bob> <is born on> <the 4th of July 1990>. <Bob> <is interested in> <the Mona Lisa>. <the Mona Lisa> <was created by> <Leonardo da Vinci>. <the video ‘La Joconde à Washington’> <is about> <the Mona Lisa> Then [...]


Can JSON and RDF be friends?

Is it possible to turn RDF into an idiomatic tree-based format? The history of RDF notations, especially the experience with RDF/XML and JSON-LD proved the opposite. Ian Davis summed it up nicely: The main problem I see with the “idiomatic JSON” use case is that although it’s much more usable by the average web author, [...]


Making data a first-class Web citizen

Working on my startup, Faviki, I have realized how hard it is to get even basic data about a webpage. Faviki is a bookmarking app that lets users connect webpages with structured data from DBpedia. I was trying hard to figure out how to take it to the next level — to get more data [...]


An example of Hypernotation

Let’s publish some data using Hypernotation. I am going to use the same (Chuck Norris) RDF example I have used on the blog so far. You can see the published data on http://milicicvuk.com/data_ and the prefix mappings on http://milicicvuk.com/prefix_. The domain is different for obvious reasons – I used my domain instead of http://chucknorris.com, but [...]


Bringing together the RDF and OO models in the Semantic Web

The RDF model has many similarities to the object-oriented model. These are described in A Semantic Web Primer for Object-Oriented Software Developers: Domain models consist of classes, properties and instances (individuals). Classes can be arranged in a subclass hierarchy with inheritance. Properties can take objects or primitive values (literals) as values. The same document states [...]


Introducing Hypernotation, an alternative to Linked Data

URL, URI, IRI, URIref, CURIE, QName, slash URIs, hash URIs, bnodes, information resources, non-information resources, dereferencability, HTTP 303, redirection, content-negotiation, RDF model, RDF syntax, RDFa core, RDFa lite, Microdata, Turtle, N3, RDF/XML, JSON-LD, RDF/JSON… Want to publish some data? Well, these are some of the things you will have to learn and understand to do [...]


The Challenge of Building the Semantic Web

The Semantic Web is often described as an extension of the current Web. The idea of what extending the Web should look like can be seen in Linked Data. In order to better understand the importance of Linked Data, one has to understand the context in which it emerged, i.e. the problem it has been [...]


Extended CURIE (prefix:localName:key)

In the post Assigning a URI to each node of an RDF graph, I described the mechanism that enables all nodes to get URIs. For example, the age of a person identified by the URI reference http://chucknorris.com/data_/chuck can be described by using a “classic” blank node as follows (using the Turtle syntax): <http://chucknorris.com/data_/chuck> foaf:age [ [...]


Literals, blank nodes, n-ary relations and rdf:value

A literal node is a specific type of a node because it represents a value and as such is always dependent on a resource whose value represents. As has been discussed in the post Problems of the RDF model: Literals, there is a need to clearly separate the concept of a literal from this resource [...]


Assigning a URI to each node of an RDF graph

Before we start, let’s remind ourselves of the example RDF graph we used in the previous post: The challenge is to figure out URIs for nodes having question marks, namely blank nodes and literals. How to provide a URI for each node of an RDF graph? The solution to this problem can be found in [...]