# RESTful web service WSDL?

**URL:** <https://www.ruby-forum.com/t/restful-web-service-wsdl/128299>\
**Category:** Rails\
**Created:** [February 6, 2008, 3:39pm UTC](https://www.ruby-forum.com/t/restful-web-service-wsdl/128299 "2008-02-06T15:39:49Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![rickf](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9e8a1a/32.png) [@rickf](https://www.ruby-forum.com/u/rickf)\
**Post date:** [February 6, 2008, 3:39pm UTC](https://www.ruby-forum.com/t/restful-web-service-wsdl/128299/1 "2008-02-06T15:39:49Z")

</div>

Hello,

Going down the path of creating some web services. I am going with using  
REST over SOAP. Where I am a bit lost is with regards to the WSDL. If I  
understand correctly the WSDL will allow consumers of my web services  
the ability to generate stubs in their code of choice. The XML will be  
abstracted by APIs generated by the WSDL on the client end.

Using the RESTful approach how does one generate a WSDL for the client?  
I believe SOAP takes all this into account. Am I missing the best way to  
approach this?

How does one publish the RESTful web service(s) if not by WSDL?

thanks,  
Rick

---

<div class="post-metadata">

**Author:** ![rickf](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9e8a1a/32.png) [@rickf](https://www.ruby-forum.com/u/rickf)\
**Post date:** [February 6, 2008, 5:54pm UTC](https://www.ruby-forum.com/t/restful-web-service-wsdl/128299/2 "2008-02-06T17:54:29Z")

</div>

Rick F. wrote:

> approach this?
> 
> How does one publish the RESTful web service(s) if not by WSDL?
> 
> ## thanks, Rick
> 
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

Couple of things to keep in mind:

1. RESTful apps tend to follow conventions, making the need for method-  
by-method specs obsolete. Rails implements its own flavor of REST  
conventions, whereby if you know the resource (say, products), then  
you already know the urls and HTTP verb combinations that are  
available.
2. WSDL helps generate client-side tools, but you still need human  
documentation to understand what to do with it. RESTful services  
should also provide human documentation so you know what urls and  
verbs are supported.

Jeff

---

<div class="post-metadata">

**Author:** ![rickf](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/9e8a1a/32.png) [@rickf](https://www.ruby-forum.com/u/rickf)\
**Post date:** [February 6, 2008, 7:58pm UTC](https://www.ruby-forum.com/t/restful-web-service-wsdl/128299/3 "2008-02-06T19:58:55Z")

</div>

On Feb 6, 2008 2:39 PM, Rick F.  
[removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid)  
wrote:

> approach this?
> 
> How does one publish the RESTful web service(s) if not by WSDL?

As has already been said, RESTful services rely far more heavily on  
conventions and already documented standards than SOAP. A well set up  
RESTful service will be much easier for the client developer to  
understand  
than your average SOAP service.

WSDL was somewhat helpful for working with SOAP services, but it was far  
from ideal for a variety of reasons including its heavy reliance on the  
ridiculously complex XML schemas. A WSDL alone was never enough for  
anyone  
but the most hardcore of SOAP developers.

Usually you’ll be able to get away with a human-readable list of your  
resources, what parameters they expect, etc. There isn’t (yet?) anything  
standardised for machine-readable resource lists but there is some buzz  
around WADL –

> **[Web Application Description Language](https://en.wikipedia.org/wiki/Web_Application_Description_Language)**
>
> The Web Application Description Language (WADL) is a machine-readable XML description of HTTP-based web services. WADL models the resources provided by a service and the relationships between them. WADL is intended to simplify the reuse of web services that are based on the existing HTTP architecture of the Web. It is platform and language independent and aims to promote reuse of applications beyond the basic use in a web browser.
> WADL was submitted to the World Wide Web Consortium The service is...

If you haven’t already, it’s worth reading some of the discussion of  
REST  
(in a more general sense than just how it works in Rails) around the  
web.  
[ongoing by Tim Bray · REST, as in Take It Easy](http://www.tbray.org/ongoing/When/200x/2007/04/30/REST-is-easy) would be  
one  
place to start.

James.

–  
James S. - Web D.  
Work : [http://jystewart.net](http://jystewart.net)  
Play : [http://james.anthropiccollective.org](http://james.anthropiccollective.org)
