Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 4 sur 4
  1. #1
    Invité de passage
    Inscrit en
    décembre 2011
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : décembre 2011
    Messages : 4
    Points : 0
    Points
    0

    Par défaut XML/XSL parcours itératif et récursif

    Bonjour,

    J'ai quelques questions si cela est possible sur un petit exercice de XSL.

    L'exercice est le suivant:

    Exercice:
    Q1)Ecrivez une feuille de style xsl qui permet de générer en html la feuille d'examen(la feuille d'examen correspond à mon fichier exo_2.xml de mon repertoire question1) c'est à dire ne contenant que les exercices et les questions en utilisant un parcours itératif.Affichez le titre, le mois et l'année de l'examen. On supposera qu'il n'y a qu'un seul niveau de question.

    Q3)Ecrivez une feuille de style xsl qui permet de générer en html la feuille d'examen(la feuille d'examen correspond à mon fichier exo_2.xml de mon repertoire question3)c'est à dire ne contenant que les exercices et les questions en utilisant un parcours récursif.Affichez le titre, le mois et l'année de l'examen. On supposera qu'il y a plusieurs niveaux de question.


    J'ai essayé de répondre à ces deux questions (voir svp pieces jointes), cependant que cela soit en parcours itératif ou récursif je n'arrive pas à afficher tous ce qui est dans la deuxième balise "question" de la balise "questions" pour chacune des balises "exercice" du document xml en question pour la question 1 et la question 3.

    Je vous remercie infiniment pour toutes les aides!

    Cordialement.
    Fichiers attachés Fichiers attachés

  2. #2
    Modérateur

    Inscrit en
    septembre 2004
    Messages
    9 683
    Détails du profil
    Informations forums :
    Inscription : septembre 2004
    Messages : 9 683
    Points : 15 942
    Points
    15 942

    Par défaut

    Ben, de même que tu as fait une boucle for-each sur /examen/listeExo/exercice, il faut mettre à l'intérieur une autre boucle xsl:for-each sur tout ce que tu veux énumérer.

    Pour l'exercice récursif, même chose : ce que tu as fait pour parcourir l'un, tu le fait aussi pour parcourir l'autre.
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher du poisson, il videra le lac et au bout de deux ans son village ne mangera plus jamais.
    Partagez vos connaissances, mais aussi comment s'en servir.

  3. #3
    Invité de passage
    Inscrit en
    décembre 2011
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : décembre 2011
    Messages : 4
    Points : 0
    Points
    0

    Par défaut

    Citation Envoyé par thelvin Voir le message
    Ben, de même que tu as fait une boucle for-each sur /examen/listeExo/exercice, il faut mettre à l'intérieur une autre boucle xsl:for-each sur tout ce que tu veux énumérer.

    Pour l'exercice récursif, même chose : ce que tu as fait pour parcourir l'un, tu le fait aussi pour parcourir l'autre.
    Oui en faite j'avais eu cette idée mais je n'ai pas réussi je vous ré-envois le fichier xsl du repertoire "question1".

    Merci d'avance.
    Fichiers attachés Fichiers attachés

  4. #4
    Modérateur

    Inscrit en
    septembre 2004
    Messages
    9 683
    Détails du profil
    Informations forums :
    Inscription : septembre 2004
    Messages : 9 683
    Points : 15 942
    Points
    15 942

    Par défaut

    Tu as remarqué que dans ta directive :

    Code :
    <xsl:value-of select="corrige/nomFichier"/>
    ce que tu mets dans le select= ne commence pas par un / ?
    C'est une idée intéressante, n'est-ce pas ? Ne pas commencer par un / et pourtant, ça a l'air de très bien marcher...
    Si tu donnes un poisson à un homme, il mangera un jour. Si tu lui apprends à pêcher du poisson, il videra le lac et au bout de deux ans son village ne mangera plus jamais.
    Partagez vos connaissances, mais aussi comment s'en servir.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •