Re: SUO: RE: KIF syntax and semantics and a basic ontology
>Pat,
>
>Two points.
>
>1. There seem to be two uses of the '#' notation.
> (i) Use of the '#' notation for "namespace prefixing", for example
>'arithmetic#plus', is like tagging in the disjoint union operation.
> (ii) Use of the '#' notation for "referencing a part" of another
>ontology, for example '(imports seq
>http://www.frob.org/2000/iterations#sequences)', is like a restriction
>operation.
>Should we use different notations for these two different uses? I believe
>the XML namespace mechanism uses ':' for namespace prefixing and '#' for
>referencing parts.
I guess I see these as essentially the same thing, since the
'includes' notation is just a way to give a tag to a part of an
ontology. The namespace relationship is the same in the two cases,
which is why I used the same syntax. I am not sure whether this
corresponds exactly to the XML notion or not, not being XML-savvy
enough yet.
>2. Is importation transitive or absorbtive or something else? For example,
>consider the following situation.
> * the ontology B is located at B-place
> * the ontology C is located at C-place
> * the ontology A contains an importing expression '(imports b B-place)'
> * the ontology B contains an importing expression '(imports c C-place)'
> * the ontology A also contains an importing expression '(imports c2
>C-place)'
> * the relation named 'r' is used in the C ontology
>Now
> * in B this relation is referred to by the name 'c#r'
>But
> * in A is this relation referred to by the name 'b#c#r' or by the name
>'c2#r'?
What a very good question! I had not thought of that.
As far as A is concerned, there are two relation symbols here, and
they are different symbols. They might denote the same relation, but
there is no automatic presumption that they do. There could not be,
since the ontology B might add further assumptions about 'r' which
are not included in C, and A might therefore wish to discriminate
between r-as-seen-only-by-C from r-as-seen-by-B. (Since the basic
language is monotonic, it certainly should be that anything that can
be inferred about r-as-seen-by-B can also be inferred about
r-as-seen-by-C, but not necessarily vice versa.)
>Often (always?), A will want these two names to refer to the same relation.
>Should there be either automatic or manual means for making these two names
>synonymous (equivalent)?
I think the W3C answer would be that there is a *presumption* that
each location has to be treated by default as a different namespace,
so the answer would be that no, there would be no *automatic* means
for making them synonymous. Manually it could be done by rewriting
the (imports c2 C-place) deliberately using the c-prefix used by B to
import C, or simply by not importing C to A again (since it is
included in B). Or, it could be done by adding a whole lot of
equality statements to A which assert that b#c#r and c2#r are always
equal.
Pat Hayes
---------------------------------------------------------------------
IHMC (850)434 8903 home
40 South Alcaniz St. (850)202 4416 office
Pensacola, FL 32501 (850)202 4440 fax
phayes@ai.uwf.edu
http://www.coginst.uwf.edu/~phayes