ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] Constructs, primitives, terms

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: William Frank <williamf.frank@xxxxxxxxx>
Date: Thu, 8 Mar 2012 12:23:15 -0500
Message-id: <CALuUwtCHbkL7pAY-Sdzj+gEhTyRc8sLCS8k2N96CyqTdXD6PEw@xxxxxxxxxxxxxx>
I think is the essence of this point is:

"The number of possible conflicts is infinite, and no fixed set
of universal definitions can anticipate and rule out all of them."

This is true of *logical necessity*; so it is something that we always live with

The reason for this truth is that

 there is no guarantee that all the models for
    any theory G are consistent with one another.  Two applications
    A and B that are each consistent with G can have info in their
    local contexts that conflict with info in the other's context.

More strongly, unless the theory G is complete, which no theory as expressed in an application will be (only theories as bounded and richly expressed as second order arithmetic tend to be complete),
there will always be models, describe in theories G' that are extensions of G, as expressed in different applications, that ARE inconsistent with each other.  As in John's example, "an employee must be at least 21 years of age," may be a rule expressed in one applicaton, while in another employees may be 16, or have no specified age limits. 

But,  unless I am mistaken,ontologies should express ONLY what is true about concepts by their very meaning, what is "true by definition,"* such as that employees work for some institution or person, and are bound by some agreement with them, with respect to that work, rather than expressing things that are not an essential part of the concept of employee, but only a policy stipulated at a given institution, such as how old employees must be.  Then, ontologies cannot and should not provide whatever "full interoperability" might be, as opposed to the economic ecosystem collaboration that for example S.W.I.F.T has enabled, seemingly without running up against these kinds of problems.   ( Historical  evidence that what Paul says and we all seem to agree with is true:  "My only claim is that if you use URIs consistently for referring to things, and RDF consistently for making assertions about things, you have an easy road to improved communication.)

*This ignore the embarassing fact that the line between what is true by defintion and what is true by current prescription is not sharp, but that is a different topic, and the above still holds:  "this is an employee of C, so therefore he has some kind of agreement with the employing institution about their relationship." is sound reasoning, (if no such agreement exists, then he is not an employee, whether believed to be or not) but only a particular well known kind of foolish reasoning would say, "well this is an employee, so therefore he MUST be at least 21."    Maybe he used a false id?   The only thing we can reason is, this is an employee of C, so therefore, if C's HR did their job properly, they have sufficient reason to believe he is at least 21.





On Thu, Mar 8, 2012 at 11:16 AM, John F. Sowa <sowa@xxxxxxxxxxx> wrote:
Paul,

I'll try once more to explain the problems that URIs and shared
definitions, by themselves, cannot solve.

JFS
>> Everybody agrees that globally unique IDs are useful.  But they are
>> not magic.

PT
> Agreed. I never said they were--only that they were a better investment.
> My only claim is that if you use URIs consistently for referring to
> things, and RDF consistently for making assertions about things, you
> have an easy road to improved communication.

Yes.  My only claim is that nobody disagrees with that.

PT
> I admit I am stumped by "using a vocabulary in different contexts".
> Perhaps you mean "with a different set of axioms"? If we agree to say
> "ex:foo", but you put it in play with different axioms than I do, we
> haven't gained anything.

I'll use ordinary logic to describe the issues, but you can translate
the description to OWL or any other version of logic anyone may prefer.

 1. Let's suppose we have a set of globally unique terms, each of which
    has a URI that specifies a precise definition.  The collection of
    all those definitions can be called the global theory G.  And let's
    assume that G is consistent -- i.e., no implied contradictions.

 2. Logicians show that any consistent set of definitions has one or
    more models.  Those models correspond to various applications of G
    for different purposes.  Every statement that can be said about any
    such model is guaranteed to be consistent with G.

 3. But two independently developed applications, say A and B, may add
    new information in addition to the common definitions in G.  I'll
    call the information added to A or B the "local context" of A or B.

 4. Let's assume that all the local applications have been thoroughly
    debugged so that G plus each local context is consistent.  In terms
    of model theory, that implies there exists one or more models for
    that application, which are also among the models for G.

 5. Unfortunately, there is no guarantee that all the models for
    any theory G are consistent with one another.  Two applications
    A and B that are each consistent with G can have info in their
    local contexts that conflict with info in the other's context.

 6. If we are lucky, that additional information might only create
    contradictions that involve local terms so that any statements
    that are limited to using terms in G can be shared among A and B.

 7. Unfortunately, Murphy's Law still applies.  The new info in the
    local contexts may create inconsistencies between A and B that
    use only the terms defined in G.  Some statements may be true in
    A, but false in B, *even though* they don't use any local terms.

> Then if you say "ex:foo rdf:type ex:baz.", which is unexpected
> in my  "context", I will ask what you mean by that, and we will
> get even farther along.

But point #7 implies that contradictions can arise even if there are
no unexpected terms with unexpected definitions.

For example, suppose both systems use the same definitions for the
terms 'person', 'employee', and 'age'.  And let's assume that they
also have copies of the same government rules and regulations.
But company A has a rule that all employees must be over 18, and
company B says that all employees must be over 21.

Then company A sends B the message "Person George is an employee."
Then B concludes that George is over 21.  That can create a problem
if George is only 19 and he's hired as a bartender.

If you think that B should check George's age before hiring him,
let's suppose that company A is a catering service, and B requires
caterers to pour drinks.  In that case, B doesn't directly hire George,
but a conflict arises in the task that George does while employed by A.

The number of possible conflicts is infinite, and no fixed set
of universal definitions can anticipate and rule out all of them.

John

_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J




--
William Frank

413/376-8167


This email is confidential and proprietary, intended for its addressees only.
It may not be distributed to non-addressees, nor its contents divulged,
without the permission of the sender.

_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/  
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/  
Unsubscribe: mailto:ontolog-forum-leave@xxxxxxxxxxxxxxxx
Shared Files: http://ontolog.cim3.net/file/
Community Wiki: http://ontolog.cim3.net/wiki/ 
To join: http://ontolog.cim3.net/cgi-bin/wiki.pl?WikiHomePage#nid1J    (01)

<Prev in Thread] Current Thread [Next in Thread>