> > The best answer probably is: > > You use a collection of HTML pages. > > Which isn't as much use as a nice and formal WSDL > which can be quickly > consumed by standard tools. REST really needs to > address this issue > as versioning documents (which is what HTML is) is a > step back over a > formal and technical interface spec IMO.
How is an HTML FORM not a formal, technical interface spec? It exposes a simple data structure (a multi-value string dictionary), but otherwise, I thought simplicity was a good thing when appropriate. WSDL provides very little formality. WSDL just provides code generation tools guidance on what global elements to use for operations, bodies, and faults. In a loosely coupled system, this frankly should be runtime metadata. This whole edifce, to me, strikes me as ridiculously brittle. A schema like RelaxNG or XSD provides quite a bit more formal value, though it's mostly syntactic. WSDL says little of pre/post conditions, invariants, versioning (!), and requires lots of care in designing an extensible interface. All of these require localized, specialized solutions, and copious human readable policy. REST still needs the above too, except with REST it's all just hypermedia, so arguably more findable, immediate, up-to-date, and easy to understand. HTML FORMs are naturally extensible, can link to newer versions, and can even leverage mobile code execution for optionally enforcing pre-conditions on the client side. This model strikes me as many leaps ahead of WSDL (except in terms of describing more complex data structures). > I'll check out WADL, for me this lack of a standard > mechanism is a big > mark down for REST as an enterprise solution so I'm > assuming something > will be sorted in the next 12 months. I think XForms likely is a direction REST will go to formally describe more complex data structures in hypermedia. Or the Atom publishing protocol for handling categorized, timeseries data. Cheers Stu ____________________________________________________________________________________ Yahoo! Music Unlimited Access over 1 million songs. http://music.yahoo.com/unlimited
