Showing posts with label ontology. Show all posts
Showing posts with label ontology. Show all posts

Tuesday, April 12, 2011

One Most Excellent book on Ontology Science

It is a pleasure to be able to write to announce what I consider to be the premier book on
the Suggested Upper Merged Ontology (SUMO).  I also wrote the forward for this book and thought I would share it via this blog.  This is a great practical guide to applied ontology projects. Click on the book to see the TOC and to purchase!



Normally within the forward of a book,  writers use generic terms like “fascinating” and
“intriguing” coupled with an array of positive compliments. After all,
the purpose of a good introduction is to set the stage for the reader in
a manner that the reader is highly motivated to read the rest of the
book. While tempted to follow this scripted behavior, I found myself
wanting to take an alternative route for the forward.

Before talking about the book itself, I would like to introduce the
author. My first personal experience with Adam Pease was at an industry
event around 2003 where we sat together on a panel and discussed the
impact of semantics on various industry standards. I was intrigued by
Adam’s knowledge and his enthusiasm to share with others yet there was
something else that made him easy to listen to. He carried with him
wisdom, yet he did not force it upon those in the room. He merely
revealed the knowledge, bit by bit, as the conversation allowed it to
enter. This is very unique in a computer science discipline where
zealotry prevails. He modestly imparted his opinions on the roomful of
people only to the degree it answered the specific question before. This
inevitably brought up another question that Adam usually had an answer
for too.


The result of this behavior was quite infectious. Adam, Kurt Conrad and
I ended up in a late night sushi restaurant somewhere near Menlo Park,
CA discussing how to map SUMO concepts to Mandarin, Japanese and
Cantonese, how WordNet can reference SUMO and why First Order Logic
(FOL) constraints are generally a cool concept to have in advanced
computer systems. An upper-level ontology, such as SUMO, is a common,
shared conceptualization of a domain. SUMO itself, being an upper
ontology, conceptualizes our existence in our three dimensional,
sequentially temporal lives largely bound by gravity upon one major axis
(I think the geographical and geo-spatial extensions to SUMO actually
acknowledge the moon’s secondary axis of gravity which can be seen
manifesting itself as tidal behavior in large bodies of water). During
this discussion, the simple and beautiful truth came to me. SUMO, or
something akin to it, is one of the missing pieces of a large segment of
technical work I have done in my life. If it had been explained any
differently, I would have missed it. Adam’s delivery was the key for
understanding and seeing the value in ontology work. This missing piece,
the shared conceptualization, was the cause of many a failure to design
a proper XML dialects or the resultant mess the old Electronic Data
Interchange (EDI) formats represented. It was not specifically the SUMO
format that was lacking, it was the general lack of an upper ontology
that could provide the basis for mid level ontologies and other domain
specific metadata dictionaries or lexicons.


Up to that point, I had largely worked as a software systems architect
who inevitably ended up dealing with the meaning of some XML dialect.
Defining XML dialects for just about everything under the sun had been a
relatively popular activity in our industry for the 5 or 6 years leading
up to my meeting with Adam. During the entire time I had been in
standards meetings either creating a dialect, analyzing someone else’s
or thinking about software that could work with it, I had never seen
anyone approach the problems from a place of a common shared
conceptualization of the domain prior to embarking on writing the
language. In retrospect, the advent of XML has both benefited humanity
as well as stifling it by allowing people to create specific XML based
languages who could instead benefit from the discipline required to do
the formal modeling work using an upper ontology.


Before my work at Adobe, I had founded such a company, XML Global
Technologies, in 1997. This company proceeded to work with a wide
variety of XML languages and it was evident that reconciling the
semantics between data elements of those languages was a monumental
task. When XML Global was acquired by the Xenos Group in 2003, some of
the original founders and I began a new company called Yellow Dragon
Software in Vancouver, British Columbia. This company had a metadata
registry-repository where we attempted to work again on the
reconciliation of disparate semantics in XML languages. This effort was
Herculean and the need for an ontology was apparent. SUMO was the
logical choice due to its compact size and the fact it has been reviewed
and tested by multiple experts. When Yellow Dragon was acquired by Adobe
Systems in late 2003, I went to work for Adobe (where I still work today!) and have been able to
continue my research into ontology, semantics and enterprise
architecture in that capacity. SUMO has given me the basics for seeing
logic in a multitude of applications and the gaps where software vendors
like Adobe can benefit from the adoption of an upper ontology. Adobe’s
XMP (XML Metadata Platform) is in fact extendible by nature and could
embrace SUMO at some future stage. This is but one example of the
application of SUMO that would potentially be then used by those who
work with common software applications such as Acrobat and Photoshop.


SUMO gives those who use data modeling techniques a common footing to
stand on before they undertake their tasks. It provides a level setting
for our existence and sets up the framework on which we can do much more
meaningful work. SUMO provides order for one level of our chaos.


In 2008 I finished writing a book for O’Reilly Media on Web 2.0
Design Patterns with co-authors James Governor and Dion Hinchcliffe. We
wrote some material about the impact of semantics and ontology within
that book. One such part discussed the phenomena of folksonomy, a loose
and informal set of declarations about resources using largely natural
language tags. While professors and other academic types toil in the
abstract world of ontology, the general population races to set tags to
things. While not a formal approach to creating a semantic web, it has
seemed to work well amongst the multitude of sites implementing the
Collaborative Tagging (folksonomy) pattern


We felt that SUMO could potentially offer a huge amount of guidance to
folksonomies. Imagine folksonomies coupled to an upper-level ontology to
classify tag terms that represent multiple concepts? By mapping SUMO to
terms in WordNet, ambiguities are avoided in cases where words have
multiple meanings. Imagine searching for the term Washington. You would
get results for George Washington (a president), Denzel Washington (an
actor), Washington, DC (a city), the Washington Monument (a large
monument), Washington State University (a school), and more. If
folksonomies can be mapped in a similar manner it might be a valuable
mechanism to advancing semantic web interests. Of course, disambiguation
is only one of the benefits of using SUMO and there are hundreds of
other applications that can embrace it.


Now that I have covered the bases, it is time to bring about the
compliments for the book.  This is going to be short by contrast!


Chances are if you’ve already picked up this book, you have an immense
interest in the topic. This book represents the finest body of knowledge
on SUMO and will be a valuable reference for decades to come. It is a
pleasure to be chosen to introduce the book and it will remain one of my
nearest reference materials while I continue to work in the field of
computer science. I hope you share this view and become involved in the
official SUMO list server (at http://sigmakee.sourceforge.net) where
discussions on SUMO continue. Enjoy the book and keep it nearby for
reference for once you have crossed the chasm of knowledge, you will
start relating everything to ontological terms.

My final word?  If you are interested in this subject matter, you owe it to yourself to pick up a copy of the book and consider the sheer genius of Adam Pease.  You will not be disappointed.

Saturday, June 20, 2009

Berlin University Semantics and Ontology Keynote

Yesterday I had the honor of giving a keynote speech at the Freie Universität Berlin, only one day after a similar talk at the Berlin-Branderburger Fachhochschule. It was "Berlin Semantic Web Day" at Freie Universität Berlin, June 19th, and the topic was Semantic Business Process Management (SBPM) which is the combination of Corporate Semantic Web technologies, such as rules, events and ontologies, with BPM and a service oriented infrastructure to empower the upper layers of the architecture.

The keynote was for the Berlin Semantic Meetup group, which was an excellent meetup. The group is very well run and Adrian Paschke. We got to meet inside a large atrium with plenty of refreshments and great people!

The combination of Event driven architecture, SOA, CEP models, and BPM could deliver great advancements in discovery, configuration, and composition of appropriate process components, information objects, and services. Given Adobe LiveCycle ES has already a lot of the BPM and SOA tenets baked into the product, it was interesting to see attendees validate the architectural decisions of LiveCycle ES. While I did not speak directly on LiveCycle, it was always on the back of the mind.

The field of Computational Intelligence is really starting to heat up. As a member of the IEEE Computational Intelligence Society I plan to contribute some ideas to the movement.

I have uploaded my presentation on the OASIS SOA Reference Model, Semantics, Ontology and Adobe work in the space. The slides are available online here.

Wednesday, April 22, 2009

Ontology advice needed for SEO playground.

OK - I am a geek. A nerdling. Social misfits do stuff like this just to prove it can be done. Here is my current question du jour.

I am right now placing First Order Logic (FOL) binary and n-ary relationships into the associations binding for labeled relations in a test metadata facility (Registry-Repository). I am doing this because I got sick of Computational Intelligence researchers just talking about this and not actually coding and doing something to solve the problem so the Canadian cowboy instinct to code first and see where problems arise has taken over. Search technologies on the web have kind of plateaued. With no real competition, are Google and Yahoo going to keep innovating search to the point where a 3-word search term can find a needle in a haystack? I do not think so but it is not outside the realm of possibility. While researching some advanced SEO topics, I started realizing that fuzzy logic and quantum computing patterns have not yet been optimized for NL programming heuristics.

I have run into a problem that I would appreciate input on. My goal is to bind something like this (From SUMO - thanks to Adam et al for doing the hard work).

(=>
(instance ?OBJ Object)
(exists
(?TIME1 ?TIME2)
(and
(instance ?TIME1 TimePoint)
(instance ?TIME2 TimePoint)
(before ?TIME1 ?TIME2)
(forall
(?TIME)
(=>
(and
(beforeOrEqual ?TIME1 ?TIME)
(beforeOrEqual ?TIME ?TIME2))
(time ?OBJ ?TIME))))))

..to a registry-repository node instance to allow folksonomy tags to reference the upper level ontology classes that the folksonomy tag owners believe they belong to. Additionally, each instance of a folksonomy tag may have * relationships to other ontology classes or even other folksonomy tags. The latter relationships can be defined in terms of constrained relationship tags like “synonym, disjoint, etc.”.

I want to represent all upper ontologies; however some of them contain subtle nuances between their terms. Dolce, SUMO and others have defined binary relationships like transitive, intransitive, reflexive, irreflexive, symmetrical as well as some partial ontologies. The problem is that there are no namespace qualifications for these so I want to introduce that into my work. I was planning on just using the root URLs for each work however there are versions possible in some of the work.

I would like this to be in the form of (upper_ontology_identifier)+(version_or_instance)+(uuid) as a classifier followed by the term label such as “transitive”. I will probably use URIs for the UUID.

Question:

Has anyone ever come across a similar problem and if so, how did they solve it?

Thoughts and comments welcome too.

Monday, November 12, 2007

Why David Recordon (Six Apart) needs an Ontology!

David Recordon and I had noticed a similar issue. At Web 2.0 we connected and talked about it. The issue is one of how in every social network you have to manually re-declare your whole social network. Rather than repeat it here, the post can be read here:
http://technoracle.blogspot.com/2007/11/cmon-web-20-get-it-together-now.html

Short version:
Why do we have to keep re-declaring our social networks for every single social network application (Facebook, Mix2r, Twitter, Plaxo, MySpace, Dopplr,
whateverthehellcomesnext.com)?

David and I had lunch in the UK with Matt (CTO, Dopplr) and James Governor (RedMonk) and all agreed that this is an issue facing the next social network. David made a great presentation of it at Web 2.0 Expo Berlin.

We seem to agree that the solution is a non-proprietary open social graphing application that can be used to suck social networks into various social sites. If we are to make an open social network provider service, there are a lot of answers that have to be figured out first. Foremost, real FOL and ontology work has to be done. The social networks of today have limited and immature binary relationships. Here is an example:

"A is a friend of B"

What does this mean? Is it asymmetrical or symmetrical (is B also a friend of A?). Does B know A exists? Can B traverse the binary relationship (see that A declares B is a friend)? If so, does B know the exact nature of the declaration on the relationship? Do either A or B survive if the relationship is dead? Does the relationship exist if either A or B cease to exist?

There are simply far too many of these types of questions that are not really answered by existing social networks. This sort of ontology work is sadly needed. Perhaps a group like the Ontolog Forum can become involved to help sort some of this out.

Davd is a smart guy - I cannot wait to see what he comes up with!

Thoughts? Comments?

BTW - I am on vacation for two weeks and will not respond after tonight CET.