W3C home > Mailing lists > Public > www-rdf-rules@w3.org > November 2003

Re: Rules WG -- draft charter -- NAF

From: Dan Connolly <connolly@w3.org>
Date: Mon, 24 Nov 2003 06:52:50 -0600
To: Benjamin Grosof <bgrosof@mit.edu>
Cc: Jim Hendler <hendler@cs.umd.edu>, Sandro Hawke <sandro@w3.org>, adrianw@snet.net, www-rdf-rules@w3.org, phayes@ihmc.us
Message-Id: <1069678370.11774.31.camel@dirk.dm93.org>

On Sat, 2003-11-15 at 11:13, Benjamin Grosof wrote:
> At 03:18 PM 11/14/2003 -0500, Jim Hendler wrote:
[...]
> >  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.

That's not obvious to me at all. It's been clear to me since
the day we made XML 1.0 a recommendation that extensible
languages in the Web can't work this way:



[[[
Lack of ambiguity
Some programming languages allow one to introduce identifiers from new
name spaces in such a way that it is not possible to know which
namespace a local identifier belongs to without accessing both the
module interface specifications and checking which one has with the
highest priority, or  most recently in the document, redefined a given
local identifier.

This may have some uses in a programming language such as Java[Java],
but it has a serious flaw in that when one module changes (without the
knowledge of the designers of the other module), it can unwittingly
redefine a local identifier used by the second module, completely
changing the meaning of a previously written document. Clearly, in the
Web world in which modules evolve but documents must have clearly
defined meanings, this is unacceptable.  Contrast with Modula-3, where
all names are either lexically scoped or fully qualified [SPwM3].

The syntax must unambiguously associate an identifier in a document with
the related schema without requiring inspection of that or another
schema.

This is the reason for the use of a prefix  in the XML namespace
proposal to tie the use of an identifier directly to the specification
of the name space. Notice that in the example above, the fact that the
binding element actually creates a new level of nesting removing all
ambiguity.
]]]

-- http://www.w3.org/TR/1998/NOTE-webarch-extlang-19980210#Ambiguity

>   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'm not sure what you mean by "this". Yes, if we do anything
like NAF, we need a way to be explicit about bounds. More
explict than make, as explained above.

I'm interested in pointers to designs that you think might
be workable.

I've found cwm's log:includes and log:notIncludes mechanisms
  http://www.w3.org/2000/10/swap/doc/Reach
useful for building a number of applications. I've tried
to figure out what it corresponds do in other systems, but
I'm not having much luck. It can't really be all that
novel, can it?



>   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

of course.

>  -- consider issues of data/knowledge 
> quality alone!

[...]

-- 
Dan Connolly, W3C http://www.w3.org/People/Connolly/
Received on Monday, 24 November 2003 09:04:58 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 2 March 2016 11:10:15 UTC