Re: LANG: need to CLOSE Issue 5.6 Imports as magic syntax

[...]

> [Jeff's proposal for imports]
> 
> Therefore, I propose the following:
> 
> 1) The syntax for imports be the same as that of DAML+OIL
>
> 2) The semantics essentially be "A imports B means if B entails P then A
> entails P." Here A and B can be any document, not just ontologies. Also
> note that when a document does not contain an imports statement, we do
> not specify a mechanism for determining what statements from other
> documents are entailed. Thus, developers are free to implement various
> things, just as they are free to combine arbitrary unlinked documents.
> However, in such situations, they take responsibility for the
> conclusions they make.
> 
> 3) The imports triples are considered extra-logical, and any statements
> that contain owl:imports as a subject or object are undefined.
> Furthermore, any imports statements that have a resource other than the
> containing document as a subject are undefined.

I endorse Jeff's proposal, with the following changes.  I'll start out with
the abstract syntax, as it is much easier to see what is going on here:

1/ OWL abstract syntax ontologies can include Imports(<URI>) directives.

2/ The closure of an OWL abstract syntax ontology is obtained by taking its
   directives and replacing any Imports directives by the directives of the
   OWL ontology found at the URI that is the argument of the Imports
   directives, unless the URI has already been so used in which case the
   Imports directive is simply removed.  This is done until there are no
   Imports directives remaining.  

   2a/ Other kinds of annotations are simply removed.

3/ An OWL intepretation of an OWL abstract syntax ontology is defined as an
   OWL interpretation of its closure.

4/ An OWL ontology entails an OWL axiom if all interpretations of the
   ontology are OWL interpretations of the axiom.  One OWL ontology entails
   another if all interpretations of the first ontology are interpretations
   of the second.

Note that this does not *require* an OWL agent to actually construct the
closure to compute entailment.  The OWL agent could do whatever it wanted,
as long as the correct result was obtained.

I have a modification of the semantics document that incorporates these
(minor) changes to Imports for the abstract syntax and its direct semantics.


Unfortunately, there are problems when the RDF syntax is considered.

1/ What is the syntax for imports (and other annotations)?

2/ If the syntax results in n-triples, then these n-triples will interfere
   with entailment.

   For example, does the OWL ontology

   http://foo.ex/bar
	<http://foo.ex/bar#John> <http://foo.ex/bar#loves> <http://foo.ex/bar#Mary> .

   entail

   http://foo.ex/baz
	<http://foo.ex/baz#> [owl:imports] "http://foo.ex/bar" .
 
   This is why I suggested that imports be made an attribute of the enclosing
   rdf:rdf (or other) element.

peter

Received on Wednesday, 30 October 2002 10:30:56 UTC