W3C home > Mailing lists > Public > public-rdf-dawg@w3.org > January to March 2007

Re: a recent history of the scope of blank node identifiers

From: Fred Zemke <fred.zemke@oracle.com>
Date: Mon, 29 Jan 2007 10:07:07 -0800
Message-ID: <45BE37CB.7040606@oracle.com>
CC: public-rdf-dawg@w3.org

Lee Feigenbaum wrote:

> <>. . .
> On the mailing list, Fred suggested extending the scope of blank node
> identifiers in queries beyond the BGP in October [fred-suggestion]. That
> mail message doesn't seem to have generated any response. That's about 
> all
> I've found in recent months on the topic.

[fred-suggestion] is 2006OctDec/0104

I recall at some point stating to the group that my reserch showed that
it would take a lot of work to extend the scope of blank node identifiers
outside a BGP in the context of entailment, as opposed to mapping.
(With mapping it is easy, you just treat a blank node identifier like a 
Then someone else (Pat?) replied that since it was so hard to extend the 
it was not worth tackling.  The workaround for users would be to
use a variable instead of a blank node identifier.

My concern on this topic has been incremental query development.
A user writes a simple query as a BGP and sees that it is working.
Then the user makes it more complex by inserting an OPTIONAL.
This breaks up the scope of blank node identifiers, so that what
was a join in the user's original query is no longer a join.  So this is
not user friendly.  It is the user's burden to notice when he has
broken the scope of a blank node identifier while rewriting the query.
Also, note that the "user" in question may be two different people,
or the same person coming back to a working application after
a long period.  Thus we cannot assume that the query rewriter
is intimately familiar with the entire query.

Recently a compromise was aired, which is that it would be a syntax
error to use the same blank node identifier in more than one BGP.
This looks like a good compromise to me.  The language does not
need to be extended to support the extended scope of blank node
identifiers (very difficult to do) and the user gets a warning when
the user accidentally rewrites a query to break the scope of the
blank node identifier.  So my current position is to support
the combination:
1. scope of blank node identifiers is a BGP
2. duplicate blank node identifiers in different BGPs is illegla.


>[bnodeRef] http://www.w3.org/2001/sw/DataAccess/issues#bnodeRef 
>[june-27-minutes] http://www.w3.org/2006/06/27-dawg-minutes
Received on Monday, 29 January 2007 18:08:05 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 7 January 2015 15:00:53 UTC