La portabilité des applications XSLT est compromise !
Par Eric van der Vlist, Dyomedea
Paris, France,
mardi 21 mars 2000
Le débat a été lancé en simultané sur xsl-list@mulberrytech.com
et xml-dev@xml.org :
comment éviter que des extensions perçues comme indispensables par des développeurs XSL
et implémentées de manière incompatible par les différents processeurs XSL ne viennent
entraver la portabilité des applications.
Le problème est simple : la recommandation XSLT fourni certes une manière élégante
de définir des extensions en utilisant des espaces de noms (namespaces) distincts
qui ne viennent pas interférer avec l'espace "xsl:", il n'en reste pas moins vrai
que les développeurs dépendent de certaines extensions qui viennent compenser des
limitations de la recommandation et sont implémentées différemment (quand elles existent)
en fonction des processeurs XSL.
Sur la liste xsl-list, le débat à démarré suite aux annonces Microsoft évoquées
dans de précédents articles avant de se focaliser sur l'extension "node-set" permettant
de convertir un fragment d'arbre (result tree fragment) en nœud (nodeset).
Cette extension, implémentée (de manière incompatible) par XT et Saxon vient contourner
une limitation de la recommandation XSLT 1.0 qui interdit d'appliquer certaines opérations
(notamment "apply-templates" mais également tout accès via XPATH) sur des fragments d'arbres
(result tree fragments).
Sur la liste xml-dev, le débat a été lancé par David Megginson à propos de l'extension
permettant de générer des documents multiples et implémentée de manière incompatible
par XT, Xalan et Saxon.
Cette extension permet de générer, lors d'une même transformation XSL, plusieurs
documents (contenant, pas exemple, des présentations ou des formats différents ou
des sections différentes d'un même document).
David Megginson suggère d'écrire de manière informelle une proposition de
spécification pour cette extension et de la soumettre au W3C en utilisant le
canal d'un éditeur compréhensif.
Peut-être est-ce cette idée mériterait-elle d'être généralisée ?
Copyright 2000,
Eric van der Vlist.
|