Bug #81

Blank Node Assignment in Inserts inconsistent with autocommit

Added by Andrae Muys - almost 15 years ago. Updated almost 15 years ago.

In Progress
Target version:
Start date:
Due date:
% Done:


Estimated time:


It appears that the binding of variables to blank nodes when inserting
statements behaves differently depending on whether autocommit is turned
on for the session. If I have autocommit turned on and execute the
following iTQL commands:

create <rmi://localhost/server1#test>;
insert <test:subj> <test:pred> $x $x <test:value> 'o1'
    into <rmi://localhost/server1#test> ;
insert <test:subj> <test:pred> $x $x <test:value> 'o2'
    into <rmi://localhost/server1#test> ;
select $s $p $o from <rmi://localhost/server1#test> where $s $p $o;

Then I see that the variable "x" is bound to different blank nodes in
each of the two insertions, and the resulting model has 4 statements.
This is the behavior (behaviour?) that I would expect.

However, when I turn autocommit off prior to the first insertion, and
turn it back on after the second insertion, then I see that the variable
"x" is bound to the same blank node in each of the insertions,
resulting in 3 total statements in the model, which came as a bit of a
surprise to me. Is this the expected behavior in that situation?


Updated by Andrae Muys - almost 15 years ago

  • Status changed from New to In Progress

Updated by Paula Gearon almost 15 years ago

While it is unexpected behavior, it is also exactly what some people would like to have, as there is no way to re-reference an inserted blank node without doing a select/insert.

So do we fix it, or document it?

Also available in: Atom PDF