SWS invocation (long mail)

Hi all,

first of all sorry for my english and for the long
email, i start with an Introduction about what im doing
and then i'll pass to my Questions, if you are in a hurry,
feel free to jump to //Questions section :)

//Introduction
I'm working on a project for my thesis (im a student) that should
show some application/benefit of using a semantic decription to 
enhance/automate
the invocation of web services.
I've read some papers (many authors are actually subscribed
to this ML) about SWS but they mainly focus on sws discovery.
Of course i know that discovery is fundamental, but im interested
on the invocation capabilities of Semantic Web Services.

I think there are different approaches for the usage of semantic
descriptions in the context of web services (WSDL modification with
"link" to DAML+OIL concepts, DAML-S documents linking to WSDL,
WSDL with OWL types etc..). My current approach (im still in time
to change it :)) is this:
use DAML+OIL (OWL?) documents that points to WSDL files and that
richly describes methods/arguments inside the WSDL.
The (simplified) scenario is something like this:
There exist two services, StockInfo_1 and StockInfo_2, that
offer informations about stock quotes (i.e. delayed quote on some
stock markets). I *already* know them, so i dont have to discover
where they are located. This services are realized in this way
(layered approach) :
[Semantic description layer (i.e. DAML+OIL)]
[technical description layer (WSDL)]
[messaging layer (SOAP, HTTP-POST etc..)]
[....transportation layer and so on]

My idea is that an application (or agent or another ws)
should
-read the semantic description of the service
-find the desired method (ok, here there's some discovery :))
-understand what kind of parameters it has to pass to
the method
-call the method without knowing anything (or few things)
about message and transportation layers


//Questions

1) non-Semantic WS technical question

AFAIK classical non-Semantic WebServices approach is
downloading a WSDL, creating a stub (with java2wsdl tools or
equivalent on .NET platform) and than use it inside the
application (creating ad-hoc SOAP messages). This approach
is not good for my (our?) scenario, because i think we need
a separation between layers (layer N should talk only to N+1 and
N-1 layer, isnt it a normal?): the agent should choose
a service by its semantic description and invoke it
using its WSDL.

After a bit of research, I've found WSIF (http://ws.apache.org/wsif/) 
that seems to offer what im searching:

"WSIF enables developers to interact with abstract representations of 
Web services through their WSDL descriptions instead of working directly 
with the Simple Object Access Protocol (SOAP) APIs, which is the usual 
programming model. With WSIF, developers can work with the same 
programming model regardless of how the Web service is implemented and 
accessed."


Has anybody done some experiment with invocation starting from
a Semantic description? Do you think WSIF should be the right
choice for this approach or do you know anything that works fine?

2) Semantic technical question
in order to manage ontologies for this project, which are
the best Java tools/packages to use? something like
Jena API for manipulating daml+oil and Racer as a reasoner?

Any comment will be appreciated
Thank you in advance

-- 
Norberto Carnelli
<norberto.carnelli@poste.it>

Received on Wednesday, 10 March 2004 07:39:31 UTC