From: Cyril Jandia (cjandia@logfi.fr)
Date: 27/05/2002 - 12:27
> De : Pierre Attar
> À : xml-tech@xmlfr.org
> Objet : [xml-tech] msxml:script
>
> Bonjour,
>
> Une petite question concernant le fonctionnement de msxml avec les scripts.
>
> [...]Pour ce faire, j'ai écrit :
> [...]Mon problème, c'est que dans la fonction LookupEntity, une fois appelée,
je
> n'arrive pas à récupérer le node. Par exemple, quand j'essaye seulement de
> retourner le nom du node (node.nodeName), je me retrouve avec un
> "undefined". J'ai essayé de faire l'appel avec tir:LookupEntity(this), même
> chose, pas de node.
Normal : sachez que l'interface de liaison valeurs formelles/valeurs effectives
qui a lieu entre une fonction d'extension qui provient d'un <msxsl:script...> et
les expressions XPath de type "pattern" (comme par exemple l'appel "...
tir:LookupEntity(.) ..." dans votre cas) est réalisée -pour MSXML ainsi que pour
d'autres implémentations comme [Sablotron+Script]- via des [NodeList]s DOM et
non pas simplement des [Node]s DOM ! (la raison ? voir, pour rappel :
[node-sets, patterns] au sens XSLT... ;=)
Ainsi, essayez plutôt qqchose comme :
...
<msxsl:script language="JScript" implements-prefix="tir"><![CDATA[
function LookupEntity(theNodeList) {
var elem = theNodeList.item(0);
var ref = elem.getAttribute("source");
//... etc : mais, quant au reste de votre fonction de script...
//... je ne suis pas sûr!
//...à vous de voir (étape par étape... ;=)
}
]]></msxsl:script>
...
> Avez-vous une idée ? Quelqu'un a-t-il déjà fait cela ?
>
> Merci,
DOM [Node]s :
http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core.html#ID-195064
1247
DOM [NodeList]s :
http://www.w3.org/TR/1998/REC-DOM-Level-1-19981001/level-one-core.html#ID-536297
177
[Sablotron+Script]
http://lxr.gingerall.cz/sablot/source/README_JS
[node-sets, patterns]
http://www.w3.org/TR/xslt#patterns
"[...]An expression that is also a pattern always evaluates to an object of type
node-set[...]"
http://xmlfr.org/w3c/TR/xslt#patterns
"[...]Une expression, qui est aussi un motif, donne toujours comme résultat un
objet qui est un ensemble de noeuds[...]"
Cordialement,
Cyril Jandia
--
Devenez redacteur <XML>fr et contribuez au developpement du
xml francophone (http://xmlfr.org/infos/redacteurs/) !
Liste de diffusion "xml-tech@xmlfr.org" (http://xmlfr.org).
Cette liste est a votre disposition pour discuter en francais de
tout sujet technique lie a XML.
Pour resilier votre abonnement, envoyez un message contenant
la commande "unsubscribe" a xml-tech-request@xmlfr.org
(mailto:xml-tech-request@xmlfr.org?Subject=unsubscribe)
Archive générée par hypermail 2.1.3 le 28/06/2004 - 11:06 UTC
webmaster@xmlfr.org
|