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] Création d'un filtre selon la valeur d'un attribut [Débutant(e)]


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre du Club Avatar de lemok
    Inscrit en
    Mai 2007
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 83
    Points : 52
    Points
    52
    Par défaut [XSLT] Création d'un filtre selon la valeur d'un attribut
    Bonjour,

    je souhaiterai recuperer une partie d'un flux XML. toutes balises XML aillant une class="secure" comme attribut ainsi que les noeuds qu'elle contient.

    voici mon code XML :

    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0"?>
    <Test>touctouc
    	<balise1 class="secure">alors!
    		<b1> test1 <autre>tiens tiens!</autre></b1>
    		<b2> test2 </b2>
    		<b3> test3 </b3>
    	</balise1>
    	<balise2>rien de special</balise2>
    	<balise3 class="secure">
    		<b5> donnee1 </b5>
    		<b6> donnee2 </b6>
    	</balise3>
    </Test>

    et le code XSLT que j'ai "bricollé"

    Code xml : 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:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" version="1.0"
    encoding="UTF-8" indent="yes"/>
     
     <xsl:template match="node()[@class='secure']">
     <xsl:copy>
    	<xsl:apply-templates select="descendant-or-self::node()" />
     </xsl:copy>
     </xsl:template>
     
    	<xsl:template match="node()">
    	<xsl:for-each select="node()[@class ='secure']">
    		<xsl:copy>
    		<xsl:value-of select="descendant-or-self::node()" />
    		</xsl:copy>
    	</xsl:for-each>
    	</xsl:template>
     
    </xsl:stylesheet>
    PS: ça m'affiche bien les balises contenant l'attribut class="secure" mais pas celle des noeuds qu'elle contient.

    Merci d'avance à celui qui poura m'aider

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    1 466
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 1 466
    Points : 1 610
    Points
    1 610
    Par défaut
    Ca, ça devrait marcher:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <xsl:template match="/">
    <test>
    <xsl:apply-templates select="//*[@class='secure']" />
    </test>
    </xsl:template>
     
    <xsl:template match="node()[@class='secure']">
    <xsl:copy-of select="."/>
    </xsl:template>
     
     
    </xsl:stylesheet>

  3. #3
    Membre du Club Avatar de lemok
    Inscrit en
    Mai 2007
    Messages
    83
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 83
    Points : 52
    Points
    52
    Par défaut
    Citation Envoyé par Morbo
    Ca, ça devrait marcher:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <xsl:template match="/">
    <test>
    <xsl:apply-templates select="//*[@class='secure']" />
    </test>
    </xsl:template>
     
    <xsl:template match="node()[@class='secure']">
    <xsl:copy-of select="."/>
    </xsl:template>
     
     
    </xsl:stylesheet>
    ça marche!! merci bien ça me permet d'avancer dans le projet!

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

Discussions similaires

  1. [AC-2007] Ouvrir un formulaire filtré selon la valeur DropDown du ruban
    Par Nephyline dans le forum VBA Access
    Réponses: 2
    Dernier message: 18/09/2009, 12h48
  2. [XSLT] Selectionner une balise selon la valeur de son attribut
    Par Monkon dans le forum XSL/XSLT/XPATH
    Réponses: 10
    Dernier message: 03/09/2009, 17h03
  3. [XPATH] Selectionner un noeud selon la valeur de son attribut
    Par Gregco dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 29/10/2007, 15h34
  4. Réponses: 1
    Dernier message: 17/03/2007, 20h32
  5. Réponses: 1
    Dernier message: 20/05/2006, 11h46

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