IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

XSL/XSLT/XPATH XML Discussion :

[XSL] Passage de paramètres à un template


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club
    Inscrit en
    Février 2003
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 39
    Points : 46
    Points
    46
    Par défaut [RESOLU][XSL] Passage de paramètres à un template
    Bonjour,

    Une partie de mon application doit transformer un flux xml par le bias d'une feuille xsl. Tout fonctionne tres bien sauf une chose, je ne parviens pas à utiliser l'élément xsl:with-param lorsque j'applique mes template. Est ce car cette option n'est pas supporté par les outils utilisé par jaxp ou est ce mon code qui est incorrcte. Je poste un exmeple de mon code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <xsl:template match="navDetails">
       <navDetails>
          <xsl:apply-templates>
             <xsl:with-param name="unitnavDetails">unit</xsl:with-param>
             <xsl:with-param name="isocodenavDetails" select="ROW/ISOCODE"/>
          </xsl:apply-templates>
        </navDetails>
    </xsl:template>
     
    <xsl:template match="ROW/NAVPERSHAREVALUE_C">
        <xsl:param name="isocodenavDetails"/>
        <xsl:param name="unitnavDetails"/>
        <navPerShareValue>
           <currencyIsocodea3><xsl:value-of select="$isocodenavDetails"/></currencyIsocodea3>
           <unit><xsl:value-of select="$unitnavDetails"/></unit>
           <decimalNumber>12</decimalNumber>
           <amout><xsl:value-of select="."/></amout>
        </navPerShareValue>
    </xsl:template>

    Le path ROW/ISOCODE n'est portant pas vide, mais les varaibles ne semblent pas être passe au template car les champs unit et currecyisocode sont toujours vide.

    Merci d'avance pour votre aide. Bye...

  2. #2
    Membre confirmé
    Avatar de grishka
    Inscrit en
    Janvier 2003
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Janvier 2003
    Messages : 285
    Points : 499
    Points
    499
    Par défaut
    lorsque tu appelles apply-templates, XSLT parcoure récursivement l'arbre dont la racine est le noeud courant, à la recherche de template. Lorsqu'il n'en trouve pas, il applique le template par défaut qui se contente de poursuivre le parcours sans propager les paramètres.

    Tu devines maintenant ce qui se passe :
    entre ton noeud courant et NAVPERSHAREVALUE_C il y a au moins le noeud ROW qui apparemment n'a pas de template, donc le template par défaut est appelé. Celui-ci ne propageant pas tes paramètres à NAVPERSHAREVALUE_C.

    ca devrait marcher avec apply-templates select="ROW/NAVPERSHAREVALUE_C"
    "Les gens normaux croient que si ca marche, c'est qu'il n'y a rien à reparer. Les ingénieurs croient que si ca marche, c'est que ca ne fait pas encore assez de choses."
    --Scott Adams

  3. #3
    Membre du Club
    Inscrit en
    Février 2003
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 39
    Points : 46
    Points
    46
    Par défaut
    Merci Greg t'es un chef!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSL] Passage de paramétres
    Par Wells dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 16/05/2008, 09h59
  2. Passage de paramètres vers un template xsl
    Par Le lag dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 19/04/2006, 18h20
  3. [XSLT][Saxon]passage de paramètres à une template
    Par RB Greg dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 12/05/2005, 16h29
  4. Passage de paramètres ds un lien hypertext ds une page xsl
    Par lenoir_franck dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 22/04/2005, 10h09
  5. Accents et passage de paramètres XSL
    Par Jeweller dans le forum XMLRAD
    Réponses: 2
    Dernier message: 19/01/2005, 16h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo