Re: The Open Group SOA Ontology

Chris Harding <[email protected]> Sun, 20 Jul 2008 14:14:42 +0100
Newsgroups gmane.org.w3c.semantic-web,gmane.comp.web.services.general
Message-ID <[email protected]>
Hello, Florian -

Thanks for your comments! Our ontology project=20
team will consider them in developing the draft for formal review.

I would also like to post them publicly so that=20
the debate on these and other comments can be=20
conducted by everyone. Would you have a problem with this?

I'll give initial responses to your comments=20
below. A general point is that the ontology=20
touches on several different topics, but does not=20
go into detail on any of them. It would clearly=20
not be able to go into detail on all of them, and=20
to address some in detail but not others would=20
make the ontology rather unbalanced. What we=20
would ideally like to do is to establish=20
formally-defined relations with OWL ontologies in=20
all of these areas. Unfortunately, they mostly=20
don't yet have formal ontologies. Web services is=20
an exception, and we do want to work on defining=20
the formal relationship between this ontology and=20
OWL-S. But for other areas, such as effects,=20
rules, policies, QoS, costs, and contracts,=20
well-developed and accepted OWL ontologies do not exist, so far as I know.

At 15:59 18/07/2008, Florian Lautenbacher wrote:
>Dear Chris,
>
>thanks for your email to the w3c-newsletter. I=20
>read the first time about the SOA ontology and=20
>think it's quite a good approach for describing=20
>all the concepts in an SOA. However, I got a few=20
>questions when I read through the specification=20
>where I think you might help me with:
>
>-The SOA ontology says that it aims to be=20
>(potentially) a basis for model-driven=20
>implementation of an SOA. How shall this exactly=20
>be done? Are there several levels of the=20
>ontology defined in order to refine the ontology=20
>in several models or are you thinking about some=20
>automatical code generations (more general=20
>ontology at top level and an additional=20
>grounding to existing services lateron)?

The aim is that the ontology should potentially=20
be a basis for model-driven implementation. We=20
have not developed a formal process for using it=20
for this purpose. I am aware of work that has=20
been done to generate WSDL service definitions=20
automatically from business domain ontologies.=20
The SOA ontology could be used in conjunction=20
with business-domain ontologies to do this=20
consistently. Generatng full service=20
implementations is much harder than generating=20
the interface definitions and would need=20
extensions to the ontology. We haven't explored=20
this yet. Work in this area is much more advanced=20
in the OMG. They do not use ontologies as such,=20
but their approach does have some relation to=20
ontologies. Exploring and developing this=20
relation is probably the best way forward.


>-In other ontologies for web services there is=20
>often the notion of input, output, preconditions=20
>and effects (IOPE). There are effects in the SOA=20
>ontology, but no preconditions defined on a service? Is this on purpose?

See the initial comment. We would prefer to link=20
to other ontologies that have these concepts=20
rather than incorporate them in ours.


>-The effect is simply an OWL-DL-class. Are any=20
>languages envisioned for describing effects=20
>(such as KIF, SWRL, RuleML or R2ML)? - KIF and SWRL are e.g. used in OWL-S.

Again, see the initial comment.


>-Rules and Policies: are there links or=20
>recommendations to other languages that allow=20
>the specification of Rules (SBVR, SWRL, URML,=20
>etc.) or Policies (KAOS, Rei, Ponder2, etc.)?

And again.


>-Is there a way to specify non-functional=20
>properties of a service (Quality of service,=20
>costs, etc.)? Not only for software services,=20
>but also for other services this would be quite=20
>interesting (Joe's car wash does always cost $5, except on Sunday then it's=
 $7)

And again. It could be that part of the TMF's=20
NGOSS framework could be translated to a formal=20
ontology with some of these concepts.


>-How is a contract detailed? Are there any=20
>mandatory properties that need to be described? (e.g. costs)

Again, we don't have detail on this - and would=20
look to link to outside sources for such detail.


>-Solutions: In the context of services one often=20
>talks about goals that need to be achieved by=20
>the composition of services. And this=20
>composition is then normally a possible=20
>solution. However, in your ontology I don't find=20
>any correspondence between solution and=20
>composition (or the notion of goal itself).

We don't have a notion of goal, but we do have a=20
notion of requirement, and a solution is=20
something that satisfies a requirement. We do, in=20
section 4.8, define Orchestration and=20
Choreography subclasses of the Composition class,=20
to address two important kinds of service=20
composition. The Solution and Composition classes=20
are not disjoint, so a composition can be a solution.

>-Are there constructs that define how a=20
>composition of services (in your terminology a=20
>system) shall be achieved? (sequences,=20
>alternative flows, etc.)? I didn't find any.

No, there are no such constructs. These are=20
probably among the things that would need to be=20
added if the ontology is to be used to drive full=20
model-driven implementation. Again, though, we=20
would prefer to link to another ontology (perhaps=20
based on BPMN?) that has these constructs, if one exists.


>-The part about requirements, design and=20
>implementation in my opinion is not that=20
>specific for an SOA. Are there thoughts to=20
>describe this in an own ontology (as e.g. the=20
>Software Process Engineering Metamodel, SPEM,=20
>simply focuses on these parts, too) and simply=20
>integrate this other ontology into the SOA ontology?

We would have liked to import these from another=20
ontology, but did not identify an appropriate=20
one, and needed these concepts to explain others=20
in the ontology. I understand that SPEM provides=20
a means of describing activities, and there is in=20
fact work elsewhere in The Open Group to use SPEM=20
to model the phases of the Architecture=20
Development Method of The Open Group Architecture=20
Framework (TOGAF). From the point of view of our=20
ontology, we don't analyse these phases in the=20
way that the SPEM work does - we simply classify=20
them as instances of the Architecture Development Activity class.


>-Concerning the messages and message types: how=20
>is the relationship thought to WSDL or SAWSDL?=20
>Are there already examples how WSDL (or better=20
>annotated WSDL like SAWSDL) can be combined with the SOA ontology?

My understanding is that OWL-S incorporates WSDL=20
concepts. I would see defining the relationship=20
with OWL-S as the way of connecting our ontology=20
with WSDL (but more work is needed on this).

>-How is the relationship to business process=20
>modeling standards such as BPMN? You mentioned=20
>that the SOA ontology related the Service to=20
>other areas such as business process modeling but not exactly how.

I believe that our concept of Activity=20
corresponds closely to the BPMN concept of=20
activity, and see BPMN as providing a detailed=20
analysis of concepts related to activity that we=20
don't cover. Again, more work is needed to explore this properly.


>-Figure 25: Architecture Building Block is an=20
>abstraction of Anything? How can the concept of=20
>"Anything" be abstracted? Probably the arrow might go the other direction?

We use "Anything" as shorthand for "an instance=20
of the OWL Thing class" - ie, anything in the=20
universe of discourse. We are not saying that the=20
concept of "anything" can be abstracted. We are=20
saying that an abstraction of anything in the=20
universe of discourse can be an ABB. So if=20
"car-wash machine" is something in the universe=20
of discourse, then "abstraction of car-wash machine" can be an ABB.


>-How is the Architecture Development Activity=20
>linked to the Design? There is no connection in=20
>your specification, but probably it might be=20
>part of the design (as is the development of an=20
>architecture often during the design phase in software engineering)

The relation between architecture and design is=20
somewhat difficult to capture. As you point out,=20
we haven't tried. But we don't preclude a=20
relation. An architecture cannot be a design=20
(because Architecture is disjoint with=20
Abstraction, of which Design is a subclass). But=20
I dont think there is any reason why a design=20
shouldn't be an ABB, for example, or why a Design=20
Activity shouldn't be a component of an=20
Architecture Development Activity. If someone=20
comes up with a specific need to establish this=20
connection, we might explore this further, but we=20
wouldn't want to do so otherwise.


>-A question not about the concepts in the SOA=20
>ontology: Why didn't you use UML class diagrams=20
>in your models? That would make it much easier=20
>(at least for software engineers) to understand what they are about...

This is a good question. We haven't really=20
considered using UML, but perhaps we should think about doing so.

>Thanks for clarification and best regards,

Thanks again for your very perceptive comments!


>Florian
>
>
>---------------------------------------
>  Dipl.-Inf. Florian Lautenbacher
>
>  Programming Distributed Systems Lab
>  Institute of Computer Science
>  University of Augsburg
>  Universit=E4tsstr. 14
>  86135 Augsburg, Germany
>
>  phone:  +49 821 598-3102
>  fax:    +49 821 598-2175
>
>
>
>
>-------- Original-Nachricht --------
> > Datum: Tue, 15 Jul 2008 14:27:25 +0100
> > Von: Chris Harding <[email protected]>
> > An: [email protected], [email protected]
> > Betreff: The Open Group SOA Ontology
>
> >
> > Hi -
> >
> > For some time now, The Open Group has been developing a formal
> > ontology for SOA. We made an early version available for comment by
> > W3C members over a year ago. We have now reached the stage where we
> > believe that it is almost complete, and are exposing it to outside
> > bodies for review and comment prior to its final review within The Open
> > Group.
> >
> > The ontology is a formal OWL ontology, but the draft also includes
> > extensive heuristic explanations of its concepts. We believe that it
> > complements work on OWL-S and WSMO, in that it includes a compatible
> > concept of "Service" and relates this to concepts in other areas,
> > including Enterprise Architecture and Business Process Modeling.
> >
> > The draft is publicly available at
> > http://www.opengroup.org/projects/soa-ontology/doc.tpl?gdid=3D16940 We
> > would very much appreciate your input, not only on the relation of
> > this work to OWL-S and WSMO, but on all aspects that are of interest
> > to you. We will address comments received at this stage before
> > creating the draft for final Open Group review. I therefore invite
> > you to review the draft, and to send me comments on it.
> >
> > Regards,
> >
> > Chris
> > ++++
> >
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > Dr. Christopher J. Harding
> > Forum Director for SOA and Semantic Interoperability
> > THE OPEN GROUP
> > Thames Tower, 37-45 Station Road, Reading RG1 1LX, UK
> > Mailto:[email protected] Phone (mobile): +44 774 063 1520
> > http://www.opengroup.org
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > The Open Group Conference & Member Meeting
> > Featuring the 19th Enterprise Architecture Practitioners Conference
> > InterContinental Hotel, Chicago, USA, July 21-25, 2008
> > http://www.opengroup.org/chicago2008/
> > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> > TOGAF is a trademark of The Open Group
> >
>
>--
>Psssst! Schon das coole Video vom GMX MultiMessenger gesehen?
>Der Eine f=FCr Alle: http://www.gmx.net/de/go/messenger03


Regards,

Chris
++++

=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
Dr. Christopher J. Harding
Forum Director for SOA and Semantic Interoperability
THE OPEN GROUP
Thames Tower, 37-45 Station Road, Reading RG1 1LX, UK
Mailto:[email protected] Phone (mobile): +44 774 063 1520
http://www.opengroup.org
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
The Open Group Conference & Member Meeting
Featuring the 19th Enterprise Architecture Practitioners Conference
InterContinental Hotel, Chicago, USA, July 21-25, 2008
http://www.opengroup.org/chicago2008/
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
TOGAF is a trademark of The Open Group