RE: An alternative RDF

HI Victor,

I think you're running into a very common issue with blank nodes...   if you parse the same file twice, the blank nodes from one parse run are not identified the same as in the second one.  This is frustrating, but by design -- there's no way to ensure that blank nodes have consistent identifiers-- they would not be blank nodes in that case.    

Your solution will probably involve mapping you blank nodes to predictable identifiers and using those instead.   Once your blank nodes are converted (skolemized) into IRIs, you won't have this issue any more.

Your proposal -- that you should be able to require some nodes to be blank -- would not solve the issue -- the problem is that, upon parsing a blank node, there's no identity with which to bind it to another blank node in a different parse run.


Charles Greer
Senior Engineer
MarkLogic Corporation
Phone: +1 650 287 2569
Cell:  +1 707 318 0442

From: Victor Porton []
Sent: Thursday, July 10, 2014 8:05 AM
To: Pat Hayes
Cc: Michael Brunnbauer; SW-forum Web
Subject: Re: An alternative RDF

10.07.2014, 17:59, "Pat Hayes" <>:
> On Jul 10, 2014, at 8:17 AM, Victor Porton <> wrote:
>>  10.07.2014, 16:05, "Michael Brunnbauer" <>:
>>>  Hello Victor,
>>>  when using RDF, you cannot decree that certain entities have to be described
>>>  using blank nodes. RDF users are free to choose between URIs or blank nodes and
>>>  your app should be able to cope with both.
>>  My conclusion from this is that the RDF specification should be changed, so that an application would be able to demand that certain nodes are blank.
> As stated, this requirement does not make sense. How would one specify which node one wanted to be blank? There is no way to describe a single node in a graph one has not yet seen.

It is my Ada code, which checks whether a node is blank.

It should be just sure that my Ada code is capable to do this check.

>>  And despite of that it is not already in the RDF standard, it seems that most of implementation already provide support for this: Using an RDF library I can tell which nodes are blank and which are not.
> You can look at nodes and determine which ones are blank nodes, of course. That is part of the RDF syntax.

It is just what I need.

Victor Porton -

Received on Thursday, 10 July 2014 16:23:42 UTC