W3C home > Mailing lists > Public > www-rdf-logic@w3.org > October 2000

Re: DAML-ONT: RDF syntax

From: Dan Connolly <connolly@w3.org>
Date: Tue, 31 Oct 2000 18:00:33 -0600
Message-ID: <39FF5D21.CDCD8C25@w3.org>
To: Sergey Melnik <melnik@db.stanford.edu>
CC: www-rdf-logic@w3.org
Sergey Melnik wrote:
> 
> Dan,
> 
> my concern in pointing out some syntax-related issues was to reduce the
> effort needed by the DAML participants to create and use workable
> ontologies in short time. Please see it from this point of view.

Well, I'm trying, but it looks more like you're trying to
get me to teach DAML users how to work around bugs
and limitations in existing software. I'd really rather not.

> You
> wrote down the DAML-O specs in RDF, that's great. But you also have to
> consider that other people will need to accomplish similar tasks in
> specifying their own ontologies.
> 
> Dan Connolly wrote:
> >
> > The spec doesn't require ID and resource to be qualified;
> > in fact, as written, it doesn't allow them to be qualified:
> >
> >   [6.6] idAttr         ::= ' ID="' IDsymbol '"'
> >  [6.18] resourceAttr   ::= ' resource="' URI-reference '"'
> > http://www.w3.org/TR/1999/REC-rdf-syntax-19990222/#grammar
> >
> > So it looks to me like the bug is in your tools[1],
> > not in the DAML schema.
> 
> As Dan Brickley pointed out, the problem with qualified tags and
> attributes was correctly summarized by Jonas at
> http://www.w3.org/2000/03/rdf-tracking/#rdf-ns-prefix-confusion

Yes, we're all agreed there's a problem. If you're saying
that a "correct" resoultion has been agreed, I don't think so.

> Several RDF parsers that I tried dealt with this issue in different
> ways. I included a compatibility fix in [1] that works around the bug in
> the spec. I just made the new release available at [1].

Work around a bug in the spec? If you like. I prefer
to see it as a fix to a bug in your software.

Based on hacking RDF with XSLT
	http://www.w3.org/XML/2000/04rdf-parse/
and XML schemas
	http://www.w3.org/2000/07/DAML-0-5-syntax
I think that ID and resource and such are more like
punctuation than symbols that need grounding in the Web
via namespaces. There are never any cases
where the rdf: namespace qualifier are necessary
to disambiguate the syntax of ID, resource, etc.

> > >           - the definition is location-dependent. If the DAML/RDF file is moved
> > > to another location
> > >             (e.g. stored on a local disk), it will break.
> >
>   [...]
> > I don't see any reason to support re-publishing
> > this schema at a different address (e.g. saving
> > it locally to a file). If you want to use it
> > off-line, then set up a cache; i.e. teach
> > your software that it can dereference
> > http://www.w3.org/2000/01/rdf-schema by
> > looking at a file on local disk.
> 
> Typically, if you do some serios work with ontologies and instances, you
> would store them locally in some form. Remember, we are talking not only
> about the DAML-O schema, but also about a number of independently
> developed ontologies. Fetching dozens/hundreds of files from various Web
> sites for every run of your application is prohibitive. I used the
> caching approach you suggest in some of our applications. It is way too
> troublesome for casual use.

My experience is to the contrary: fetching things out of
the web in real-time is much more convenient than managing
a local store of them.


> One cheap workaround for the relocation problem that occurred to me is
> the following. One can use [1] to regenerate DAML/RDF documents e.g. as
> follows:
> 
>         java org.w3c.rdf.examples.ParseAndSerialize -xml
> http://www.daml.org/2000/10/daml-ont
> 
> The output can be redirected to a local file which uses
> location-independent syntax.

Yup... that's a perfectly reasonable way to manage your
local cache of knowledge from the web.

> > >           - including full resource URIs is time consuming and error-prone.
> >
> > Er... this "time consuming and error-prone" job is done.
> > I don't see why it matters how it was done.
> 
> On the contrary: your part of this job may be done, but other
> participants still need to define their ontologies in RDF, and for them
> this tip may be useful.

Maybe. But again, my experience is to the contrary:
I find it easier to manage relative URI references
rather than absolute ones.


> > > When in question, please always use fully-qualified tag names and
> > > attributes in your DAML/RDF files. Similarly, try to avoid relative
> > > references to locally defined resources. For example,
> > >
> > >         <complementOf rdf:resource="&daml-o;Thing"/>
> > >
> > > is superior to
> > >
> > >         <complementOf resource="#Thing"/>
> >
> > I disagree; "#Thing" is syntax that has been common
> > to the web community since 1990 or so, and I don't
> > see any reason to avoid it.
> 
> So let me explain. This syntax was originally defined for HTML anchors.
> If you copy a Web page to another location, your browsers can still
> properly resolve local references. Unfortunately, this is not the case
> with RDF, since in RDF the identity of nodes does matter in all but rare
> cases.

Again: my experience is to the contrary. I wrote daml-ont
originally on my laptop, then uploaded it to W3C, revised
it a few times, and finally moved it to daml.org. Granted,
the identity of the properties and classes changed
when I moved the documents, but (a) that was by design
and (b) I didn't have to edit the documents when I moved them.


> While local references seem to remain intact, they actually refer
> to completely different objects, so most applications that try to access
> the copy will break.

What's broken is the expectation of somebody who thinks
they can take content from one part of the Web and republish
it elsewhere without any glitches. The applications don't
"break" in this case; they're just doing what they're told
to do.

> This is exactly what happens if you make a copy of
> DAML-O or other ontology.


> This issue is related to the preceding posting
> by Pat.
> 
> Sergey
> 
> P.S.: by coincidence, [1] will correctly process
> http://www.daml.org/2000/10/daml-ex although it has no built-in support
> for parseType "daml:collection". The parser uses order by reification to
> handle lists of XML elements. Look at the output generated by
>         java org.w3c.rdf.examples.ParseAndSerialize -triples
> http://www.daml.org/2000/10/daml-ex
> 
> The XML serialization of order by reification is, however, different
> (non-standard).
> 
> [1] http://www-db.stanford.edu/~melnik/rdf/api.html

-- 
bind default <http://www.w3.org/People/Connolly/kb>
<mailto:connolly@w3.org> is mailbox of 
  [a Person; called "Dan Connolly";
  affiliation [ a Consortium; called "W3C";
	     homePage <http://www.w3.org> ];
  homePage <http://www.w3.org/People/Connolly/>;
 ]
Received on Tuesday, 31 October 2000 19:00:37 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:52:37 GMT