<!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>OWL-S for Describing Artifacts</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Rossella Rubino</string-name>
          <email>rossella.rubino@unibo.it</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ambra Molesini</string-name>
          <email>ambra.molesini@unibo.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Enrico Denti</string-name>
          <email>enrico.denti@unibo.it</email>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CIRSFID - Alma Mater Studiorum - Universit`a di Bologna</institution>
          ,
          <addr-line>Via Galliera 3, 40121 Bologna</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>DEIS - Alma Mater Studiorum - Universit`a di Bologna</institution>
          ,
          <addr-line>Viale Risorgimento 2, 40136 Bologna</addr-line>
          ,
          <country country="IT">Italy</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Artifacts for Multi-Agent Systems have been defined as runtime entities providing some kind of function or service that agents can fruitfully exploit to achieve their individual or social goals. In order to enable agents to autonomously discover the available services, select the proper artifact(s), and use the services they need, it is necessary to describe the services offered by artifacts in terms of (i) what each service does, (ii) how to access it, and (iii) how it works. In this paper we explore how OWL-S (Ontology Web Language for Services), a language specifically aimed for the description of Web Services, can be exploited also for describing the services offered by artifacts. In particular, we investigate how to represent the artifact features by means of OWL-S, provide an example, and discuss some preliminary results in terms of advantages and limitations of this approach.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        According to Activity Theory [
        <xref ref-type="bibr" rid="ref21">24</xref>
        ], most of the human activities are mediated by some kind of
artifact – physical, such as blackboards and traffic lights, or cognitive, such as languages and
norms. Analogously, in the context of Multi-Agent Systems (MASs), artifacts are both conceptual
and runtime entities that mediate agent activities [
        <xref ref-type="bibr" rid="ref24">27</xref>
        ], providing some kind of function or service
that agents can fruitfully exploit to achieve their individual or social objectives.
      </p>
      <p>
        In particular, in the Agents&amp;Artifacts (A&amp;A) [
        <xref ref-type="bibr" rid="ref18">21, 17</xref>
        ] meta-model, recently proposed for MAS
engineering, artifacts – along with agents – are adopted as the basic building blocks to engineer
complex software systems. More precisely, agents are the basic abstractions to represent active,
task-/goal-oriented components, designed to pro-actively carry on one or more activities towards
the achievement of an objective, requiring different levels of skill and reasoning capabilities. On
the other hand, artifacts are the basic abstractions to represent passive, function-oriented building
blocks, which are constructed and used by agents, either individually or cooperatively, during their
working activities. So agents can be used to model individual activities, while artifacts can be well
suited for mediating the interaction between individual components and their environment
(including the other components), and for embodying the portion of the environment that is explicitly
designed to support agents activities [17].
      </p>
      <p>
        Many sorts of artifacts can populate a MAS, providing agents with a number of different services,
embodying a variety of diverse models, technologies and tools, and addressing a wide range of
application issues. In particular, artifacts are used to mediate between individual agents and the
MAS (individual artifacts), to build up agent societies (social artifacts), and to mediate between a
MAS and an external resource (resource artifacts) [
        <xref ref-type="bibr" rid="ref17">20</xref>
        ].
      </p>
      <p>
        In this paper we explore the use of the OWL-S [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] language for describing the services offered
by artifacts, so that agents can autonomously discover, select and use artifacts offering particular
services into which they are interested. OWL-S is a OWL-based Web Service ontology, which
supplies Web Service providers with a core set of markup language constructs for describing the
properties and capabilities of their Web Services in unambiguous, computer-interpretable form.
OWL-S markup of Web services will facilitate the automation of Web Service tasks, including
automated Web Service discovery, execution, composition and inter-operation. OWL-S seems a
good candidate for describing services provided by artifacts because it should allow to express in
a high-level way these services so as to support agents on the one hand in choosing the proper
artifact, on the other, agents should be able to understand how the artifact works and know how
to access it. As a consequence the use of OWL-S for describing artifacts’ services could improve
the openness of MASs and the mobility of agents: agents could access to artifacts in a standard
way in each place of the net.
      </p>
      <p>So, the paper is structured as follows. Section 2 introduces the artifact features, while Section
3.1 briefly presents the fundamental semantic web languages, with special regard to OWL-S. Next,
Section 3.2 introduces how OWL-S can be used for describing artifacts, and Section 3.3 provides
some details about artifact representation in OWL-S; a discussion about the pros and cons of this
approach is developed in Section 3.4. Then Section 4 presents a simple example – a sketch of
a flight tracking system – based on the (social) artifacts provided by the TuCSoN infrastructure
technology. Some relevant related work is reported in Section 5; conclusions follow in Section 6.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Artifacts features</title>
      <sec id="sec-2-1">
        <title>In its most general acceptation, an artifact conceptually exposes [20]:</title>
        <p>Usage Interface — The set of operations provided by an artifact defines what is called its usage
interface, which (intentionally) resembles interfaces of services, components or objects – in the
object-oriented acceptation of the term. Operations are the means by which an artifact provides
for a service or function: an agent executes an action over an artifact by invoking an artifact
operation. Execution typically terminates with an operation completion, representing the outcome
of the invocation.</p>
        <p>
          Operating Instructions — Coupled with a usage interface, an artifact provides agents with
operating instructions, that is a description of the procedure that an agent has to follow to
meaningfully interact with an artifact over the time. Moreover, operating instructions also come with
the specification of preconditions for actions and effects to perceptions [
          <xref ref-type="bibr" rid="ref25">28</xref>
          ].
        </p>
        <p>Function Description — Finally, an artifact is characterised by a description of the functionality
it provides. Function description explains what to obtain from the artifact – a key information for
artifact selection. Clearly, function description is an abstraction over the actual implementation of
the artifact: it hides inessential implementation details while highlighting its key aspects.</p>
        <p>For instance, consider the case of a digital camera. In order to choose a digital camera among
all that are available in the market, interested customers usually start by checking the cameras’
technical specifications, such as its memory, zoom capabilities, etc.: these are actually a form of
function description – they explain what the camera does. Also, each camera has its own buttons
and panels, which must be operated according to the instruction provided by the vendor in the
user’s manual. Buttons and panels represent the camera’s usage interface – i.e., how to access it –
while the user’s manual describes how to use them to suitably configure the camera resolution, the
zoom ratio, etc. – thus representing the operating instruction.</p>
        <p>In addition, artifacts typically exhibit further relevant properties, which enhance MAS engineers’
but also agents’ ability to use them for their own purposes. For instance, it should be possible to
monitor artifacts as an observable part of the environment, so as to check the development of the
activities, track the system history, and evaluate the overall system performance. Desirable artifact
features can then be listed as follows:
Inspectability — The state of an artifact, its content, the laws governing its behaviour, its usage
interface, operating instructions and function description might be all or partially inspectable
by agents.</p>
        <p>Controllability — The operational behaviour of an artifact should be controllable so as to allow
engineers and agents to monitor its proper functioning: it should be possible to stop and
restart an artifact working cycle, to trace its inner activity, and to observe and control a
step-by-step execution.</p>
        <p>Malleability — The behaviour of an artifact should be modifiable at execution time in order to
adapt to the changing needs or mutable external conditions of a MAS.</p>
        <p>Linkability — Artifacts can be used encapsulate and model reusable services in a MAS. To scale
up with complexity of an environment, it might be useful to compose artifacts, by allowing
artifacts to invoke operations on other artifacts.</p>
        <p>
          As a final remark, it is worth noting that the above artifact features usually play different roles
in the viewpoints of agents and of MAS engineers. For instance, operating instructions are mostly
seen as a design tool by/for engineers, and as a run-time support by/for rational agents. Instead,
features like inspectability and malleability gain particular interest when the two viewpoints can
be made one: for instance, an intelligent agent capable of playing the role of the MAS engineer
could in principle understand the state and dynamics of the MAS by observing the artifacts, and
then possibly change the overall MAS behaviour by suitably altering the artifacts behaviour [
          <xref ref-type="bibr" rid="ref17">20</xref>
          ].
3
3.1
        </p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>OWL-S and Artifacts</title>
      <sec id="sec-3-1">
        <title>From Semantic Web Languages to OWL-S</title>
        <p>
          The Semantic Web project [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ] is aimed at defining a common framework for information exchange
by giving semantics to the content of the documents shared and reused across applications. For this
purpose, several ingredients are put together: customisable Extensible Markup Language (XML)
[
          <xref ref-type="bibr" rid="ref6">6</xref>
          ] for describing data, descriptive technologies such as the Resource Description Framework (RDF)
[
          <xref ref-type="bibr" rid="ref14">14</xref>
          ] and the Resource Description Framework Schema (RDFS) [
          <xref ref-type="bibr" rid="ref7">7</xref>
          ], and ontology languages such as
the Ontology Web Language (OWL) [16] and Ontology Web Language for Services (OWL-S) [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ].
        </p>
        <p>RDF has been conceived for describing Web resources – that is, anything identified by a
Uniform Resource Identifier (URI): in turn, RDFS specifies the schema for defining properties, classes
and inter-relationships among classes. Their applications include the description of any kind of
web content for multiple purposes, such as content rating, labelling for search engines, site maps,
collaborative services, and e-commerce applications (e.g. to express price, availability, etc. of
shopping items). Yet, the lack of some particular features (such as the local scope of properties, the
disjointedness of classes, and other special characteristics) led to the development of a new
language built on top of RDF and RDFS, specifically designed for processing Web information: OWL
(Ontology Web Language, [16]). More precisely, three versions of OWL are available which provide
different trade-offs between expressive power and efficient reasoning: OWL Lite, OWL DL
(Description Logic) and OWL Full. OWL Lite supports users who just need a classification hierarchy
and simple constraint features, while OWL DL is for users demanding the maximum
expressiveness without losing computational completeness and decidability of reasoning systems; OWL Full
is meant for users who need the maximum expressiveness and syntactic freedom of RDF, though
with no computational guarantees.</p>
        <p>However, just describing resources is not enough in the perspective of discovering, invoking,
composing and monitoring web resources which offer services: this is why a specialisation of OWL
for service description, called OWL-S (Ontology Web Language for Services), has also been defined.
Figure 1 shows the (top-level) ontology of OWL-S in terms of an RDF graph – a kind of graph used
to represent the relationships among resources, property and property values, where nodes (ovals)
represent resources or property values, and arcs represent properties. According to that ontology,
the discovery, selection and exploitation of a service calls for a suitable description of (i) what the
service does, reported by the Service Profile; (ii) how it works, explained in the Service Model ; and
(iii) how to access it, detailed in the Service Grounding.</p>
        <p>
          Service Profile — The service profile includes a description of what can be accomplished by the
service, its limitations in terms of applicability and quality of service, and what is required
from the service requester in order to use the service [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. In addition, the service profile
can contain information about the organisation or entity which provides the service and the
service category, possibly referring to some standard classification system, such as United
Nations Standard Products and Services Code (UNSPSC).
Service Model — After the service is found based on the service profile, the user needs to know
how to ask for the service and what happens when the service is executed. To this end,
the service model describes the semantic content of requests, the conditions under which
particular outcomes may occur and, optionally, the step-by step processes leading to such
outcomes.
        </p>
        <p>
          OWL-S defines a subclass of the service model, namely the process model, which provides
further details about the number of inputs, outputs, preconditions and effects. Three types of
processes can be defined: atomic, simple, and composite processes [
          <xref ref-type="bibr" rid="ref3">3</xref>
          ]. Atomic services feature
no ongoing interaction between user and service – just think of a service that returns the postal
code of a city, or the longitude and latitude of a given place. Simple processes are a sort of
‘intermediate abstractions’, which can be used in two ways – as a view of atomic processes,
and as a simplified representation of composite processes. Finally, composite services are
composed of multiple services, and may require extended interaction or conversation between
the requester and the set of services that are being used – think, for instance, of the online
sell of a book.
        </p>
        <p>
          Service Grounding — Service grounding basically specifies how to access a service, linking Web
Services’ semantic and syntactic description levels: in particular, its main task is to transform
the semantic data to XML messages to be sent over the network, and conversely to define
how the received XML messages should be interpreted as semantic data [15].1
So, it typically defines the communication protocol, the message formats and the serialisation
techniques adopted for each semantic type of input or output specified in the service model.
Since the current definition of OWL-S does not account for any means to express grounding
information, the WSDL [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] language has been selected as the initial grounding mechanism
for describing the service interface. However, it should be noted that OWL-S does not
ascribe inputs, outputs, preconditions and effects directly to WSDL operations; instead, such
conditions are attached to atomic processes, which are then bound to WSDL operations by
the OWL-S grounding service [
          <xref ref-type="bibr" rid="ref1">15, 1</xref>
          ].
        </p>
        <p>In the next subsection we will discuss how OWL-S can be brought to the artifact world, i.e. exploited
to discover and invoke not only Web Services, but also the services provided by artifacts.
3.2</p>
      </sec>
      <sec id="sec-3-2">
        <title>Bringing OWL-S to the Artifact World</title>
        <p>In order to enable agents to identify and use the services provided by artifacts – which is the key
for building open MASs where intelligent agents dynamically look for artifacts and select the most
adequate to their goals –, the artifacts’ features need to be expressed in some high-level language.</p>
        <p>Such a high-level language should also make it possible for agent to adopt a uniform cognitive
level for interaction.</p>
        <p>
          1Web Services are usually described at two abstraction levels: one defining atomic operations in terms of input
/ output messages, the other mapping operations and their associated messages to physical endpoints (ports and
bindings). Ports declare the operations available with the corresponding inputs / outputs, while bindings declare
the transport mechanism (usually SOAP [
          <xref ref-type="bibr" rid="ref12">12</xref>
          ]) used by each operation [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ].
        </p>
        <p>
          Usually, agents speak with each other via languages like FIPA-ACL [
          <xref ref-type="bibr" rid="ref11">11</xref>
          ], while exploiting the
environmental resources as a means for lower-level interaction. So, the agents’ interaction space
spans over different cognitive levels, because agents cannot interact with the other components
(agents and resources) of the MAS in a uniform way. Artifacts, instead, make it possible to wrap
the resources of a MAS and bring them to the cognitive level of agents, so that both the interaction
among agents (on the one side) and between agents and artifacts (on the other) can occur at
the same cognitive level, exploiting the high-level language that describes artifacts’ services as
the common language. In order to make this possible, the selected high-level language should be
standard enough to support both the MAS openness and agent mobility, allowing heterogeneous
agents to join a MAS, discover and use the services provided by the artifacts. By the way, this
choice also simplifies the design of the MAS interaction space, since engineers no longer need to
design ad-hoc protocols for each resource in the environment (the relationship between each resource
and the artifact that wraps it concerns the internal design of the artifact and does not affect the
interaction space of the MAS).
        </p>
        <p>
          Among the possible choices, OWL-S seems a good candidate for several reasons. First, most of
today’s services are available as Web Services, and OWL-S is specially designed for that purpose.
Moreover, Web Services can be “implemented” by agents and artifacts as in simpA-WS [
          <xref ref-type="bibr" rid="ref20">23</xref>
          ], using
agents to model service users and providers, and artifacts as high-level mediating entities: so,
artifacts operate as interfaces, encapsulating the technology that enables interaction via standard
Web service protocols. As a further aspect, in principle OWL-S makes it possible to express the
artifact features – function description, usage interface, and operating instruction – in a natural
way via the service profile, the service model and the service grounding, respectively.
3.3
        </p>
      </sec>
      <sec id="sec-3-3">
        <title>Artifact Representation</title>
        <p>The mapping between the artifact features and OWL-S could be represented through an RDF
Graph as depicted in Figure 2.</p>
        <p>The service profile can be used to represent what the service offered by artifacts does, i.e. the
function description; a fragment of the OWL-S file relating to the service profile is shown in Figure 3.
The profile class represents the general profile of a service whose text description is contained in the
property called textDescription. The profile description can be accompanied by a list of properties
called serviceParameters: the actual parameter name, represented by serviceParameterName,
can be just a literal, or the URI of the process parameter (a property). Of course, only one text
description per profile is admitted, as stated by the value 1 in the howl : cardinalityi tag.</p>
        <p>As stated in the previous section, OWL-S introduces the process model as its own special
subclass of service model: so, the service model is expressed here as a process model. Correspondingly,
Figure 4 defines inputs, outputs, preconditions and results for each process model. The Parameter
class is the union of the Input and the Output classes; in the same way, results are represented in
as a class, too. hasPrecondition, instead, is a property of Process.
Finally, the usage interface that describes how to access the artifact is represented through
the service grounding, which takes the form of a collection of AtomicProcessGrounding instances
(see Figure 5) – one for each atomic process in the process model: this class relates elements of
an OWL-S atomic process to a WSDL specification (or any other specification). Each instance
of AtomicProcessGrounding must have exactly one value for owlsProcess: the other properties
depend on the specifics of the grounding type.
The MessageMap class maps the OWL-S parameters onto the parameters of the grounded
operation. In particular, InputMessageMap maps inputs to grounding specification (see Figure 6), while
OutputMessageMap maps outputs to grounding specification (see Figure 7); the owlsParamater
property specifies the OWL-S parameter. According to the model shown in Figure 2, the usage
interface also includes other artifact properties such as inspectability, controllability, malleability and
linkability. These properties enable agents to access artifact after selecting the service. Therefore,
their OWL-S representation depends on the language chosen for grounding.
3.4</p>
      </sec>
      <sec id="sec-3-4">
        <title>Discussion</title>
        <p>Let us report here some preliminary considerations about the use OWL-S for describing artifacts.
As a first aspect, using OWL-S to describe what the service provided by artifact does and how it
works in terms of preconditions, inputs, outputs and results is relatively simple: indeed, all we have
to do is to make the information that agents are usually supposed to know semantically readable.
However, the OWL-S description of how the service is actually carried out is not straightforward,
mainly because of the OWL-S’ inability to describe the information related to the physical
functioning of the service: this forces to include another language – WSDL being the most natural choice
in the Web service context – to add that kind of expressiveness. Yet, WSDL is definitely not the
most adequate choice for describing the services offered by artifacts, since it requires information
that simply do not fit the artifact case – e.g. the data and message types to be transmitted, the
supported operations, how the message is going to be transmitted, where the service is located, etc.
– because it cannot be generalised to any services provided by artifacts, given that the technical
details depend on the specific implementation.</p>
        <p>On the artifact side, it should be pointed out that there is currently no semantic language
similar to WSDL to describe the implementation details of a service: so, further investigation is
needed in order to evaluate possible candidates, or possibly define some new ad hoc language.</p>
        <p>
          Among the existing composing languages, BPEL [
          <xref ref-type="bibr" rid="ref2">2</xref>
          ], for instance, could be worth exploration,
despite some overlaps with OWL-S; this and other approaches are briefly considered below.
4
        </p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>OWL-S and Artifacts: a simple example</title>
      <p>As outlined in the previous section, OWL-S makes it possible to express the artifact features (the
function description, describing what the service does; the usage interface, describing how to access
it; and the operating instructions, explaining how the service works) via the service profile, the
service model and the service grounding, respectively.</p>
      <p>However, while expressing the service offered by an artifact via the OWL-S service profile notion
is relatively simple from the conceptual viewpoint, mapping the usage interface and the operating
instructions onto the service model and the service grounding notions calls for some hypotheses on
both the artifact model and its supporting infrastructure – i.e., about the environment where the
artifact itself lives and is called to operate.</p>
      <p>
        To this end, in the following we adopt TuCSoN tuple centres [
        <xref ref-type="bibr" rid="ref16">19</xref>
        ] as the the reference model
for (social) artifacts, and the TuCSoN technology [
        <xref ref-type="bibr" rid="ref19">22</xref>
        ] as the corresponding infrastructure. For the
sake of concreteness we consider the case of a flight tracking service, and present it from its OWL-S
description to its implementation onto the TuCSoN infrastructure.
4.1
      </p>
      <sec id="sec-4-1">
        <title>TuCSoN Infrastructure</title>
        <p>
          TuCSoN2 is an example of agent coordination infrastructure supporting a notion of social artifact,
namely a coordination artifact called tuple centre. Tuple centres are programmable tuple spaces,
that agents access by writing, reading, and consuming tuples – that is, ordered collections of
2TuCSoN technology is available as an open-source project at the TuCSoN Web site http://tucson.sourceforge.net.
heterogeneous information chunks – via simple communication operations (out, to insert a tuple;
rd, to read a tuple; in, to remove a tuple; tuples are accessed associatively. While the behaviour
of a tuple space in response to communication events is fixed, the behaviour of a tuple centre can
be programmed by defining a set of specification tuples (expressed in the ReSpecT language [
          <xref ref-type="bibr" rid="ref15">18</xref>
          ]),
which define how a tuple centre should react to incoming/outgoing communication events. As
a result, tuple centres can be seen as general-purpose customisable coordination artifacts, whose
behaviour can be dynamically specified, forged and adapted so as to automate coordination among
agents [
          <xref ref-type="bibr" rid="ref21">24</xref>
          ].
4.2
        </p>
      </sec>
      <sec id="sec-4-2">
        <title>Example</title>
        <p>In case of the flight tracking service, a tuple centre can be used to mediate the interaction between
the user requesting an information (delay and location) about a given flight and the agent charged
of retrieving this information.</p>
        <p>As a service provided by an artifact, the flight tracking service can be described through:
• a function description — here providing information about the delay and the location of a
selected flight;
• a usage interface — that is, the set of communication operations: here, out, to insert a tuple
in the tuple centre; rd, to read a tuple from a tuple centre; in, to remove a tuple from the
tuple centre;
• operating instructions — that is, the procedure to be followed by the user in order to obtain
the desired flight information; here, the user should first request the information by inserting a
request tuple such as flight request(flightNumber), then retrieve the desired information
by reading a response tuple such as flight status(flightNumber,Delay,Location).</p>
        <p>In the OWL-S model3, the tuple centre offering the flight tracking service is characterised by a
function description (what the service does), is described by some operating instructions (how the
service works), and supports a usage interface (how to access to the service).</p>
        <p>In turn, while the function description is provided through a service profile which contains a
simple text description (see Figure 8.a), the service model can be described in terms of inputs,
outputs, preconditions and effects. Figure 8.b depicts a fragment of the corresponding OWL-S
document which specifies the input (FlightNumber), the condition under which the information
will be provided (FlightNumberExists) and the effect (InfoProvided).</p>
        <p>Finally, in order to represent the usage interface, we need a language similar to WSDL for
describing both the type of actions (in, out, rd) and the correct sequence for using them and
3For the sake of shortness, here we show only a sketch of the full OWL-S documents (a specialisation of the
generic OWL-S documents presented in Section 3.3).
so obtain the information required. As explained in the previous section, further investigation is
needed in order to evaluate possible candidates among the existing languages or possibly define a
new ad hoc language.
5</p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>Related work</title>
      <p>
        The approach examined in this paper combines Semantic Web and the theory of coordination with
the aim of describing the services provided by artifacts via OWL-S. There are also other Web
Service composition languages, such as BPEL4WS [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] and WSCI [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ].
      </p>
      <p>Business Process Execution Language for Web Services (BPEL4WS) enables the specification
of executable business processes, covering also Web Services, and business process protocols in
terms of their execution logic or control flow. Executable business processes specify the behaviour
of individual participants within Web Service interactions and can be invoked directly, whereas
business process protocols abstract from internal behaviour to describe the messages exchanged
by the various Web Services within an interaction. The main drawback of BPEL’s approach is
that it enables only the composition of Web Services, while OWL-S also supports Web Services’
publication and discovery.</p>
      <p>
        Many other approaches could be used to express how a service is implemented in terms of
action protocol (the remaining part of operating instructions) and usage interface. For instance,
one could think of a semantic language for describing services offered by an artifact based on
the research area on semantic tuple spaces [
        <xref ref-type="bibr" rid="ref13 ref23">13, 26</xref>
        ]. As an alternative, non-semantic approaches
could be followed, such as [
        <xref ref-type="bibr" rid="ref25 ref26">29, 28</xref>
        ]: for instance, process algebra – a standard approach to describe
interaction protocols in the distributed systems field – could be adopted as a specification language
for operating instructions.
      </p>
      <p>
        Moreover, it could be interesting to study not only OWL-S but also the Web Service Modelling
Ontology (WSMO) [
        <xref ref-type="bibr" rid="ref22">25</xref>
        ], which shares with OWL-S the vision that ontologies are essential to support
automatic discovery, composition and inter-operation of Web services, although they greatly differ
in the approach to achieve these results [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Indeed, WSMO defines a conceptual framework within
which the ontologies developed through OWL-S have to be created. Futhermore, while OWL-S
does not make any distinction between the types of Web Services, WSMO specifies mediators –
that is, mapping programs aimed at solving the inter-operation problems between Web Services
(such as translation between ontologies, between the messages produced by a Web service and those
expected by another Web service, etc). In the process of mediator definition, WSMO introduced a
taxonomy of possible mediators that helps to define and classify the different tasks that mediators
are supposed to solve.
6
      </p>
    </sec>
    <sec id="sec-6">
      <title>Conclusions</title>
      <p>By drawing an analogy between the OWL-S model and the artifact notion, in this paper we exploited
OWL-S for describing the services offered by artifacts. We first presented the notion of artifacts
for MAS and how the services provided by such artifacts could be described; then, we presented
a preliminary proposal for describing the services provided by artifacts based on OWL-S and a
simple example of such a proposal. One conclusion is that OWL-S can be exploited rather easily to
express the function description – that is, what the service does – and the operating instructions
– that is, its preconditions, effects, inputs and outputs – but can not be directly exploited, in its
current version, for describing the usage interface which is strictly related to the implementation
of the service</p>
      <p>Accordingly, future work will be devoted on the one hand to explore semantics languages for the
description of usage interface; on the other, to compare OWL-S and WSMO for artifact description,
both from an abstract viewpoint and in concrete examples of artifacts.</p>
      <sec id="sec-6-1">
        <title>Markup for Web</title>
      </sec>
      <sec id="sec-6-2">
        <title>Services.</title>
        <p>[15] Jaceky´ Kopecky, Dumitru Roman, Matthew Moran, and Dieter Fensel. Semantic web
services grounding. aict-iciw, 0:127, 19–25 February 2006. International Conference on Internet
and Web Applications and International Conference on Internet and Web Applications and
Services.
[16] Deborah L. McGuinness and Frank van Harmelen. OWL Web Ontology Language Overview.</p>
        <p>http://www.w3.org/tr/owl-features, 2004.
[17] Andrea Omicini. Formal ReSpecT in the A&amp;A perspective. In Carlos Canal and Mirko Viroli,
editors, 5th International Workshop on Foundations of Coordination Languages and Software
Architectures (FOCLASA’06), pages 93–115, CONCUR 2006, Bonn, Germany, 31 August
2006. University of M´alaga, Spain. Proceedings.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>H. Peter</given-names>
            <surname>Alesso and Craig F. Smith. Developing Semantic Web Services. A. K. Peters</surname>
          </string-name>
          , Ltd.,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>Tony</given-names>
            <surname>Andrews</surname>
          </string-name>
          , Francisco Curbera, Hitesh Dholakia, Yaron Goland, Johannes Klein, Frank Leymann, Kevin Liu, Dieter Roller,
          <string-name>
            <given-names>Doug</given-names>
            <surname>Smith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Satish</given-names>
            <surname>Thatte</surname>
          </string-name>
          , Ivana Trickovic, and
          <string-name>
            <given-names>Sanjiva</given-names>
            <surname>Weerawarana</surname>
          </string-name>
          .
          <article-title>Business Process Execution Language for Web Services</article-title>
          . http://www128.ibm.com/developerworks/library/specification/ws-bpel/.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>Anupriya</given-names>
            <surname>Ankolekar.</surname>
          </string-name>
          OWL-S: Semantic http://www.daml.org/services/owl- s/1.0/owl-s.pdf,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>Anupriya</given-names>
            <surname>Ankolekar</surname>
          </string-name>
          , David Martin,
          <string-name>
            <given-names>Deborah McGuinness</given-names>
            ,
            <surname>Sheila</surname>
          </string-name>
          <string-name>
            <surname>McIlraith</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Massimo</given-names>
            <surname>Paolucci</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Bijan</given-names>
            <surname>Parsia</surname>
          </string-name>
          .
          <article-title>Owl-s' Relationship to Selected Other Technologies</article-title>
          . http://www.w3.org/Submission/2004/SUBM-OWL
          <string-name>
            <surname>-S-</surname>
          </string-name>
          related-
          <volume>20041122</volume>
          /.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>Assaf</given-names>
            <surname>Arkin</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Sid</given-names>
            <surname>Askary</surname>
          </string-name>
          , Scott Fordin, Wolfgang Jekeli, Kohsuke Kawaguchi, David Orchard,
          <string-name>
            <given-names>Stefano</given-names>
            <surname>Pogliani</surname>
          </string-name>
          , Karsten Riemer, Susan Struble, Pal Takacsi-Nagy,
          <string-name>
            <given-names>Ivana</given-names>
            <surname>Trickovic</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Sinisa</given-names>
            <surname>Zimek</surname>
          </string-name>
          . Web Services Choreography Interface. http://www.w3.org/TR/wsci/,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>Tim</given-names>
            <surname>Bray</surname>
          </string-name>
          , Jean Paoli,
          <string-name>
            <given-names>C. M.</given-names>
            <surname>Sperberg-McQueen</surname>
          </string-name>
          ,
          <string-name>
            <given-names>Eve</given-names>
            <surname>Maler</surname>
          </string-name>
          , and
          <string-name>
            <given-names>Franois</given-names>
            <surname>Yergeau</surname>
          </string-name>
          .
          <article-title>Extensible Markup Language (XML) 1.0 (Third Edition)</article-title>
          . http://www.w3.org/TR/2004/REC-xml20040204.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>Dan</given-names>
            <surname>Brickley</surname>
          </string-name>
          and
          <string-name>
            <given-names>R.V.</given-names>
            <surname>Guha</surname>
          </string-name>
          .
          <source>Rdf Vocabulary Description Language 1</source>
          .0:
          <string-name>
            <given-names>RDF</given-names>
            <surname>Schema</surname>
          </string-name>
          . http://www.w3.org/tr/rdf-schema.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>Christoph</given-names>
            <surname>Bussler</surname>
          </string-name>
          , John Davies, Dieter Fensel, and Rudi Studer, editors.
          <source>The Semantic Web: Research and Applications</source>
          , volume
          <volume>3053</volume>
          of Lecture Notes in Computer Science, ESWS
          <year>2004</year>
          , Heraklion, Crete, Greece, may
          <year>2004</year>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>Liliana</given-names>
            <surname>Cabral</surname>
          </string-name>
          , John Domingue, Enrico Motta, Terry Payne, and
          <string-name>
            <given-names>Farshad</given-names>
            <surname>Hakimpour</surname>
          </string-name>
          .
          <article-title>Approaches to semantic web services:an overview and comparisons</article-title>
          .
          <source>In Christoph Bussler</source>
          , John Davies, Dieter Fensel, and Rudi Studer, editors,
          <source>The Semantic Web: Research and Applications</source>
          , volume
          <volume>3053</volume>
          of Lecture Notes in Computer Science, pages
          <fpage>225</fpage>
          -
          <lpage>239</lpage>
          . Springer,
          <year>2004</year>
          . First European Semantic Web Symposium, ESWS 2004 Heraklion, Crete, Greece,.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Erik</surname>
            <given-names>Christensen</given-names>
          </string-name>
          , Francisco Curbera, Greg Meredith, and
          <string-name>
            <given-names>Sanjiva</given-names>
            <surname>Weerawarana</surname>
          </string-name>
          .
          <source>Web Services Description Language (WSDL) 1.1. Technical report, W3C</source>
          . http://www.w3.org/TR/wsdl,
          <year>2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>FIPA</surname>
          </string-name>
          .
          <article-title>Fipa-acl</article-title>
          . http://www.fipa.org/specs/fipa00061/index.html.
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Martin</surname>
            <given-names>Gudgin</given-names>
          </string-name>
          , Marc Hadley, Noah Mendelsohn,
          <string-name>
            <surname>Jean-Jacques Moreau</surname>
          </string-name>
          , and Henrik Frystyk Nielsen.
          <article-title>Simple Object Access Protocol</article-title>
          . http://www.w3.org/TR/soap12-part1/,
          <year>2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Deepali</surname>
            <given-names>Khushraj</given-names>
          </string-name>
          , Ora Lassila, and
          <article-title>Tim Finin. stuples: Semantic tuple spaces</article-title>
          .
          <source>In 1st Annual International Conference on Mobile and Ubiquitous Systems: Networking and Services (MobiQuitous</source>
          <year>2004</year>
          ), pages
          <fpage>267</fpage>
          -
          <lpage>277</lpage>
          ,
          <year>MobiQuitous 2004</year>
          , Boston, Massachusetts, USA,
          <year>August 2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <given-names>Graham</given-names>
            <surname>Klyne</surname>
          </string-name>
          and
          <string-name>
            <given-names>Jeremy</given-names>
            <surname>Carroll</surname>
          </string-name>
          .
          <article-title>Resource Description Framework (RDF): Concepts and Abstract Syntax</article-title>
          . http://www.w3.org/rdf,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [18]
          <string-name>
            <given-names>Andrea</given-names>
            <surname>Omicini</surname>
          </string-name>
          and
          <string-name>
            <given-names>Enrico</given-names>
            <surname>Denti</surname>
          </string-name>
          .
          <source>Formal ReSpecT. Electronic Notes in Theoretical Computer Science</source>
          ,
          <volume>48</volume>
          :
          <fpage>179</fpage>
          -
          <lpage>196</lpage>
          ,
          <year>June 2001</year>
          . Declarative Programming -
          <source>Selected Papers from AGP</source>
          <year>2000</year>
          ,
          <string-name>
            <given-names>La</given-names>
            <surname>Habana</surname>
          </string-name>
          , Cuba,
          <fpage>4</fpage>
          -
          <issue>6</issue>
          <year>December 2000</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [19]
          <string-name>
            <given-names>Andrea</given-names>
            <surname>Omicini</surname>
          </string-name>
          and
          <string-name>
            <given-names>Enrico</given-names>
            <surname>Denti</surname>
          </string-name>
          .
          <article-title>From tuple spaces to tuple centres</article-title>
          .
          <source>Science of Computer Programming</source>
          ,
          <volume>41</volume>
          (
          <issue>3</issue>
          ):
          <fpage>277</fpage>
          -
          <lpage>294</lpage>
          ,
          <year>November 2001</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [20]
          <string-name>
            <surname>Andrea</surname>
            <given-names>Omicini</given-names>
          </string-name>
          , Alessandro Ricci, and
          <string-name>
            <given-names>Mirko</given-names>
            <surname>Viroli</surname>
          </string-name>
          . Agens Faber:
          <article-title>Toward a theory of artefacts for MAS</article-title>
          .
          <source>Electronic Notes in Theoretical Computer Sciences</source>
          ,
          <volume>150</volume>
          (
          <issue>3</issue>
          ):
          <fpage>21</fpage>
          -
          <lpage>36</lpage>
          , 29 May
          <year>2006</year>
          . 1st International Workshop “Coordination and Organization” (CoOrg
          <year>2005</year>
          ),
          <source>COORDINATION</source>
          <year>2005</year>
          , Namur, Belgium, 22
          <article-title>April 2005</article-title>
          . Proceedings.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [21]
          <string-name>
            <surname>Andrea</surname>
            <given-names>Omicini</given-names>
          </string-name>
          , Alessandro Ricci, and
          <string-name>
            <given-names>Mirko</given-names>
            <surname>Viroli</surname>
          </string-name>
          .
          <article-title>Coordination artifacts as first-class abstractions for MAS engineering: State of the research</article-title>
          . In Alessandro F. Garcia, Ricardo Choren, Carlos Lucena, Paolo Giorgini, Tom Holvoet, and Alexander Romanovsky, editors,
          <source>Software Engineering for Multi-Agent Systems IV: Research Issues and Practical Applications</source>
          , volume
          <volume>3914</volume>
          <source>of LNAI</source>
          , pages
          <fpage>71</fpage>
          -
          <lpage>90</lpage>
          . Springer, April
          <year>2006</year>
          . Invited Paper.
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [22]
          <string-name>
            <given-names>Andrea</given-names>
            <surname>Omicini</surname>
          </string-name>
          and
          <string-name>
            <given-names>Franco</given-names>
            <surname>Zambonelli</surname>
          </string-name>
          .
          <article-title>Coordination for Internet application development</article-title>
          .
          <source>Autonomous Agents and Multi-Agent Systems</source>
          ,
          <volume>2</volume>
          (
          <issue>3</issue>
          ):
          <fpage>251</fpage>
          -
          <lpage>269</lpage>
          ,
          <year>September 1999</year>
          .
          <article-title>Special Issue: Coordination Mechanisms for Web Agents</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [23]
          <string-name>
            <surname>Alessandro</surname>
            <given-names>Ricci</given-names>
          </string-name>
          , Claudio Buda, Nicola Zaghini, Antonio Natali, Mirko Viroli, and
          <string-name>
            <given-names>Andrea</given-names>
            <surname>Omicini</surname>
          </string-name>
          . simpA-WS:
          <article-title>An agent-oriented computing technology for WS-based SOA applications</article-title>
          . In Flavio De Paoli, Antonella Di Stefano, Andrea Omicini, and Corrado Santoro, editors, WOA 2006 -
          <article-title>Dagli oggetti agli agenti: sistemi grid</article-title>
          , p2p e self-*, pages
          <fpage>1</fpage>
          -
          <lpage>3</lpage>
          , Catania, Italy,
          <fpage>26</fpage>
          -
          <issue>27</issue>
          <year>September 2006</year>
          . Technical University of Aachen.
        </mixed-citation>
      </ref>
      <ref id="ref21">
        <mixed-citation>
          [24]
          <string-name>
            <surname>Alessandro</surname>
            <given-names>Ricci</given-names>
          </string-name>
          , Andrea Omicini, and
          <string-name>
            <given-names>Enrico</given-names>
            <surname>Denti</surname>
          </string-name>
          .
          <article-title>Activity Theory as a framework for MAS coordination</article-title>
          . In Paolo Petta, Robert Tolksdorf, and Franco Zambonelli, editors, Engineering Societies in the Agents World III, volume
          <volume>2577</volume>
          <source>of LNCS</source>
          , pages
          <fpage>96</fpage>
          -
          <lpage>110</lpage>
          . Springer-Verlag,
          <year>April 2003</year>
          . 3rd International Workshop (ESAW
          <year>2002</year>
          ), Madrid, Spain,
          <fpage>16</fpage>
          -
          <issue>17</issue>
          <year>September 2002</year>
          . Revised Papers.
        </mixed-citation>
      </ref>
      <ref id="ref22">
        <mixed-citation>
          [25]
          <string-name>
            <surname>Dumitru</surname>
            <given-names>Roman</given-names>
          </string-name>
          , Uwe Keller, Holger Lausen, Jos de Bruijn, Rubn Lara, Michael Stollberg, Axel Polleres, Cristina Feier, Christoph Bussler, and
          <string-name>
            <given-names>Dieter</given-names>
            <surname>Fensel</surname>
          </string-name>
          .
          <source>Web Service Modeling Ontology</source>
          . volume
          <volume>1</volume>
          , pages
          <fpage>77</fpage>
          -
          <lpage>106</lpage>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref23">
        <mixed-citation>
          [26]
          <string-name>
            <given-names>Robert</given-names>
            <surname>Tolksdorf</surname>
          </string-name>
          and
          <string-name>
            <given-names>Dirk</given-names>
            <surname>Glaubitz</surname>
          </string-name>
          .
          <article-title>Xmlspaces for coordination in web-based systems</article-title>
          .
          <source>In 10th IEEE International Workshops on Enabling Technologies (WETICE</source>
          <year>2001</year>
          ), pages
          <fpage>322</fpage>
          -
          <lpage>327</lpage>
          , WETICE 2001, Washington, DC, USA, august
          <year>2001</year>
          . IEEE Computer Society.
        </mixed-citation>
      </ref>
      <ref id="ref24">
        <mixed-citation>
          [27]
          <string-name>
            <surname>Mirko</surname>
            <given-names>Viroli</given-names>
          </string-name>
          , Andrea Omicini, and
          <string-name>
            <given-names>Alessandro</given-names>
            <surname>Ricci</surname>
          </string-name>
          .
          <article-title>Engineering MAS environment with artifacts</article-title>
          . In Danny Weyns,
          <string-name>
            <given-names>H. Van Dyke</given-names>
            <surname>Parunak</surname>
          </string-name>
          , and Fabien Michel, editors,
          <source>2nd International Workshop “Environments for Multi-Agent Systems” (E4MAS</source>
          <year>2005</year>
          ), pages
          <fpage>62</fpage>
          -
          <lpage>77</lpage>
          , AAMAS 2005, Utrecht,
          <source>The Netherlands, 26 July</source>
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref25">
        <mixed-citation>
          [28]
          <string-name>
            <given-names>Mirko</given-names>
            <surname>Viroli</surname>
          </string-name>
          and
          <string-name>
            <given-names>Alessandro</given-names>
            <surname>Ricci</surname>
          </string-name>
          .
          <article-title>Instructions-based semantics of agent mediated interaction</article-title>
          . In Nicholas R. Jennings, Carles Sierra, Liz Sonenberg, and Milind Tambe, editors,
          <source>3rd international Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS</source>
          <year>2004</year>
          ), volume
          <volume>1</volume>
          , pages
          <fpage>102</fpage>
          -
          <lpage>110</lpage>
          , AAMAS 2004, New York, USA, jul
          <year>2004</year>
          . ACM.
        </mixed-citation>
      </ref>
      <ref id="ref26">
        <mixed-citation>
          [29]
          <string-name>
            <surname>Mirko</surname>
            <given-names>Viroli</given-names>
          </string-name>
          , Alessandro Ricci, and
          <string-name>
            <given-names>Andrea</given-names>
            <surname>Omicini</surname>
          </string-name>
          .
          <article-title>Operating instructions for intelligent agent coordination</article-title>
          .
          <source>The Knowledge Engineering Review</source>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>