- From: Robin Berjon <robin@berjon.com>
- Date: Fri, 18 Dec 2009 17:22:47 +0100
- To: Larry Masinter <masinter@adobe.com>
- Cc: Marcin Hanclik <Marcin.Hanclik@access-company.com>, "www-tag@w3.org" <www-tag@w3.org>
On Dec 17, 2009, at 03:20 , Larry Masinter wrote: > I actually think the TAG discussions about versioning and the use of version > indicators has been helpful, but it's been hard to drive this to a publication, > because there's still some work to be done. However, I think the main insight > I've had is that version indicators have limited (but non-zero) utility in > situations where the popular language implementations evolve independently > of published language specifications. Normally, if language implementations > follow language specifications closely, you can use the version number of > the specification as a good indicator of the version number of the language. That's not how I would characterise it. For error-handling and versioning purposes, you can get much, much more mileage out of defining processing rules (ignore-unknown, must-understand, etc.) than you get out of version indicators — especially given the fact that if you produce a truly incompatible new version of a given language, you really should just change the namespace. Once you have bi-compatible processing rules, and a contract that breaking changes must lead to a new language (because conceptually, if it's not mutually intelligible, it really is a different language), well you quickly find that any version indicator is either a) correct, but entirely useless; or b) incorrect (and therefore potentially harmful). So I don't think that it's a question of whether implementations drift compared to specifications — even though in practice that's a factor. The problem is that using a version indicator is *not* a versioning strategy, but as soon as you start having a versioning strategy you cease needing a version indicator. > I'm not quite sure what "P&C" is, to know how this analysis applies to it. P+C is the Packaging and Configuration widgets specification, which defines an XML language that has no version indicator (some people asked for one, but no one could demonstrate a use for it) but does have a set of ignore-unknown versioning (and extensibility) rules. It has been shown to be trivially grown and extended without compatibility issues nor version indicators. -- Robin Berjon - http://berjon.com/
Received on Friday, 18 December 2009 16:23:47 UTC