RE: question about "Semantic Annotations for WSDL"

Jinghai,

Thanks for your concerns and comments. Actually we have been debating in
this group for a long time since last year if you would like to check the
records in the mailing list archives.

Unfortunately, I don't think we can describe and define the meaning, or
semantics, of Web services by adding annotations for WSDL. As I demonstrated
many times by either abstract interfaces or living Web services, the meaning
of Web services has NO relation with WSDL. Service semantics is neutral and
independent from the WSDL interface. If you missed my recent posted
messages, you can find them at:

http://lists.w3.org/Archives/Public/public-sws-ig/2006Feb/0031.html (for
abstract cases)
http://lists.w3.org/Archives/Public/public-sws-ig/2006Mar/0001.html (for
living Web services)

Then you see, the difference is whether you want to describe the meaning of
WSDL or the meaning of Web service. 

Although I complained about Semanitc Web technology, the conclusion "SW
failed" and "will fail" is quoted from IEEE Internet Computing (the last
issue of 2005 and the first issue of 2006). You may wish to read them and
see why. 

In last year's debate, we could draw the conclusion as that Semantic Web is
a confusing concept. Actually it is NOT about "semantics" but about the
logical inferential relationship among the concepts in static content of the
HTML document. That's why it can be called just as a "logic" Web. In the
views of "some" SW people, there is no other semantics except logics.
However, you may wish to find and read the paper "Towards the Semantic Web
of Culture" and see what and why we debated for such topics.

Web services are about the dynamic functions and actions. It was critisized
that the ontology used in SW has nothing about functions. I'd be happy to
see how you can use SW techniques to define and describe the meaning of the
Address Finder Web Service, not the meaning of its WSDL documents in version
2 and version 2006. Unfortunately many people are trained as programmers
full of the concepts of object oriented programming. Do you think the
meaning of Web services can just be specified in class/subclass, data/object
types, etc. in WSDL? Check either version of the WSDL documents of Address
Finder Web Services. These two WSDL documents contain lots of meaningless,
redundant elements generated by OOP but have nothing in relation with the
*meaning* of the service. Do you want to tell me what's the difference
between the two "matchType" elements used in different places in WSDL
document by RDF/OWL? Do you think your activity is meaningful as this
element has nothing about the meaning of the service? How can you use
RDF/OWL to tell requester that the meaning of the address geocoding function
used in these two different version are the SAME? If you can demonstrate
such result to us, then we can make great achievement.

Best wishes,

Xuan

-----Original Message-----
From: Jinghai Rao
To: 'Shi, Xuan'; 'Rice, Ed (ProCurve) '; 'David Martin  ';
public-sws-ig@w3c.org
Sent: 3/2/06 12:29 AM
Subject: RE: question about "Semantic Annotations for WSDL"


Hi Xuan,

If I understand correctly, you want to make clear how the semantic web
technologies can be used for web services description. In my opinion,
the
semantic web services should include two efforts:

1. The service ontologies written by semantic web languages. They
include
OWL-S, WSMO and so on. These ontologies defines the basic building
blocks
for web service description, e.g. IOPE, control constructs, business
rules,
etc. The benefits of such ontologies are:

1.1 the interoperability between the services described by different
languages (though we still have to do a lot for the ontology
integration).
For example, it should be possible to translate a WSMO description into
OWL-S, and include this WSMO service into an OWL-S ServiceModel.

1.2 the extensibility of the current ontology for more domain-specific
services. For example, we can define an ApprovalService class as a
subclass
of the Service class in the service ontology. We can further restrict
the
ApprovalService to have an input having parameter type Request and have
an
output of type ApprovalDecision. All specific services related to
approvals,
e.g. VacationApproval, EquipmentApproval should be sub class of this
generic
ApprovalService, and inherit the predefined inputs/outputs.

Because WSDL is not defined in this kind of semantic web languages, it
doesn't explicitly have such interoperability and extensibility. 

2. We can refer to the domain ontology inside the service description. A
typical example is to refer to an OWL class as a parameter type. This
actually doesn't require the service to be presented by a semantic web
language. WSDL-S is a good example.

I am astonished that you conclude the Semantic Web technologies are not
good
for Web services so easily. I understand there is a huge debate about
the
current semantic web technology, which may have a huge room to be
improved.
However, I don't understand why it is good for concepts but not for web
services. Don't you think the service, function and process can be also
defined as concepts and their relations?

Best regards,

Jinghai



-----Original Message-----
From: public-sws-ig-request@w3.org [mailto:public-sws-ig-request@w3.org]
On
Behalf Of Shi, Xuan
Sent: Tuesday, February 28, 2006 1:50 PM
To: 'Rice, Ed (ProCurve) '; Shi, Xuan; 'David Martin ';
'public-sws-ig@w3c.org '
Subject: RE: question about "Semantic Annotations for WSDL"


Dear Ed,

I want to know how many different ways for you or someone else to
develop
such kind of Web services as you mentioned? If there are more than two
ways
to develop the same Web services, then you will get more than two WSDL
documents. Since they are the same service and function, then they have
the
same semantics. However, the content of WSDL documents is different. If
you
want to describe the meaning of WSDL document, then the same service and
fucntion can be explained differently. On the other hand, different
services
and functions can have the same interface, as demonstrated by those four
calculation services-the only difference is the name of the function.

That's why I asked Dr. Martin whether we want to discuss the meaning of
a
WSDL document or the meaning of a Web service. It seems you want to
explain
the meaning of a service, but if you associate it with the WSDL
document,
the result will be different since the same service and function can be
developed, defined, described in different ways in such a decentralized
environment. For example, how can you define the meaning of "margin" as
a
variable, a function, a service? In WSDL there are only names of varied
elements which are assigned randomly, which means you can rename
"margin" as
"sales margin", "s_margin", "sales_margin", or whatever. In this case,
do
you want to tell me they are all the same? If that's true, then we can
discuss another issue as I proposed to Dr. Martin that who can define
the
semantics and why don't we share the semantics? But here you see again,
the
meaning of service has no relation with the content inside WSDL
interface
document.

SW technology is not appropriate for SWS because the ontology used in SW
has
nothing about function and process but all about concepts as well as the
relationship among concepts. Unless we can find something new to define
service, function, process, not just the concepts used in defining the
variables in WSDL document, I don't think such effort is promising. As
referenced by McCool's paper "Rethinking the Semantic Web, Par I & II"
published by IEEE Internet Computing in the last issue of 2005 and first
issue of 2006, SW failed and will fail. Then what and how can we do
something different to develop SWS?

Best wishes,

Xuan

 

-----Original Message-----
From: Rice, Ed (ProCurve)
To: Shi, Xuan; David Martin ; public-sws-ig@w3c.org
Sent: 2/28/06 12:24 PM
Subject: RE: question about "Semantic Annotations for WSDL"


Dear Xuan,

I think your example explains exactly why we need "Semantic Annotations"
for the WSDL.  If as you say all web service combine two numbers and
return the result then the Annotations are all the more important.  If
we're going to discover a set of web services for use, its important to
understand the characteristics.

For example if you have a web service that returns sales margin, its
important to understand which 'margin' we're talking about.. Gross sales
subtracting cost of goods sold - vs. - Gross Sales minus (cost of goods
sold + fully loaded over-head).  Both of these could be a web service to
return 'cost of goods sold' but they would return very different
results.  

If I'm missing something, please let me know.

-Ed Rice
Hewlett Packard

-----Original Message-----
From: public-sws-ig-request@w3.org [mailto:public-sws-ig-request@w3.org]
On Behalf Of Shi, Xuan
Sent: Monday, February 27, 2006 7:07 PM
To: 'David Martin '; 'public-sws-ig@w3c.org '
Cc: Shi, Xuan
Subject: RE: question about "Semantic Annotations for WSDL"
Importance: High


Dear Dr. Martin,

If you and this group would like to discuss the semantics of WSDL other
than the semantics of Web service, then you can ignore the following
lines because I will demonstrate again that the meaning of the
element/component within WSDL interface document is NOT the meaning of
Web service.

Given a simple example, a Web service provides a function of addition
calculation. How many different ways can we try to build such a
function? I can give a list of functional interfaces as I discussed
before, and you may wish to add more:

Function addition (integer X, integer Y):integer Z Function addition
(double X, double Y):double Z Function addition (integer X[2]):integer Z
Function addition (double X[2]):double Z Function addition (number X,
number Y):number Z Function addition (object O):integer Z (O has
properties X, Y, or O has
X[2])
Function addition (string req):string resp (by SRR document) ... ...

What's the meaning of this service and function? The meaning of service
and function has any relationship with WSDL interface, process,
precondition, effect, etc.? 

As a common sense, the meaning of ALL such Web services is the same: it
will add two numbers and return the result back to requester. When you
add semantic annotations into WSDL, can you describe the meaning of this
Web service?

Let's change the function name into subtraction, multiplication, and/or
division. Then all elements in the WSDL document are the same except the
name of the function. Should you want to clarify that the X variables
used in every different function are all the same or not? It seems you
still care more about the name of the element inside a WSDL document,
not the meaning of Web service.

Let's design another Web service that will perform mixed calculation by
using the above four Web services. While we can design the interface of
such a service and function in many many different ways, the meaning of
this Web service is: if requesters send a number sentence to provider,
the provider will send back the result of the mixed calculation.

Do you think the provider should tell requester that the provider will
aggregate one or more Web services (addition, subtraction,
multiplication,
division) in the OWL-S approach, or how the provider will mediate the
four Web services in WSMO approach, to generate the result? 

In conclusion, the meaning of Web services has NO relation with both of
the WSDL interface and the aggregation/mediation process. Then I don't
think it's worthy to add semantic annotations for WSDL since such
activity cannot lead to the goal of semantic Web services.

Best wishes,

Xuan



-----Original Message-----
From: David Martin
To: public-sws-ig@w3c.org
Sent: 2/27/06 6:59 PM
Subject: question about "Semantic Annotations for WSDL"

Here is an important question about the proposed "Semantic Annotations
for WSDL" working group, about which I'd love to see some discussion.

The current draft charter is here:
   http://www.w3.org/2005/10/sa-ws-charter.html

Question:
     Does the envisioned approach provide a foundation that will be
     useful in working with, or evolving to, a more comprehensive
     framework, or simply a detour that will ultimately fall out of use
     (if Web service semantics become important)?

What's behind this question is the observation that, from a WSDL-centric
perspective, the semantic artifacts referenced by a WSDL spec will be
disconnected.  That is, from the point of view of a WSDL tool, they
won't exist in the same declarative scope. (Indeed, in this approach
there is *no* notion of declarative scope for the semantic artifacts,
from the WSDL perspective.)

One way to illustrate this concern is simply by observing that
preconditions and effects associated with services will frequently have
variables in common.  To have a coherent representational scheme, it is
of fundamental importance to spell out the relationship between variable
X mentioned in a precondition and variable X mentioned in an effect
expression.  From the perspective of a WSDL tool, there won't be any
basis for establishing or working with such a relationship.  So the
concern here is that a WSDL tool ultimately won't be able to do much

with the semantic declarations that are referenced.

Of course, the semantic framework underlying those declarations may
provide the basis that ties the semantic declarations together, and a
WSDL tool could build in some understanding about one or more of the
semantic frameworks that may be used in connection with WSDL.  But the
point is that it's not a WSDL tool anymore - it's a WSDL tool plus a
{UML or OWL-S or WSMO or SWSF or METEOR-S or ODESWS or ...} tool.  And
as far as I can tell, there won't be any meaningful connection between
the two tools.  The concern is that the proposed approach does not
appear to provide any path by which such a meaningful connection might
eventually be achieved.

Cheers,
David Martin
SRI International

Received on Thursday, 2 March 2006 06:21:49 UTC