- From: David Orchard <dorchard@bea.com>
- Date: Thu, 17 May 2007 14:26:42 -0700
- To: <noah_mendelsohn@us.ibm.com>, "Mark Baker" <distobj@acm.org>
- Cc: "Marc de Graauw" <marc@marcdegraauw.com>, "Marc de Graauw" <mdegraau@xs4all.nl>, <www-tag@w3.org>
What about incorporating a version # in the media type? Say application/soap+1dot2+xml, etc. Then say in the media type definition that by definition any minor version change is compatible, and any incompatible change will be accompanied by a major version change. I have a feeling that the dispatch on the version # is actually done later than the media type dispatch though. Namely that each media type stack handles the multiple versions. Cheers, Dave > -----Original Message----- > From: www-tag-request@w3.org [mailto:www-tag-request@w3.org] > On Behalf Of noah_mendelsohn@us.ibm.com > Sent: Thursday, May 17, 2007 12:22 PM > To: Mark Baker > Cc: Marc de Graauw; Marc de Graauw; www-tag@w3.org > Subject: Re: Media types and versioning > > > Mark Baker writes: > > > I think that your problem could be solved simply by minting a new > > media type when you break backwards compatibility. > > I can see the advantages, but I think there are also > disadvantages. First of all, certain languages go through > many, many revisions that are at least in some ways > incompatible. It's not clear to me that as a practical > matter the media type system is administered to handle the > repeated registrations that would follow from your > suggestion, and I'm also not convinced that the syntax of > media type identifiers is sufficiently flexible to do this > well. Which leads to my 2nd point: compatibility is in many > cases a matter of degree, and often applications want typing > mechanisms that help with negotiating specific aspects of > compatibility. > So, in the somewhat different world of Java, one does indeed > mint a new class name whenever one implements a new variant > of a class definition (very roughly analagous to a media type > in this story), but Java also provides the "interface" > abstraction, by which a new class can say "I > remain compatible with old conventions I1, I2, etc."). The > closest we > seem to get with media types is the application/xxxx+xml > convention, where a new language can say "but I remain > compatible with xml". That seems a bit limited. So, I think > what's happening in practice is that people are minting and > deploying new media types when, on balance, the disruption > caused by publishing under the new type is deemed the lesser > evil compared to any downsides of publishing the new content > under the old media type (e.g. deploying HTML that provides a > specific semantic for a tag that would have been ignored in a > previous version of HTML). > > -------------------------------------- > Noah Mendelsohn > IBM Corporation > One Rogers Street > Cambridge, MA 02142 > 1-617-693-4036 > -------------------------------------- > > > > > > > > > "Mark Baker" <distobj@acm.org> > Sent by: www-tag-request@w3.org > 05/16/2007 11:16 PM > > To: "Marc de Graauw" <mdegraau@xs4all.nl> > cc: "Marc de Graauw" <marc@marcdegraauw.com>, > www-tag@w3.org, > (bcc: Noah Mendelsohn/Cambridge/IBM) > Subject: Re: Media types and versioning > > > > On 5/16/07, Marc de Graauw <mdegraau@xs4all.nl> wrote: > > Mark Baker: > > > AFAICT, that's more or less what happens in the existing Web > > > architecture. HTTP messages carrying a document also > normally include > > > a media type, which is essentially a name for a series of > compatible > > > versions (e.g. "text/html" as a shortcut for HTML 2 + 3.2 > + 4.01 + 5 > > > etc..). > > > > Yes, but the list is not explicit, so it is not possible to exclude > > versions (you cannot say: do not process if your version is > lower than > > 4.01). That is not necessary for HTML, but for other languages (like > > medication, which example I use in my XML.COM article) it > often is, and > > that is the mechanism I wanted to describe in my article. > > I think that your problem could be solved simply by minting a new > media type when you break backwards compatibility. > > Mark. > > > > >
Received on Thursday, 17 May 2007 21:27:12 UTC