Vagan Terziyan

1 / 83
About This Presentation
Title:

Vagan Terziyan

Description:

Transactions with Mobile services in Semantic Web. Agent-Based Service Integration ... resources, services, other metadata. Client-Side Transaction Monitor. ... – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 84
Provided by: vterz

less

Transcript and Presenter's Notes

Title: Vagan Terziyan


1
E-Services and Transactions in Semantic Web
  • Vagan Terziyan
  • MIT Department, University of Jyvaskyla /
  • / AI Department, Kharkov National University of
    Radioelectronics
  • vagan_at_it.jyu.fi
  • http//www.cs.jyu.fi/ai/vagan
  • 358 14 260-4618

2
Managing Transactions with Distributed
Web-Services and providing Integrated Service to
a User - are among the basic abilities of an
Intelligent Agent
3
Contents
  • Transactions with Mobile services in Semantic Web
  • Agent-Based Service Integration

4
Transaction with Mobile Services in Semantic Web
Vagan Terziyan University of Jyvaskyla,
Finland e-mail vagan_at_it.jyu.fi
5
Transactions in Databases
  • A transaction is a sequence of database actions
    which must either all be done, or none of them
    must be done
  • Another view of a transaction is that it is an
    action, or sequence of actions, that takes the
    database from one consistent state to another

6
M-commerce transaction
M-commerce transaction Any type of transaction
of an economic value having at least at one end a
mobile terminal and thus using the
telecommunications network for communication with
the e-commerce infrastructure Mobile e-commerce
e-commerce based on m-commerce transactions
7
Basic (ACID) Transactional Properties
  • Atomicity
  • Consistency
  • Isolation
  • Durability

8
Atomicity
  • Transaction is atomic if either all operations
    necessary for preserving e-commerce atomicity are
    executed or all executed operations will become
    compensated.
  • With money atomic protocols, funds are
    transferred from one party to another without the
    possibility of the money remaining in the middle.
  • Goods-atomic protocols are such that a good is
    received if and only if the money is transferred.
  • Certified delivery protocols allow both a
    merchant and a customer to prove exactly which
    goods were delivered.

9
Consistency
Transactions must preserve consistency at various
levels. For instance, a customer should not be
allowed to draw funds from an account if this
would result into a negative balance.
10
Isolation
Isolation means that various steps of a
transaction do not interfere with steps of other
transactions.
11
Durability
Durability means that once a transaction
completes its execution, its results become
permanent even in the presence of
failures. Committed by a transaction data is
saved by the system such that, even in the event
of a failure and system restart, the data is
available in its correct state.
12
Server-Side Transaction Monitor
Web resource / service
Server
Client
wireless
Web resource / service
TM
Transaction Service
Server
13
Server-Side Transaction MonitorPositive (1) Less
wireless (sub)transactions
Web resource / service
Server
Client
wireless
!
Web resource / service
TM
Transaction Service
Server
14
Server-Side Transaction MonitorPositive (2) Rich
ontological support
Web resource / service
Server
Client
wireless
Rich ontology of resources, services, other
metadata
Web resource / service
TM
Transaction Service
Server
15
Server-Side Transaction MonitorPositive (3)
Smaller crash, disconnection vulnerability
Web resource / service
Server
Client
!
!
OK
wireless
Web resource / service
TM
Transaction Service
Server
16
Server-Side Transaction MonitorNegative (1) Pure
customers trust
Web resource / service
Server
Client
wireless
Customers private data
Web resource / service
TM
Transaction Service
Server
17
Server-Side Transaction MonitorNegative (2) Lack
of customers awareness and control
Web resource / service
Server
Client
wireless
Transaction data
Transaction online control
Web resource / service
TM
Transaction Service
Server
18
Server-Side Transaction MonitorNegative (3)
Problematic TMs adaptation to the customer
Web resource / service
Server
Client
wireless
Public TM
Web resource / service
TM
Transaction Service
Server
19
Example Server-based transactions for location
based application
6
4
Application Server
5
Positioning Service
3
10
9
2
Client
7
8
1
11
Content providers
12
20
Client-Side Transaction Monitor
TM
Web resource / service
wireless
Client
Server
wireless
Web resource / service
Server
21
Client-Side Transaction Monitor. Positive (1)
Customers firm trust
TM
Web resource / service
wireless
Client
Server
Customers private data
wireless
Web resource / service
Server
22
Client-Side Transaction Monitor. Positive (2)
Customers awareness and involvement
TM
Web resource / service
wireless
Transaction online control
Client
Server
Transaction data
wireless
Web resource / service
Server
23
Client-Side Transaction Monitor. Positive (3)
Better TMs adaptation to the customer
TM
Web resource / service
wireless
Client
Server
Personal TM
wireless
Web resource / service
Server
24
Client-Side Transaction Monitor. Negative (1)
More wireless (sub)transactions
TM
Web resource / service
wireless
Client
Server
wireless
!
Web resource / service
Server
25
Client-Side Transaction Monitor. Negative (2)
Restricted ontological support
TM
Web resource / service
wireless
Client
Server
Restricted ontology of resources, services, other
metadata
wireless
Web resource / service
Server
26
Client-Side Transaction Monitor. Negative (3)
High crash, disconnection vulnerability
TM
Web resource / service
wireless
Client
Server
wireless
Web resource / service
Server
27
Terminology
  • e-Service Web-Service, which assumes also an
    online payment
  • e-Service is a Web-Service in e- Commerce

28
Ontology-Based Client-Side Transaction Monitor
  • This design is based on assumption that TM is an
    independent mobile terminal application, which
    can integrate different distributed external
    e-services by managing appropriate transactional
    processes. For that the ontology-based framework
    for transaction management is used so that the
    Transaction Monitor will be able to manage
    transaction across multiple e-services.

29
The conceptual scheme of the ontology-based
transaction management
30
Basic definitions Action
Let an action be a single client-server
query-response session between the mobile
terminal (hereinafter - terminal) and the
e-service provider (hereinafter - service), which
has following structure - actions ID - Ids of
p input parameters for the action, specified at
the terminal to create a query - Ids of q output
parameters of the action, which the terminal
receives as the result to its query.
31
Basic definitions Subtransaction
Subtransaction is a vector of one or more actions
between a terminal and the service and
appropriate states managed by the service with
definitely stated final goal and common memory of
parameters.
32
Basic definitions Transaction
Transaction is a vector of one or more
subtransactions with the same terminal and
possibly different services managed by the
terminal, with definitely stated final goal and
common memory of parameters.
.
33
Service Tree
Service tree is a tree-like structure of the set
of subtransactions, which a service can offer to
his clients and which is used by a service to
manage subtransactions with clients. Action of
interest, toned for every subtransaction in the
service tree is such an action, which outcome is
in particular interest of a customer and has an
economic value.
Service tree as a collection of subtransactions
offered by the Service to its customers. In the
rectangles together with the Id of an action
there is also Id of a state, into which a
subtransaction is coming after performing this
action
34
Constants and Ontologies
  • basic constants, which define Ids of the terminal
    and services used, basic screens for the
    interface, total numbers of services, actions and
    parameters, which Transaction Monitor is
    operating with
  • service atomic actions ontologies define basic
    actions with their input and output, from which
    every service can be composed, and which are used
    as a common procedural language between a client
    and a service (include always LOGIN and LOGOUT
    actions ontologies)
  • parameter ontologies describe parameters, which
    can be used in actions, by providing their Ids,
    default values and types (or schemas), and which
    are actually a common declarative language
    between a client and a service.

35
Basic constants
36
Ontologies
37
Variables
  • control variables have sense only for a
    Transaction Monitor and are used to manage
    different states of the terminal during going-on
    transactions, subtransactions and actions
  • working variables are used to manage parameters'
    states and provide common memory for different
    subtransactions, which can be run with different
    services
  • billing variables are used to manage billing data
    in the Transaction Monitor. The terminal will
    collect bills separately for every service adding
    online price for appropriate service actions to
    it, when it is requested.

38
Service Actions
service query
service response
39
An Example of Action
40
An Example of Action
41
LBS example ontology for the LOCATE_BY_ID action
42
LBS example ontology for the LOCATE_BY_ADDRESS
action
43
LBS example ontology for the GET_MAP action
44
LBS example ontology for the GET_INFO action
45
LBS example service tree for the Positioning
Service
46
LBS example service tree for the Location Based
Service
47
LBS example Case when a user locates himself and
submits coordinates to LBS
48
ltQuery Query_ID"01-03-2002_123357"
Type"Service" To_Service"Positioning_Servi
ce" From_Terminal"0501234567"
Terminal_State"S0" gt ltAction
ID"LOGIN"/gt ltInput_Parametersgt ltParameter
ID"user_ID Type"text Value"vagan"/gt
ltParameter ID"password Type"text
Value"4321"/gt lt/Input_Parametersgt lt/Querygt
Login Query
Positioning Service
Terminal
49
ltResponse Response_ID"01-03-2002_123442
Type"Service To_Query"01-03-2002_123357
To_Terminal"0501234567 From_Service"Positio
ning_Service Terminal_State"S1" gt
ltAction ID"LOGIN"/gt ltOutput_Parametersgt
ltParameter ID"login_reply Type"binary
Value"OK"/gt lt/Output_Parametersgt
ltPrice_for_Action Currency"EURO" Value"0.0"/gt
ltBill_Recent_Value Currency"EURO" Value"0.
0"/gt ltActions_Allowedgt ltAction
ID"LOGOUT"/gt ltAction ID"LOCATE_BY_ID"/gt ltActio
n ID"LOCATE_BY_ADDRESS"/gt
lt/Actions_Allowed gt lt/Responsegt
Login Response
Positioning Service
Terminal
50
ltQuery Query_ID"01-03-2002_123453"
Type"Service" To_Service"Positioning_
Service" From_Terminal"0501234567"
Terminal_State"S1" gt ltAction
ID"LOCATE_BY_ADDRESS"/gt ltInput_Parametersgt
ltParameter ID"street_number Type"integer
Value"43"/gt ltParameter ID"street_name
Type"text Value"Nokatu"/gt
ltParameter ID"city_name" Type"text
Value"Jyvaskyla"/gt ltParameter ID"country_n
ame Type"text Value"Finland"/gt
lt/Input_Parametersgt lt/Querygt
Locate by Address Query
Positioning Service
Terminal
51
ltResponse Response_ID "01-03-2002_123514
Type "Service" To_Query
"01-03-2002_123453 To_Terminal "0501234567
" From_Service "Positioning_Service
Terminal_State "S1" gt ltAction
ID"LOCATE_BY_ADDRESS"/gt ltOutput_Parametersgt
ltParameter ID"latitude" Type"intege
r" Value"54321"/gt ltParameter
ID"longitude" Type"integer" Value"98765"/gt
lt/Output_Parametersgt ltPrice_for_Action Currency
"EURO" Value"0.23"/gt ltBill_Recent_Value Currency
"EURO" Value"0.23"/gt ltActions_Allowedgt ltAc
tion ID"LOGOUT"/gt ltAction ID"LOCATE_BY_ID"/gt lt
Action ID"LOCATE_BY_ADDRESS"/gt
lt/Actions_Allowed gt lt/Responsegt
Locate by Address Response
Positioning Service
Terminal
52
ltQuery Query_ID"01-03-2002_123520"
Type"Service" To_Service"Positioning_Servi
ce" From_Terminal"0501234567"
Terminal_State"S1" gt ltAction
ID"LOGOUT"/gt ltInput_Parametersgt
ltParameter ID"user_ID Type"text
Value"vagan"/gt lt/Input_Parametersgt lt/Quer
ygt
Logout Query
Positioning Service
Terminal
53
ltResponse Response_ID "01-03-2002_123525
Type "Service" To_Query
"01-03-2002_123520 To_Terminal
"0501234567" From_Service "Positioning_Servic
e Terminal_State "S0" gt ltAction
ID"LOGOUT"/gt ltOutput_Parametersgt
ltParameter ID"logout_reply Type"binary
Value"OK"/gt lt/Output_Parametersgt
ltPrice_for_Action Currency"EURO"
Value"0.0"/gt ltBill_Recent_Value Currency"E
URO" Value"0.23"/gt ltActions_Allowedgt
ltAction ID"LOGIN"/gt
lt/Actions_Allowed gt lt/Responsegt
Logout Response
Positioning Service
Terminal
54
ltQuery Query_ID"01-03-2002_123547"
Type"Service" To_Service"Location_Based_Ser
vice" From_Terminal"0501234567"
Terminal_State"S0" gt ltAction
ID"LOGIN"/gt ltInput_Parametersgt
ltParameter ID"user_ID Type"text
Value"vagan"/gt ltParameter
ID"password Type"text" Value"1234"/gt lt/Input_
Parametersgt lt/Querygt
Login Query
Location-Based Service
Terminal
55
ltResponse Response_ID "01-03-2002_123601 T
ype "Service" To_Query "01-03-2002_123547
To_Terminal "0501234567"
From_Service "Location_Based_Service Terminal_St
ate "S1" gt ltAction ID"LOGIN"/gt
ltOutput_Parametersgt ltParameter
ID"login_reply Type"binary" Value"OK"/gt
lt/Output_Parametersgt ltPrice_for_Action Cu
rrency"USD" Value"0.0"/gt
ltBill_Recent_Value Currency"USD" Value"0.0"/gt
ltActions_Allowedgt ltAction
ID"LOGOUT"/gt ltAction ID"GET_MAP"/gt
lt/Actions_Allowed gt lt/Responsegt
Login Response
Location-Based Service
Terminal
56
ltQuery Query_ID"01-03-2002_123907"
Type"Service" To_Service"Location_Based_Se
rvice" From_Terminal"0501234567"
Terminal_State"S1" gt ltAction
ID"GET_MAP"/gt ltInput_Parametersgt
ltParameter ID "latitude Type
"integer Value"54321"/gt
ltParameter ID "longitude Type "integer
Value"98765"/gt lt/Input_Parametersgt lt/Quer
ygt
Get Map Query
Location-Based Service
Terminal
57
ltResponse Response_ID "01-03-2002_12413
4 Type "Service"
To_Query "01-03-2002_123907
To_Terminal "0501234567"
From_Service "Location_Based_Service
Terminal_State "S2" gt ltAction
ID"GET_MAP"/gt ltOutput_Parametersgt
ltParameter ID "map Type "GML
Value "GML Data"/gt lt/Output_Parametersgt
ltPrice_for_Action Currency"USD" Value"0.15
"/gt ltBill_Recent_Value Currency"USD" Value
"0.15"/gt ltActions_Allowedgt
ltAction ID"LOGOUT"/gt ltAction
ID"GET_MAP"/gt ltAction
ID"GET_INFO"/gt lt/Actions_Allowed
gt lt/Responsegt
Get Map Response
Location-Based Service
Terminal
58
ltQuery Query_ID"01-03-2002_125012"
Type"Service" To_Service"Location_Based_Ser
vice" From_Terminal"0501234567"
Terminal_State"S2" gt ltAction
ID"GET_INFO"/gt ltInput_Parametersgt
ltParameter ID "point_of_interest
Type"text Value"Alba_Hotel"/gt
lt/Input_Parametersgt lt/Querygt
Get Info Query
Location-Based Service
Terminal
59
ltResponse Response_ID "01-03-2002_125104
Type "Service To_Query "01-03-2002_125012"
To_Terminal "0501234567 From_Service
"Location_Based_Service Terminal_State "S2" gt
ltAction ID"GET_INFO"/gt ltOutput_Parametersgt
ltParameter ID"point_address"
Type"text" Value"Mattilaniemi A1"/gt
ltParameter ID"point_phone"
Type"text" Value"0509876543"/gt
ltParameter ID"point_info Type"text
Value"Rooms available

single (60 EURO), double (80 EURO)"/gt
lt/Output_Parametersgt ltPrice_for_Action Currency
"USD" Value"0.10"/gt ltBill_Recent_Value Currency
"USD" Value"0.25"/gt ltActions_Allowedgt
ltAction ID"LOGOUT"/gt ltAction
ID"GET_MAP"/gt ltAction ID"GET_INFO"/gt lt/Act
ions_Allowed gt lt/Responsegt
Get Info Response
Terminal
Location-Based Service
60
ltQuery Query_ID"01-03-2002_125803"
Type"Service" To_Service"Location-Based_Se
rvice" From_Terminal"0501234567"
Terminal_State"S2" gt ltAction
ID"LOGOUT"/gt ltInput_Parametersgt
ltParameter ID"user_ID Type"text
Value"vagan"/gt lt/Input_Parametersgt lt/Quer
ygt
Logout Query
Location-Based Service
Terminal
61
ltResponse Response_ID
"01-03-2002_125855 Type "Service"
To_Query "01-03-2002_123520
To_Terminal "0501234567" From_Service
"Location_Based_Service Terminal_State "S0" gt
ltAction ID"LOGOUT"/gt
ltOutput_Parametersgt ltParameter ID"logout_reply" T
ype"binary" Value"OK"/gt
lt/Output_Parametersgt ltPrice_for_Action Curre
ncy USD Value "0.0"/gt
ltBill_Recent_Value Currency USD Value
"0.25"/gt ltActions_Allowedgt
ltAction ID"LOGIN"/gt lt/Actions_Allowed
gt lt/Responsegt
Logout Response
Location-Based Service
Terminal
62
Atomicity consideration
  • Money atomicity Money is either entirely
    transfer or not transfer at all
  • Goods atomicity Customer receives the ordered
    goods if and only if merchant is paid
  • Distributed Purchase Atomicity Products bought
    from different suppliers are either both
    delivered or none.

63
Distributed independent purchase case
Assume a customer wants to purchase specialised
software (SW) from a merchant. In order run this
software, he also needs an operating system (OS),
which is, however, only available from a
different merchant. As both goods individually
are of no value for the customer, he needs the
guarantee to perform the purchase transaction
with the two different merchants atomically in
order to get either both products or none.
64
Distributed sequential purchase case
Assume that a customer needs a Map from Service 2
but to apply for that map he is requested to
provide his coordinates (CR). Coordinates he can
get from Service 1. Assume that Service 1 does
not care about how a customer is going to use
coordinates delivered - the service has made job
and got money for it. Even if the rest of a
transaction will fail and for some reason a
customer will not get his Map from Service 2,
full compensation for the transaction as whole
cannot be guaranteed.
65
Connection to MeT (Mobile Electronic
Transactions) initiative
According to MeT "Consistent User Experience"
framework the user interface should allow to
people to transfer their knowledge and skills
from one application to any other application.
Consistency of visual interface and terminology
helps people to learn and then easily recognize
the "language" of the interface. The Transaction
Monitor, due to implementation of the concept of
ontology-based transaction management, offers
such a consistent standardize interface of a user
with multiple services.
66
Connection to Hewlett Packards E-Speak platform
E-speak is an open software platform designed
specifically for the development, deployment,
intelligent interaction, and management of
globally distributed e-services. E-Speak makes
services capable to interact with each other on
behalf of their users, and compose themselves
into more complex services. The E-Speak Service
Engine actually is a transaction monitor software
that performs the intelligent interaction of
e-services. The Transaction Monitor in the hands
of user is a good example of an E-Speak engine,
which expands the E-Speak internet-based
framework to wireless.
67
Connection to the OntoWeb network platform
The goal of the OntoWeb (Ontology-based
information exchange for knowledge management and
electronic commerce) Network is to promote
Semantic Web standardisation efforts in
e-commerce such as those based on RDF and XML.
The implementation of the concept of
ontology-based transaction management for mobile
terminal allows expanding a target for the
OntoWeb framework also to m-commerce.
68
Connection to the Mediators and Wrappers framework
Wrappers and mediators can be considered as
useful addition to the ontology-based framework
in cases when some existing service cannot be
easily adapted to the ontology of some e-services
community. Wrapper for a Transaction Monitor can
be considered as an interface to each e-service,
which defines the service schema. Mediator can be
considered as an interface to a group of
e-services, which defines a global schema from
the local schemas and combines the schemas and
the information of the local e-services.
69
Connection to the Mobile Agents framework
With the increasing market of electronic commerce
it becomes an interesting aspect to use
autonomous mobile agents for electronic business
transactions. Being involved in money
transactions, supplementary security features for
mobile agent transaction management architecture
have to be ensured. Architecture should guarantee
security for the host as well as security for the
agent. To handle these issues for mobile agents
various encryption mechanisms should be used. Due
to this security architecture an agent will be
enabled to carry out money transactions.
70
Connection to the OWL-S framework
OWL-S - semantic markup for Web services is one
of the Semantic Web community efforts to enable
not only content but also services on the Web. It
will enable users and software agents to
automatically discover, invoke, compose, and
monitor Web resources offering services, under
specified constraints. The OWL-S coalition is
developing ontology of services, service profiles
and appropriate process model. The use of OWL
supposes that artificial agents will do most of
future transactions across multiple web services.
The mobile terminal-based TM is one step towards
agent based future of e-services in a mobile
environment.
71
Reference
Terziyan V., Ontological Modelling of E-Services
to Ensure Appropriate Mobile Transactions, In
International Journal of Intelligent Systems in
Accounting, Finance and Management, J. Wiley
Sons, Vol. 11, No.3, 2002, pp. 159-172. Available
in http//www.ingenta.com/isis/searching/Expand/
ingenta?pubinfobike//jws/isaf/2002/00000011/0000
0003/art00221
72
Acknowledgements
Information Technology Research Institute
(University of Jyvaskyla) Customer-oriented
research and development in Information
Technology http//www.titu.jyu.fi/eindex.html
Agora Center (University of Jyvaskyla) Innovatio
ns in Business, Communication and Technology
Research Project (InBCT) http//www.jyu.fi/agora/
Multimeetmobile (MMM) Project (2000-2001) Locati
on-Based Service System and Transaction
Management in Mobile Electronic Commerce
http//www.cs.jyu.fi/mmm
73
Semantic Markup for Web Services
OWL-S
Based on tutorials and presentations of the
DAML-S and HP E-Speak research groups
74
What is OWL-S?
  • Formerly it was DAML-S A DARPA Agent Markup
    Language for Services
  • OWL Ontology for (Web) services
  • AI-inspired markup language
  • tailored to the representational needs of
    Services
  • expressive power
  • well-defined semantics
  • ontologies support reuse, mapping, succinct
    markup, ...


  • Release of OWL-S version 1.0 November, 2003
  • http//www.daml.org/services/

75
OWL-S Objectives
  • Provide an upper ontology for describing
    properties capabilities of (Web) services
  • ontology of Web services
  • ease of expressiveness
  • enables automation of service use by agents
  • enables reasoning about service properties and
    capabilities

76
Upper Ontology of Services
77
Service Profile
78
Service Model
79
E-Speak Environment for E-Services Integration
80
Before e-Speak
  • You want to travel from Singapore to Washington.
    You want a flight, a car rental (preferably a
    blue Toyota), a hotel in the Foggy Bottom
    district of Washington, a tour around the White
    House, a concert at the Kennedy Centre and
    medical insurance cover for two weeks. Going the
    old-fashioned way, you'd have to visit at least a
    dozen separate Web sites (or make as many phone
    calls) to find out what's available and get the
    best deals.

81
With e-Speak
  • all you'll need to do is key in the details of
    your request - as complicated as they may be -
    and the whole package of services gets delivered
    to you, within hours. And you're likely to end up
    buying services from people you've never heard of

82
Universal ecosystem for global transactions
  • E-speak provides the ecosystem for the whole
    sequence of transactions needed for globally
    distributed services - from service request, to
    final delivery.

83
What for?
  • For a User e-speak helps consumers looking for
    services find and connect to service providers
  • For a Service Provider e-speak provides the
    basic building blocks for service creation

84
e-Speak is (1) a Component Transaction Monitor
85
e-Speak is (2) a Distributed Service
Service Provider
Service Provider
E-Speak Engine
E-Speak Engine
Lightweight Directory Access Protocol
Customer
Service Provider
E-Speak Engine
86
e-Speak is (3) a Service Support Provider
  • e-Speak is a system that provides support for
  • Advertising and finding based on vocabularies
  • Authentication
  • Multiple access methods
  • Security

87
E-Speak is (4) an Extensible System with
Decentralized Control
  • Vocabularies
  • Attributes and values
  • Combined and advertised
  • Services
  • Atomic level services
  • Infrastructure services
  • Meta services

88
Intelligent Web Services
D. Fensel Leopold-Franzens-Universität Innsbruck
89
The General Vision
Bringing the web to its full potential
Web Services
UDDI, WSDL, SOAP
Dynamic
WWW
Semantic Web
URI, HTML, HTTP
RDF, RDF(S), OWL
Static
90
Web Services
  • Web Services will transform the web from a
    collection of information into a distributed
    device of computation.
  • Web services should transform eCommerce from a
    nice application into a mass phenomena.
  • Bringing E-commerce to its full potential
    requires a Peer-to-Peer (P2P) approach. Anybody
    must be able to trade and negotiate with
    everybody else.
  • However, such an open and flexible E-commerce has
    to deal with many obstacles before it becomes
    reality

91
Web Services
Def 2. New concept for eWork and eCommerce
Def 3. New programming technology
Def 1. Software Architecture
92
Web Services
  • Def 1. Web Services as a Software Architecture
  • Web services are a new breed of Web
    application. They are self-contained,
    self-describing, modular applications that can be
    published, located, and invoked across the Web.
    Web services perform functions, which can be
    anything from simple requests to complicated
    business processes.
  • Once a Web service is deployed, other
    applications (and other Web services) can
    discover and invoke the deployed service.
  • IBM web service tutorial

93
Web Services
  • ? Web Services connect computers and devices with
    each other using the Internet to exchange data
    and combine data in new ways.
  • ? The key to Web Services is on-the-fly software
    creation through the use of loosely coupled,
    reusable software components.
  • ? Software can be delivered and paid for as fluid
    streams of services as opposed to packaged
    products.

94
Web Services
  • Business services can be completely decentralized
    and distributed over the Internet and accessed by
    a wide variety of communications devices.
  • The internet will become a global common platform
    where organizations and individuals communicate
    among each other to carry out various commercial
    activities and to provide value-added services.
  • The dynamic enterprise and dynamic value chains
    become achievable and may be even mandatory.

95
Web Services
  • The web is organized around URIs, HTML, and HTTP.
  • URIs provide defined ids to refer to elements on
    the web,
  • HTML provides a standardized way to describe
    document structures (allowing browsers to render
    information for the human reader), and
  • HTTP defines a protocol to retrieve information
    from the web.
  • gt Not surprisingly, web services require a
    similar infrastructure around UDDI, WSDL, and
    SOAP.

96
Web Services
UDDI
WSDL
SOAP
URI
HTML
HTTP
97
Web Services
  • UDDI provides a mechanism for clients to find web
    services.
  • WSDL defines services as collections of network
    endpoints or ports. A port is defined by
    associating a network address with a binding a
    collection of ports define a service.
  • SOAP is a message layout specification that
    defines a uniform way of passing XML-encoded
    data. SOAP is basically a technology to allow for
    RPC over the web.

98
Web Services
  • Many organizations had the insight that message
    definition and exchange are not sufficient to
    build an expressive web services infrastructure.
  • In addition to UDDI, WSDL and SOAP, standards are
    proposed such as WSFL, XLANG, ebXML, BPSS, BPML,
    WSCL, and BPEL4WS.
  • Bringing web services to their full potential
    requires their combination with semantic web
    technology.

99
Semantic Web Services
  • Imagine a travelling service
  • Decompose into elementary services
  • Describe elementary services by goals instead of
    hardwiring them.
  • Keep the human programmer out of the loop to keep
    it economic, on demand, and scalable.
  • You cannot achieve this vision without semantic
    web technology that maintains selection and
    combination of heterogeneous web services during
    runtime.

100
Semantic Web Services
  • Mechanized support is needed in finding and
    comparing vendors and their offers. Machine
    processable semantics of information allows to
    mechanize these tasks.
  • Mechanized support is needed in dealing with
    numerous and heterogeneous data formats. Ontology
    technology is required to define such standards
    better and to map between them.
  • Mechanized support is needed in dealing with
    numerous and heterogeneous business logics.
    Mediation is needed to compensate these
    differences, allowing partners to cooperate
    properly.

101
Agent-Based Service Composition
  • Vadim Ermolayev, Natalya Keberle, Sergey Plaksin
  • Zaporozhye State Univ., Ukraine

Int. Conference on Web Services Europe
(ICWS-Europe03), Erfurt, Germany, Sept. 23-25,
2003
102
Semantic Web Services Orchestration the field
is becoming increasingly hot
  • Several ongoing initiatives define compositional
    notations for web services
  • E.g.
  • IBM, Microsoft and BEA have released BPEL4WS as
    the specification for coordinating business
    processes over the Web
  • Such notations express the flow of control and
    data across a collection of web services whose
    choreography performs a workflow

103
Having a Recipe doesnt yet Grant Having a
Meal
  • A pro-active component is required
  • Pro-active understanding of the process
    specification is
  • Not only the ability to ensure the right sequence
    and the proper combination of the components
  • But also the capability to find the best provider
    in the dynamic and open environment
  • This is why much attention is paid to the field
    of agent-enabled web service composition

104
What should be offered is
  • A new understanding of a web service as
  • An agent capability implemented as a
    self-contained pro-active software component and
    the subject of negotiation and trade
  • It implies the appearance of the rational service
    providing agent , which demands the negotiable
    incentive and behaves to increase its utility
  • E.g. if a service requested from a travel agency
    is BookRoundtrip(Kiev, Erfurt, 22/09/03,
    25/09/03, ), the price paid by the requestor
    will comprise
  • the prices of consumable resources (air fare,
    hotel room, )
  • plus the incentive paid to the contracted service
    provider for BookRoundtrip service usage

105
Whats behind the scenes
  • The agent performing BookRoundtrip service
    should be able to realize that the requested
    task is composite and will require RATIONAL
    cooperation with at least
  • Air Companies service providing agents
  • And hotel booking service providing agents
  • These actors will also intend to increase their
    own utilities by requesting fees for their
    service provision

106
BookRoundtrip Scenario
  • Agent roles (played by human actors)
  • AUTHOR (A) acts on behalf of the one of the
    paper authors attending ICWS03-Europe , requests
    BookRoundtrip service
  • TRAVEL AGENT (T) provides BookRoundtrip
    service, generates and conducts corresponding
    task execution behind the scenes
  • FARE AGENT (F) provides air fare information
    and booking services
  • ICWS INFO (I) provides information services on
    ICWS03-Europe local arrangements,
    infrastructure, accommodation, etc
  • HOTEL AGENT (H) provides hotel room reservation
    services
  • BUSINESS PARTNER (P) acts on behalf of As
    business partner in Austria with whom A intends
    to meet in Germany in time of the conference to
    discuss a joint proposal

107
BookRoundtrip Exercise Inputs
  • Semi-formally (enough for human actors to
    understand unambiguously)
  • Starting_Point Kiev, Ukraine
    DestinationErfurt, GermanyBeg_Date22/09/2003
    End_Date25/09/2003EventICWS03-EuropePrefer
    ences(low fare, non-stop flights, fast
    connections, 4-star hotel, continental
    breakfast, conference discounts)Constraints(B
    udget 1500, Payment(VISA, USD),Hotel gt
    3-star, Room-per-night lt 110,
    Hotel_Locationin Max 20 min walk from the
    Conference venue)Special_Arrangements((Eventb
    usiness dinner, Agent(Prof.
    Heinrich C. Mayr, http//www.ifi.uni- klu.ac.at
    /IWAS/HM/Staff/Heinrich.Mayr/),
    Date(23/09/2003, 24/09/2003),
    Location(Erfurt, Munich)),)

A
108
What are the parties supposed to do?
  • Negotiates with T-s about which A believes that
    they are
  • Capable to provide BookRoundtrip
  • Reliable partners
  • Collects proposals from T-s and selects the best
    of them
  • Hires the T which has given the best proposal
  • Pays and gets the results
  • Analyses if As inputs allow to accept the job
  • Prepares the proposal based on its previous
    experience
  • IF hired
  • Conducts the performance of BookRoundtrip
    according to
  • Its knowledge about the job
  • Its beliefs about the other service providers
    which might be involved
  • Provides the best result possible to prove that
    it is reliable
  • But does it rationally for not to loose its
    income

A
T
109
And why do they do it?
  • T desires
  • To be hired and paid for the job
  • To spend the money most efficiently (remain
    competitive)
  • To remain a reliable partner for A
  • A desires
  • Not to go behind the scenes
  • To rely on the T-s competencies
  • To pay a reasonable incentive for that
  • A believes
  • BookRoundtrip is an atomic activity just a
    piece of cake
  • BookRoundtrip may be outsourced to T
  • T believes
  • BookRoundtrip is a complex, dynamic, composite
    task

110
T BookRoundtrip is a Complex Task
Task
  • The knowledgebase of T contains facts
  • BookRoundtrip is a Task
  • It contains at least PlanTrip Task and
    MakeHotelRes, ApplyForVisa, SpecArrangements
    Activities as its phases
  • MakeHotelRes requires PlanTrip results as the
    PreCondition
  • SpecArrangements and ApplyForVisa may be
    performed concurrently with PlanTrip and
    MakeHotelRes
  • These facts are formulated in the terms of the
    Task Ontology (namespace for the compositional
    notation)

Activity
Part_of
BookRoundtrip
Is_a
Is_a
Is_a
HasPrecond
Part_of
Part_of
Part_of
MakeHotelRes
PlanTrip
HasPrecond
ApplyForVisa
SpecArrangements
Part_of here is a Phase-Activity kind of
meronimy relationship
Individual_of
PlanTrip Results Approved
PreCondition
!!! Another T may have a different idea of
BookRoundTrip composition
111
T BookRoundtrip More Facts
  • The knowledgebase of T contains facts
  • Tasks and Activities have Partial Local Plans
    (PLP)
  • PLPs among other facts define the Capability to
    perform an Activity either by itself or by
    outsourcing it to another agent
  • According to PlanTripPLP T is capable to perform
    PlanTrip by itself
  • According to MakeHotelResPLP T needs to
    outsource MakeHotelRes to another agent (via
    Contract Net negotiation)

PartialLocalPlan
Task
HasPLP
Is_a
HasPLP
Activity
PlanTripPLP
PlanTrip
CapableTo
Is_a
MakeHotelRes
HasPLP
DefineCapability
MakeHotelResPLP
Self-Performance
Individual_of
CapableTo
Individual_of
Capability
Outsource
!!! Another T may have different Capabilities
and PLPs wrt BookRoundTripphases
112
T behaves pro-actively Adjusts Inputs
Date
  • An intelligent service provider may propose to
    pro-actively change the Task Inputs in order to
    get better overall result
  • E.g., for PlanTrip the following alternative
    dates
  • Beg_Date20.09, End_Date25.09
  • Or
  • Beg_Date22.09, End_Date28.09
  • May significantly lower the cost of the air fare
    because of the Sunday Rule Discounts
  • Assertions on Task Inputs will form, e.g., the
    initial proposal for AirFare negotiation
  • T should undertake it to outsource InquireFares
    Activity while performing PlanTrip Task

DaysOfAWeek
PlanTrip
Is_a
HasED
Is_a
HasBD
End_Date
Islt
Beg_Date
Individual_of
EndDOW
BegDOW
SundayRuleDates (Beg_Date, End_Date) (End_Date-Be
g_Dategt6) Or (BegDOWgtEndDOW)
113
T-F-s Negotiation on Air Fares
Erfurt
  • T knows from his knowledgebase that InquireFares
    should be outsourced
  • T knows from his previous experience that
  • Some F-s are capable to perform InquireFares
  • Some of them are trusted partners
  • T starts Contract Net negotiation by declaring
    Activity Inputs and the Intended Price
  • F-s invoke Web Services they wrap and respond
    with
  • These responses are not satisfactory for T

2500
Not available
Not available
1600
700
450
20.09-25.09
22.09-25.09
22.09-28.09
114
T yet one more Adjustment
  • T has got unsatisfactory responses from F-s
  • T pro-actively tries to alter the destination
    point to the one close to Erfurt
  • Negotiations on Frankfurt and Munich fares result
    in
  • Frankfurt is chosen as the destination point

115
T Additional Activity is Required
  • But Frankfurt is not Erfurt
  • So, T needs to explore Frankfurts Properties
    for Connections
  • Luckily, there is an appropriate fact in T-s
    knowledgebase
  • Frankfurt HasRWConn to Erfurt
  • This leads T to incorporate one more Activity to
    PlanTrip Task BookRWFare
  • Further on, Die Bahn Web Service provides the
    result
  • The mechanism seems to be the same as for
    InquireFares

ErfurtRegion
IntAirPort
GermanCity
HasIAP
Is in
Is_a
HasIAP
Is_a
Munich
Frankfurt
Bingo!
HasRWConn
Is_a
Erfurt
116
BookRoundtrip Service Composition
1014892
Lufthansa Infoflyway
Negotiate
T
Negotiate
Cyber Flyer
BookRoundTrip PlanTrip
MakeHotelRes ApplyForVisa
SpecArrangements ApproveSolution
PlanTrip InquireFares
(ConvertCurrencies) ApplyConstraints
ApplyPreferences
AdjustPreferences AdjustConstraints
(BookRWFare) BookFare
ApproveSolution
Event AllocatingPlanTrip Task for
self-perfor-mance
Task Ontology
Task Ontology
CNN Currency Converter Service 10.88
Agent Middle Layer
Die Bahn Booking Service
Service Requestor
Service Providers
Conference Info Service
Services
MakeHotelRes InquireEventInfo
ApplyConstraints
ApplyPreferences AdjustPreferences
AdjustConstraints
BookHotelRoom ApproveSolution
Precond PlanTrip results are available
All-hotels.com Reservation Service
Task Ontology
Negotiate
Hotel reservation Service (hrs.de)
117
Conclusions
  • Agent Middle Layer is required for scalable,
    intelligent, dynamic service composition
  • Service Mediator is formed dynamically as the
    coalition of service providing agents (SPAs)
    participating in the Task execution
  • Services are self-contained modular loosely
    coupled program components wrapped by SPAs
Write a Comment
User Comments (0)