- From: Enrico Franconi <franconi@inf.unibz.it>
- Date: Wed, 7 Sep 2005 02:00:58 +0200
- To: jos.deroo@agfa.com
- Cc: RDF Data Access Working Group <public-rdf-dawg@w3.org>
On 6 Sep 2005, at 20:43, jos.deroo@agfa.com wrote:
> I am trying to understand the issue..
> starting from your given data
>
> ##############################################
> @prefix owl: <http://www.w3.org/2002/07/owl#>.
> @prefix : <enricoP#>.
>
> :Paul a :WORKER.
> :Andrea a :WORKER.
> :Simon a :EMPLOYEE.
> :Caroline a :MANAGER.
> :Paul :has-friend :Andrea.
> :Paul :has-friend :Simon.
> :Simon :has-friend :Andrea.
> :Andrea :has-friend :Caroline.
>
> :WORKER owl:unionOf (:EMPLOYEE :MANAGER).
> ##############################################
>
> I really can't see how query (*)
>
> ##############################################
> PREFIX owl: <http://www.w3.org/2002/07/owl#>
> PREFIX : <enricoP#>
>
> SELECT ?X
>
> WHERE {
> ?X a :WORKER;
> :has-friend ?Y.
> ?Y a :EMPLOYEE;
> :has-friend ?Z.
> ?Z a :MANAGER.
> }
> ##############################################
>
> can give an answer..
[snip]
> Did you really intend query (*) ??
Yes I did :-)
The crucial bit is reasoning about Andrea. We don't know whether she
is an employee or a worker (if she were either employee or manager,
then the answer to the query would be clearly Paul - do you agree?);
but we know that since she is a worker then necessarily she has to be
either employee or manager. So, Paul is in the answer for any
possible case of on Andrea.
Is it clearer now?
--e.
Received on Wednesday, 7 September 2005 00:01:09 UTC