RE: use case: finding employees by type (disjunction and OWL)

>> Rob, I'm also afraid that I don't follow...
>> Could you maybe formulate your original use case
>> as a test case
>> 
>> given following triples:
>> ...
>
> This I can do:
>
> :Al rdf:type Employee
> :Carl rdf:type Employee
> :Bob rdf:type Employee
>
> :Al :hasGroup :Management
> :Carl :hasGroup :Engineering
> :Bob :hasLocation :SanFrancisco
>
> I'll even give you some OWL used to supplement this data:
>
> Employee => Exists hasGroup (Management OR Support OR Engineering)
> SanFrancisco is a member of the "NoEngineering" class
> (Employee AND Exists hasLocation NoEngineering)
>   => NOT (Exists hasGroup Engineering)

couldn't parse that, but used some named classes such as
:ManagementOrSupportOrEngineering, :ManagementOrSupport,
:ManagementOrEngineering and :SupportOrEngineering to
write the :hasGroup derivations

>> asking following triples:
>> ...
>
> I'm afraid not. A use case shouldn't include one arbitrary guess at its
> conclusion. There is no query language for RDF.
>
> I can tell you what the user wants to do: he wants the names of all
> employees who are in either management or support. That's all he knows.
> He's not interested in whether he's going to write owl:unionOf or '||'
> or "or" or whether he's going to use triples or SQL or whatever. He

understood, so e.g.
_:X :hasGroup :ManagementOrSupport.

> wants to get his answers in the easiest manner possible, and specifying
> any of this stuff about which he really doesn't care just makes the use
> case worse.

OK, I was actually asking for a *test* case :)

> Ignoring the OWL data, the user expects to get back Al but not Carl.
> He's not sure whether or not Bob will be returned.
>
> Using the OWL data, the user should get back Al and Bob, but not Carl.

right, indeed I got
:Al :hasGroup :ManagementOrSupport.
:Bob :hasGroup :ManagementOrSupport.

-- 
Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/

Received on Monday, 12 April 2004 17:55:46 UTC