- From: Andrew Welch <andrew.j.welch@gmail.com>
- Date: Wed, 18 Mar 2009 12:34:15 +0000
- To: Robin Berjon <robin@berjon.com>
- Cc: marcosc@opera.com, Thomas Landspurg <thomas.landspurg@gmail.com>, SUZANNE Benoit RD-SIRP-ISS <benoit.suzanne@orange-ftgroup.com>, public-webapps@w3.org
Hi Robin, > The idea is that in version 1.1, 1.2, perhaps even 2.0, 3.0 we just add > elements and attributes, and when they are not understood they are simply > skipped. Ok, but you do of course open yourself up to typos not revealing themselves until quite far down the line (after parsing anyway) > You describe further applications of a version attribute, notably the > ability to give a "proper error" (you have a v1 processor, this is a v2 > document) and the ability for an implementation to switch code paths. > > For one, errors that the end-user can't do much about should be proscribed > as much as possible. If your phone tells you you need a v2 user agent, > there's not much that the average user can do. ...but at least you'll know why it's not working, as opposed to it just not working. With explicit versioning, there's potential for the client to update itself. > You also don't address the case of a user stating that a document is v1 but > using v2 features. That's going to happen a lot, not just because of > copy-pasting but simply because people don't know which version added what > feature. Do you know which version of HTML added sup, blockquote, listing, > tab, font, math, em, or the script attribute on form? I think of it in reverse - if you want to use feature x, you know need at least version x. Equally, decent editors will tell you when there's a problem. At least with explcit versioning, you know you want feature x from version 2.0, but your device currently only supports 1.0 - you don't have to try it and see.... > - ignore what you don't know > - in a new version, add new features in such a way that ignoring them > doesn't break anything > - if and only if you need to make a new version that can't be made > compatible, then change the namespace The two issues I see are: - ignoring things you don't know means you discover problems like simple typos late in the day, I thought the web was moving towards stricter processes? :) - how do you know which schema to validate the xml with? Given a lump of xml that looks like a widget config, how would you decide which version of the schema to use to validate it with? Or would you not validate it, and just let it fail during processing? I'm still not totally convinced either way, but I do see the benefits of explicit versioning, and not really any drawbacks... -- Andrew Welch http://andrewjwelch.com Kernow: http://kernowforsaxon.sf.net/
Received on Wednesday, 18 March 2009 12:34:57 UTC