RESTful Web services and DAL

Doug Tody dtody at nrao.edu
Tue Mar 13 14:18:11 PDT 2007


On Tue, 13 Mar 2007, Matthew Graham wrote:

[From me:]
>> I suggest (based on e.g., the wikipedia and w3c descriptions) that a
>> *Web service* is any service used by two computers to talk to each other
>> via Web protocols.  Such a service will define an API which clients use
>> to talk to the service.  (By this definition SIAP, WMS, etc. represent
>> a type of Web service).  Individual Web services may or may not be
>> stateful, but a comprehensive Web service mechanism needs to be able to
>> support stateful services.
>> 
> I'm sorry but I think that you are redefining the term so that it fits things 
> that would not commonly be termed web services. Wikipedia says: "in common 
> usage the term [web service] refers to those services that use SOAP 
> <http://en.wikipedia.org/wiki/SOAP>-formatted XML 
> <http://en.wikipedia.org/wiki/XML> envelopes and have their interfaces 
> <http://en.wikipedia.org/wiki/Interface_%28computer_science%29> described by 
> WSDL <http://en.wikipedia.org/wiki/Web_Services_Description_Language>".

You left out the part that says

     "The W3C defines a Web service[1] as a software system designed
     to support interoperable Machine to Machine interaction over a
     network. Web services are frequently just Web APIs that can be
     accessed over a network, such as the Internet, and executed on
     a remote system hosting the requested services.

     The W3C Web service definition encompasses many different systems,
     but [in common usage the term refers to those services that use
     SOAP-formatted XML envelopes ...]" (and so forth as above).

This somewhat broader definition basically says that any service API
exposed on the Web, and used for automated inter-machine communication,
can be considered a "Web service".

> The W3C definition is also explicit that "[a web service] has an interface 
> described in a machine-processable format (specifically WSDL)."

This is a bit stricter definition, but a service with a GET interface
can also be described in WSDL.

Again, to avoid argument I agree that in the most common usage today,
the term Web service typically refers to XML/SOAP/WSDL.  As you say,
I *am* trying to suggest a somewhat broader definition.  However I think
this is also the trend.  A search on "RESTful Web service" will turn
up a great deal of stuff which is not SOAP and WSDL.  The OpenGIS
community refers to their services, such as WMS, as "Web services"
(see for example http://www.opengeospatial.org/standards/common).
The standard profile for a DAL service is essentially identical at
this point to that defined by OpenGIS.

This is not just a matter of semantics.  We talk a lot in VO, and
in NVO in particular, about "Web services".  I think there is still
room to debate on how best to implement such services.  This is why,
whenever I refer to SOAP-based Web services, I always include the word
"SOAP".

 	- Doug



More information about the grid mailing list