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 :

[XSLT] Construction d'une chaîne de caractère complexe


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Août 2006
    Messages
    22
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Août 2006
    Messages : 22
    Points : 18
    Points
    18
    Par défaut [XSLT] Construction d'une chaîne de caractère complexe
    Bonjour,

    Dans un attribut d'un élément j'ai:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <wsdl:message name="doGoogleSearch">
    		<wsdl:part name="key" type="xsd:string"/>
    		<wsdl:part name="q" type="xsd:string"/>
    		<wsdl:part name="start" type="xsd:int"/>
    		<wsdl:part ..</wsdl:message>

    en sortie avec xslt j'aimerai obtenir:

    key = xsd:string, q = xsd:string,start = int, etc..

    Avec Java par exemple je ferais ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for(..){
        String res = res + nouvelleValeur 
    }

    Mais en xslt il est malheureusement impossible de reaffecter une variable.

    Quelqu'un a une solution ?

    Merci

  2. #2
    Membre éclairé
    Inscrit en
    Octobre 2005
    Messages
    847
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 847
    Points : 841
    Points
    841
    Par défaut
    pourquoi réaffecter une variable? c'est juste une question d'affichage. donc il suffit de boucler sur les elements "part" et d'afficher à chaque fois les attributs "name" et "type" sans faire de saut de ligne mais en inserant une virgule entre chaque deux affichage.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    for(part){
        System.out.println(name+" = "+type+",")
    }

  3. #3
    Membre éprouvé
    Profil pro
    Responsable Dev
    Inscrit en
    Décembre 2003
    Messages
    788
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations professionnelles :
    Activité : Responsable Dev

    Informations forums :
    Inscription : Décembre 2003
    Messages : 788
    Points : 1 063
    Points
    1 063
    Par défaut
    en xslt tu ne peux réaffecter une variable cela ne veut pas dire que tu ne peux pas faire de boucle et chercher à savoir si l'élément que tu traites n'est pas le dernier.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    <xsl:variable name="tutu">
        <xsl:for-each select="./wsdl:part">
    			<xsl:apply-templates select="@name"/>
    			<xsl:text>=</xsl:text>
    			<xsl:apply-templates select="@type"/>
    			<xsl:if test="not(position()=last())">
    				<xsl:text>,</xsl:text>
    			</xsl:if>
        </xsl:for-each>
    </xsl:variable>

Discussions similaires

  1. Réponses: 8
    Dernier message: 12/02/2013, 01h08
  2. Réponses: 16
    Dernier message: 10/07/2008, 15h55
  3. [Debutant(e)] Analyse d'une chaîne de caractères
    Par maire106 dans le forum Langage
    Réponses: 6
    Dernier message: 22/03/2004, 15h04
  4. Inverser une chaîne de caractères
    Par DBBB dans le forum Assembleur
    Réponses: 2
    Dernier message: 30/03/2003, 11h09
  5. Réponses: 3
    Dernier message: 09/05/2002, 01h39

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