ontolog-forum
[Top] [All Lists]

Re: [ontolog-forum] Paper on how to build your first ontology

To: "[ontolog-forum]" <ontolog-forum@xxxxxxxxxxxxxxxx>
From: "doug foxvog" <doug@xxxxxxxxxx>
Date: Sat, 17 Dec 2011 01:53:10 -0500 (EST)
Message-id: <55432.72.83.246.198.1324104790.squirrel@xxxxxxxxxxxxxx>
On Fri, December 16, 2011 18:01, Obrst, Leo J. said:
> ...  A more expressive knowledge representation
> language may help you, but what's really required is a better sense of
> logical and ontological description and methodology.    (01)

+1    (02)

> In addition, there is still tension as to what constitutes a "class" vs.
> "instance" analysis. "Concepts" complicate the problem, because one can
> argue that even instances are "concepts", depending on your definition of
> concept, i.e., as an "idea" or "placeholder in a mental model for the
> corresponding real world object", etc.    (03)

Certainly, the basic terms used in defining an ontology need to be
understood before one starts using them.  And it's true that various
practitioners have used the terms "class", "instance", and "concept"
in different ways.    (04)

The main problem arises (imho) from people who resist the idea of
meta-classes, classes whose instances are themselves classes.  The
languages which disallow the definition of such classes and restrict
the use of the arguments of relations to non-classes leads to contortions
by people who wish to make what would otherwise be simple statements.    (05)

Yes, i know that allowing a language to be so expressive (as any
programming language is) raises its logical complexity.  But there
are many things that people wish to represent that are intrinsically
more complex than the dumbed-down languages.    (06)

As for the terms which Leo refers to above, i offer the following
definitions:
Class -- those things which can have instances.  Whether they actually
         do have instances in a certain situation is context dependent.
         A class has a set of properties that determine whether something
         is a instance of it or not.  This set of properties may or may
         not be expressed or expressible.
         Two classes may have an identical set of instances in certain
         contexts -- this does not make them the same class.  A class
         differs from a mathematical set, since a set is defined by
         its instances and its membership can not changed.  A class
         also differs from a group of things.
Instantiation -- the relationship a Class holds to its instances.
Instance (of a specified class) -- any thing that meets the definitional
         criteria of that class.
Instance -- not a useful word without specifying what it is an instance
         of.  Every class is an instance of the (meta) class "Class".
         every relation is an instance of the class "Relation".
Individual -- those instances of classes which can not themselves have
         instances, i.e., which are not themselves classes.  A subclass
         of Individual -- those which are also neither relations nor
         data type instances -- could also be valuable.    (07)

Concept -- this term is used in too many ways.  Some people use it to
         mean the same as Class.  I suggest using the word "Class" and
         not using "Concept" with any formal definition when referring
         to computer ontologies.    (08)


When a language that bans meta-classes is considered, no instance of a
class is itself a class.  People who use such a language find that every
instance of their classes is an individual, and are led to think of
"instance" as a category of the field being modeled, instead of a
relationship among things in an ontology.    (09)


> So what are the days  of the week, i.e.,  Sunday - Saturday?    (010)

They are classes of time periods which have curious space-time properties.
Instances start in one geographical region expanding to cover additional
regions in multiples of a quarter hour, and which end in a given region
a specified period of time after they start.  They are instances of
the meta-class DayOfTheWeek.    (011)

> Are they instances of DayOfTheWeek or something similar?    (012)

Sure.    (013)

> Or are they classes, whose instances are specific Mondays, e.g.?    (014)

This, too.  If you try to shoe-horn "DayOfTheWeek", "Sunday", and
"Sunday, December 18, 2011 CE GMT" into an ontology that disallows
meta-classes, you have a problem.  You could actually handle this
kind of thing by creating duals for each day of the week -- one
class and one individual -- with rules relating them.   If your
language does not allow complex rules, you'll have to give up
something -- modeling DayOfTheWeek, modeling individual days,
relating DayOfTheWeek to individual days, or the language which
is restricting you.    (015)

> There are many such examples that trip folks up.
>
> There is also an issue with the terminology of KR languages. E.g., is a
> "slot" a relation? Or is it half a relation?    (016)

Once the terms are defined, these things can be answered.  I have
never heard a definition for "half a relation", but the names suggest
that a "slot" is a type of relation.  Some languages distinguish
between object predicates and data-type predicates.  Cyc has an ontology
of relations, which simplifies to something like this:
    Relation
       Function
          ...
       Predicate
          UnaryPredicate
          BinaryPredicate
            BinaryAttributePredicate
              NumericIntervalSlot
              ...
            ...
          TernaryPredicate
          ...
          VariableArityPredicate    (017)

> Many times countless hours of
> hair-splitting and hair-pulling are spent on these issues.    (018)

The time is spent because people don't initially define their terms
clearly in terms of logic.  Often people argue because they are
thinking about different things.  The solution is to clarify the
different things that the various people are referring to, model each,
and define the relationships among them.    (019)

If whether the distinction of whether something is a "class" or an
"instance" is how it is modeled in your ontology, then those two
terms are themselves relations between the referent and the model
you create.  Asking whether something (e.g., Saturday) is "really"
a class is actually a question about your ontology. The answer is a
property of how you chose to model Saturday in an insufficient
language -- not a property of Saturday.    (020)

-- doug foxvog    (021)

> Thanks,
> Leo
>
> -----Original Message-----
> From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx
> [mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On Behalf Of doug foxvog
> Sent: Friday, December 16, 2011 10:25 AM
> To: [ontolog-forum]
> Subject: Re: [ontolog-forum] Paper on how to build your first ontology
>
> On Wed, December 14, 2011 21:27, John Bottoms said:
>
>> I have been doing the Ontology101 thing with an existing ontology and
>> have run into an issue with the schema. Besides the slots the concept
>> includes a special slot for "tags". It then has a validation function
>> that insists that tags be numeric values.
>
> I would suggest that if you do not want numeric tags, you don't use that
> part of the system.  Why not just create additional slots/attributes
> for what you need instead of (numeric) "tags"?
>
> FWIW, the Noy-McGuiness Ontology 101 discussion of classes vs. instances
> is not based on logic, but on pragmatics due to the the limitations of
> the language that they use.  They say that "[i]ndividual instances are the
> most specific concepts represented in a knowledge base".  Giving examples
> of "instances" that should be "classes" if one wanted more detail when
> describing that area.  They also discuss considering wine growing
> "regions" as being classes which have other "regions" as subclasses or
> instances, depending upon whether those subregions had their own
> subregion.
>
> Such a design is very fragile, causing the ontology to break if one
> wishes to add more detail in a given area.  The evident reason for it
> is the limitations of the language being used, e.g. restrictions on
> how classes can be referred to in the system.
>
> To be logically stable, one should design an ontology such that classes
> are types of things that MAY have instances, whether or not there are
> actual instances currently defined in the ontology or included in any
> knowledge base using the ontology.  An individual would be something that
> MAY NOT have its own instances.
>
> Carefully defining what terms mean should make the relationship between
> them clear.  For example, whether BurgandyWine an type of RedWine or an
> instance of RedWine depends on whether you define RedWine as something
> whose instances are varieties of wine or amounts of liquid that (some)
> people like to drink.
>
> Many ontologies naturally refer to types of types, i.e., metaclasses.
> If your represenation language does not allow you to define metaclasses,
> then you are tempted to design non-logical twists in order to model the
> domain.  The best solution is to switch to a language that is not so
> limiting.
>
> -- doug f
>
>
>> I can't get to the author so
>> I'm in a quandary. Should I just go ahead and make it into something I
>> can use, or should I shoehorn the tags into integer values using a table
>> or an enum?
>
>
>> -John Bottoms
>>   FirstStar Systems
>>   Concord, MA USA
>>
>> On 12/14/2011 6:18 PM, Rich Cooper wrote:
>>> Dear Ontologizers,
>>>
>>> On this forum, we have occasionally tried to
>>> construct small example ontologies for
>>> illustrative purposes, and occasionally for
>>> practical purposes.  Here is a paper that may be
>>> of interest to others on the forum:
>>>
>>> http://protege.stanford.edu/publications/ontology_
>>> development/ontology101-noy-mcguinness.html
>>> "Ontology Development 101: A Guide to Creating
>>> Your First Ontology"
>>> By Natalya F. Noy  and Deborah L. McGuinness
>>> Stanford University, Stanford, CA, 94305
>>> noy@xxxxxxxxxxxxxxxx   and    dlm@xxxxxxxxxxxxxxxx
>>>
>>>
>>> But the paper is truly naïve in its claims.  One
>>> particular quote stood out to me glaringly:
>>>
>>>             Separating the domain knowledge
>>> from the operational knowledge is another common
>>> use of ontologies. We can describe a task of
>>> configuring a product from its components
>>> according to a required specification and
>>> implement a program that does this configuration
>>> independent of the products and components
>>> themselves (McGuinness and Wright 1998). We can
>>> then develop an ontology of PC-components and
>>> characteristics and apply the algorithm to
>>> configure made-to-order PCs. We can also use the
>>> same algorithm to configure elevators if we "feed"
>>> an elevator component ontology to it (Rothenfluh
>>> et al. 1996).
>>>
>>> I find this assertion amazingly naïve, though
>>> commonly held among ontologists it seems.  More
>>> acknowledgements of the historic data about such
>>> reuse should be made any time this kind of claim
>>> is made.
>>>
>>> The historic data shows that such reuse is not
>>> generally effective in practice.  The better
>>> approach is to design a more generic algorithm
>>> (i.e., the object oriented version)  in the first
>>> place, and then to forecast the cost, schedule and
>>> difficulties of applying that algorithm to new
>>> areas.
>>>
>>> It is unfounded to claim that the PC configuration
>>> algorithm would necessarily have similar
>>> requirements to the elevator configuration
>>> algorithm.  History shows that it won't; stating
>>> the problem in a single sentence doesn't make the
>>> problem simple.
>>>
>>> Historically, that claim has not held up, and
>>> there is nothing in ontological progress to
>>> believe that it will in any near future.
>>>
>>> -Rich
>>>
>>> Sincerely,
>>> Rich Cooper
>>> EnglishLogicKernel.com
>>> Rich AT EnglishLogicKernel DOT com
>>> 9 4 9 \ 5 2 5 - 5 7 1 2
>>> -----Original Message-----
>>> From: ontolog-forum-bounces@xxxxxxxxxxxxxxxx
>>> [mailto:ontolog-forum-bounces@xxxxxxxxxxxxxxxx] On
>>> Behalf Of Michael Gruninger
>>> Sent: Wednesday, December 14, 2011 7:32 AM
>>> To: [ontolog-forum]
>>> Subject: Re: [ontolog-forum] Ontology, Analogies
>>> and Mapping Disparate Fields
>>>
>>>
>>> Hi Ali,
>>> here is the submitted version of the modularity
>>> paper.
>>> You can put it up on your own url somewhere until
>>> it is
>>> accepted by Applied Ontology.
>>>
>>> - michael
>>>
>>> Quoting Ali SH<asaegyn+out@xxxxxxxxx>:
>>>
>>>> Hi all,
>>>>
>>>> Just wanted to pass along a link to an ontology
>>> related story (though it's
>>>> barely framed as such) in a relatively
>>> mainstream technology news outlet:
>>> http://www.physorg.com/news/2011-12-link-patterns-
>>> spider-silk-melodies.html
>>>> While these are the originating papers (
>>>>
>>> http://arxiv.org/ftp/arxiv/papers/1111/1111.5297.p
>>> df [1]) and (
>>> http://math.mit.edu/~dspivak/informatics/ologs--ba
>>> sic.pdf [2])
>>>> It seems to me that the author is reinventing
>>> the wheel (though with a nice
>>>> twist re formulating / expressing o-logs and
>>> "sketches").
>>>> Especially since their review of the ontology
>>> field (in the *
>>>> ologs--basic.pdf* paper) seems to extend only to
>>> RDF/OWL and completely
>>>> ignores (or misses) work on Common Logic,
>>> conceptual graphs and the most
>>>> glaring omission - the work on category theory
>>> in Bremen. Incidentally,
>>>> such an omission appears to be an unfortunate
>>> corollary of the crowding out
>>>> of any non-RDF/OWL work.
>>>>
>>>> In any event, it's interesting work, though the
>>> correlation between the two
>>>> seemingly disparate fields (spider silks and
>>> melody) reminds me more of the
>>>> seminal "Unreasonable Effectiveness of
>>> Mathematics in the Natural Sciences"
>>>> speech -
>>> http://www.dartmouth.edu/~matc/MathDrama/reading/W
>>> igner.html [3]
>>>> A lot of semantic mapping to date has indeed
>>> focused on DL level mappings
>>>> (cf Euzenat&  Shvaiko's Ontology Matching book
>>> [4]), but there is a rich
>>>> set of logical mappings which can capture a lot
>>> of these structural
>>>> similarities between disparate fields. I know
>>> I've repeated this claim
>>>> before, but the limited expressivity of DL's
>>> mutes many of these mappings,
>>>> because well, they generally aren't captured
>>> (can't be expressed) in the
>>>> formalism. There is something to be said for
>>> picking the correct language
>>>> to describe a domain, where difficult problems
>>> become much simpler. I
>>>> suspect this will be one of the first major
>>> obstacles in orchestrating
>>>> services based on LOD sets beyond the low
>>> hanging fruit currently being
>>>> explored.
>>>>
>>>> In a previous discussion with Bijan, we were
>>> talking past each other re
>>>> reasoning over expressive ontologies. I kept on
>>> talking about reasoning
>>>> "off-line", while he insisted such projects were
>>> fatally intractable. I
>>>> later realized the disconnect was that I was
>>> talking about verifying an
>>>> expressive ontology (which you only need to do
>>> once, hence off-line), while
>>>> he was thinking that you need to process the
>>> entire ontology for every
>>>> query. Verification need be done only once (and
>>> indeed, off-line), while
>>>> the deployment of queries over fragments of the
>>> ontology can then deploy
>>>> more optimized tools.
>>>>
>>>> I think there's an attractive case for
>>> articulating in some way, in some
>>>> place, an expressive version of an ontology,
>>> even if for certain services /
>>>> tasks you only deploy a decidable fragment of
>>> said ontology. For one, it
>>>> can greatly facilitate semantic mappings, while
>>> secondly, it makes the
>>>> entire project more upwards compatible,
>>> especially as the major DL's are
>>>> continually adding greater expressivity. The
>>> expressive version of the
>>>> reference ontology can function a sort of road
>>> map for deployment, a sort
>>>> of technology agnostic commitment, whereas DL or
>>> otherwise deployed
>>>> artifacts are technology dependent products /
>>> services...
>>>> Lastly, I'd point out that the group at the
>>> University of Toronto does have
>>>> a paper on this topic (modularizing and reducing
>>> expressive ontologies into
>>>> ontologies of other types that preserve the
>>> logical structure of the
>>>> models), which has the incidental benefit of
>>> being able to identify logical
>>>> similarity between theories according to an open
>>> repository... I will see
>>>> if I have permission to distribute a pre-print
>>> to the list (Michael?).
>>>> ===
>>>> [1] Tristan Giesa, David I. Spivak and Markus J.
>>> Buehler "Reoccurring
>>>> Patterns in Hierarchical Protein Materials and
>>> Music: The Power of
>>>> Analogies" BioNanoScience Volume 1, Number 4,
>>> 153-161, DOI:
>>>> 10.1007/s12668-011-0022-5
>>>> [2] D.I. Spivak, R.E. Kent "Ologs: a categorical
>>> framework for knowledge
>>>> representation". PLoS ONE (in press): e24274.
>>> (2011)
>>>> doi:10.1371/journal.pone.0024274
>>>> [3] Wigner, E. P. (1960). "The unreasonable
>>> effectiveness of mathematics in
>>>> the natural sciences. Richard courant lecture in
>>> mathematical sciences
>>>> delivered at New York University, May 11, 1959".
>>> Communications on Pure and
>>>> Applied Mathematics 13: 1-14.
>>> doi:10.1002/cpa.3160130102.
>>>> [4] Jérôme Euzenat, Pavel Shvaiko. *Ontology
>>> Matching*. Springer-Verlag,
>>>> Berlin Heidelberg (DE), 2007
>>>>
>>>> Best,
>>>> Ali
>>>>
>>>
>>>
>>>
>>>
>>> _________________________________________________________________
>>> 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
>>>
>>
>>
>> _________________________________________________________________
>> 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
>>
>
>
> =============================================================
> doug foxvog    doug@xxxxxxxxxx   http://ProgressiveAustin.org
>
> "I speak as an American to the leaders of my own nation. The great
> initiative in this war is ours. The initiative to stop it must be ours."
>     - Dr. Martin Luther King Jr.
> =============================================================
>
>
> _________________________________________________________________
> 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
>
>    (022)


=============================================================
doug foxvog    doug@xxxxxxxxxx   http://ProgressiveAustin.org    (023)

"I speak as an American to the leaders of my own nation. The great
initiative in this war is ours. The initiative to stop it must be ours."
    - Dr. Martin Luther King Jr.
=============================================================    (024)


_________________________________________________________________
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    (025)

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