- From: Jeff Heflin <heflin@cse.lehigh.edu>
- Date: Mon, 22 Apr 2002 12:11:28 -0400
- To: Drew McDermott <drew.mcdermott@yale.edu>
- CC: drager@bbn.com, www-rdf-logic@w3.org
- Message-ID: <3CC43630.ACAE2CB4@cse.lehigh.edu>
Drew, Since I was the initial proponent of daml:imports on the Joint Committee, let me address this issue. You are absolutely correct that the imports statement must be used. Simply refering to a namespace does not include any ontology definitions. You must make the imports statement explicit. Period. The correct way to do this for instance data is: <rdf:Description about=""> <daml:imports rdf:resource="http://www.daml.org/experiment/ontology/beta/elements-ont#"/> </rdf:Description> The problem with using RDF namespaces to decide which schemas are relevant is that multiple files may contain different definitions about the same URI. See the attached GIF for example. The URI for Dolphin has additional definitions in two schemas, good-schema and bad-schema. These definitions are simply rdfs:subClassOf statements that happen to have orig-schema#Dolphin as their subject. The problem with simply using namespaces is I can't say that my-doc agrees with the definitions of Dolphin found in good-schema but not those found in bad-schema. This is why daml:imports was an essential component of the language. Note that this issue is also addressed in the Web Ontology Requirements document [1]. Now this does mean that there will be some apparent redundancy between the namespace declarations and the imports declarations in any DAML documents. This is unfortunate, but is the result of XML namespaces being defined solely to solve the namespace problem for languages before the W3C was concerned with ontologies. The ideal solution would be to have the imports introduce namespaces for each ontology (as is done with most pre-Web ontology languages), but alas this solution would go against the grain of pre-existing web standards. Theoretically we could say that the use of a namespace implies that you import that ontology, but this does have the issue (raised later in this thread) of distinguishing ontologies from other XML namespaces. Also, it would not allow someone to provide completely alternate definitions for a common set of terms (whether this is a good thing or a bad thing, I'm not sure). Regardless, there is nothing in the DAML+OIL specs that says that such default import statements exist. Although some tools may decide to implement this default, it is nonstandard, and is akin to to having HTML tools that are very flexible about guessing what you mean when you provide malformed HTML. Jeff Heflin [1] http://www.w3.org/TR/2002/WD-webont-req-20020307/#goal-shared-ontologies Drew McDermott wrote: > > Hello, Dave -- > > In your capacity as keeper of the DARPA/SONAT ontologies, I have a > question about the "instance data." I am cc-ing www-rdf-logic because > there seems to be a general issue here about how DAML datasets work. > > These ontologies are found at > > http://www.daml.org/experiment/ontology/ > > and I don't think they're sensitive (or they would be https: instead > of http:). > > The file af-a.daml is RDF, rather than DAML, and appears to consist of > "instance data," not ontology. > > Here is the beginning of that file: > > <rdf:RDF > xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' > xmlns:rdfs='http://www.w3.org/2000/01/rdf-schema#' > xmlns:NS0='http://www.daml.org/experiment/ontology/beta/elements-ont#' > > > > <rdf:Description rdf:about='http://www.daml.org/2001/12/factbook/af.daml#A1202'> > <NS0:country rdf:resource='http://www.daml.org/2001/09/countries/fips#AF'/> > <rdf:type rdf:resource='http://www.daml.org/2001/12/factbook/factbook-ont#Port'/> > <rdfs:label>Kheyrabad</rdfs:label> > </rdf:Description> > > My problem is this: > > Wouldn't it be much more informative if this line > > xmlns:NS0='http://www.daml.org/experiment/ontology/beta/elements-ont#' > > were supplemented by something like this: > > <daml:imports rdf:resource="http://www.daml.org/experiment/ontology/beta/elements-ont#"/> > > But it's not clear where this would go. > > Is it supposed to be the case that just mentioning an ontology's > namespace means that the file uses that ontology? I find that rather > disconcerting. For the time being, we'll make that assumption, but > this seems like a bug (or gap) in the DAML spec. There ought to be an > official way to say "This RDF file is based on ontologies X, Y, and > Z." > > -- Drew McDermott
Attachments
- image/gif attachment: imports.gif
Received on Monday, 22 April 2002 12:11:46 UTC