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 :

Exploitation de données XML sans balises


Sujet :

XML/XSL et SOAP

  1. #1
    Candidat au Club
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2013
    Messages : 2
    Points : 4
    Points
    4
    Par défaut Exploitation de données XML sans balises
    Bonjour,
    Je suis nouveau sur l'utilisation de transfo XSL, alors par avance mille excuses si ma question est vraiment neuneu.

    Je la pose quand même :

    Je dois exploiter des fichiers issus d'une application sous une forme de ce type :
    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
    <article>
    <texts>
    <title> Bla bla bla </title>
    <subtitle>Re bla bla bla</subtitle>
    <body>
     
      <br/>
      <span style="body-red-big">Courant favorable </span>
     
       glisse Untel, 54 ans, président de XXX. Ce groupe de 750 salariés dont .... 
       <br/>
       <span style="body-red-big"> Embauches  </span><br/>
       XXX vise les 800 salariés en fin d’année. Soit une centaine de recrutements en douze mois. 
       <span style="body-black">    « Dont un tiers de moins de 25 ans », </span>
       détaille Machin, directeur des ressources humaines. 
        <br/><br/>
     
    </body>
    </texts>
    </article>
    Pour afficher le contenu mis en forme, j'ai utilisé un fichier XSL, mais je ne sais pas comment récupérer les données sans balise (la ligne "détaille Machine ..." par exemple).
    Soit je récupère le body complet et j'ai bien tout le texte sans mise en forme, soit je boucle sur les balises du body mais forcément n'ai que les bouts mis en <span> et les <br>.

    Ci joint mon exemple de code XSL simpliste (avec simple accès au body):

    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
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:template match="/">
      <html>
        <head>
          <title>Exemple de sortie HTML sur base d'un fichier article</title>
          <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
        </head>
        <body>
          <h1>Titre : <xsl:value-of select="article/texts/title" /></h1>
     
          <h3>contenu</h3>: 
     
    <xsl:value-of select="article/texts/body" />
     
          <br> </br>
     
        </body>
      </html>
    </xsl:template>
    </xsl:stylesheet>

    Merci d'avance pour votre aide.

    JJ

  2. #2
    Candidat au Club
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Juin 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2013
    Messages : 2
    Points : 4
    Points
    4
    Par défaut
    Je m'en suis sorti avec la commande copy-of plutôt que value-of

  3. #3
    Expert confirmé
    Avatar de Loceka
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    2 276
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 2 276
    Points : 4 845
    Points
    4 845
    Par défaut
    La réponse était : il faut boucler sur les noeuds et non les balises (ou alors les noeuds texte suivant ce que tu veux faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    <xsl:for-each select="article/texts/body/node()">
      <xsl:value-of select="." />
    </xsl:for-each>
     
    <!-- ou bien -->
     
    <xsl:for-each select="article/texts/body/text()">
      <xsl:value-of select="." />
    </xsl:for-each>

  4. #4
    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
    La réponse était : il faut boucler sur les noeuds et non les balises (ou alors les noeuds texte suivant ce que tu veux faire : ...
    Je m'en doute, hélas! Pouvez-vouz réexaminer votre réponse: j'en suis sûr ce n'est pas ce que vous voulez faire entendre.

    Pourtant ce que l'op fait illusion dans son deuxième post est assez juste et ça peut se faire comme ça.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <xsl:for-each select="article/texts/body/node()">
    <!-- ou ça revient au même sens
    <xsl:for-each select="article/texts/body/*|article/texts/body/text()">
    -->
        <xsl:copy-of select="." />
    </xsl:for-each>

Discussions similaires

  1. [2.3] Afficher des données XML sans doublons
    Par Rabarivelo dans le forum BIRT
    Réponses: 5
    Dernier message: 28/06/2010, 16h20
  2. Exploiter des données XML sous Visual Studio (XMLDataDocument)
    Par johnnhoj dans le forum Visual Studio
    Réponses: 2
    Dernier message: 12/06/2010, 17h54
  3. server.xml sans balise Context
    Par totoche dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 28/11/2008, 19h00
  4. [D6 => XML] Récupération de données dans une balise
    Par Bason_sensei dans le forum Delphi
    Réponses: 10
    Dernier message: 22/05/2006, 17h15
  5. problème xsl : inclure une donnée xml dans une balise html
    Par djodjo dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 03/01/2003, 09h24

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