- From: Jim Hendler <hendler@cs.umd.edu>
- Date: Thu, 19 Jun 2003 19:31:35 -0400
- To: Jeff Heflin <heflin@cse.lehigh.edu>, WebOnt <www-webont-wg@w3.org>
Jeff - I think you have some gratuitous comments in here - in particular, I don't find your workaround of copying parts of a file but using the original URI to make great sense - better not to go there. Ditto for suggestion that she should come up with something for OWL 2.0 -- let's delete these. Everything else looks fine - so if you accept my deletions, you should send the following -JH Dear Ms. Golbeck, 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. You claim that your particular ontology is so interconnected that it cannot be modularized in a way that doesn't result in every file importing every other file. However, this is still better than one big file, because it will benefit many tools. Imports only really matters to reasoners, and even then only those that are concerned with completeness. We will add the following text to "OWL Web Ontology Language 1.0 Reference" to make this clear: "Note that whether or not an OWL tool must load an imported ontology depends on the purpose of the tool. If the tool is a complete reasoner (including complete consistency checkers) then it must load all of the imported ontologies. Other tools, such as simple editors and incomplete reasoners, may choose to load only some or even none of the imported ontologies." 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. Finally, you mention the wording in the documents: First you discuss the following passage from the OWL Reference document, 7.3: "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 imported." 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. 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, Section 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. We plan to replace that paragraph (and the preceding one) with the following text: "An owl:imports statement references another OWL ontology. The URI that is the value of the rdf:resource attribute identifies the ontology to be imported. The current ontology is extended with the contents of the referenced ontology. Importing an ontology, O2, will also import all of the ontologies that O2 imports. Thus, if ontology A imports ontology B, the meaning of terms in A are exactly the same as they would be if all of the statements in B (including further imports statements) were included in A. It is often convenient to coordinate owl:imports 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, while owl:imports indicates an intention to include the assertions of the target ontology." Thank you again for you comments. Please let me know if I have adequately addressed your concerns. [1] http://www.w3.org/TR/webont-req/#section-objectives -- Professor James Hendler hendler@cs.umd.edu 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) http://www.cs.umd.edu/users/hendler *** NOTE CHANGED CELL NUMBER ***
Received on Thursday, 19 June 2003 19:31:40 UTC