- From: Henry S. Thompson <ht@inf.ed.ac.uk>
- Date: Tue, 13 Oct 2009 13:42:47 +0100
- To: public-xml-processing-model-comments@w3.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I had a chat about this general issue with Richard Tobin over lunch, and here's my (possibly imperfect) attempt to reconstruct his suggested approach: The problem that having up-to-date signatures for Vnext steps solves for Vlast processors is, basically, what to do with steps it doesn't really understand. So remove that problem directly. Don't rely on p:choose or p:try/p:catch to manage compatible processing, which amounts to doing it at the semantic level. Use C interop best practice as your guide, and do it at the syntactic (== #ifdef) level. Specifically, add a _new_ element, call it p:switch, which looks like this: <p:switch> <p:version case="...."> sub-pipeline </p:version> <p:version case="...."> sub-pipeline </p:version> </p:switch> [Names of elts and attrs, of course, subject to negotiation] The only predicates allowed in p:version/@case are p:system-property and p:step-available. Processors must treat a p:switch as if it were replaced by the first sub-pipeline whose case expression evaluates to true. No examination of the contents of the p:version branches is needed. If the chosen subpipeline uses steps which aren't known to the processor, you lose. If any part of the chosen subpipeline's signature is incompatible with the surrounding steps, you lose. It's not clear to me that there's any need for a weak (advisory) version attribute if we go this route, but a strong one ('must-have') might still be useful. ht - -- Henry S. Thompson, School of Informatics, University of Edinburgh Half-time member of W3C Team 10 Crichton Street, Edinburgh EH8 9AB, SCOTLAND -- (44) 131 650-4440 Fax: (44) 131 651-1426, e-mail: ht@inf.ed.ac.uk URL: http://www.ltg.ed.ac.uk/~ht/ [mail really from me _always_ has this .sig -- mail without it is forged spam] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.6 (GNU/Linux) iD8DBQFK1HXHkjnJixAXWBoRAvL8AKCBhDObPJMkyiXjVlMJoG23UpauuQCfb2vH 4sk80vhkDigdsSd7JrdElEI= =b/fH -----END PGP SIGNATURE-----
Received on Tuesday, 13 October 2009 12:43:18 UTC