W3C home > Mailing lists > Public > semantic-web@w3.org > June 2020

Re: Blank nodes semantics - existential variables?

From: Eric Prud'hommeaux <eric@w3.org>
Date: Tue, 23 Jun 2020 14:10:40 +0200
To: Antoine Zimmermann <antoine.zimmermann@emse.fr>
Cc: semantic-web@w3.org
Message-ID: <20200623121040.GA255715@w3.org>
On Tue, Jun 23, 2020 at 01:11:32PM +0200, Antoine Zimmermann wrote:
> 
> 
> Le 21/06/2020 à 15:35, angin scribe a écrit :
> > Hi everyone,
> > 
> > Is the standard semantics of blank nodes in RDF still the same as
> > existentially quantified variables?
> 
> Yes.
> 
> 
> > Let "_:b1" and "_:b2" be blank nodes, In the current standard semantics
> > of RDF, is it still true that the graph below does not necessarily mean
> > that Bob has two different things?
> > 
> > Bob has _:b1
> > Bob has _:b2
> 
> Indeed. This graph would be equivalent to saying:
> 
> "Bob has something. Bob has something."
> 
> We can't conclude that Bob has 2 things.

Reducing this to "Bob has _:b3" is called "graph leaning".  This is a
behavior of RDF semantics, upon which is built RDFS and OWL, but
interestingly not the SPARQL 1.1 RDFS entailment regime.

RDF 1.1 Semantics says "Blank nodes are treated as simply indicating
the existence of a thing, without using an IRI to identify any
particular thing." It follows from there that two statements:
  [] a :Barn .
  [] :color :red .
might be talking about the same thing. You can't know without some
inverse functional properties or other application logic. AFAICT, while
architects may take this in mind when designing data models, no tool
uses RDF semantics on its own. There have been tool chains that count on
graph leaning, but the ones I saw were stand-alone processing steps, not
features intrinsic to generic RDF processors.

SPARQL is really a graph query language; it doesn't do any sort of
graph leaning. `SELECT * { <s> <p> ?o }` will give you two bindings
┌──────┐    ┌────────┐
│ ?o   │ or │ ?o     │
│ _:b1 │    │ _:abcd │
│ _:b2 │    │ _:efgh │
└──────┘    └────────┘
(Those bindings may have any distinct labels; there's no assurance
that blank node labels are preserved.)

You could argue that a carefully constructed SPARQL query could allow
you to deduce that the response you got could be leaned, but everyone
I know of who wants counting semantics treats them as distinct
individuals. I think this accounts for 95+% of the work done with RDF.

RDFS only allows you to infer new stuff so it can't do any sort of
leaning. OWL would allow you to specifically infer that they were the
same individual but it can do that with IRIs as well so there doesn't
seem to be much of an observable difference between them other than
that some parts of OWL axioms require BNodes instead of IRIs to
eliminate the effects of coreferences.

I guess you could characterize it this way:

1. Graph semantics treat BNodes as individuals.
   test: insert { <s> <p> _:a , _b } and find two triples.

2. SPARQL (unextended) semantics likewise treat BNodes as individuals.
   test: SELECT * { <s> <p> ?o }

3. SPARQL RDF semantics still treat BNodes as individuals.
   
4. RDF Entailment implies lean-able graphs.

5. OWL can unify BNodes and IRIs.


> > I.e., two syntactically different blank nodes do not necessarily mean
> > that they are two different entities.
> > 
> > I know that there has been a lot of discussion on blank nodes in the
> > past, cf. [1, 2, 3]. I just want to make sure that there are no recent
> > changes on the semantics of blank nodes that I missed. Please let me
> > know if I miss some recent updates in this area. Many thanks!
> 
> In standardising Web technologies, the W3C is extremely cautious about
> backward compatibility. If something was defined in some way in a version of
> a W3C standard, it is likely to work the same in later versions. Sometimes,
> features get deprecated, but they still work the same, if used. Other times,
> features get added, but they do not change the way prior features work.
> Obviously, there are exceptions, even in RDF. For instance, the way literals
> and datatypes work in RDF 1.1 is different from RDF 1.0, but the practical
> consequences are almost insignificant.
> 
> 
> --AZ
> 
> 
> > 
> > Cheers,
> > A
> > 
> > [1] M. Arenas, M. Consens. A. Mallea. Revisiting Blank Nodes in RDF to
> > Avoid the Semantic Mismatch with SPARQL.
> > https://www.w3.org/2009/12/rdf-ws/papers/ws23
> > 
> > [2] A. Hogan, M. Arenas, A. Mallea, A. Polleres. Everything You Always
> > Wanted to Know About Blank Nodes. Journal of Web Semantics. 2014.
> > 
> > [3] A. Mallea, M. Arenas, A. Hogan, A. Polleres. On Blank Nodes. ISWC 2011.
> > 
> 
> -- 
> Antoine Zimmermann
> Institut Henri Fayol
> École des Mines de Saint-Étienne
> 158 cours Fauriel
> CS 62362
> 42023 Saint-Étienne Cedex 2
> France
> Tél:+33(0)4 77 42 66 03
> Fax:+33(0)4 77 42 66 66
> http://www.emse.fr/~zimmermann/
> Member of team Connected Intelligence, Laboratoire Hubert Curien
> 
Received on Tuesday, 23 June 2020 12:10:47 UTC

This archive was generated by hypermail 2.4.0 : Tuesday, 5 July 2022 08:46:04 UTC