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 :

Conserver l'ordre des éléments


Sujet :

XSL/XSLT/XPATH XML

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 3
    Par défaut Conserver l'ordre des éléments
    Bonjour,
    Mon problème c'est d'afficher une résultat avec XSLT de même ordre que la squelette du fichier source, pour mieux comprendre voici l'exemple suivant :
    <A>
    <B/>
    <B/>
    <C/>
    <D/>
    <C/>
    </A>

    Pour chaque B on afficher b, C on affiche c et D on afficher d. Donc la résultat sera comme suite : bbcdc.
    Autre exemple :
    <A>
    <C/>
    <C/>
    <C/>
    <D/>
    <B/>
    </A>

    La résultat sera : cccdb
    Autre exemple :
    <A>
    <B/>
    <D/>
    <C/>
    <B/>
    <B/>
    <C/>
    </A>

    La résultat sera : bdcbbc.
    Pour chaque fichier source donnée on veux avoir une résultat de même ordre que la squelette. Comment je peut faire ça avec XSLT, SVP.
    Merci pour votre attention

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Avec des templates. L'idée est de considérer XSLT un peu comme CSS : on déclare des règles à appliquer aux éléments... Et ces règles s'appliquent dans l'ordre où les éléments sont rencontrés, bien sûr.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:template match="B">b</xsl:template>
    et pareil pour les autres éléments.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Futur Membre du Club
    Inscrit en
    Février 2011
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 3
    Par défaut
    Mais le problème c'est que je ne peut pas faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:template match="/"><xsl:template match="B">b</xsl:template>....</xsl:template>
    parce que mon travaille ne s'arrête pas sur cette transformation j'ai d'autre transformation a faire. Il n'y a pas d'autre solution ?

  4. #4
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Un template ne peut pas être dans un autre template, non.

    Mais il suffit d'appeler l'application des templates avec <xsl:apply-templates>.
    De toute façon j'ai donné la solution générale, mais si ce n'est pas exactement ce qu'il te faut, eh bien tu vas devoir montrer du concret.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. [C#] Inverser l'ordre des éléments d'une Hashtable
    Par lancer83 dans le forum Windows Forms
    Réponses: 10
    Dernier message: 31/08/2006, 20h03
  2. [Struts] ordre des éléments dans un tableau de propriétés
    Par zais_ethael dans le forum Struts 1
    Réponses: 2
    Dernier message: 09/05/2006, 15h54
  3. [XSL][débutant]trié l'ordre des éléments d'un fichier xml
    Par pistache42 dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 19/04/2006, 10h37
  4. [XSL] Ordre des éléments présentés
    Par Cupidon dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 23/01/2006, 13h58
  5. [C#] ordre des éléments dans un datagrid
    Par liliprog dans le forum ASP.NET
    Réponses: 3
    Dernier message: 19/09/2005, 16h31

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