<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>On Reconciliation of Contractual Concerns of Web Services?</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Hong-Linh Truong</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>G.R. Gangadharan</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Martin Treiber</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Schahram Dustdar</string-name>
          <email>dustdarg@infosys.tuwien.ac.at</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Vincenzo D'Andrea</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Department of Information Technology, University of Trento</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Distributed Systems Group, Vienna University of Technology</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Telematica Institute</institution>
          ,
          <country country="NL">The Netherlands</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Contracts are a way of collaborating and binding parties involved describing exchanges of promises or agreement between parties. In the world of Web services, the approaches, languages, and tools that support, specify, and establish contractual concerns are vast. Existing works often mention similar concepts but provide different languages and terminologies. In most cases, current works do not consider the negotiation and establishment of contractual terms modeled by different specifications. In particular, the issue of interoperability among different Web service contract frameworks is open. We analyze existing approaches and propose guidelines for reconciling them in order to improve collaboration between service providers, service consumers and aggregators.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>Contractual concerns of services refer to functional/non-functional properties and
business/management information of services. A service contract1 associated with a Web
service describes how the usage of a service should be, for example, whether a service
is free for non-commercial purposes. A service contract includes normative aspects2
that are agreed between the service consumer and the service provider who acted in
compliance with the contract. A service contract is a complicated artifact surrounded
with interdisciplinary research efforts. As a result, various terminologies, specifications,
and tools have been developed. Unfortunately, many of them address similar problems
but speak in different languages and are not interoperable.</p>
      <p>
        There exist many works addressing, fully or partial, one or multiple phases of
service contracts, but they often mention the same thing with different languages and
terminologies. This requires guidelines and approaches for reconciling them to better
collaboration between service providers, consumers and aggregators. In most cases, current
works do not consider the negotiation and establishment of contractual terms modeled
? The work mentioned in this paper is partially funded by the FP7 COMPAS and COIN projects.
1 In this paper, we discuss service contracts at operational level, not business level [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]
2 http://en.wikipedia.org/wiki/Normative
by different specifications. However, such negotiation and establishment should be
supported as service consumers are increasingly composing and utilizing services provided
by different organizations, each imposes a different meaning on contractual terms. In
parallel, the trend of providing software as a service (SaaS) demands a strong support
for establishment, monitoring and enforcement of diverse contractual terms as in SaaS
model typically each software usage is bound to a service contract. Addressing service
contracts for composite services is important but this work is under-researched.
      </p>
      <p>In this paper, we analyze the complexity of current contractual concerns, identify
issues preventing the establishment of contractual concerns in the service
composition, and propose guidelines for reconciling existing approaches to better collaborate
between service providers, consumers, and aggregrators. The discussion of this paper
focuses on Web services and their machine-processing service contracts.</p>
      <p>The rest of this paper is organized as follow: Section 2 gives an overview of service
contracts. The complexity of current contractual concerns is discussed in 3. Guidelines
for reconciliation of service contracts are presented in Section 4. We present our
preliminary reconciliation results in Section 5. Section 6 concludes the paper.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Overview and Related Work of Service Contracts</title>
      <p>
        A contract is any formal agreement between two or more involved parties. A contract
is a legally binding exchange of promises or agreement between parties that the law
will enforce [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. The contents of contracts may vary as the definition of contract is very
broad in scope. In general, a contract includes offer, acceptance of the offer,
consideration and an intention to create legal relations3. In general, the making of a service
contract consists the following phases.
      </p>
      <p>– Specify contract terms: Service providers and/or consumers can specify their
contractual terms. Contract terms are fundamental aspects for service contracts. They
basically describe the associated properties of a service. These properties may cover
QoS, business aspects, legal, and intellectual property issues related to the service
usage. A contract term is basically a constraint on a service property, for example,
cost is lesser than 5 Euros.
– Negotiate and establish contract: During this phase, contractual terms are
negotiated and established between providers and consumers. In some specific situations,
renegotiation of contracts are allowed.
– Monitor and enforce the contract: In this phase, an agreed contract is monitored
and enforced. A set of metrics for measuring and evaluating contract terms are
considered by providers and/or consumers.</p>
      <p>
        There exist many existing works related to service contracts. We analyzed major
existing works, including the Web Service Level Agreement (WSLA) framework [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ],
WSAgreement [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ], SLAng [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], WSOL [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ], WS-Policy [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], Web Services Policy Language
(WSPL) [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], OASIS ebXML Collaboration Protocol Profile (CPP) and Collaboration
Protocol Agreement (CPA) [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ], ODRL-S [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ], and WSMO [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ]. Table 1 summarizes
3 In civil law systems [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], the concept of consideration is not central in contracts.
current support on service contracts with respect to QoS (e.g., performance, security,
and dependability terms), business (e.g., financial terms), legal (e.g., jurisdiction place,
warranty and limit of liability), and IPR (intellectual property rights, e.g., share alike,
commercial distribution, free). As shown in Table 1, existing approaches have addressed
only few aspects (concerns and phases) associated with service contracts.
      </p>
      <sec id="sec-2-1">
        <title>Approaches</title>
        <p>
          WSLA[
          <xref ref-type="bibr" rid="ref13 ref4">4, 13</xref>
          ]
WS-Agreement [
          <xref ref-type="bibr" rid="ref5">5</xref>
          ]
SLAng
WSOL[
          <xref ref-type="bibr" rid="ref7">7</xref>
          ]
WS-Policy[
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]
WSPL[
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]
ebXML CPP/CPA[
          <xref ref-type="bibr" rid="ref10">10</xref>
          ]
ODRL-S[
          <xref ref-type="bibr" rid="ref11">11</xref>
          ]
WSMO[
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]
        </p>
        <p>QoS Business Legal IPR Phases
+ + specification, monitoring
+ + + specification, monitoring, negotiation
+ + specification, monitoring
+ + + specification, negotiation
+ specification
+ specification</p>
        <p>+ specification
+ + + + specification
+ specification
With the illustrative scenario inspired by the COMPAS project4, shown in Figure 1, we
intend to give an impression of the complexity of contractual terms of today’s
interorganizational Web services and the requirement for reconciliation of contractual
concerns. Assume that each Web service has a provisional contract (one of the terms in
those contracts are represented by fCXS g which has an impact from a given policy
tagged with the service) and a contract (represented as CXY diagrammatically in a
shaded square) is established by negotiation between two Web services. The process
flow is represented by arrowed dotted dash lines and contractual negotiations and
establishments are represented by arrowed black lines.</p>
        <p>We are considering a supply chain management scenario which involves multiple
Web services (possibly from different organizations) collaborating with each other. A
Request Service issuing a purchase request to a Purchase Order Service. The Purchase
Order Service has a provisional contract that includes a intellectual right policy on
information represented in fCP S g. The order sent by this service is being processed by
a Purchase Processing Service which has a provisional contract fCA0S g. These contracts
are negotiated and agreed upon the terms defined as CP A.</p>
        <p>Assume that a security-related QoS policy has been associated with the Purchase
Processing Service which has its impact on the provisional contract in fCAS g. When
the Purchase Processing Service interacts with the provisional contract fCF0 S g of
Financial Service, a new contract is established as CAF .</p>
        <sec id="sec-2-1-1">
          <title>4 http://www.compas-ict.eu</title>
          <p>A Shipping Service processes the Payment Service by establishing a contract CF T ,
satisfying contractual terms of fCF S g and fCA0S g. The Shipping Service gives certain
information about the transferred goods to a Purchase Verification Service by mutual
contracts establishment. Similarly, the Purchase Verification Service sends the verified
information about the goods ordered to the Request Service, to complete the process of
requisition of order to receiving of goods.</p>
          <p>
            The illustrated scenario shows a high level of complexities in representing
contracts for inter-organizational services. The differences in policy properties and their
representations make the scenario complex. First, the current non-uniformity in
policy properties will make how to represent policy properties so that they can interact.
For example, in our scenario, Payment Service specifies business policy - including
financial terms - in fCF S g. As today there is no common ontology for properties of a
contract, financial terms can be represented in the set of quality policy by Shipping
Service. Second, as these properties can be represented in several XML-based languages,
there exists several silos between contracts, SLAs, licenses, and policies. Consider that
Payment Service represents the provisional contract in the WSLA framework and
Purchase Processing Service represents the provisional contract in the SLAng. In this case,
there are no defined regulations on how these contracts can communicate and establish
a new contract. While some works, such as [
            <xref ref-type="bibr" rid="ref13">13</xref>
            ], proposed a solution for managing
contractual terms across organizations, they mostly assume that all organizations use the
same language/specification in describing contractual terms. Here we further examine
cases in which organizations use different languages to model the contractual terms.
3.1 Issues on Contract Specification in Web Services
For performing any kind of business, some form of understanding is required between a
producer (seller) and a consumer (buyer). This mutual understanding about the business
transaction is established by several approaches across various application domains.
Some of the most common approaches are specifying contracts, policies, licenses, and
service level agreements. Contracts can specify technical aspects (for example, network
reliability or availability), business aspects (for example, price), and legal aspects (for
example, indemnifications or limitation of liabilities).
          </p>
          <p>
            Policies establish a relationship between involved parties, specifying obligations
and authorizations. Obligations specify the set of activities that an object must or must
not perform on target objects and authorizations specify the set of activities that an
object is permitted or prohibited to perform on target objects [
            <xref ref-type="bibr" rid="ref14">14</xref>
            ].
          </p>
          <p>
            A Service Level Agreement (SLA) contains technical data relating to the
operation of services that implies the objectives with regard to a service consumer [
            <xref ref-type="bibr" rid="ref15">15</xref>
            ]. A
SLA, e.g. described by WSLA or WS-Agreement specifications, is a bilateral statement
signed between a service provider and a service consumer, over the agreed terms and
conditions of the given service. A SLA describes the minimum performance criteria a
provider promises to meet while delivering a service and typically sets out the
remedial action and any penalties that take effect if performance falls below the promised
standard. Thus, a SLA specifies the expected operational characteristics of a service in
business oriented terms between a provider and a consumer, so that the characteristics
can be measured, monitored, and managed [
            <xref ref-type="bibr" rid="ref16 ref17">16, 17</xref>
            ]. A SLA is often custom-made and
negotiated between a consumer and a provider of a service. Templates for SLA
specifications may vary with service providers. SLA negotiation can be a complex process as
several terms and conditions related to performance criteria may involve in a SLA.
          </p>
          <p>
            Policies and licenses are similar in that they govern what a service does, but are not
the same. Policies provide the means for specifying and modulating the behavior of a
feature to align its capabilities and constraints with the requirements of its users [
            <xref ref-type="bibr" rid="ref18">18</xref>
            ]
where as service licenses reflect the rights of the providers to control how the service
is distributed. A service license primarily focuses on the usage and provisioning terms
of services. Being the mechanism of technology transfer [
            <xref ref-type="bibr" rid="ref19">19</xref>
            ], service licensing is the
method of getting financial benefits for the providers. Optionally, a service license can
include SLA terms. Thus, a service license can be broader than a SLA, protecting the
rights of service providers and service consumers. The agreement between the service
provider and a consumer is bound to comply with license clauses, but in general, a
license itself is not part of the negotiation.
          </p>
          <p>In our illustrated scenario, as different organizations are participating, these
organizations could term contractual concerns in different ways. Though there are some
philosophical differences exist among contracts, policies, SLAs, and licenses, the
common denominator is an identification for a belief of a business transaction between the
service provider and the service consumer and thereby, commonly considered under the
umbrella term ‘contractual concerns’.</p>
          <p>The properties of a contract can describe quality of service aspects (response time,
availability, security policy, etc.), legal issues (fair use, copyrights, etc.), intellectual
property policies (allowing or denying composition), and business policies (payment,
tax, etc.). As there is no formal ontology or unique way of describing these properties,
services can represent these properties as they wish. This will cause redundancies in
properties description.</p>
          <p>
            In the world of Web services, Web service Description Language (WSDL) [
            <xref ref-type="bibr" rid="ref20">20</xref>
            ] is
the standard way to describe what a service does. From a given WSDL specification,
the location of the service, the protocols supported by the service, and the
functionalities provided in terms of incoming and outgoing messages can be known. Research
focusing on languages to enhance and to complete the description provided by WSDL
are continually in progress. These languages/standards are mostly complementary to
WSDL address contractual concerns with varying levels of details.
&lt;s l : r e s p o n s e t i m e&gt;
&lt;o¡d d : r a n g e&gt;
          </p>
          <p>&lt;o¡dd:max&gt; 3 &lt;/ o¡dd:max&gt;
&lt;/ o¡d d : r a n g e&gt;
&lt;/ s l : r e s p o n s e t i m e&gt;
&lt;P r e d i c a t e x s i : t y p e ="Less"&gt;
&lt;SLAParameter&gt;ResponseTime
&lt;/ SLAParameter&gt;
&lt;Value&gt;3&lt;/ Value&gt;
&lt;/ P r e d i c a t e&gt;</p>
          <p>Now, we analyze the complexities in representing contractual terms in the said
different languages with respect to our illustrated scenario. Quality of service issues of
Web services can be expressed in SLAng, WSOL, WSLA, WS-Agreement or
ODRLS. Financial policy can be expressed in WSOL, ODRL-S, or WSLA. Examples of the
same QoS and financial terms described in different approaches are given in Figures
2 and 3 and Figures 4 and 5, respectively. Even the same policies are expressed in
different languages between different Web services, there will be problems in
interpretations of those policies by Web services. When the given provisional contracts of two
Web services interact to establish a contract, there arises misinterpretations due to
nonunified/nonstandard approaches in expressing contractual terms of services. Assume
that the provisional contract of Payment Service is specified in ODRL-S in Figure 2.
Assume that Purchase Processing Service specifies QoS in WSLA in Figure 3. Though
these two services specify similar quality of service issues, there would be problems
in automatic negotiations and composition of these services because these provisional
contracts differ in language semantics and syntax.
3.2 Issues on Contract Negotiation and Establishment
In a business environment, a service provider specifies certain contractual terms which
describe functional and/or non-functional properties of services. Service consumers
also specifies their expectation about functional and/or non-functional properties of
their requested services. In a win-win business transaction, a provider and a consumer
should agree upon contractual terms by negotiation and thereby establishing a contract.</p>
          <p>
            Price, QoS specifications, and warranties are negotiable terms of a contract.
Generally, consumers negotiate on these aspects with providers, using pre-defined templates.
Negotiation refers to the comprising exchanges of offers and requests between the
participating actors. Theoretical bases of SLA negotiation are provided in [
            <xref ref-type="bibr" rid="ref21">21</xref>
            ], identifying
the requirements of a negotiation support system. A common understanding for the
contractual terms among the negotiating parties is a critical issue in negotiation. To resolve
this ontological issue in [
            <xref ref-type="bibr" rid="ref22">22</xref>
            ], template based negotiation is suggested [
            <xref ref-type="bibr" rid="ref23">23</xref>
            ]. The
Policydriven Automated Negotiations Decision-making Approach (PANDA) [
            <xref ref-type="bibr" rid="ref24">24</xref>
            ] automates
the process of decision making within negotiation.
          </p>
          <p>In case of the illustrated supply scenario, there are policies (such as legal policies
like “non-commercial use”) which cannot be measured by any means. However, these
policies are significant in establishing a contract.
3.3 Issues on Contract Monitoring and Enforcement
Consider a scenario where a service consumer is required to pay for a use of particular
service through credit card. A message would be delivered to the service provider about
payment from the consumer. However, unless the credit card consortium informs about
transaction, the provider cannot know whether it is paid and the amount of money paid
for an use of a service by consumer. Business term, being one of the important
contractual terms, can be measured through an approach involving a third party who informs
to provider on the moment of payment by a consumer.</p>
          <p>In general, many QoS terms are measurable. QoS terms can be measured at the
consumer side to confirm whether the received QoS is in conformance with the QoS
offered by providers. There can be contradictions in measurement claiming the
differences when a single QoS term is measured at both consumer side and provider side.
There should be a consensus in measuring and monitoring of QoS and should be
specified in a contract in indemnification clauses. However, there are some contractual terms
which are difficult to monitor, for example, non-commercial use5.
5 A service provider can allow the service to be used for commercial use or non-commercial use.</p>
          <p>
            An ‘allowable non-commercial user’ [
            <xref ref-type="bibr" rid="ref25">25</xref>
            ] of a service will be an atomic or composed service
          </p>
          <p>Most of the works in the area of service contracts focus on specifying and
establishing contracts. The area of monitoring and enforcement of service contracts is given very
less attention by the community and is focused mainly QoS terms and partially
business terms for individual consumer-to-provider scenarios, not for cross-organizational
scenarios, e.g. as described in Section 3. Current proposals on measuring contractual
terms are summarized as follows:</p>
        </sec>
      </sec>
      <sec id="sec-2-2">
        <title>Contractual Terms Methods of Measurement Active Party</title>
        <p>
          QoS terms Sampling at regular intervals of time, querying through di- Consumer,
rect communication between provider and consumer Provider
Business terms Notification through trusted third party approved services Provider
In the pioneering work of WSLA [
          <xref ref-type="bibr" rid="ref4">4</xref>
          ], the way of specifying, measuring, and
monitoring the SLA parameters are described. Upon receipt of an SLA specification, the WSLA
monitoring services are automatically configured to enforce the SLA. An event
calculus based approach for monitoring SLAs in a utility computing scenario is presented in
[
          <xref ref-type="bibr" rid="ref26">26</xref>
          ]. The recent work in [
          <xref ref-type="bibr" rid="ref27">27</xref>
          ] focuses on determining elements of SLAs that are
monitorable at which degree. However, none of these approaches are sufficient to monitor
completely contractual terms described by different specifications and associated with
different services and to make decision strategies based on the outcome of monitoring.
4
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Towards Reconciliation and Further Investigation</title>
      <p>
        We have explored several specifications for representing contractual concerns. Many
of the contract terms are different but yet represent the same thing. We have identified
the following key research questions: Can we have a single language to represent all
contractual concerns? Generally, all specification languages/standards focus on terms
and conditions to be agreed by providers and consumers. Every language describes
certain properties of services entirely. Unfortunately, today, there is not a single language
that fully supports all contractual terms. In the existence of multiple languages to
represent contractual concerns, a unified set of standards for contractual terms is needed.
To deal with multiple specifications, we can start from the consumer’s point of view:
we should provide a common language for the consumer to specify the requesting
contractual terms. Such a common language can be used together with common
ontologies for business, legal and intellectual terms. Based on consumer-specified contractual
terms, we apply data integration techniques, such as schema mapping, meta-model and
domain-specific languages, to query, evaluate and compare contractual terms given by
different specifications/languages. Some have proposed the combination of different
approaches, such as WSMO with WS-Policy [
        <xref ref-type="bibr" rid="ref28">28</xref>
        ], but the support of consumer-specified
service contracts has not been focused.
      </p>
      <p>consumer or provider serving for non-profit as defined under the copyright law of respective
jurisdictions. The use of a service by individuals, educational institutions or nonprofit
organizations are regarded as non-commercial use. When a service uses another service that includes
the non-commercial use clause, the consuming service is expected not to violate the clause of
non-commercial use.</p>
      <p>
        Though there is no unified language, do the existing languages/standards satisfy the
requirement of consumers for representing contractual concerns? Interestingly, most
of the present languages describing contractual concerns fail to represent hierarchical
user preferences in contracts. For example, consider the following scenario where a
consumer is interested in consuming a service with lesser cost and better response time.
The consumer wishes to specify the order of preferences for the service to be
consumed as follows. The consumer considers price as a priority term, i.e. for less price
service, the consumer wants to select a service in which cost is lower followed by
higher response time. The present languages describe these preferences in a segregated
manner and policy-aware service selection algorithms handle these scenarios up to a
certain threshold. The cause today that the language not describing preferences by tree
based data structure is the level of depth for representing contractual terms by these
languages. Mostly, these languages express contractual terms in a single level.
Representing contractual terms in a hierarchical form (e.g., by a tree data structure) would
be one simple solution but can enhance the description of consumer preferences and
enable algorithms working on contractual terms to be more efficient. In this sense, the
concept of constraints hierarchies [
        <xref ref-type="bibr" rid="ref29">29</xref>
        ] can be used to select services [
        <xref ref-type="bibr" rid="ref30">30</xref>
        ].
      </p>
      <p>Can we manage contracts associated with service instances separately from WSDL?
Existing tools tend to assume that contracts can be annotated with service description
to facilitate the service discovery. However, a contract, if deployed in real business,
will be associated with service instances. In particular, the concept of SaaS introduces
various challenges to manage contracts associated with services because each customer,
in principle, would have a different contract for each service instance.</p>
      <p>Can we use different contract negotiation/ compatibility algorithms, even though
we do not have a unified approach? Presently, negotiation is mainly a manual process,
and thus a full or partial automated contract negotiation is needed. Furthermore, in the
case of composing services associated with different contracts, compatibility should be
checked. However, this has so far attracted little attention.</p>
      <p>
        Is real time monitoring and enforcement of the contractual concerns, in particular,
legal and intellectual right terms, of dynamic Web services possible? Automated
contract management and enforcement is highly desirable. It is obvious that contractual
terms cannot simply be monitored by the consumer and the provider in a fully
automatic fashion, as assumed in most current work. The third party is needed in many
cases, as discussed in [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ]. We can study the model of joint control in virtual
organizations [
        <xref ref-type="bibr" rid="ref31">31</xref>
        ] for developing similar service contract authorities. Furthermore, third parties
for service contracts monitoring and enforcement must be able to deal with multiple
types of contract specifications. In our view, it would be possible to automatically
monitor and enforce QoS and business terms at realtime. However, for legal and intellectual
right terms, not only third parties are required for contract enforcement but also
manual monitoring and enforcement will be required. To support contract monitoring and
enforcement in semi-automatic processes, the gap between technical contract terms in
business (human processing) level and in operational (machine processing) level, as
discussed in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] has to be addressed.
      </p>
    </sec>
    <sec id="sec-4">
      <title>Preliminary Results on The Reconciliation</title>
      <p>
        Addressing the questions in Section 4 will need a lot of effort from Web service
community and we have achieved some preliminary results on the reconciliation of service
contracts. To support the management of service contracts, we have developed SEMF
(Service Evolution Management Framework) [
        <xref ref-type="bibr" rid="ref32">32</xref>
        ] which can be used as a platform for
service contract-based SaaS. In SEMF, service licenses/contracts can be described by
different languages, such as ODRL-S, WS-Policy or WS-Agreement, and are managed
separately from other information, such as WSDL, as given in an example in Listing
1.1. Thus, SEMF can serve as a contract registry for complex business scenarios.
      </p>
      <p>To support the establishment of contractual concerns described by different
specifications, we first define a simple schema for representing consumer-specified contracts
(see Figure 6). From the consumer-specified contracts, we apply data mapping and
integration techniques to query and map different types of contract information provided
by different services. For example, by utilizing XQuery and SPARQL, we can query
contract terms described by XML, RDF and OWL-based specifications and stored in
SEMF, and map them to the consumer-specified contract model. Based on that, we
perform the contract search and compatibility analysis.
&lt;f e e d xmlns="http://www.w3.org/2005/Atom"&gt;
&lt;i d&gt;u r n : u u i d : 7 d 9 f f 7 2 7 ¡ee11¡4c89¡a4fc ¡728198 b1613b&lt;/ i d&gt;
&lt;e n t r y&gt;
&lt; t i t l e&gt;I n t e r f a c e&lt;/ t i t l e&gt;
. . .
&lt;l i n k h r e f ="http://.../Interface" r e l ="alternate" t y p e ="application/wsdl+xml" /&gt;
&lt;/ e n t r y&gt;
&lt;e n t r y&gt;
&lt; t i t l e&gt;L i c e n c e&lt;/ t i t l e&gt;
. . .
&lt;l i n k h r e f ="http://.../Licence" r e l ="alternate" t y p e ="application/atom+xml" /&gt;
&lt;/ e n t r y&gt;
&lt;/ f e e d&gt;</p>
      <sec id="sec-4-1">
        <title>Listing 1.1. Example of a feed describing License and Interface</title>
        <p>6</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>In a dynamic market environment, the usage of Web services is based on contracts
specifying the terms and conditions of using and provisioning of services. This paper
discusses the strengths and weakness of existing languages and standards for describing
contracts in service oriented computing. When the vision of software as a service is
realized, service contracts are of paramount importance and we need to consider the
interoperability of service contracts provided by different organizations. Based on our
study, we have suggested some guidelines to reconcile the contractual concerns of Web
services that could make the vision of service oriented computing more realistic. Our
future work is to tackle some open issues identified in this paper.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Arenas</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Wilson,
          <string-name>
            <surname>M.</surname>
          </string-name>
          :
          <article-title>Contracts as trust substitutes in collaborative business</article-title>
          .
          <source>Computer</source>
          <volume>41</volume>
          (
          <issue>7</issue>
          ) (
          <year>2008</year>
          )
          <fpage>80</fpage>
          -
          <lpage>83</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Wehberg</surname>
          </string-name>
          , H.:
          <article-title>Pacta Sunt Servanda</article-title>
          .
          <source>The American Journal of International Law</source>
          <volume>53</volume>
          (
          <issue>4</issue>
          ) (
          <year>1959</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Apple</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Deyling</surname>
          </string-name>
          , R.:
          <article-title>A Primer on the Civil Law System</article-title>
          . Federal Judicial Center, USA (
          <year>1995</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4. Keller, A.,
          <string-name>
            <surname>Ludwig</surname>
          </string-name>
          , H.:
          <article-title>The WSLA Framework: Specifying and Monitoring Service Level Agreements for Web Services</article-title>
          .
          <source>Journal of Network and Systems Management</source>
          <volume>11</volume>
          (
          <issue>1</issue>
          ) (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Andrieux</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Czajkowski</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Keahey</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ludwig</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nakata</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pruyne</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Rofrano</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Tuecke</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Xu</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Web Services Agreement Specification(WSAgreement). Grid Resource Allocation Agreement</surname>
          </string-name>
          <article-title>Protocol (GRAAP) WG</article-title>
          , http://www.ogf.org/documents/GFD.107.
          <string-name>
            <surname>pdf</surname>
          </string-name>
          (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Skene</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lamanna</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Emmerich</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          :
          <article-title>Precise Service Level Agreements</article-title>
          .
          <source>In: Proceedings of 26th International Conference on Software Engineering (ICSE)</source>
          .
          <article-title>(</article-title>
          <year>2004</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Tosic</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Pagurek</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Patel</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Esfandiari</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ma</surname>
          </string-name>
          , W.:
          <article-title>Management Applications of the Web Service Offerings Language</article-title>
          .
          <source>In: Proceedings of the 15th Conference on Advanced Information Systems Engineering</source>
          . (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Vedamuthu</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Orchard</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hirsch</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hondo</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yendluri</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Boubez</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yalcinalp</surname>
            ,
            <given-names>U.</given-names>
          </string-name>
          :
          <string-name>
            <surname>Web Services Policy (WS-Policy) Framework</surname>
          </string-name>
          (
          <year>2007</year>
          ) http://www.w3.org/TR/ws-policy.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Anderson</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          :
          <article-title>Web Services Policy Language (WSPL)</article-title>
          .
          <source>In: Proceedings of the Fifth IEEE International Workshop on Policies for Distributed Systems and Networks (POLICY'04)</source>
          . (
          <year>2004</year>
          )
          <fpage>189</fpage>
          -
          <lpage>192</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <source>OASIS ebXML CPP and CPA Technical Committee: Collaboration Protocol Profile and Agreement Specification Version 2</source>
          .1. http://www.oasis-open.org/committees/ebxml-cppa/ (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          11.
          <string-name>
            <surname>Gangadharan</surname>
            ,
            <given-names>G.R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>D'Andrea</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Iannella</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weiss</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <string-name>
            <given-names>ODRL</given-names>
            <surname>Service Licensing</surname>
          </string-name>
          <article-title>Profile (ODRL-S)</article-title>
          .
          <source>In: Proceedings of the 5th International Workshop</source>
          for Technical, Economic, and
          <article-title>Legal Aspects of Business Models for Virtual Goods</article-title>
          . (
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          12.
          <string-name>
            <surname>Toma</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Foxvog</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jaeger</surname>
            ,
            <given-names>M.C.</given-names>
          </string-name>
          :
          <article-title>Modeling qos characteristics in wsmo</article-title>
          .
          <source>In: MW4SOC '06: Proceedings of the 1st workshop on Middleware for Service Oriented Computing (MW4SOC</source>
          <year>2006</year>
          ), New York, NY, USA, ACM (
          <year>2006</year>
          )
          <fpage>42</fpage>
          -
          <lpage>47</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          13. Keller, E.,
          <string-name>
            <surname>Ludwig</surname>
          </string-name>
          , H.:
          <article-title>Defining and monitoring service-level agreements for dynamic ebusiness</article-title>
          .
          <source>In: LISA '02: Proceedings of the 16th USENIX conference on System administration</source>
          , Berkeley, CA, USA, USENIX Association (
          <year>2002</year>
          )
          <fpage>189</fpage>
          -
          <lpage>204</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          14.
          <string-name>
            <surname>Lupu</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sloman</surname>
            ,
            <given-names>M.:</given-names>
          </string-name>
          <article-title>A Policy Based Role Object Model</article-title>
          .
          <source>In: Proceedings of the International Enterprise Distributed Object Computing Conference (EDOC)</source>
          .
          <article-title>(</article-title>
          <year>1997</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          15.
          <string-name>
            <surname>Muller</surname>
          </string-name>
          , N.:
          <article-title>Managing Service Level Agreements</article-title>
          .
          <source>International Journal of Network Management</source>
          <volume>9</volume>
          (
          <year>1999</year>
          )
          <fpage>155</fpage>
          -
          <lpage>166</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          16.
          <string-name>
            <surname>Lewis</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ray</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          : Service Level Management Definition, Architecture, and Research Challenges.
          <source>In: Proceedings of the Global Telecommunications Conference (GLOBECOM)</source>
          .
          <article-title>(</article-title>
          <year>1999</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          17.
          <string-name>
            <surname>Sahai</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Durante</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Machiraju</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          :
          <article-title>Towards Automated SLA Management for Web Services</article-title>
          .
          <source>Technical Report HPL-2001-310 (R.1)</source>
          , Software Technology Laboratory, HP Laboratories, Palo Alto, USA (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          18.
          <string-name>
            <surname>Kamoda</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Yamaoka</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Matsuda</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Broda</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sloman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <article-title>Policy Conflict Analysis Using Free Variable Tableaux for Access Control in Web Services Environments</article-title>
          .
          <source>In: Proceedings of the 14th International World Wide Web Conference (WWW)</source>
          .
          <article-title>(</article-title>
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          19.
          <string-name>
            <surname>Speser</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          :
          <source>The Art and Science of Technology Transfer</source>
          . John Wiley &amp; Sons, USA (
          <year>2006</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          20.
          <string-name>
            <surname>Christensen</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Curbera</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Meredith</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Weerawarana</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          :
          <article-title>Web Services Description Language (WSDL) 1.1</article-title>
          . http://www.w3.org/TR/wsdl (
          <year>2001</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          21.
          <string-name>
            <surname>Demirkan</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Goul</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Soper</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          :
          <article-title>Service Level Agreement Negotiation: A Theory-based Exploratory Study as a Starting Point for Identifying Negotiation Support System Requirements</article-title>
          .
          <source>In: Proceedings of the 38th Hawaii International Conference on System Sciences. (</source>
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          22.
          <string-name>
            <surname>Michael</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          : Engineering Electronic Negotiations. Kluwer Academic Publishers, New York, USA (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          23.
          <string-name>
            <surname>Grosof</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Reeves</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wellman</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          :
          <source>Automated Negotiation from Declarative Contract Descriptions. Computational Intelligence</source>
          <volume>18</volume>
          (
          <issue>4</issue>
          ) (
          <year>2002</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          24.
          <string-name>
            <surname>Gimpel</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ludwig</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dan</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Kearney</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          :
          <article-title>PANDA: Specifying Policies for Automated Negotiations of Service Contracts</article-title>
          .
          <source>In: Proceedings of the First International Conference on Service Oriented Computing</source>
          . (
          <year>2003</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          25.
          <article-title>CreativeCommons: Proposed Best Practice Guidelines to Clarify the Meaning of “Noncommercial” in the Creative Commons Licenses</article-title>
          . http://wiki.creativecommons.org/DiscussionDraftNonCommercial Guidelines (Accessed on August,
          <year>2007</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          26.
          <string-name>
            <surname>Farrell</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Sergot</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Salle</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Bartolini</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          :
          <article-title>Using the Event Calculus for Tracking the Normative State of Contracts</article-title>
          .
          <source>International Journal of Cooperative Information System</source>
          <volume>4</volume>
          (
          <issue>2</issue>
          ) (
          <year>2005</year>
          )
        </mixed-citation>
      </ref>
      <ref id="ref27">
        <mixed-citation>
          27.
          <string-name>
            <surname>Skene</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Skene</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Crampton</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Emmerich</surname>
            ,
            <given-names>W.:</given-names>
          </string-name>
          <article-title>The monitorability of service-level agreements for application-service provision</article-title>
          .
          <source>In: WOSP '07: Proceedings of the 6th international workshop on Software and performance</source>
          , New York, NY, USA, ACM (
          <year>2007</year>
          )
          <fpage>3</fpage>
          -
          <lpage>14</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref28">
        <mixed-citation>
          28.
          <string-name>
            <surname>Kopecky</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Roman</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          : D24.
          <year>3v0</year>
          .
          <article-title>1 aligning wsmo with ws-policy (</article-title>
          <year>2007</year>
          ) WSMO Working Draft, http://wsmo.org/TR/d24/d24.3/v0.1/.
        </mixed-citation>
      </ref>
      <ref id="ref29">
        <mixed-citation>
          29.
          <string-name>
            <surname>Borning</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Freeman-Benson</surname>
            ,
            <given-names>B.N.</given-names>
          </string-name>
          , Wilson,
          <string-name>
            <surname>M.:</surname>
          </string-name>
          <article-title>Constraint hierarchies</article-title>
          .
          <source>Lisp and Symbolic Computation</source>
          <volume>5</volume>
          (
          <issue>3</issue>
          ) (
          <year>1992</year>
          )
          <fpage>223</fpage>
          -
          <lpage>270</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref30">
        <mixed-citation>
          30.
          <string-name>
            <surname>Guan</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ghose</surname>
            ,
            <given-names>A.K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Lu</surname>
            ,
            <given-names>Z.</given-names>
          </string-name>
          :
          <article-title>Using constraint hierarchies to support qos-guided service composition</article-title>
          . In: ICWS, IEEE Computer Society (
          <year>2006</year>
          )
          <fpage>743</fpage>
          -
          <lpage>752</lpage>
        </mixed-citation>
      </ref>
      <ref id="ref31">
        <mixed-citation>
          31.
          <string-name>
            <surname>Smith</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ramakrishnan</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          :
          <article-title>Joint policy management and auditing in virtual organizations</article-title>
          .
          <source>grid 00</source>
          (
          <year>2003</year>
          )
          <fpage>117</fpage>
        </mixed-citation>
      </ref>
      <ref id="ref32">
        <mixed-citation>
          32.
          <string-name>
            <surname>Treiber</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Truong</surname>
            ,
            <given-names>H.L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dustdar</surname>
            ,
            <given-names>S.:</given-names>
          </string-name>
          <article-title>SEMF - Service Evolution Management Framework</article-title>
          .
          <source>In: 34th EUROMICRO Conference on Software Engineering andAdvanced Applications</source>
          (SEAA), Special session on Quality and
          <string-name>
            <surname>Service-Oriented</surname>
            <given-names>Applications</given-names>
          </string-name>
          , IEEE Computer Society (
          <year>2008</year>
          )
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>