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] Selection d'éléments 4 par 4


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre habitué Avatar de VinnieMc
    Inscrit en
    Décembre 2005
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 208
    Points : 161
    Points
    161
    Par défaut [XSLT] Selection d'éléments 4 par 4
    Bonjour,

    j'ai un document xml avec une strcuture proche de celle-ci:

    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
    20
    21
     
    <texte>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    </texte>
    <texte>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    <ligne>....</ligne>
    </texte>
    j'aimerais savoir comment faire pour traiter les éléments <ligne> 4 par 4, traiter les 4 premiers puis les 4 suivants etc.

    Merci

  2. #2
    Membre éprouvé Avatar de laurentibus
    Inscrit en
    Mars 2008
    Messages
    875
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2008
    Messages : 875
    Points : 908
    Points
    908
    Par défaut
    il faut que tu fasses un templates avec match sur "ligne"

    tu fais un apply template 4 fois après

  3. #3
    Membre habitué Avatar de VinnieMc
    Inscrit en
    Décembre 2005
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 208
    Points : 161
    Points
    161
    Par défaut
    Bonjour,

    tu veux dire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    <xsl:template match="Ligne">
    		<xsl:apply-templates></xsl:apply-templates>
    		<xsl:apply-templates></xsl:apply-templates>
    		<xsl:apply-templates></xsl:apply-templates>
    		<xsl:apply-templates></xsl:apply-templates>
    </xsl:template>
    ça ne marche pas. En fait mon but est de crér un .fo pour générer un pdf avec un tableau qui possède 4 cellules par ligne que je remplis avec les <Ligne>.

  4. #4
    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
    je pense qu'il faut que tu utilises la notion de position()

  5. #5
    Membre du Club
    Inscrit en
    Janvier 2007
    Messages
    50
    Détails du profil
    Informations forums :
    Inscription : Janvier 2007
    Messages : 50
    Points : 56
    Points
    56
    Par défaut
    2 solutions :
    - position()
    - mod 4 (les modulos)

  6. #6
    Membre habitué Avatar de VinnieMc
    Inscrit en
    Décembre 2005
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 208
    Points : 161
    Points
    161
    Par défaut
    Bonjour,

    pourriez vous être un peu plus explicite s'il vous plaît, algorithmiquement parlant j'entends. Je vois à peu près avec position() mais pas avec mod. Si vous pouviez me dire comment les utiliser se serait très gentil (en langage naturel ça ira je me charge d'écrire le code).

    Merci.

  7. #7
    Membre habitué Avatar de VinnieMc
    Inscrit en
    Décembre 2005
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 208
    Points : 161
    Points
    161
    Par défaut
    Re-bonjour,

    c'est bon pour le mod 4 (match=Ligne[(position() mod 4) = 0]) j'ai compris comment faire, mais pas pour le position vu que les variables sont des constantes en xslt.

    Merci

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

Discussions similaires

  1. Additioner un élément reçu par SELECT
    Par nef1912 dans le forum Langage
    Réponses: 10
    Dernier message: 01/05/2014, 13h57
  2. [AJAX] Construction select avec élément sélectionné par défaut
    Par Pelote2012 dans le forum jQuery
    Réponses: 4
    Dernier message: 19/03/2013, 15h08
  3. [XSLT] Récupérer un attribut sur un élément pointé par un IDREF
    Par Folken Laëneck dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 13/05/2007, 07h31
  4. Selection d'une version par produit
    Par LaNat dans le forum Langage SQL
    Réponses: 12
    Dernier message: 09/06/2005, 08h19
  5. Réponses: 11
    Dernier message: 15/04/2005, 15h42

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