Stefan: "Maybe there’s something immediately, obviously wrong with this idea — but if so, I can’t see it."
Stefan is tallking about the 'application/data-format' media type proposal - it takes a required parameter uri that links to an RDDL document that tells you about the media type. In effect trying to use indirection to solve a layer 8 problem - what does a representation mean?
I can think of at least two problems. Proliferation for one - a new problem is created wherby lots of of custom media formats are created - anyine who's worked in the content or XML business will know that people will define ill-conceived and badly designed formats at the drop of a hat. Mixed content for another - an old problem is not solved. The latter is significant and the proposal doesn't address it all, because it solves a non-problem. Specifically, the problem as descibed by Stefan,
"What’s wrong with application/xml? Nothing, really, except that it doesn’t tell you anything more than that what is being sent is XML: You don’t have any way to tell what XML it is unless you actually parse and e.g. look at the outer element’s XML namespace."
isn't the problem. The problem, limited to XML for the moment, is namespace mixing. The extreme of the problem appears most clearly in documents that are actually machine processable, such as RDF/XML ones, but have other semantics, such as OWL. Put another way, knowing "what XML is", isn't really the point. The core problem, if you're looking for one, is that XML itself doesn't have a semantics. Atom gets around this in a clever way by not allowing extensions to redefine what entries and feeds signify, but even there you still have to deal with the embedded content. For an example that doesn't require an understanding of formal interlingua, consider an XHTML document laced with microformats - what does the "application/data-format" mechanism get you there?
Another problem. Why tie the media type description mechanism to one particular format - RDDL? I think if the parameter were called 'about' instead of 'uri', that issue might be clearer.
Sorry, but 'applicaiton/data-format' seems to be the same approach to representations as overloaded POST is for protocol actions. It conflates the least meaningful signal with the most general one. It's no surprise that a few former WS-* fans are mooting this. If you want to indicate meaning, use intrinsically meaningful interlingua, not gensyms or links to gensyms. For The Web (FTW!), RDF/OWL is the best game in town as far as interlingua go.
"I saw that one enquiry only gave occasion to another, that book referred to book, that to search was not always to find, and to find was not always to be informed"
- Samuel Johnson, circa 1753