Hi Patrick,
We corresponded about this a while back and it was interesting to see
how COSMO handles these issues. Of the three top sets of partitions I
was referring to (first/second/third order, concrete v abstract and
continuant v occurrent), COSMO also has the concrete v abstract
partition (mental object in COSMO being the abstract partition), and
the Occurrent partition. I would also assume that the COSMO Context
partition corresponds to the third order thing (Mediating Thing, or
context).
On earlier ontologies I have done for clients in the financial sector,
I didn't try to use any of these partitions. However, many of the terms
which exist in any financial industry model (for example existing XML
message standards) are things like Issuer, Custodian, Counterparty and
so on. Parties in particular form a significant group of terms. These
also exist in the wider business world, of which the financial industry
is one sub set. For example contracts have parties and these are
specialised to Issuer and Holder of a security (or for an over the
counter swap security, they are both simply counterparties, as in any
bilateral contract). Similarly transactions, which form part of the
definition of an over the counter derivative, exist in the wider world.
Looking at the COSMO model again, it seems that you have solved the
exact same problem I am describing. The class of Role, which is a
sub-class of Temporal Thing, contains a wide range second order things,
including the sub-class Human Role containing those things like Parent
and Spouse which are second order things. Meanwhile Human Role is also
a child of Person, so that the second order thing inherits the
properties of the first order thing that it is.
So you have solved the exact same problem I am talking about, but in a
different way. Where I have an object property identifying the first
order thing, you have a parent relationship to achieve the same effect.
There are a few aspects of the COSMO ontology which I find
counter-intuitive on this, for example PersonWithOccupation and
SkilledOccupation are shown as peers, both being sub-classes of
HumanRole, and I would have thought that one of these was a
specialisation of person while the other was a specialisation of role.
I am not sure how you would deal with situations where for example a
client or a counterparty may be either a human being or a company. Here
I have legal entity as the common first order class, which (when
required for a specific defition) can be specialised to be a company, a
country or a human being etc. For example almost any legal entity may
be an issuer, but the issuer of a corporate bond may only be a company.
Government bonds present an interesting challenge because they are
issued by a government, which is a second order thing, on behalf of the
country (legal entity) they govern.
There is an interesting modelling choice around roles and second order
things, because in principle one could model roles as OWL Object
Properties (as I do) but then one could simply make the range of that
property a first order thing. Here I think the choice has to depend on
how any data derived from the ontology is to be used. As long as there
are likely to be qualifying terms for a role (as there may be financial
definitions), it makes sense to model it as an OWL Class, and therefore
it needs to be a second order thing, like your Role classes. Otherwise
you would have to be able to apply datatype properties and object
properties to an object property. So the separation of role and second
order thing sometimes results in apparently tautologous terms and these
would often need to be collapsed in any logical data model derived from
the ontology.
In terms of the usefulness of these, I think it solves a number of data
problems that people have been seeing in the financial industry, where
people have tried to manage semantics from within a data model or
message schema, and for example where mapping between two such data
schemes proves difficult. So for example some securities issuance terms
would have "Underwriter" with a list of phone numbers, "Syndicate
member" with another such list, and so on. Obviously these would be
combined in any logical data model, but it makes sense to define "Legal
Entity" with all of the phone numbers and things, and then terms
specific to the process (such as contact person for that process, with
their phone number) would be in the second order thing, rather than all
of these terms being mixed in together. Similarly I have spoken to
people who are struggling with client and counterparty definitions as a
result of conflating client with legal entity - a valid conflation
within a single computer system but a problem when you want to define
terms globally across a business unit. Having the second order thing
with the object property of "identified as" linking to a legal entity
resolves this and allows for mapping between data sources that have
different treatments of these, via the common semantics model.
I guess the bigger picture is that all computer systems have an
ontology already whether it's documented or not, and we are trying to
establish a common ontology to be used across a business unit, a
company or an industry, and therefore the different shades of meaning
that are irrelevant within one program become important if one is to
link them together or re-use data intelligently within different
applications.
For the ontology I am working on, my client's main aim is to
accommodate all the terms that exist in different systems and message
standards, within a single consistent framework. This replaces the
various ad hoc business spreadsheets that are used in many firms today,
and brings the semantics out of the technical models, where the
business knowledge is often lost or undocumented. Potentially this can
be used to derive logical data models, as the ad hoc spreadsheets would
have been.
This means that usability is a major requirement for this model. But
not usability as an ontology per se. Rather, this is an attempt to show
business stakeholders a view of their world, which they can validate.
As such, I have found that the first / second order distinction can be
easily explained to business users, since it is not a technology
definition they are being asked to learn, but rather a real world
distinction. A few examples usually put the point across fairly easily,
and they are then able to contribute to the definition of data items
and relationships without needing to understand database modelling.
Having said that, most business participants will rarely need to look
at the top level of the model, except where there is an argument about
different meanings applying to a similar word or term. Then the model
structure serves to unambiguously identify the intended meaning of
something.
I do not envisage a scenario where any of the users of this model are
likely to fire up Protege and search for something in that. They will
either navigate the diagrams or search for things in the spreadsheet
view. However, once enough people ask for it I hope to get a budget to
convert the content into an OWL or RDF file format so that other, more
advanced things like automated reasoning and semantic queries can be
done with it. I would like to see that. Even then, the primary business
interface would be tables/spreadsheets and technology-neutral diagrams,
as business sign-off is a vital component of getting the terms complete
and correct. I am watching with interest those tools that are starting
to evolve a business-readable interface.
Incidentally I thought the presentation by Mike Bergman on the UMBEL
(Upper Mapping and Binding Exchange Layer) at our recent showcase
teleconference was very interesting. UMBEL provides a means to relate
upper ontologies to each other. It will be interesting to see how this
deals with issues like a role being an object property in one ontology
and a class in another, and how it would help to relate second order
classes from ontologies which have defined these differently, or which
have different and potentially conflicting parent classes. Because it
seems to me that the second order things are all there in these upper
ontologies, whether they are identified as such or not.
Best regards,
Mike
Patrick Cassidy wrote:
Mike -
Concerning your question:
MB> It also made sense to me, to distinguish between first- second-
and third-order classes of Thing, as defined by John Sowa and
others (John's book summarises the history of those terms very well).
MB> What interests me, and what I am really asking here, is why is
this approach not noticeable in upper ontology resources like
the Suggest Upper Merged Ontology (SUMO)? Am I missing something?
SUMO looked to me like a single taxonomic hierarchy of classes
of Thing, without these three sets of partitions.
I can't answer for SUMO, but I can tell you why those distinctions don’t
appear in COSMO:
*** there is no apparent need for them, and spending time trying to
decide into which of those abstract categories one might place specific
types or relations does not make any sense to me, as they add nothing to the
intended meaning. ***
Wherever one might think that a type or relation fits one of those
categories, the more specific and meaningful type or relation itself will
carry all the meaning required to perform the intended function of the
ontology.
The top level of COSMO under 'Thing' has 20 types, and one of the those
('Individual') is a heterogeneous grouping of other types that are mostly
heterogeneous groupings associated by some property (a 'faceted'
categorization). If I had 'firstness' secondness' and 'thirdness' at the
top level, I expect that few people wanting to find some particular type of
thing would have no idea where to start in the drill-down process. Tools
like Protégé that allow searching for substrings in the label for a type
help immensely, but as far as creating a hierarchy for drill-down when
string search fails, those three abstract categories, in my estimation, are
quite useless. I am very concerned with usability of any ontology, meaning
that it has to be as easy as possible to understand, while preserving its
technical adequacy.
Those abstract categories may be interesting for philosophical
speculation, but I have never observed any function for them in automated
reasoning. More specific issues dominate my concerns about representing
meaning.
If they help you organize your own thinking about the meanings of
concepts, they may be useful, for you, for that purpose. I haven't found
them useful in that way.
However, if anyone were interested in trying to figure out which of those
categories applies to the elements of the COSMO ontology:
http://www.micra.com/COSMO/
I would have no objection. If some useful function could be demonstrated by
the act of such a classification, I would be intrigued and may change my
mind about their usefulness.
Pat
Patrick Cassidy
MICRA, Inc.
908-561-3416
cell: 908-565-4053
cassidy@xxxxxxxxx
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Config: 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx
--
Mike Bennett
Director
Hypercube Ltd.
89 Worship Street
London EC2A 2BF
Tel: 020 7917 9522
Mob: 07721 420 730
www.hypercube.co.uk
|
_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Subscribe/Config: 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 Post: mailto:ontolog-forum@xxxxxxxxxxxxxxxx (01)
|