Login  

Blog Stats

News

Web 2.0 University(tm)

New: Subscribe via e-mail

Enter your email address:

Delivered by FeedBurner

My Twitter Feed




Sponsored Advertising


Your Ad Here

Post Categories

Archives

Blogs Read By Me

Building Blocks of Great Systems

Consulting

Contact

Tech News Read By Me


Head First Design Patterns:

Don't reinvent the wheel, use the most insanely great book on design patterns yet written.

Listed on BlogShares

Dion Hinchcliffe's Blog - Musings and Ruminations on Building Great Systems

Lightweight Processes, Service-Orientation, Enterprise Architecture, and Software Development

I was printing out the WSDL 2.0 Core Specification this morning and I was surprised to find that it's over 100 pages long. And it's a long, hard, coma-inducing read as well. Technically though, it shouldn't be surprising. The details of protocol bindings, interfaces, operations, and exception/fault definitions for web services must be precise, clear, and unambiguous for interoperability to work. In the end, it really is hard to create a flexible language to describe the world of possible web services.

But as Antoine de Saint-Exupery said, perfection in engineering is achieved not when there is nothing left to add, but when there is nothing left to take away. It does appear that WSDL, in its third incarnation, has bulked up heavily on complexity for the sake of robustness, instead of making it better by making it simple. In the end, it's a spec only a tool vendor could truly love and early comments on it have not been favorable.

I've been tracking some of the other web service description specifications recently, including some that are not yet specifications, but merely good ideas. Savas Parastitidas and his folks have the SOAP Service Description Language (SSDL), Norm Walsh has NSDL, there is the aforementioned WSDL 2, Rich Salz has talked about a basic SDL he calls RSWS, and even the eminent Tim Bray (co-inventor of XML) has chimed in recently about something he calls SMEX-D.

This last one, SMEX/SMEX-D is particularly interesting because it purports to be a full web service description language that is the "simplest possible way you could declare an exchange of XML messages", and more importantly, can describe both REST and SOAP (and other) services. This is very good because it reflects the real world of web services, and not purely an isolated standards body or tool vendor view.

Figure 1: The various service description languages: WSDL, SSDL, NSDL, RSWS, RSDL, WRDL

Going across the entire spectrum, there is RSDL, the REST Service Description Language, just a twinkle in someone's eye, but much further along in the REST description language camp is WRDL, which has a Python implementation already.

But in a design space where it's very important to actually have a problem to solve before creating a solution, what do these description languages actually do for us? Do they make using web services easier? Do they lower the barrier to use? Do they reduce coupling or enhance interoperability? The answers today are not clear.

At a basic level, machine-readable service description languages make it easy to map a web service into a local model, such as a proxy class in your favorite programming language. This is certainly useful if you are using a tool that can do this and the web services exclusively uses idioms that your local toolkit supports. So if your SDL confounds this, doesn't exist for the service you're using, or doesn't accurately describe the service, then what do you do?

The problem is that the more complex an SDL is, the more likely it can describe the nuances of a web service, while at the same time making it probable the mapping has errors. This makes the razor slice both ways. It raises the question of whether web services should just be self-describing in a simple way, like web services in the form of RSS, which are already providing services on a huge scale without a service description language, as Dare Obasanjo pointed out recently.

With certain folks questioning whether or not description languages should even be involved with code generation and with the proliferation of SDLs, it makes one wonder what service and client implementors should do.

In the next few posts, I hope to look at some WSDL 2 examples, what REST needs in terms of an SDL (if it needs one at all), and try to take a look at where this all should head in a perfect world.

Update: Much thanks to Tim Bray for the huge blog karma he bestowed on this post (to the point my server keeps going down). :-) Also, thanks for the thoughtful comments below. I will absorb them and update the diagram shortly with RDF added and reposition WSDL 2. Thanks!

Technorati: , , ,

posted on Tuesday, May 10, 2005 8:02 AM

AddThis Social Bookmark Button

What People Are Saying About This Post...

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/12/2005 3:48 AM Danny
If you're looking at the entire spectrum, you may also want to consider the use of the Resource Description Framework in describing services, the general idea being that services are resource too. See RDF Forms, OWL-S, RPP, Saddle, WSMO etc.

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/12/2005 5:09 AM Duncan Hull
Following on from Danny, and talkiing of actually having a problem to solve before creating a solution, in biology there are now 1000 services to describe (RESTian, SOAPian and CORBA-like). We've come up with <a href="http://www.cs.man.ac.uk/~phillord/download/publications/european_semantic_web2005_feta.pdf">Feta</a> a tool which uses OWL/RDF to annotate services.

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/12/2005 6:02 AM x
"it's a spec only a tool vendor could truly love"

Says it all...

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/12/2005 6:50 AM Randy Charles Morin
WSDL2 can describe both REST and SOAP too!

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/12/2005 8:31 AM Dave Orchard
WSDL 2.0 can certainly describe REST services. I've provided Atom, Yahoo, a dummy music service, and Hotel reservation WSDL 2.0 examples.

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/13/2005 3:36 AM Leigh Dodds
There's also Mark Baker's RDF Forms.

See my posting for links and pointers to discussion rest-discuss:

http://www.ldodds.com/blog/archives/000190.html

# re: Web Service Description Languages: When There is Nothing Left To Take Away 5/13/2005 7:35 AM Mark Baker
Woohoo, two pointers to RDF Forms!

I should add that RDF Forms isn't a "service description language" like most of the others, it's a forms language. All it needs for a service description language is HTTP. Forms languages are different in that they describe part of the application state machine. For example, they might be used to describe how to proceed from a description of a collection of things, to one or more of the individual things within the collection based upon a set of input parameters. FWIW, WSDL 2.0 has some form-like features too.

# SDLs Continued: Finding the Value Proposition in Describing Web Services 5/16/2005 7:53 AM Dion Hinchcliffe's Blog - Musings and Ruminations


# Web Service Description Languages 5/21/2005 8:07 AM HOLLOBLOG (ֺε)
[via Dion Hinchcliffe] W3C WSDL(Web Services Description Language) 2.0 ?? Working Draft j ? ?? ? ?j ??. Service Description , ? REST ? U ? ? ?. Web Service...

# re: Web Service Description Languages: When There is Nothing Left To Take Away 11/3/2005 8:51 PM ZXC
Great site! Thanks!
http://phentermine-online.fbhosting.com

# re: Web Service Description Languages: When There is Nothing Left To Take Away 12/3/2005 7:15 AM Alissa
Imiquimod (Aldara) is an immunomodulator approved for the treatment of external genital and
perianal warts in adults.

# re: Web Service Description Languages: When There is Nothing Left To Take Away 9/25/2006 5:13 AM levan
http://www.axiagapitos-spoydaios.gamisi69.com ^^^ http://www.me-to-podi-binteo.gamisi69.com ^^^ http://www.vaghalsig-tjejer-alska.knulla69.com ^^^ http://www.enorm-sekretar-grupperna.knulla69.com ^^^ http://www.vriendelijk-nympho-vuistneukend.grotepik.info ^^^ http://www.fantastisch-students-groepssex.grotepik.info ^^^ http://www.skremmende-lesbisk-kjonn.kukk.info ^^^ http://www.merkelig-cowboyjente-full.kukk.info ^^^ http://www.risible-pupille-pute.torsenue.info ^^^ http://www.etrange-asiatique-amour.torsenue.info ^^^ http://www.tharaleos-gramateas-mouni.tsoula.info ^^^ http://www.synesthimatikos-efivos-avnanismos.tsoula.info ^^^ http://www.good-looking-infermiera-masturbate.vacche.info ^^^ http://www.intrepido-lesbiche-inculate.vacche.info ^^^ http://www.tytot-suihinotto-kylvyssa.huora.info ^^^ http://www.omalaatuinen-tytsyt-aasi-naida.huora.info ^^^ http://www.guddommelig-lesbisk-muffle-up-diving.knulle.info ^^^ http://www.hige-etter-lesbisk-dobbel-gjennomtrengning.knulle.info ^^^ http://www.emotie-meisjes-striptease.neuker.info ^^^ http://www.baas-students-fisting.neuker.info ^^^ http://www.modig-snut-asna-till-mun.spermiedos.info ^^^ http://www.snallare-elev-kon.spermiedos.info ^^^ http://www.zanurzuanie-poczatkujacych-warg.ah.xsx.pl ^^^ http://www.dziwka-obciaganie-oralnie.uh.xsx.pl ^^^

# re: 12/23/2007 12:40 PM levitra south africa
<a href="http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html">http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html">prozac">http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html">http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html">prozac sexual side effects female</a> [url=http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html">http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html]prozac sexual side effects female[/url] http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html">http://prozac-sexual.megawebtop.info/prozac-sexual-side-effects-female.html <a href="http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html">http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html">meridian">http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html">http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html">meridian mall shopping ctr</a> [url=http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html">http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html]meridian mall shopping ctr[/url] http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html">http://meridia-lawyer.megawebtop.info/meridian-mall-shopping-ctr.html <a href="http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html">http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html">generic">http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html">http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html">generic levitra guaranteed quality</a> [url=http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html">http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html]generic levitra guaranteed quality[/url] http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html">http://levitra-directions.megawebtop.info/generic-levitra-guaranteed-quality.html <a href="http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html">http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html">prozac">http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html">http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html">prozac has side effects</a> [url=http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html">http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html]prozac has side effects[/url] http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html">http://prozac-seritonin.megawebtop.info/prozac-has-side-effects.html <a href="http://propecia-hr.megawebtop.info/propecia-and-marijuana.html">http://propecia-hr.megawebtop.info/propecia-and-marijuana.html">propecia">http://propecia-hr.megawebtop.info/propecia-and-marijuana.html">http://propecia-hr.megawebtop.info/propecia-and-marijuana.html">propecia and marijuana</a> [url=http://propecia-hr.megawebtop.info/propecia-and-marijuana.html">http://propecia-hr.megawebtop.info/propecia-and-marijuana.html]propecia and marijuana[/url] http://propecia-hr.megawebtop.info/propecia-and-marijuana.html">http://propecia-hr.megawebtop.info/propecia-and-marijuana.html

# 12 Things You Should Know About REST and WOA 4/8/2008 9:42 AM Dion Hinchcliffe's Blog - Musings and Ruminations


# 12 Things You Should Know About REST and WOA 4/8/2008 9:42 AM Dion Hinchcliffe's Blog - Musings and Ruminations


# 12 Things You Should Know About REST and WOA 4/8/2008 9:44 AM Dion Hinchcliffe's Blog - Musings and Ruminations


What do you have to say?

Title:
Name:
Url:
Comments: 

Protected by Clearscreen.SharpHIPEnter the code you see: