Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

SUO: RE: SUO Comment #3




Dear Bill,

See responses below.

Regards  
      Matthew
============================================
Matthew West
Asset Information Management
Shell Services International
H3229, Shell Centre, London, SE1 7NA, UK.
Tel: +44 207 934 4490 Fax: 7929
E-mail: Matthew.R.West@is.shell.com
http://www.shellservices.com/
============================================

> -----Original Message-----
> From: Bill Andersen [mailto:andersen@ontologyworks.com]
> Sent: 15 August 2000 19:50
> To: West, Matthew MR SSI-GPEA-UK
> Cc: Schoening, James R CECOM DCSC4I; Standard-Upper-Ontology (E-mail)
> Subject: Re: SUO Comment #3
> 
> 
> "West, Matthew MR SSI-GPEA-UK" wrote:
> > 
> > Dear Bill,
> > 
> > I don't think it is as bad as you make out.
> > 
> > As far as I can see, conformance to the SUO means using the 
> terms of the SUO
> > with the meaning of the formal definition defined by the 
> SUO in the SUO
> > language.
> 
>   Right...  But that might not (probably won't) be possible even in
> principle in the case of RDF, for example, which doesn't even admit
> negation.  The compilation target system has to be capable of the
> semantic expressiveness of the SUO language.  Perhaps there are W3C-
> like proposals for XML-based languages of this sort, but I'm not
> aware of them.  We're talking pretty much full FOL for the SUO lang-
> uage and all of the XML-based languages being considered for popular
> use come nowhere close in expressiveness.  That means approximation
> will be required.  As Mike Uschold commented, he doesn't see this
> approximation as that much of a problem, but it's still a problem.

MW: Well there are two possibilities here, either you can only partially map
the SUO into the environment, and the implication is that if negation can't
be mapped, then it isn't relevant to the purposes of that envirnonment, so
is not missed. Or you model negation in the environment. I'm not familiar
with RDF, but entity-relationship models have the same problem. However,
with the constructs of entities attributes and relationships, I can create a
model that will handle negation, so then it is not a problem, only a matter
of how to solve it.
> 
> > So there is no problem if someone does just strip out the 
> terms and use
> > them, provided the use conforms to the formal definition 
> (if it didn't it
> > would be non compliant, and that is something you could 
> check against the
> > formal definition, albeit that not being available directly).
> 
>   Concrete example - We're likely to have a disjointness relation 
> between types in the SUO.  This is pretty standard fare.  So you
> write it like this:
> 
>   (forall (P Q) 
>     (<=> (disjoint P Q) 
>          (forall (x) 
>            (<=> (P x) (not (Q x))))))
> 
>   where P, Q range over unary predicates.
> 
>   How do you do this in RDF-like language (without negation) without
> resorting to a definition outside the language itself?  Alternatively
> one could build such functions one by one as special cases inside the
> language (like a Lisp special form) but then SUO users are obligated
> to cope with these without guarantee that compiling a particular
> subject ontology to different target languages A and B will result in
> two implementations that are able to communicate in a meaningful way.

MW: As I have said above, one option is to build disjointness as a concept
in your RDF model. (I think you may be getting too hung up about concepts
being at the same level (model, meta-model, meta-metamodel). The other is to
just say "well I don't need to define disjointness, the SUO just deifnes
that they are disjoint, so if there is an overlap then something is wrong"

In the real world of applications we do relatively little to stop people
doing things that are stupid. For some things, like checking if something is
a part of itself, it can be prohibitive to do the check for large
assemblies, so we don't. There is no reason for someone to say some physical
object has itself as a part, and if they try to do this (and we find out) we
tell them they have made a mistake, and they agree.

Note, the total system includes the users as well as the information system,
you just change the system boundaries.