Roy Fielding:

I want templates to be easy for a computer to read and easy for a computer to generate from that reading a fully-descriptive page of information in the user's favorite language. For example, define a web service that inputs a template and outputs the readable description according to the Accept-Language received.

http://example.com/explain_template?{URItemplate}

I bet Joe could write one of those in an hour --

Who am I to refuse a challenge from Roy Fielding?

Presenting the URI Template Explainer Web Service. And it really did just take me an hour. Here is an example taken from my recent proposal:

http://bitworking.org/news/{&/|entrypath}
                           \____________/
                                  |      
                                  |      
                                  +-> Join the members of the list ['entrypath'] together with '/'.

Yes, it's 2007 and I just wrote a web service that produces ASCII art!

There are more examples on the web service page. The service itself has been checked into subversion, and has already been vastly improved by contributions from Dan Connolly.

And just to satisfy self-referential integrity, here is the URI Template Explainer explanation for the URI Template for the URI Template Explainer Web Service.

"the URI Template Explainer explanation for the URI Template for the URI Template Explainer Web Service." Images of Joe spinning slowly off into space muttering to himself.

Posted by Dave Pawson on 2007-10-19