2 SERVICE ONTOLOGY
2.1 Case Study
The example will illustrate the different definitions
proposed in this paper. We consider a distributed
system which employs ticket agents. Each agent is
situated in a sub-system. Agents attempt to achieve
some services for distributing, selling, buying, book-
ing tickets from a range of sources. They may com-
municate and exchange services on the web. We
will treat a case where an agent (Agent
1
) attempts to
achieve a service of buying a ticket to go from Annecy
(France) to Barcelona (Spain). Once the depart and
the destination are identified, agent may obtain the
itinerary, but how to do if the agent can not achieve
the service of obtaining the itinerary? We will give
details about this problem in the next sections.
2.2 Service Notion
In (Kitamura et al., 2004), authors denoted a function-
ality of a component as a “verb+noun” style for rep-
resenting the components activities. Following this
approach, we associate with each service some pos-
sible actions in order to fulfill the intended service
(Hertzberg and Thiebaux, 1994), (Lifschitz, 1993).
So, we describe each service as a tuple: (Action verb,
{Property, Object}), where the action verb acts on
the object’s property. For each object, corresponds
a type defining its classification domain. We denote
a type an “Object Type” and the object itself speci-
fied by an identity is denoted “Object Token”. The
tuple {Property, Object} is called a context, when the
object is an object type, we call the context “Context
Type”, otherwise, “Context Token”.
Definition 1 “Context Type (respectively, Context
Token)”
A context type ξ
i
(resp, context token) is a tuple:
ξ
i
de f
≡ (p, {ψ
1
, ψ
2
, ...ψ
n
}). Where p is a property, ψ
1
,
ψ
2
, ... ψ
n
is a set of object types (resp, object tokens).
Following the example, we suppose that the dis-
tributed system is represented by two ticket agents.
Thus, we propose some context types to the agent
Agent
1
:
ξ
1
= (Departure, Trip), ξ
2
= (Destinaton, Trip),
ξ
3
= (Date, Trip), ξ
4
= (Itinerary,Trip), and
ξ
5
= (Price, Trip).
Context tokens are not limited to:
c
1
= (Annecy, Flight − Trip), c
2
=
(Barcelona, Flight − Trip), c
3
= (July − 22 −
2007, Flight − Trip), c
4
= (Itinerary
1
, Flight −
Trip), and c
5
= (200euros, Flight − Trip).
Remark: We propose the same context types and
tokens to Agent
2
replacing ξ by ξ
′
and c by c
′
.
The problem of finding a formal structure to the
notion of service is treated in several researches. In
(Umeda et al., 1996), author suggested a represen-
tation of the form “To do X” for intended services.
Following this principles, we define a service such
as:
Definition 2 “Service Type (resp, Service Token)”
A Service type (resp, Service token), denoted by γ
i
, is
defined as a pair:
γ
i
de f
≡ (a, {ξ
1
, ..., ξ
k
}). Where a, is an action verb, Ξ,
a non-empty set of context types (resp, context tokens)
and {ξ
1
, ..., ξ
k
} ⊆ Ξ.
According to our example, there are basically some
primitive service types. Some are given to Agent
1
:
γ
1
= (to
identify, {ξ
1
}), γ
2
= (to identify, {ξ
2
}),
γ
3
= (to
identify, {ξ
3
}), γ
4
= (to obtain, {ξ
4
})
and γ
5
= (to
obtain, {ξ
5
})
Some service tokens for Agent
1
:
θ
1
= (to
identify, {c
1
}, θ
2
= (to identify, {c
2
},
θ
3
= (to
identify, {c
3
}, θ
4
= (to obtain, {c
4
}
and θ
5
= (to
obtain, {c
5
}
Remark: As a special case, we propose the same ser-
vice types and tokens to Agent
2
replacing γ by γ
′
and
θ by θ
′
.
2.3 Service Ontology
An ontology is a description of the concepts and re-
lationships between them. In our context, ontology is
described by:
1. Concepts: We associate service types with ontol-
ogy concepts.
2. Relations: An ontology is related to a Gentzen
system, which is a deduction system expressed by
the first order logic. The notion of sequent is cen-
tral in Gentzen system. Given a set S, a sequent of
S is a pair hX,Yi of subsets of S. A binary relation
⊢ between subsets of S is called a consequence
relation on S. The syntax of sequent is X ⊢ Y
1
.
Sequents will represent subsets of ontology con-
cepts (service types), ⊢ will express the functional
dependency between these services.
Definition 3 “Functional Relation ⊢”
Let C be a non empty set of ontology concepts.
The binary relation ⊢ between subsets of C is the
Gentzen consequence relation on C, such that:
1
The notation X ⊢ Y may be written by x
i
, x
j
, .. ⊢
y
a
, y
b
, .., where x
i
, x
j
, .. ∈ X and x
i
, x
j
, .. ∈ Y. The comma
on the left is interpreted like a conjunction, the comma on
the right like a disjunction
ICSOFT 2007 - International Conference on Software and Data Technologies
260