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 [...]

Two types of links on the Web

In the last post I discussed the hierarchical aspect of the Web, suggesting that there are two types of links on the Web: tree links and graph links. Tree links The Web consists of web sites, which typically have a tree structure, i.e. one that involves parent-child links between the various levels of the hierarchy. [...]

The Web is just a bunch of trees plus shortcuts

The “Graph thinking” is one of the biggest conceptual problems when it comes to learning and understanding Linked Data and the RDF model, according to Rob Styles. Here, the term “graph thinking” refers to the ability to think about data as a graph, a web, a network. People, although understand the concept of a graph, [...]

Getting rid of typed literals

So far I was dealing with the complexities of the RDF model – the mess surrounding the concept of a node, many different types of nodes, as well as different methods of identification of nodes that have a name. However, there are aspects which are not just overcomplicated, but plain ugly as well. Here I [...]

The “RDF graph” URI pattern

Anyone involved in anything having to do with the Semantic Web or Linked Data knows how much time and energy is wasted on endless discussions on the blank node issue. It is a controversial topic because on the one side blank nodes cause huge problems in practice, while on the other, they enable a great [...]

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 [ [...]

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 [...]