Exposing Semantic Web Service Principles in SOA To Solve EAI Scenarios
Exposing Semantic Web Service Principles in SOA To Solve EAI Scenarios
EAI scenarios
Armin Haller
Christoph Bussler
ABSTRACT
Traditional Enterprise Application Integration (EAI) focuses on the
integration of application interfaces by pipelining different middleware technologies like message queuing or remote method invocations. Web Service enabled Service-Oriented Architectures (SOAs)
used in EAI were a step towards providing an abstraction layer for
the involved interfaces by using the Web Service Description Language (WSDL) [9]. We enlarge the notion of SOA by applying
Semantic Web Services (SWS) technology to it. The architecture
employs principles developed in work already published on SWS
architectures [18, 40] to demonstrate their applicability in EAI. We
examine what current SWS technology offers in respect to the requirements imposed by EAI scenarios. The major focus of the paper is to point out the potentials current SWS technology offer for
EAI. This analysis includes some challenges for SWS frameworks
to fully enable dynamic discovery and invocation in EAI. It further
concludes that both are already possible in intra-EAI scenarios under certain assumptions. We demonstrate the applicability of the
Web Service Execution Engine (WSMX), as first kind of a Semantic Service Oriented Architecture (SSOA) in a high-level use-case
to exemplify the activities within the lifecycle of such an architecture.
1.
INTRODUCTION
Sphere MQ (formerly MQSeries)1 , adapters and connectors to access source and target components, transformation engines to map
information formats between source and target systems and some
intelligent routing [13]. Standards for these components, mainly
the internal semantics of the EAI system the adapter frameworks
mapped to, the transformation maps themselves, the process definitions etc. were not considered at all in the beginning. Only when
the EAI market grew did the issue of standards start to appear. Proprietary EAI vendors with market strength were keen to declare
their own implementations as standards. End users demanded standards to avoid the vendor lock-in and subsequently, to avoid a problem, they initially tried to solve with the EAI solution - to be able
to integrate their EAI system with other EAI systems [13]. Finally
new entrants entered the market advertising Web Service enabled
Service-Oriented Architecture (SOA) solutions based completely
on standards, claiming to make the integration effort flawlessly.
This new type of SOA relies on common Web Service technologies which allow interoperability by relying on standards like
UDDI [11], WSDL [9], SOAP [20] etc. As a consequence all major
integration software providers from different backgrounds (Application Server vendors, EAI vendors, Portal software vendors etc.)
enlarged their products to support these Web Service Standards
[33]. Eventually some of them (examples include IONA Artic2
and Microsoft BizTalk3 even redeveloped their integration suite to
realise the integration as SOA.
This new SOA model is based on the principle that business
functionality is separated and published as self-contained components, called services. They are subsequently used to be composed
into a process. This Web Service enabled SOA model has some
fundamental advantages over traditional EAI systems:
the functionality in a SOA can be reused to a high degree;
relying on standards it provides a highly flexible and adaptable implementation;
and it becomes eventually possible to switch from a particular service to a different one without adaptions.
According to this, a Web Service enabled SOA offers a solution
to the standards problem by avoiding the central point of integration, often a bottleneck in EAI solutions. Furthermore it still reduces the number of point-to-point adapters since every interface
is based on WSDL and can communicate with every other WSDL
enabled interface. What it does not solve is the problem of documenting the semantics of these interfaces.
1
see http://www-306.ibm.com/software/integration/wmq/
see http://www.iona.com/products/artix/
3
see http://www.microsoft.com/biztalk/
2
2.
In the original sense the term EAI described only the concept of
semantic integration, but since the evolvement of systems covering
this domain the term has also been used to name the systems itself.
To subsequently show how semantically enabled SOA are applied
in EAI scenarios we first depict the functionality constituting these
EAI systems in the following paragraph.
2.1
Transformation Layer
We can differ between internal and external integration. Internal integration, often referred as intra-EAI, specifies the automated
and event-driven exchange of information between various systems
within a company. Another commonly used term for it is Application to Application-Integration (A2A) [7]. External integration,
referred as inter-EAI, specifies the automated and event-driven information exchange of various systems between companies. In recent publications the second integration type is commonly referred
to as B2B integration [7].
EAI systems provide different types of integration levels explaining the various dimensions of the integration tasks. Literature identifies the following three layers common to EAI systems [43, 14].
Process Layer
Within the process layer we differ between components for
process modelling and process enactment support.
The purpose of process modeling is to produce an abstraction of a process model called workflow type [22] that can
be either used for improved human understanding of operations within a domain or to serve as the basis for automated
process enactment. In the case of EAI it is used for the latter.
Process enactment refers to the proactive control of the entire
process from instancing a predefined workflow type all the
way to its completion.
When talking about process models in EAI a clear separation between private and public processes has to be made.
This separation is well established in research [6] and different business process modelling standards (i.e. BPEL [1],
WSCI [2]) incorporate it. It is the key to provide the necessary isolation and abstraction between the organisations
internal processes and processes across organisations.
2.2
see http://www.corba.org/
2.3
process in the execution of its private process [6]. The behaviour of the public process of two services exposed by different companies have to match to establish a communication.
This leads to the necessity to define one process model for
every partner the organisation is conducting business with.
An alternative approach is to model the executable private
process separately from the executable public process and
define binding to relate both [6]. However, WfMS used within
SOA does not have the concepts of dynamic binding of public and private processes. As Bussler [6] describes, WfMS
assume that workflow instances execute in isolation. Two
top level workflow instances (in this case the private and the
public process) can not be related by current WfMSs since
no modelling concepts are available for this functionality.
Transformation Layer
Since SOA based on Web Services use XML as their way of
defining the data structure of messages, transformation does
not have to deal with mismatches between e.g. hierarchical
structures or fixed-length fields. However in XML the same
data item may be modelled as an attribute of an existing element in one document and as a subelement in another XML
representation.
In current SOA document transformation becomes a functionally exposed mapping subprocess. Since current standards like XML and XML Schema only solve the mismatch
on the syntactical and structural level; solving the mismatch
on the semantic level is usually handled on a case-by-case
basis. If, for example, two services use RosettaNet as their
data structure, both trading partners have to transform RosettaNet to whatever internal data structures they use. Transformation maps are used to process and convert the content
and structure of any source information based on its XML
schema representation into any target document format [45].
This solution requires a mapping between every two different
XML schemas before an interaction between the respective
Web Services can be set up. A widely used standard protocol
for creating and saving this mappings is XSLT.
Transportation Layer
SOAP as the protocol used for exchanging structured information in a Web Service enabled SOA can be used with a
variety of transport protocols such as HTTP, SMTP, and FTP.
SOA applying Web Services assumes a WSDL compliant
interface of the participating applications. If the application does not natively support a WSDL interface, adapters
are used to transform external events into messages and vice
versa.
Both the transport protocol and the adapter integration is not
further discussed.
3.1
ontology
<! Non Functional Properties Definition > [...]
<! Used Mediators Definition > [...]
<! Imported Ontologies Definition > [...]
concept Human
nonFunctionalProperties
dc# description hasValue concept of a human being
endNonFunctionalProperties
hasName ofType foaf#name
hasParent inverseOf (hasChild) impliesType Human
hasChild impliesType Human
hasAncestor transitive impliesType Human
hasWeight ofType (1) xsd#decimal
hasWeightInKG ofType (1) xsd#decimal
hasBirthdate ofType (1) xsd#date
hasObit ofType (0 1) xsd#date
hasBirthplace ofType (1) loc# location
isMarriedTo symmetric impliesType (0 1) Human
hasCitizenship ofType oo#country
concept Child subConceptOf Human
nonFunctionalProperties
dc# relation hasValue {ChildDef, ValidChild}
endNonFunctionalProperties
axiom ChildDef
NonFunctionalProperties
dc# description hasValue Human being not older than 12
( the concrete age is an arbitrary choice )
endNonFunctionalProperties
definedBy
forall ?x (
?x memberOf Human and
?x[hasAgeInYears hasValue ?age] and ?age=<12
implies ?x memberOf Child).
[...]
Figure 3: Example WSMO ontology definition (cp. [18] for the
whole ontology)
Web Services: Similar to the way requester declare their
goals, every Web Service capability has to be declared (see
figure 4 for a sample capability description expressing the
same functionality as the WSDL listing above). Additionally
the interface, used mediators and non functional properties
have to be defined.
Only if the service requester and provider use the same ontology in their respective service description the matching between the goal and the capability can be directly established.
Unfortunately, in most cases the ontologies will differ and
the equivalence between a goal and a capability can only be
determined if a third party is consulted for determining the
similarities between the two ontologies. For this, WSMO
introduces another modelling element: the mediators.
Mediators: The current specification contains four different
types of mediators: ooMediators, ggMediators, wwMediators and wgMediators. The ooMediators have the role of resolving possible representation mismatches between ontologies. The ggMediators have the role of linking two goals.
This link represents the refinement of a source goal into a
target goal. If two goals are equivalent, then a Web Service
that can satisfy one of them can satisfy the other one as well.
The wgMediators link Web Services to goals, meaning that
the Web Service can fulfill the goal to which it is linked. The
3.2
We apply the framework proposed by the Web Service Modelling Ontology (WSMO) to the concept of a SOA and call this
new type of architecture Semantic Service-Oriented Architecture
(SSOA). This SSOA takes the Conceptual Semantic Web Service
architecture of Fensel/Bussler [18] and Preist [40] as an input. Hence
the aim of this paper is not to design yet another Semantic Web Service architecture, but to show how one kind of such an architecture
performs in the EAI domain.
By semantically enriching a SOA we have to redefine the three
main concepts of the SOA (see section 2.2) in the following way.
Service provider They can still use WSDL as a universally
accepted interface language, but additionally they have to
provide a WSMO compliant service description (see section
3.1). By doing so they allow a requester to discover the service based on a formally defined goal instead of searching
through the directory service and selecting the appropriate
service.
Service registry The functionality of the service registry remains the same. The only difference is that it stores WSML
service descriptions instead of WSDL.
Service requester Service requesters have to publish the desired functionality as a WSMO goal. In case of a SSOA the
requester can also be an agent requiring one of a class of abstract service. If so the requesting agent has to have its own
interface defined in WSML (to allow WSMX to mediate between possible differences in the message exchange patterns
of the requester and provider).
We adopt in the following the Business-to-Business E-Commerce
lifecycle model defined in [47] to help us understand the activities
to be considered to discover and invoke a service in a SSOA. Since
the third aspect, the Publish operation (see section 2.2) has to happen at design time, it is not included in this lifecycle denoting the
dynamic character of a SSOA.
1. Matchmaking: The first activity in the matchmaking phase
is the Web Service Discovery. It deals with the matching of
formalised goals and formalised Web Service descriptions.
In this step it has to be proven that the capability logically
entails the goal with the premise that the conditions for successful usage of the Web Service are fulfilled [48]. The notion of matching goals to services is similar to component
matchmaking, cf. [30, 37]. The matchmaking includes the
following three subactivities:
Ontology Mediation: To be able to match Web Service
descriptions with goals defined in a different ontology,
ontology mediators are called if available to resolve
possible differences.
Handling Partial Matches: Goal-Capability matching is
only successful, if the goal and the Web Service capability match perfectly. This does not hold for many
cases, as there might be semantic differences between
the goal and the capability. Nevertheless a Web Service
might be usable for solving a goal even if some part of
the goal is in conflict with the service description examined. Several degrees of matches can be considered,
each varying in the degree of satisfaction of the users
goal. Colucci et al present an approach how to calculate
the degree of this partial matches in [12].
Service discovery [48] uses the Web Services matched
in the previous step to access the real services behind
such Web Service interfaces, finally checking what services fulfill the requesters goal. The Web Service Discovery results in an agreed service [40] defining what
services of interest to the requester the provider can offer. The difference between the aforementioned Web
Service discovery and the Service Discovery can be
easiest described with an example. Web Service discovery is to find a Web Service that can be used to e.g.
purchase automotive parts whereas service discovery is
about checking whether the actual Web Services can
really provide the concrete requested part.
2. Filtering results: The outcome of the previous phase is a set
of suitable Web Services. In order to improve the quality
of the result set and to ultimately choose one, additional filter mechanism can be applied in the selection. They can be
based on non-functional properties of Web Services or take
some service requesters preferences into account.
3. Agreement Negotiation: After selecting a Web Service two
parties need to determine if they can agree on a service which
the provider will supply to the requester. The agents enter
into negotiation with each other, to see if they can agree mutually acceptable terms of business.
3.3
Process Layer
As mentioned above different services require different message exchange patterns (i.e. which interface has to be invoked when) in order to achieve a consistent state transition
within the service. The problem to solve is that two different
services might provide different interfaces (public process)
for the semantical same operation [8]. If you take an example of purchasing a book, one system might offer it with one
single invocation whereas the other system requires first the
creation of a user, followed by activation of the user and finally the purchase of the book. Hence in the first case, one
Transformation Layer
Although ontologies are used as a shared conceptualizations
of the same problem domain within SWS it will always be
the case that there are ontologies for the same domain created by different entities around the world. In such a case
where services use dissimilar ontologies the EAI solution
has to provide the means to transform between them. This
semantic transformation is also called mediation [18]. Mediation ensures that the semantics of the involved concepts are
preserved.
OSullivan et al [36] define the notion of obligations in a recent technical report in order to capture the responsibilities of
both the service provider and service requester. By defining
non-functional properties they are available in the filtering
phase to resolve the result set to the services compliant to
the defined obligations. For example, a service provider may
wish to advertise that service requesters have an obligation
for a relationship if they request their service.
These obligations to define a SLA are currently not addressed
in the SWS frameworks and it remains a challenge to incorporate support for richer non-functional properties to reflect
constraints on properties such as payment, availability, rights
and economic compensation.
Ontologies for Business Documents
Messages in B2B interaction are sophisticated pieces of information and several organizations tried to standardize common business documents like purchase orders etc. These
standards are called B2B protocol standards [5]. A B2B protocol standard in general is not only the description of the
message formats exchanged (e.g. purchase order), but also
properties like bindings to transport protocols, the sequencing, the security and many more.
Similar to the mapping between different Schema representations of XML messages (e.g. between DTD and XML
Schema), ontology mediation has to be applied to the conceptual model of the involved ontology representations as
well (e.g. between WSMO language variants and OWLS language variants) [34]. However, these transformation
problem is of restricted nature since the set of available ontology representation languages is limited.
3.4
The most well-known standards in regard to the message format are EDI5 and SWIFT6 . They not only provide a defined
syntax but also a defined vocabulary for values of the message fields. However these standards are not applicable in
SOA. They are neither XML based, nor is it easy to set up
an EDI or SWIFT compliant interaction. Since these standards maintained great flexibility in defining the involved
messages, it requires the two parties to agree on interaction
protocols and message formats.
As explained above SWS principles enable to dynamically discover and invoke services within a SOA. Furthermore they facilitate
the functional requirements within EAI on any necessary mediation
based on data and process ontologies and on-the-fly translation of
their concepts into each other.
However, despite the conceptual advantages SWS technology offers for EAI scenarios, due to the infancy of the frameworks itself,
work in the following fields have to advance in order to be capable
to achieve the ultimate goal of on-demand consumption of services.
In the following we describe the challenges associated with the individual activities in the above defined lifecycle model.
RosettaNet7 , ebXML8 , OAGIS9 and many others are industrial consortiums which aim to ease this process by using
XML and XML Schema technologies to define standardised
syntax of messages. They also constitutes the standards supported in traditional Web Service enabled SOA. Again, some
of these standards are merely defining the message format
others are defining the transport protocol, the sequencing,
etc. By using one of these standards, organisations do not
need to go through an agreement phase to specify the used
vocabulary for values of the message fields. Instead it is sufficient to agree on what standard to use. However, these standards have necessarily maintained some flexibility in defining the message format. Since they are syntactic, rather than
semantic it can not be checked in the discovery of a service
if the expected message format is compliant to the provided
message format.
Matchmaking
Non-functional properties
In Business-to-Business (B2B) scenarios it is of utmost importance that a provided service is legally binding once it is
invoked. This is achieved in traditional B2B integration scenarios via Service Level Agreements (SLAs). A SLA constitutes a contract between a service provider and requester
specifying the level of service that is expected during its term
[28]. They can specify availability (refers to the temporal and
locative properties when a service can be requested or provided), response times, rights and economic compensation
if the invocation of the service fails or the actual real world
service is not conducted, etc.
It is important to note that the providers formal service description represents an agreement about the Web Service functionality, but it does not need to have any legal status. In the
case of dynamic discovery and invocation the above mentioned parameters of a SLA have to be included in the service
description in order to be accounted for in the Matchmaking
phase.
see http://www.x12.org
see http://www.swift.com
7
see http://www.rosettanet.org
8
see http://www.ebxml.org
9
see http://www.openapplications.org
6
the goal and the service description is difficult or even impossible. Proposals for ontologizing business documents are
made in the recent past [19], but an agreement over such ontologies have to be achieved over vertical markets.
Delivery Choreography
Standards and mappings for Public Processes
As presented in section 3.3 in SWS frameworks mediator
systems can compensate between differences in the clients
communication pattern and the Web Services communication pattern in order to obtain equivalent public processes.
Although this is possible in theory only if the two public
processes are compliant to some standard or at least the concepts describing the states of the process (the business document standards described above) it is possible to achieve the
mediation by applying solvable mismatch rules in the service delivery without any human intervention. If two public
processes are heterogeneous to a degree where differences
can not be mediated by intelligent mediators, transition
rules have to be defined at design time. They are subsequently used to identify the equivalences between the two
processes which are then applied at run time on the particular process instances. Since the partners in a dynamic
environment are not known beforehand standardised public
process ontologies similar to the B2B protocol initiative proposal have to be included in the SWS frameworks in order to
limit the mediators necessary for resolving process heterogeneity.
The proposed Web Service security standards provide a mechanism for end-to-end security. The WS-Security [3] standard
defines among other things how to attach and include security tokens within SOAP messages. The requesters security
token can either be directly known and trusted by the service
provider or either the requester or provider obtain the security token from a third party token store service and validate
the proof. Inherent with the first solution is that it assumes
that the two parties have used some mechanism to establish
a trust relationship for use of the security token beforehand.
The latter case demands either the requester or the provider
to obtain the security token before being able to invoke the
Web Service.
Defining policies regarding reliable and secure messaging is
the focus of the WS-Policy [4] specification which includes
alongside the security token requirements, privacy attributes,
encoding formats and supported algorithms.
Since there are already proposals how to align WSMO with
WS-Policy [25] it can be expected that Semantic Web Services will ultimately represent such policy assertions as logical conditions. However this is not achieved yet and therefore security constraints can neither be expressed in the goal
nor in the service description.
Negotiation
Negotiation templates
The negotiation stage of the E-Commerce interaction lifecycle refines the agreed service specification from the matchmaking phase to a concrete agreement between two parties
[47].
From a business point of view, negotiation is a key factor organisations use for achieving cost reduction in E-Commerce
[27]. Automated negotiation in current B2B protocol standards is only addressed in a limited way. OASIS, the standardisation body of ebXML is working on requirements for
automated negotiation processes to compose/negotiate a Collaboration Protocol Agreement (CPA) from the Collaboration Protocol Profiles (CPPs) of two prospective trading partners [44]. It is not yet defined as a standard and there are no
services available offering such kind of negotiation protocol.
3.5
Matchmaking
Non-functional properties
Since every organisation consist of a limited amount of sub
units, these units itself are known to each other and as they
conduct business on a daily basis, organisational agreements
[39] replace Service Level Agreements (SLAs) in the usage
of services. When interests of the business-units and the corporation are aligned, sub unit managers will be motivated
to pursue synergies with their sister sub units. It has valuecreating potential [39], hence it can be assumed that service
usage between sub units is agreed on beforehand.
Only properties related to the availability of single services
remain an issue in intra-EAI as well. An organisational wide
policy on how to conceptualise these properties can help to
include them in the Matchmaking. Another possibility is a
monitoring of services within an organisation, whereas every
sub unit has access to the metrics to have preferences defined
in the filtering phase based on this evaluation metrics.
Ontologies for Business Documents
In fact the existence of ontologies to define the business content (the vocabulary) of messages involved in the interaction
between two services remain an issue in intra-EAI as well.
One possible solution is again an organisation wide policy
on how to conceptualise the relevant domains attached to the
messages exchanged within the organisation.
As semantically annotated Web Service interface have to be
developed in any case, it is sufficient if this development
is coordinated on a strategic level throughout the organisation. In this way an agreement can be enforced rather than
be achieved by a mutual agreement between different business partners on a standard in vertical markets as it is the case
in inter-EAI.
Policies as logical conditions
Defining WS-Security Policies in logical terms to place constraints on the chosen services is usually not an issue within
organisations. Communication between sub units is either
over secure ethernet or over a Virtual Private Network (VPN)
applying for example traditional transport-layer security mechanisms, such as SSL (Secure Sockets Layer) or TLS (Transport Layer Security). Therefore the security, non-repudiation,
confidentiality and integrity of message is guaranteed for message transfer between Web Service as it is for every other
communication within an organisations network.
Negotiation
Negotiation templates
Within organisations the filtering of a result set derived in the
Matchmaking is based on the functionality of the service and
Delivery Choreography
Standards and mappings for Public Processes
This is directly related to the ontologies for business documents. Again as long as an agreed set of ontologies is used
within a company, only a limited set of mediators is required
to mediate between behavioural heterogeneities.
Now as we have shown that dynamic discovery and invocation
by applying current SWS frameworks is possible between organisational sub units under certain circumstances, we show how the
Web Service Execution Environment (WMSX) can be applied in a
concrete use case.
4.
WSMX IN EAI
4.1
Figure 6: Simplified WSMX Architecture cf. [47] for the complete picture
4. Two-way goal execution
Once the service requester knows what Web Service to use,
this operation is used to invoke the Web Service. The advantage over a traditional Web Service invocation is that a
back-and-forth conversation can be carried out by WSMX to
provide all the necessary data to make the execution of this
Web Service feasible. For that the choreography of the requesting Web Service (its public process) has to be known
to WSMX, either provided within the message or registered
before through the Store WSMO entity operation.
What follows is a brief description of the WSMX components
relevant in this use case (see Figure 6). A detailed explanation of
all components can be found at [50].
Message Adapters: As long as back end applications do not
natively support a WSML compliant Web Service Interface
adapters are required to transform the format of messages or
even extracted data from an API into the WSML compliant
format understood by WSMX.
Resource Manager: This component is responsible for managing the repositories to store definitions of any WSMO and
non-WSMO related object in WSMX. The service registry
can either be centralised or decentralised, whereas the current architecture only deals with a decentralised repository
in each WSMX.
Discovery: The Discovery component attempts to match the
service requesters goal to a capability stored in any known
repository. The functionality corresponds to the dynamic discovery described in section 3.2.
Selector: It provides a dynamic selection of the discovered
Web Services in the Matchmaking process. The selection is
currently based on a limited set of non-functional properties.
4.2
First we define some prerequisites on the architecture itself in order to depict a high-level intra-EAI use case. To keep the use case
as general as possible, we do not assume WSMX to be installed
either on the requester or the provider side. Since WSMX exposes
all its functionality itself as a Web Service, it acts in the use case
as any other component exposed as a Web Service. The only difference is that the requesting agent has to be bound to the WSMX
5.
Figure 7: Simplified Operational Aspects of WSMX
Let us assume a stock purchase by an investment fund department within a multinational operating bank. This division, which
we will further call HFD (hedge fund division), manages a global
hedge fund. Within its business it has to buy all kind of certificates from different markets. Typically purchases of certificates on
different markets are managed by so called settlement divisions.
In large-scale banks there might not be only one settlement, but
several ones in different countries with overlapping functionality.
Similarly different funds are managed in different departments, either by outsourced sub companies or independent entities within
the bank. The HFD now wants to buy one million shares of the
RELATED WORK
see http://www-306.ibm.com/software/integration/wmq/
see http://www.iona.com/products/artix/
12
see http://www.webmethods.com/meta/default/folder/0000006124
13
see http://www.bea.com/
11
6.
CONCLUSION
In this paper we have proposed to extend the notion of ServiceOriented Architectures by Semantic Web Services. We applied the
principles of the Web Service Modeling Ontology (WSMO) to this
new type of architecture (SSOA) and showed how EAI benefits by
it. WSMO as a formal ontology for describing various aspects related to Semantic Web Services applied in a SSOA eventually allow
dynamic discovery and invocation of services published in the architecture.
Furthermore with interfaces formally defined in WSML integration for developers become a good deal easier. We have shown how
the functionality in the transformation and process layer is greatly
improved. Instead of mapping between XML Schemas as it is done
in traditional SOA, in our architecture mediation takes place at a
14
see http://www.alphaworks.ibm.com/tech/bpws4j
higher level of ontologies, which greatly reduces the required mappings. By applying SWS principles in the process layer, mediator
systems can dynamically compensate the clients or the Web Services communication pattern in order to obtain equivalent public
processes.
Since the automated discovery and execution of Web services is
not facilitated by a conceptual model alone we have identified some
challenges on SWS frameworks and standardisation efforts to be
further addressed to ultimately reach the goal of dynamic environments. These issues included to define standards for business document ontologies, ontologies for expressing Service Level Agreements, business rules and business goals, negotiation protocols and
finally policy assertions as logical conditions (security, reliability
etc.).
We concluded that dynamic discovery and invocation is already
possible in intra-EAI under certain assumptions. To showcase the
potentials of a SSOA we applied WSMX, as a first representative
of a SSOA, to an internal integration use case. Finally we described
how WSMX addresses the activities we defined in a lifecycle model
for a SSOA.
The authors are part of the WSMO and WSMX15 working group
and will mainly contribute to the further development of the choreography and orchestration component. The challenges mentioned
in this document are not unknown to the WSMO working group
and are addressed in different initiatives. Currently work begun
on extending non-functional properties. As already mentioned another initiative is to ontologize EDI [19] and work on policies is on
its way.
7.
REFERENCES