i have an experiment; will you help?
i have an experiment. i've been working on the details for a short time and was planning to "out" this project in March, but recent online discussions around hypermedia have convinced me that now is a good time to bring this up - even if it still needs a few minor adjustments.
the experiment
in this experiment multiple parties must build client and/or server applications to match a spec; all w/o seeing each other's work. IOW, there is no "sample" running somewhere. in addition, the "application" uses XHTML as the base media type (sorry, no custom media type this time[grin]). finally, the only instructions for this experiment are found in a single document that contains the "semantic profile" of the target web application expressed via selected XHTML attributes (@class, @id, @name, and @rel) along with "valid values" for these attributes, descriptions of how they are used in representations, and "what these values mean."
an invitation
i invite folks to check out the document and give me any feedback you like. you can place comments here or send me email directly. i am particularly looking for feedback on the following questions:
- do you think a document of this type can adequately communicate enough info for you to build a "compliant" client or server?
- if not, what is missing? needs better explanation? or what else should be done instead?
- even if this experiment "works" as expected, is this a reasonable way to describe a hypermedia implementation? does it scale well for larger, more complex projects?
- if you think this kind of approach would scale, is it something that would work with the tools you have? would you be able to use this pattern in your workplace?
a call for volunteers
finally, while this document is still in draft mode, i will soon be looking for volunteers for the next step in this project. folks who will be willing to do the work of implementing clients and servers "blindly" and then seeing how well the clients and severs work together. would you be willing to actually work on an implementation in the next part of my experiment? if yes, please send me an email and i'll get back to you in the next couple weeks.
and here it is...
OK, assuming you didn't "jump ahead" here's is the link to my Application-Level Profile Semantics (ALPS) document for a hypermedia semantically-rich, RESTful web app (nice lingo, eh?).