RE: Action-67 some examples on b-nodes issues and their impact on users

 
I was wondering if some form of these user vignettes can be included in the
Primer?
This approach could be used to illustrate how the user could use some of the OWL
constructs
for some of his/her use cases and could potentially be drawn up as a use case
flow activity
diagram.

Of course, it would not necesarily be negative, but more of a "This is how you
could do this ..."

I liked this a lot and believe this could be an effective way of communicating
with the user.

Any suggestions?

---Vipul

> -----Original Message-----
> From: public-owl-wg-request@w3.org 
> [mailto:public-owl-wg-request@w3.org] On Behalf Of Bijan Parsia
> Sent: Wednesday, January 23, 2008 5:37 AM
> To: OWL Working Group WG
> Subject: Re: Action-67 some examples on b-nodes issues and 
> their impact on users
> 
> 
> Let me present a slightly different perspective on the impact 
> on users.
> 
> A user makes the following RDF graph test and tries to process it  
> with Pellet:
> G: _:x p _:y. _:y p _:x.
> 
> User(U): Pellet's broken! It can't handle my simple test G!
> Bijan(B): Did you have species validation on? You'll find 
> that that's  
> OWLFull
> U: OWL Full? Why! It's just RDF with no OWL at all!
> B: BNodes...variable interpretation...[600 lines with  
> examples]...undecidable....queries...see my presentation, blog post,  
> email thread and these 17 papers
> U: So OWL DL is broken?
> B: No, blha blahll...
> U: So I can *never* use BNodes? But I have to in restrictions.
> B: Translation...syntax...[900 lines]...
> U: Ok, so I can *only* use BNodes in syntax.
> B: No, you can use tree like patterns in the ABox.
> U: Tree like?
> B: Yes, e.g., x p _:y. _:y p _:z. (and that last could be z). But  
> you're probably better off without bnodes at all...
> U: YAY! BNODES
> 
> Then user creates another test case
> G': x p _:y. _:y. _:y p _:z.
>       MyClass subClassOf [a Restriction; someValuesFrom Thing;  
> onProperty p]
> 
> U: Pellet's broken! When I classify G', I get that x rdf:type  
> MyClass, but not _:y!
> B: _:y is a BNode.
> U: But you said I could use bnodes! It species validates.
> B: Yes, but remember bnodes are variables and they have restricted  
> scope. Think of bnodes in answers to sparql queries.
> U: Oh, you mean I should see _:G12 or some gensym.
> B: No.
> U: Why not?!?!?!? Pellet's broken!
> B: Think of it this way, what you wrote is a notational variant of:
> 	x rdf:type [ onProperty p; someValuesFrom [ onProperty p;  
> someValuesFrom]].
> U: Right, I can replace the node label with [].
> B: Uhm...no. See the [] Bnode is a *syntax* bnode, Ok?
> U: Ok.
> B: But the *someValuesFrom* is replacing your _:y and _:z. If you  
> were just replacing the labels, it'd be x p [p []].
> U: ....
> B: So just as you wouldn't expect to see a label in the class tree  
> off the somevaluesfrom, you shouldn't with the bnode.
> U: ...
> B: I can back this all up from the specs!
> U: ...
> B: Is that a knife in your hand, or you just happy to stab me?
> U: ...
> B: We have a switch in Pellet that Does The Better Thing. Use it.
> U: Thank you. Please make that switch being on the default.
> 
> This is a bit of an abstraction of Many Many conversations I've  
> had :) Except without the knives, and usually a heck of a lot more  
> disparagement of Bnodes as variables from me.
> 
> Cheers,
> Bijan.
> 

The information transmitted in this electronic communication is intended only
for the person or entity to whom it is addressed and may contain confidential
and/or privileged material. Any review, retransmission, dissemination or other
use of or taking of any action in reliance upon this information by persons or
entities other than the intended recipient is prohibited. If you received this
information in error, please contact the Compliance HelpLine at 800-856-1983 and
properly dispose of this information.

Received on Wednesday, 23 January 2008 11:51:53 UTC