- From: Bijan Parsia <bparsia@cs.man.ac.uk>
- Date: Thu, 7 May 2009 15:59:47 +0100
- To: SPARQL Working Group <public-rdf-dawg@w3.org>
On 7 May 2009, at 15:12, Chimezie Ogbuji wrote:
> On 5/6/09 1:14 PM, "Bijan Parsia" <bparsia@cs.man.ac.uk> wrote:
[snip]
>> Example (OWL):
>> s rdf:type [a owl:Restriction;
>> owl:onProperty :p;
>> owl:someValuesFrom owl:Thing]
>> entails s p _:g.
>>
>> Should SELECT ?X WHERE {s p ?X} return anything? (I say no)
>
> Hmm.. This is tricky. Can you elaborate on why you think there
> shouldn't be
> any answers here. I understand that the same argument for the
> first example
> (simple entailment) would apply here, but intuitively it seems to
> me that a
> user-specified existential restriction in this case is more
> 'suggestive'
> (for lack of a better word - I really don't have any principled
> reason other
> than intuition regarding the OWL author's intent) of the s p _:g
> entailment.
In my experience, no one expects that to entail a bNode. Most people
(of all sorts of sophistication) just don't get the correspondence
between bNodes and someValuesFrom. Indeed, between bNodes and
existential variables. Most people (in my experience) think of bNodes
as funny singular terms.
Thus, I believe most people would be surprised by that answer.
That's the user side. Technically, I would worry about it because
it's hard to know how many bnodes to generate. For example, if you
say P min 4 C, that's the same as 4 someValuesFrom (in some sense).
> For example, consider:
>
> Brain rdfs:subClassOf [
> a owl:Restriction;
> owl:onProperty part_of;
> owl:someValuesFrom CentralNervousSystem
> ]
>
> MyBrain a Brain
>
> If the query,
>
> SELECT ?ANATOMY { MyBrain part_of ?ANATOMY }
>
> Returns nothing (as I understand your suggestion above would
> sanction),
Require.
> a
> user might interpret this as suggesting that 'my brain' is not part of
> anything even though the OWL axioms say it is necessarily part of the
> central nervous system.
Well, if ?ANATOMY is distinguished, it *will* return nothing, since
we have no named thing that the brain is part of.
If it is nondistinguished (in an ask query) then we'd get "yes",
i.e., the brain is part of something (though we aren't sure what it is).
I agree that ideally, it'd be nice to have semi-distinguished
variables, but, basically, we don't know how to do it. The likely
thoughts I've had in this area are really computationally difficult
(and non-distinguished variables are already computationally
difficult) so it seems unlikely to be implemented anytime soon. So
I'd rather train users to deal with *this* funny circumstance since
it doesn't seem *that* bad. (Not good, but I don't think it's that
big of a leap to say "well, variables are bound to names or to
explicit bnodes, but not to implicit bnodes". It's a consistent story.)
Cheers,
Bijan.
Received on Thursday, 7 May 2009 14:55:57 UTC