OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

soa-rm-ra message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Ontolog Forum discussion on The Open Group's SOA Ontology


Ok, I went through my Ontolog Forum archives and dug up the main thread of discussion from December 2010.

I had just taken on being a co-editor of the SOA-RAF, so was quite diplomatic and cautious in any responses. Not so for some others.

 

Below is a selection of some pertinent comments. It is worth noting that, aside from very minor tweaks, none of the issues raised by the Ontolog Forum were taken up and the document today is very similar to the document as published in Dec 2010. The earlier draft in July 2008 was also discussed by the Ontolog Forum at the time, at the request of Chris Harding from Open Group for comments.

 

(Ken actually cross posted to the OASIS soa-rm-ra list at the time also: https://lists.oasis-open.org/archives/soa-rm-ra/201012/msg00047.html)

 

If you want to trace through the entire Ontolog Forum thread, you can start here:

http://ontolog.cim3.net/forum/ontolog-forum/2010-12/msg00034.html

 

I more or less kicked off the thread, in response to a comment by Todd Schneider to the Ontolog Forum:

| To all concerned or interested the SOA ontology put forth by the Open

| Group is rubbish for many reasons. I provided several pages of

| comments and justifications to an earlier draft and almost all of my

| comments were not accepted.

| However, there is some value in this work. It can be used as an

| example of errors that are commonly made.

| Finally, I'd like to commend Chris Harding in his efforts to reconcile

| very divergent views and opinions.

 

There ensued quite a discussion (some 75 posts from 20 different contributors)…

 

Chris Menzel said:

…it seems like there are some pretty obvious instance/subclass confusions.  (I sorta thought Woods straightened everyone out about ‘is-a’ ambiguities in 1975, but whatever! ;-)  From the Car Wash example 3.3.2.4 [Peter: section 6.6.4 in the version submitted to JTC1, barely changed]:

As an important part of the car wash system, John and Jack perform certain manual tasks required for washing a car properly:
• Jack and John are instances of Actor

• WashWindows is an instance of Task and is done by John

• PushWashButton is an instance of Task and is done by Jack

Seems to me from the brief description that WashWindows and PushWashButton are supposed to be classes whose instances are actual atomic tasks — John's actual window-washings and Jack's actual wash-button-pushings.  If so, then it seems to me that the little ontology fragment above is wrong and that, instead of the second and third lines, they should have:

• WashWindows is a subclass of Task

• Instances of WashWindows are done by John

• PushWashButton is a subclass of Task

• Instances of PushWashButton are done by Jack

Or something like that.

Matthew West commented later in the exchange on this example:

Then the best you can say is that the example is ambiguous. Still not good.

Chris Menzel commented also:

The document is explicit about the ontological resources available and there simply *is* no process ontology therein, implicit or otherwise.  Thus, of the ontological categories they provide, the only possible one into which WashWindows and PushWashButton can coherently fit is CLASS.  Hence, given the background ontology, it was a mistake for them to classify those objects as instances of TASK rather than as subclasses thereof.

Ed Barkmeyer was less generous:

I agree with Chris's analysis.  This is a common error in modeling process concepts, and getting it wrong makes any SOA ontology unusable. I note that neither the PSL ontology, nor the OMG BPMNv2 semantics, nor the UMLv2 semantics makes this error.

Further, the statement:

> Jack and John are instances of Actor.

is at least inaccurate.  Actor is a role with respect to an activity/process.  That is, every Actor relationship is ternary:  Thing plays Role in ActivityInstance, or ThingClass plays Role in ActivityClass.

Properly 'Actor' is subsumed by 'Role', there being other subclasses of 'Role', such as 'Instrument'.  A Role by itself cannot be meaningfully instantiated.

(Probably the most dramatic example of the distinctions is in 'Person terminates employment of Person for cause', in which there is only one Actor, and the distinct Roles of the ThingClass Person make a great deal of difference.  Further, in a for-cause termination, the passive Role of Person is probably a consequence of an Actor Role in a different ActivityInstance.)

I'm sure The Open Group SOA folk lack expertise in making such models, but ignorance of the literature, whatever the reason, is the first step in the development of a toilet paper standard. 

 

Later in the thread I make what I thought was a very conciliatory gesture to TOG (see the attached for the whole mail) – although being prompted offlist to take note and use the opportunity to clean this up, TOG members played silent.

 

Futher on, in response to another attack by Anders Tell, I replied:

Anders:

I agree with a lot of what you say but don't want to get into a "ours is better than yours" discourse.

In full disclosure, I am currently an editor of a major document coming through the OASIS process entitled the SOA Reference Archiecture Foundation (SOA-RAF).

The goals and target group of The Open Group's SOA ontology work may be different to ours (I'm not familiar with the details of their stakeholders) but in our technical committee we did set out with an explicit objective to explain service and 'service-orientation' in ways that non-IT professionals could understand and relate to.

Although our target audience probably won't include (many) hard-core semantic web and OWL implementers (one of the reasons that we don't model beyond using the diagram types provided by UML2), we certainly want to be sure that our modelling stands up to scrutiny.

I'm not suggesting we've got it right, not yet at least, but we have deliberately stopped short of 'over formalising' and tried to a focus on a 'narrative' that explains SOA in a way that allows all stakeholders - potential clients and consumers, business decision-makers, project leaders, designers, as well as IT architects and developers. For that reason, we include quite a large section on governance of SOA-based systems and explanation of the idea of the SOA 'ecosystem' and who is involved - these contributions may be closer to some of the things you are looking for.

 

Quite diplomatic, though I say it myself! ;-)

 

In response to a comment by our own Patrick Durusau, as to whether the Ontolog crowd were being a little unfair, Chris Partridge replied:

Hi Patrick,

I was not seeing that the issue was with whether the standard had any particular conformance requirements.

It was more about whether the individuals drafting it had the requisite training in the right areas.

The original issue was that there was a confusion between classes (types/universals) and individuals (elements/particulars).

This seems to me a confusion about what things actually exist in the real world - in the domain being modelled - and is unhealthy.

If people had the right training they would be much less likely to make this kind of mistake.

This seems to me a separate issue from whether formal logic should be made a requirement for standards.

 

John Sowa came back, on Christmas day with some gold, frankincense and myrrh:

Many cogent comments have been made in this thread. Instead of commenting on each one, I'd like to make one general observation that has two basic implications:

Observation:

For many applications, a good terminology is far more valuable than a half-baked (or even a totally baked) ontology.

Implications:

Many of the disagreements on this list can be resolved by the observation that the useful resources not based on a formal logic should be called terminologies or lexical resources (e.g., WordNet).

In fact, a large number of things implemented in so-called ontology languages should really be called terminologies, since they use few or none of the logical operators and reasoning methods of those languages.

The thread fizzled out over the Christmas holidays and went on in search of other prey – software engineering as a discipline…

 

I think that John Sowa’s final observations have some merit, even if I don’t entirely agree with this formalistic and mechanical distinction between terminology and ontology.

 

Maybe we could persuade IEEE (and SC38WG2 for that matter) not be adopt the current TOG Ontology but instead to cooperate with us (OASIS RM TC) on a SOA Terminology? I think that we could put together a candidate document very quickly…

 

I would also suggest that some of the comments cited be used as part of any comment that we make to SC38, even if in the form of,

“We are concerned that extensive comments made by a well-respected community of professionals in the domain of ontology engineering have been largely left unanswered. Our own (in comparison, relatively mild) reservations about the quality of the ontology would seem to be reinforced by this barrage of criticism.”

 

I’ll go through the document again later this evening and compare this version with my earlier notes on the 2008 and 2010 drafts.

 

Cheers,

Peter

 

--- Begin Message ---
Going back to the top of this thread for a moment:
- Todd states that the SOA Ontology from the Open Group "is rubbish for many
reasons" but that "there is some value in this work".
- I asked for some justification to the initial statement.
- a whole series of comments are posted regarding modelling errors and
shortcomings...
On the thread, we have followed a typical Ontolog Forum pattern of
spiralling away from the initial point and exploring fine modelling points -
all good in its own way, and a reflection of the breadth of opinion and
ideas of the group, which is great.

I actually agree with Todd and many others that there are very serious
concerns about the methodology, the quality of the models, the
appropriateness of the UML and owl encapsulations of the Open group
ontology, and much more. That still doesn't make the whole exercise
'rubbish'. 'Disappointing', 'v poorly modelled in owl', 'depressingly
typical modelling errors', yes. Rubbish, no.

Given the theme for this year's Ontology Summit, it would seem that this
would be an interesting test case (maybe taken together with the "SOA
Reference Architecture Framework" that we are finalising in OASIS and which,
partly under my influence, is straining to avoid the sort of modelling
pitfalls referred to) about where, how, and why we need to make "the case
for ontology" to an increasing number of communities, enterprises and
organisations that are looking at this discipline.

I want to go out on a limb here and defend those who want to use "ontology"
(in its widest sense) as a means of establishing a common foundation for
work within a particular group or community. Heather Kreger, in her blog
post announcing the Open Group SOA work stated:
"Ontologies are misunderstood - an Ontology is simply the definition of a
set of concepts and the relationships between them for a particular domain -
in this case, the domain is SOA. They don't HAVE to be used for reasoning.
or semantic Web"
I agree wholeheartedly thus far, except maybe for the word 'simply'. If we
accept a plurality of ontologies (I know, many don't), then the definition
of terms can be made for a specific domain - with all the opportunities and
dangers that also presents...
She then goes on,
"they are more than a simple glossary which defines terms, because they also
define relationships between them"
Still with her this far. 'Simple' UML models, a lot of rdf, xml schemas,
etc. often fall down here as there are often not expressions or syntax in
those languages that are rich enough to capture the complexity of multiple
relationships between concepts. I digress.
Heather continues:
"also important to note that they are more formal than Reference Models,
usually by providing representations in OWL (just in case you want to use
popular tools for Ontology and reasoners)."
It is the segue between the first statement and the second that worries me.
More than a reference model, good. Next step, full-on owl? Why?
I suspect it is also the reason that the Open Group SOA work fails in many
people's eyes. The leap of faith between 'we need something more formal than
a reference model' to 'we must use owl' - and the absence of in-house or
available skills to make that transition or propose alternative languages,
tools, methodologies and disciplines that are appropriate to the domain and
the problem at hand - would seem to be at the heart of many large-scale
ontology project failures.

My gut feeling is that this is worth exploring in depth in the run up to the
F2F summit.

Best regards,
Peter

--------------------
Peter F Brown
Independent Consultant

Transforming our Relationships with Information Technologies
www.peterfbrown.com
@pensivepeter
P.O. Box 49719, Los Angeles, CA 90049, USA
--------------------


| -----Original Message-----
| From: ontolog-forum-bounces@ontolog.cim3.net [mailto:ontolog-forum-
| bounces@ontolog.cim3.net] On Behalf Of Matthew West
| Sent: Wednesday, 22 December 2010 08:59
| To: '[ontolog-forum] '
| Subject: Re: [ontolog-forum] Fwd: [New post] The Newest from SOA: The SOA
| Ontology Technical Standard
|
| Dear Ed,
|
| > Actor is a role with respect to an activity/process.
| > That is, every Actor relationship is ternary:  Thing plays Role in
| > ActivityInstance, or ThingClass plays Role in ActivityClass.
| > Properly 'Actor' is subsumed by 'Role', there being other subclasses
| > of 'Role', such as 'Instrument'.  A Role by itself cannot be
| > meaningfully instantiated.
|
| MW: In a 4D ontology it is slightly different. Here a roleInstance
| (participant) is a state of the role player, and a part of the
activityInstance
| (activities are spatio-temporal extents that consist of their
participants). So here
| the relationships are binary, but the principles are the same and perhaps
even
| clearer, given that the participant state is clearly not the same thing as
the
| whole life of the role player.
|
| > (Probably the most dramatic example of the distinctions is in 'Person
| > terminates employment of Person for cause', in which there is only one
| Actor,
| > and the distinct Roles of the ThingClass Person make a great deal of
| > difference.  Further, in a for-cause termination, the passive Role of
| Person
| > is probably a consequence of an Actor Role in a different
| ActivityInstance.)
| >
| > I'm sure The Open Group SOA folk lack expertise in making such models,
| > but ignorance of the literature, whatever the reason, is the first
| > step in the development of a toilet paper standard.
| >
| > -Ed
| >
| >
| >
| > --
| > Edward J. Barkmeyer                       Email: edbark@nist.gov
| > National Institute of Standards & Technology Manufacturing Systems
| > Integration Division
| > 100 Bureau Drive, Stop 8263               Office: +1 301-975-3528
| > Gaithersburg, MD 20899-8263               Mobile: +1 240-672-5800
| > ________________________________________
| > From: ontolog-forum-bounces@ontolog.cim3.net [ontolog-forum-
| > bounces@ontolog.cim3.net] On Behalf Of Christopher Menzel
| [cmenzel@tamu.edu]
| > Sent: Monday, December 20, 2010 5:57 PM
| > To: [ontolog-forum]
| > Cc: peter@peterfbrown.com
| > Subject: Re: [ontolog-forum] Fwd: [New post] The Newest from SOA: The
| SOA
| > Ontology Technical Standard
| >
| > On Dec 20, 2010, at 2:20 PM, Research wrote:
| > That's a pretty sweeping statement, Todd Care to share why it is
| > "rubbish"? And if there are valuable lessons to be learned, I'd be
| > pleased to learn them
| >
| > Peter
| >
| > Peter F Brown
| > Independent Consultant
| >
| > I haven't studied the document carefully, so anything I say should be
| taken
| > with a grain of salt, but it seems like there are some pretty obvious
| > instance/subclass confusions.  (I sorta thought Woods straightened
| everyone
| > out about is-a ambiguities in 1975, but whatever! ;-)  From the Car
| > Wash example 3.3.2.4:
| >
| > As an important part of the car wash system, John and Jack perform
| > certain manual tasks required for washing a car properly:
| >
| > . Jack and John are instances of Actor . WashWindows is an instance of
| > Task and is done by John . PushWashButton is an instance of Task and
| > is done by Jack
| >
| > Seems to me from the brief description that WashWidows and
| > PushWashButton
| are
| > supposed to be classes whose instances are actual atomic tasks -
| > John's
| actual
| > window-washings and Jack's actual wash-button-pushings.  If so, then
| > it
| seems
| > to me that the little ontology fragment above is wrong and that,
| > instead
| of
| > the second and third lines, they should have:
| >
| > . WashWindows is a subclass of Task
| > . Instances of WashWindows are done by John . PushWashButton is a
| > subclass of Task . Instances of PushWashButton are done by Jack
| >
| > Or something like that.
| >
| > Chris Menzel
| >
| >
| > | -----Original Message-----
| > | From: ontolog-forum-bounces@ontolog.cim3.net<mailto:ontolog-forum-
| > bounces@ontolog.cim3.net> [mailto:ontolog-forum-
| > | bounces@ontolog.cim3.net] On Behalf Of Todd J Schneider
| > | Sent: Wednesday, 15 December 2010 00:53
| > | To: [ontolog-forum]
| > | Subject: Re: [-forum] Fwd: [New post] The Newest from SOA: The SOA
| > | Ontology Technical Standard
| > |
| > | To all concerned or interested the SOA ontology put forth by the
| > | Open
| Group
| > is
| > | rubbish for many reasons. I provided several pages of comments and
| > | justifications to an earlier draft and almost all of my comments
| > | were
| not
| > | accepted.
| > |
| > | However, there is some value in this work. It can be used as an
| > | example
| of
| > | errors that are commonly made.
| > |
| > | Finally, I'd like to commend Chris Harding in his efforts to
| > | reconcile
| very
| > | divergent views and opinions.
| > |
| > | Todd



_________________________________________________________________
Message Archives: http://ontolog.cim3.net/forum/ontolog-forum/
Config Subscr: http://ontolog.cim3.net/mailman/listinfo/ontolog-forum/
Unsubscribe: mailto:ontolog-forum-leave@ontolog.cim3.net
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
To Post: mailto:ontolog-forum@ontolog.cim3.net


--- End Message ---


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]