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 :

problème de mise en forme du fichier xsl en html et balises xpath


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Candidat au Club
    Femme Profil pro
    profession libérale
    Inscrit en
    Août 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : profession libérale
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2011
    Messages : 10
    Points : 3
    Points
    3
    Par défaut problème de mise en forme du fichier xsl en html et balises xpath
    Bonjour à tous,
    désolé de poster un sujet xml aussi naÏf sur le site, mais je suis perdu. Je suis en profession libérale et j'ai un logiciel qui génère un fichier xml que je ne peux modifier. Mon souci est de sortir les données qu'il fournit en xsl.
    Or, je rencontre le pb suivant : à la maison, alors que j'ai la même version de IE (9) et utilise la même version de notepad++, le fichier xml (j'ai bien joint le fichier xsl qui comporte du html) s'affiche correctement et pas au bureau!
    J'ai simplifié le code au max pour voir d'oû ça pouvait venir, mais rien n'y fait. Voici le fichier xsl:

    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
    <xsl:template match = "xxx">
    <html>
    <body>
    <table>
    <tr>
    <th>Valeur :</th>
    <td><xsl:value-of select="//zzz"/>20 euros</td>
    <td><xsl:value-of select="//aaa"/>500 grammes</td>
    </tr>
    <tr>
    <th>Viande</th>
    <td>15 euros</td>
    <td>900 grammes</td>
    </tr>
    </table>
     
    <p>
    voilà!!!!!!!!!!!!!!
    </p>
    </body>
    </html>
     
    </xsl:template>
    </xsl:stylesheet>
    (ne faites pas attention aux valeurs: c n'importe quoi).

    Ca donne ça sous IE9:

    "Valeur : DOSSIER Durand/SARL Legendre20 euros Rapport de synthèse500 grammes Viande 15 euros 900 grammes voilà!!!!!!!!!!!!!! "
    Il n'y a donc aucune prise en compte du html.

    J'ai repris le code ci-dessous en adoptant l'en-tête sous un .html et ça fonctionne correctement... Ca donne ça :

    voilà!!!!!!!!!!!!!!


    Valeur : 20 euros 500 grammes
    Viande 15 euros 900 grammes

    avec le code :
    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
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    <title>Bienvenue sur mon site !</title>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    </head>
    <body>
    <p>
    voilà!!!!!!!!!!!!!!
    </p>
    <table>
    <tr>
    <th>Valeur :</th>
    <td><xsl:value-of select="//OBJECT_NAME_TRANSLATED"/>20 euros</td>
    <td><xsl:value-of select="//REPORT_TITLE"/>500 grammes</td>
    </tr>
    <tr>
    <th>Viande</th>
    <td>15 euros</td>
    <td>900 grammes</td>
    </tr>
    </table>
    </body>
    </html>
    Si qq'un pouvait m'aider! J'y perds mon latin...

    Par ailleurs, je comprend mal xpath: quand est-ce que l'on peut dire que l'on est sous telle balise?
    J'ai regardé le tutoriel de ce site (et d'autres) mais n'ai pas tout compris.
    Lorsque je tape "<xsl:template match = "xxx">", je suppose que je la balise courante est "xxx".Mais qd je mets "<xsl:when test="yyy/@clusterTableId='1'" >"est-ce que je changes de balise? Autrement dit, si je veux travailler, dans ce test, sur une balise qui n'est pas fille de yyy, est-ce que je peux ou bien est-ce qu'il faut remonter dans les balise avec qque chose du style "../../XXX", XXX étant la balise visée?
    MErci d'avance et encore toutes mes excuses pour ces questions basiques mais je ne suis pas un pro!

  2. #2
    Modérateur

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

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 559
    Points : 21 621
    Points
    21 621
    Par défaut
    Citation Envoyé par massenoire Voir le message
    désolé de poster un sujet xml aussi naÏf sur le site, mais je suis perdu.
    Pas vraiment grave, on est là aussi pour les débutants.

    Quand tu postes du code sur le forum, pense à la balise [CODE] : l'espèce de # dans la barre d'outils.

    Mais avant d'essayer de faire tes propres trucs en XSLT, tu dois lire des tutoriels et les faire marcher, eux. Ça a été fait ? Tu n'as pas eu le même problème ? Si non, tu as bien tout recopié comme il faut ?

    Voici le fichier xsl:
    Il n'y a pas la balise <xsl:stylesheet>. C'est un oubli ?

    Par ailleurs, je comprend mal xpath: quand est-ce que l'on peut dire que l'on est sous telle balise?
    Le nœud en cours est modifié :

    - par le template : <xsl:template match="balise">
    - par les boucles : <xsl:for-each select="noeuds">

    J'ai regardé le tutoriel de ce site (et d'autres) mais n'ai pas tout compris.
    Lorsque je tape "<xsl:template match = "xxx">", je suppose que je la balise courante est "xxx".
    Oui. C'est un template.

    Mais qd je mets "<xsl:when test="yyy/@clusterTableId='1'" >"est-ce que je changes de balise?
    Non. Ce n'est ni un template ni un for-each. D'ailleurs, ça ne serait pas naturel de changer le nœud en cours en fonction d'une simple condition.

    Autrement dit, si je veux travailler, dans ce test, sur une balise qui n'est pas fille de yyy, est-ce que je peux ou bien est-ce qu'il faut remonter dans les balise avec qque chose du style "../../XXX", XXX étant la balise visée?
    Le nœud en cours n'a pas été changé vers yyy. Après, tout dépend où se trouve ta balise XXX.

  3. #3
    Candidat au Club
    Femme Profil pro
    profession libérale
    Inscrit en
    Août 2011
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : profession libérale
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2011
    Messages : 10
    Points : 3
    Points
    3
    Par défaut
    Merci pour ta réponse.
    Je te confirme que la balise <stylesheet> a été fermée.
    Je précise également que les lignes d'en-tête sont les suivantes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <xsl:stylesheet version="1.0" xmlns : xsl="http://www.w3.org/1999/XSL/Transform" xmlns ="http://www.w3.org/1999/xhtml">
    On m'a suggéré d'ajouter:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <xsl:output standalone="yes" method="xml" omit-xml-declaration="yes" encoding="UTF-8" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" indent="no" />
    Mais ça ne change rien.
    Je me demande s'il n'y a pas un problème de réglage de IE9 mais je ne trouve pas... A priori, il est réglé comme sur l'autre pc où ça fonctionne...


    Pour ta suggestion de revoir les tutoriels,elle est sans doute judicieuse. Mon pb, le manque de temps. J'essaie de faire au mieux...

Discussions similaires

  1. Problème de mise en forme fichier csv dans xls
    Par hugues03 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 08/03/2013, 14h29
  2. Réponses: 7
    Dernier message: 13/08/2009, 20h20
  3. [VBA] Problème enregistrement mise en forme fichier word
    Par guenfood dans le forum VBA Word
    Réponses: 1
    Dernier message: 07/06/2006, 14h10
  4. [DOM XML] Mise en forme du fichier
    Par fragmonster dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 02/03/2006, 12h02

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