Re: Proposed response to Golbeck regarding imports issue

At 1:28 PM -0400 5/19/03, Jeff Heflin wrote:
>The following is a proposed response to Jennifer Golbeck regarding the
>issue with imports raised in:
<personal comment - not chair>

Jeff - I think the gist of this is ok (although it made it even more 
clear to me that the imports objection was right - we really have a 
serious mess).  However, the advice you give her is not relevant, and 
thus you do need to look at the ontology she mentions 
( -- but the real problem 
is it doesn't have the hierarchical structure you assume, and yet our 
imports decision is exactly flawed because it assumes this kind of 
hierarchical "tree" structure, but most ontologies don't have these 
nice trees.

She wants to break this 17,000 class ontology and break is into 
smaller pieces, but any piece might call to any other piece.  Thus, 
she needs the explanation that the imports closure is a "theoretical 
construct" not what the actual tools will do -- but guess what, you 
cannot  do it -- worse, you propose to write:

At 5:25 AM -0400 5/20/03, Jim Hendler wrote:
>>"Importing another ontology brings the entire set of assertions provided
>>by that ontology into the current ontology.

but that is EXACTLY what the group decided was NOT mandated by the 
imports rule.

I therefore suggest we either rethink this a bit, or at least reword 
-- I was hoping your response would help me decide I could change my 
object to an abstain, but all I see below is something that convinces 
me that I should strengthen my objection!

p.s. Please note Dave Beckett's comment - under the wording above, if 
ontologies all import each other, the only way to process in OWL is 
to import ALL of the semantic web into your reasoner -- bam, end of 
story for OWL...  so we need to get this explanation right, as people 
exploring this are likely to (correctly) decide that our decision is 
brain damaged.

<personal comment off>

>Dear Jennifer,
>Thank you for you comment. As the original issue owner for imports, I
>have been asked to respond on this issue to you. This issue was heavily
>debated by the working group between Sept. and Nov. 2002 (see the public
>archive for excruciating details) and it became clear that any
>resolution (including not including imports at all) would have been
>closed over objection. The current resolution is the result of a
>majority vote.
>That being said, let me address your specific concerns because I believe
>there are suitable workarounds for your issues.
>You mention your desire to break the NCI ontology into smaller
>ontologies. This certainly would be a good reason to use imports. And I
>would be surprised if it was impossible to modularize this ontology,
>although it may be hard design work. Unfortunately, the link you gave
>was broken so I could not view the ontology and make concrete
>suggestions. However, if it is mostly a deep and broad taxonomy, then a
>natural approach is to create abstract ontologies for the top of the
>taxonomy, and then group the most specific classes into chunks of
>manageable size. Each of these chunks would be an ontology that imports
>the abstract ontology.
>Even if this is not the case, and in effect, all files had to import all
>of the others, this should not matter for many tools. Imports only
>really matters to reasoners, and even then only those that are concerned
>with completeness. For example, an editor does not have to follow
>imports links. Additionally, an incomplete reasoner (and many reasoners
>may be incomplete in various ways, but still be valuable) might choose
>not follow these links either.
>You also mentioned wanting to borrow a single term from a large
>ontology, without having to import the whole thing. This was discussed
>by the working group from the very beginning. I point to Objective 07
>from the Use Cases and Requirements document [1]:
>O7. Commitment to portions of ontologies
>The language should support the ability to commit to portions of an
>ontology, as well as committing to an entire ontology. However, it is
>unclear what granularity should be used here. Possible choices are to
>choose a subset of concepts with their entire definitions, or to
>choose   individual pieces of definitions. Note that borrowing partial
>definitions of concepts must address the potential interoperability
>problems that can arise since different applications will be using the
>same identifier to mean different things.
>Note, as an objective, the group decided that the feature was generally
>desirable, but that it wasn't absolutely necessary for the the first
>version of the language. It was discussed at the time imports was
>considered, but no concrete proposal for how partial imports would work
>was put forward at that time. However, I see a couple of alternatives
>for how you can handle your problem:
>1) If you do not wish to import the large ontology then you do not
>endorse it in its entirety. So just copy the relevant portions into some
>other file and import that instead. Note, you can still use the URIs
>from the original large ontology, which I think gets you exactly the
>operational behavior you desire. It also has the added benefit of making
>it explicit how much of the ontology you agree with. An even better
>solution is to get the owner of the large ontology to break it into
>smaller, more manageable chunks, but I realize that this is often not
>2) The current spec does not prevent people from experimenting with new
>features and (a corresponding extended semantics) to handle just this
>Simply don't use owl:imports in the documents that do this and instead
>define some other property. If you can develop compelling demos, get
>wide usage, and provide a clean semantics, then it should be easy to get
>it into OWL 2.0.
>Finally, you mention the wording in the documents:
>First you discuss the following passage from the reference document,
>"Note that the importing a document is different than creating a
>namespace reference. owl:imports do not set up a shorthand notation for
>names as does a namespace reference. On the other hand, the namespace
>reference does not imply that all (or even any) ontological terms from
>that namespace are being imported. Therefore, it is common to have a
>corresponding namespace declaration for any ontology that is
>You are correct that there are a few problems here: First, we are
>inventing the term "namespace reference" when we mean "namespace
>declaration." Second, the point of this paragraph was to comment on why
>namespace declarations and imports are both needed, not to comment on
>how systems might follow links. In particular, we were trying to say
>that they are very different animals. I suggest the following rewording:
>"Note that although owl:imports and namespace declarations may appear
>redundant, they actually serve very different purposes. Namespace
>declarations simply set up a shorthand for referring to identifiers.
>They do not implicitly include the meaning of documents located at the
>URI (although some applications may choose to process these documents in
>addition to the original document). On the other hand, owl:imports does
>not provide any shorthand notation for referring to the identifiers from
>the imported document. Therefore, it is common to have a corresponding
>namespace declaration for any ontology that is imported."
>You also mention the following from the OWL Guide, 2.2.:
>"Importing another ontology brings the entire set of assertions provided
>by that ontology into the current ontology. In order to make best use of
>this imported ontology it would normally be coordinated with a namespace
>declaration. Notice the distinction between these two mechanisms.
>The namespace declarations provide a convenient means to reference names
>defined in other OWL ontologies. Conceptually, owl:imports is provided
>to indicate your intention to include the assertions of the target
>ontology. Importing another ontology, O2, will also import all of the
>ontologies that O2 imports."
>Once again, you are correct that the wording could be improved. By "to
>make best use of" we really meant "for convenience of the user." Of
>course, you are also correct that there may be times when the namespace
>declaration is irrelevant (such as the case when an ontology does not
>create any new identifiers), which is why it is important that we say
>"usually" and not always. Here is my suggested rewording:
>"Importing another ontology brings the entire set of assertions provided
>by that ontology into the current ontology. It is often convenient to
>coordinate this with a namespace declaration, so that qualified names
>can be used when referring to the resources of the ontology. Notice the
>distinction between these two mechanisms. The namespace declarations
>provide a convenient means to reference names defined in other OWL
>ontologies. Conceptually, owl:imports is provided to indicate your
>intention to include the assertions of the target ontology. Importing
>another ontology, O2, will also import all of the ontologies that O2
>Thank you again for you comments. Please let me know if I have
>adequately addressed your concerns.

Professor James 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-731-3822 (Cell)

Received on Tuesday, 20 May 2003 05:45:45 UTC