Re: Rules WG -- draft charter -- NAF

Hi Jim and all,

At 03:18 PM 11/14/2003 -0500, Jim Hendler wrote:
>Ben-
>  I agree w/Sandro - NAF requires identifying a set of facts it works over 
> (the domain) - but RDF graphs,  but their very nature are open -- so what 
> sound easy suddenly becomes very hard.  We attcked this problem in WebOnt 
> (see our reqs document and issues lists - sorry, I'm on slow connection 
> don't have the URIs, but they are one link from 
> http://www.w3.org/2001/sw/WebOnt) - we wanted a way to have a local 
> unique names assumption - but couldn't solve the problem -- I bet the 
> local domain naming is at least as hard, probably harder

Would you please send me specific links when you can? I looked at the OWL 
requirements and issues list documents and I couldn't   easily figure out 
which parts of them you were referring to.

>  here's an example, tell me whaty you would do
>
>You say
>  Rule1 - if person(shoesize) != large then A
>  Rule2 - if person(shirtsize) != large then B
>  RULES-CLOSED-OVER http://www.foo.bar/document1.rdf
>
>and that seems fine,  but document1 includes
>   :Joe owl:class :person.
>   :Joe shoesize :large.
>   :Joe nickname "the gorilla".
>  :person rdf:type foo:human.
>
>now, foo is a namespace document which contains a bunch of facts about humans.
>It is clear that A is false, because the document you're closed over says 
>his shoesize is large
>But what about B being true?   We see that this document doesn't include 
>that his shirtsize isn large, but what is on foo:?  Maybe it says anyone 
>with the nickname "the gorilla" where's a large shirt, maybe it refers to 
>another document, ad infinitum.
>  So when there is a web of graphs refering to terms in other graphs, etc 
> - how do you know where things stop?  (see www-sw-meaning for a lot more 
> dicussion of this issue!)
>  this is also only one simple manifestation of this problem -- when you 
> talk about documents that are changing, scraped, etc. (all of which come 
> up on the web) it gets even uglier
>
>  Sandro put it well - it's not that we cannot do NAF, it's that designing 
> the mechanism for definining the bounds of a graph on the web is still an 
> unsolved problem --

Thanks for the example, it helps.
I think you've put your finger right on the nub of the problem.
I was indeed presuming that there is a mechanism to define the bounds of 
the knowledge base / graph, i.e., to well-define the set of premises.

>  if the rules group has to solve it to make progess, that is risky 
> business....

I think the Semantic Web needs to solve it in an initial fashion, and quite 
soon.  There's a tremendous overambitiousness in thinking that this is 
*not* critical path.  It's not so hard to do, either -- in the following 
sense.  Programming languages "solved" it long ago with mechanisms that 
check transitively for inclusion (such as the "make" facility in C).
The obvious approach is to just use that type of idea for the Semantic 
Web.  Thus if the transitive closure of the "import" chains cannot be 
determined and meet the usual criteria of well-definedness then there is a 
KB scope violation of a "system-ish" nature.  This will force people to 
define more carefully exactly which portions of other KB's that they are 
importing -- including via more contentful module mechanisms within KB's -- 
and to do integrity checking on transitive closures of inclusion both 
initially when KB's are developed and periodically/dynamically as KB's are 
maintained/updated.

  I know that some don't like the idea of having to do this.  I think the 
alternative of not being allowed to define such scoping is, however, 
extremely undesirable.  The idea of "all RDF anywhere on the web" as 
something I would want to always *have to* use as my KB's scope is a 
complete non-starter practically -- consider issues of data/knowledge 
quality alone!  (I'm tempted to say it's ridiculous.  People talk about 
"trust" on the Semantic Web.  The most basic mechanism for trust is simply 
to know what set of premises the inferences were drawn from.  We'll be 
laughed out of town in most practical IT settings if we don't have a good 
story about this aspect of things.)

If we take the approach I'm suggesting (and others have suggested it too) 
then we don't have to get fancy about deep philosophy and unplumbed 
territory of "social meaning", or wait for more research on "trust",  to 
just get going on doing over the Web the kind of KR that has been proved in 
useful in decades of practical applications (and for a number of years in 
multi-agent systems).  We can then proceed incrementally/evolutionarily 
over time, as we develop further use cases and techniques, to open things 
up by having more implicit and relaxed mechanisms for importing / scoping 
the KB's/graphs.   We should start with what we know works, in short, and 
then work to improve upon it in the direction of reducing the burden of 
defining inclusion/import scoping.  As a practical matter, if there is a KB 
scope violation cf. above, then that doesn't mean we can't/won't do 
inferencing, depending on the purpose and kind of inferencing -- some kind 
of inferencing may be useful even when there is a violation.

If we do it that way, we can have/do nonmon/NAF on the Semantic Web 
essentially today, and develop additional techniques later for making the 
scoping more flexible and convenient.


>  -JH
>p.s. Note that the OWL group rjected the solution that we could use the 
>imports closure and define everything else as not included, because that 
>would limit you to only those things defined in the DL profile, not all 
>OWL and all RDF documents

I'm confused by this.  "All OWL and all RDF documents" is way too big -- 
see above my comment about "all RDF on the Web".  When you say "DL profile" 
I presume you mean the set of OWL imports statements.  What's the point of 
an imports mechanism in OWL if everything else is included?  Perhaps I'm 
not understanding what you're saying.

In any event, the way to go is to define (a given KB as) importing of RDF 
as well as OWL (and soon, more generally, semantic web rules knowledge base 
modules as well), in the imports profile, and stick to the transitive 
closure for most purposes.  Does that require extending the current imports 
mechanism of OWL, e.g., to define a boundaried RDF graph as imported?

>-- the rules language would have to face that same issue, but also deal 
>with all things findable by Xquery ... yow!

I don't see what XQuery has to do with it (at least not directly), if we're 
talking RDF stuff.  XQuery is certainly related to Semantic Web Rules 
(indeed, I was one of the first to press this point to the W3C team; back 
in March 2001 I presented to them about it), but I don't see that Rules 
"have to... deal with all things findable by XQuery".  More pertinent to 
the main topic here is that XQuery deals quite ambitiously with very large 
scale databases and as I understand it (from early versions I looked at) 
has a well-defined boundary of what is queried over.  That's thus probably 
further evidence towards the usefulness of my scoping suggestion about 
imports closure.

Benjamin

>--
>Professor James Hendler                   http://www.cs.umd.edu/users/hendler
>Director, Semantic Web and Agent Technologies     301-405-2696
>Maryland Information and Network Dynamics Lab.    301-405-6707 (Fax)
>Univ of Maryland, College Park, MD 20742          240-277-3388 (Cell)

________________________________________________________________________________________________
Prof. Benjamin Grosof
Web Technologies for E-Commerce, Business Policies, E-Contracting, Rules, 
XML, Agents, Semantic Web Services
MIT Sloan School of Management, Information Technology group
http://ebusiness.mit.edu/bgrosof or http://www.mit.edu/~bgrosof

Received on Saturday, 15 November 2003 12:11:52 UTC