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

XML/XSL et SOAP Discussion :

problème de transformation xslt


Sujet :

XML/XSL et SOAP

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut problème de transformation xslt
    Bonjour;

    Je veux afficher les données d'un fichier xml dans une page html;

    j'ai fait un essai que je vous mets ci-joint ( testxsl.xsl) mais je ne sais pas comment je peux afficher le titre des colonne car je dois récupérer à l'avance le nombre maximal des colonnes par lignes

    Merci de m'aider à résoudre ce problème.
    testxsl.xslfich.txt

  2. #2
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    mais je ne sais pas comment je peux afficher le titre des colonne car je dois récupérer à l'avance le nombre maximal des colonnes par lignes
    C'est vrai. Mais la difficulté n'est pas de remplir les titres numérotés en séquence comme suggérer l'attribut @ordre dans l'élément Colonne. C'est une conception mauvaise si @ordre ne reflète que la position dans la séquence d'apparence : sinon et aux cas où il y a de Colonne caracterisé par l'attribut ordre, le problème devient bien plus compliqué et réel; et ce n'est pas le cas-ci comme tous les Lignes contienent bien treize Colonne sans déficit aucun. Si le nombre de Colonne est toujours le même, on peut toujours simple calculer le nombre en choisissant par harzard l'un des Ligne.

    Je ne sais pas si j'explique bien, je ne crois pas. Mais je peux vous montrer l'aproche plus génerique avec le nombre de Colonne variable. Mais comme je refuse de prendre l'attribut ordre avec les nombres en séquence comme une conception correcte, je ne refère aucunement cette donnée comme titre des colonnes.
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <xsl:template match="Donnees">
        <xsl:variable name="colonne_max">
            <xsl:for-each select="Ligne">
                <xsl:sort select="count(Colonne)" data-type="number" order="descending" />
                <xsl:if test="position() = 1">
                    <xsl:value-of select="count(Colonne)"/>
                </xsl:if>
            </xsl:for-each>
        </xsl:variable>
        <br/>
        <br/>
        <table border="1">
        <tr>
            <th>Ordre</th>
            <xsl:call-template name="remplissant_titre">
                <xsl:with-param name="maxx" select="$colonne_max" />
                <xsl:with-param name="init" select="1" />
            </xsl:call-template>
        </tr>
        <xsl:for-each select="Ligne">
            <tr>
                <td><xsl:value-of select="@ordre"/></td>
                <xsl:for-each select="Colonne">
                    <td><xsl:value-of select="." /></td>
                </xsl:for-each>
            </tr>
        </xsl:for-each>
        </table>
    </xsl:template>
     
    <xsl:template name="remplissant_titre">
        <xsl:param name="maxx" />
        <xsl:param name="init" />
        <xsl:if test="$init &lt;= $maxx">
            <th><xsl:value-of select="$init" /></th>
            <xsl:call-template name="remplissant_titre">
                <xsl:with-param name="maxx" select="$maxx" />
                <xsl:with-param name="init" select="$init+1" />
            </xsl:call-template>
        </xsl:if>
    </xsl:template>

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2014
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 37
    Localisation : Maroc

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Octobre 2014
    Messages : 9
    Points : 6
    Points
    6
    Par défaut
    Je te remercie pour ta réponse, je ne sais pas si l'attribut ordre des colonnes reflète uniquement la position ou bien une caractéristique de la colonne, sur les fichiers que j'ai c'est pareil que le fichier posté, c'est une énumération des colonnes, mais comme je travail sur un echantillon je vais demandé si ça une signification quelconque.

    encore une fois merci pour la réponse et toutes ces explications

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

Discussions similaires

  1. Problème de transformation XSLT part one
    Par zoltar_x dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 06/04/2009, 19h30
  2. [XSLT] Problème de transformation XSLT avec JAVA
    Par ploxien dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 28/09/2007, 16h47
  3. [XSLT]Problème de transformation d'un document XML.
    Par JM_Cholet dans le forum XSL/XSLT/XPATH
    Réponses: 6
    Dernier message: 16/01/2007, 13h29
  4. [WordML][XSLT] Problème de transformation
    Par fouhaa dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 24/05/2006, 15h22
  5. [XSLT] Problème de transformation XML avec un fichier xslt
    Par seb35 dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 24/04/2006, 22h02

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