- From: Shi, Xuan <xshi@GEO.WVU.edu>
- Date: Thu, 2 Mar 2006 01:19:27 -0500
- To: "'Jinghai Rao '" <jinghai@cs.cmu.edu>, "Shi, Xuan" <xshi@GEO.WVU.edu>, "''Rice, Ed (ProCurve) ' '" <ed.rice@hp.com>, "''David Martin ' '" <martin@AI.SRI.COM>, "'public-sws-ig@w3c.org '" <public-sws-ig@w3c.org>
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