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 :

[XSLT] XHTML dans XML


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut [XSLT] XHTML dans XML
    Bonjour


    Après avoir trouvé pas mal de solutions sur le forum je me retrouve bloqué.


    Mon but est d'afficher un flux xml ATOM.


    Mon problème se situe au niveau de la balise <summary>. Je parviens a afficher son contenu mais le problème est qu'il contient des balises xhtml qui ne sont pas interprétées par le navigateur.

    exemple de xml :

    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
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <feed xmlns="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
      <title>Titre flux</title>
      <link rel="alternate" href="http://lien.fr" />
      <subtitle>soustitre</subtitle>
      <id>id_flux</id>
      <updated>2007-01-17T08:13:27Z</updated>
      <dc:creator>ToNiO</dc:creator>
      <dc:date>2007-01-17T08:13:27Z</dc:date>
     
    <entry>
        <title>test url</title>
        <link rel="alternate" type="text/html" href="http://tonio.fr#comments" hreflang="http://tonio.fr#comments" />
        <category term="comment" />
        <author>
          <name>tonio</name>
    	</author>
        <id>id_a_definir</id>
        <updated>2007-01-06T14:32:15Z</updated>
        <summary type="html">&lt;p&gt;&lt;a href="http://tonio.fr"&gt;blabla url&lt;/a&gt; &lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;a href="http://tonio.fr" target="_blank"&gt;&amp;nbsp;url2 &lt;/a&gt;&lt;br /&gt;&lt;/p&gt;</summary>
        <dc:creator>tonio</dc:creator>
      </entry>
    </feed>

    exemple 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
    25
    26
    27
    28
    29
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <xsl:stylesheet version="1.0"
      xmlns:atom="http://www.w3.org/2005/Atom"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
      xmlns:dc="http://purl.org/dc/elements/1.1/"
      xmlns="http://www.w3.org/1999/xhtml">
     
    <xsl:output
            method="xml"
         	media-type = "text/html"
         	doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" 
         	doctype-system="http://www.w3.org/TR/xhtml1/xhtml1-strict.dtd"
            version="1.0"
            encoding="iso-8859-1"
            omit-xml-declaration="yes"
            indent="yes"
    />
     
     
    <xsl:template match="atom:feed">
    <xsl:for-each select="atom:entry">
            	<ul>
            	<li> <xsl:value-of select="atom:title" /> </li>
            	<li> Auteur : <xsl:value-of select="atom:author/atom:name" /> </li>
                <li> Résumé : <xsl:value-of select="atom:summary" disable-output-escaping="yes" /> </li>
            	</ul>
    </xsl:for-each>
    </xsl:template>
    </xsl:stylesheet>
    le resultat de la transformation étant intégré ds une page xhtml apres une requete ajax et un traitement javascript avec xsltProcessor.

    J'obtiens en sortie :

    Résumé : <p><a href="/tonio.fr">blabla url</a> </p><p>&nbsp;</p><p><a href="http://tonio.fr" target="_blank">&nbsp;url2 </a><br /></p>

    J'ai essayé de modifier pas mal de choses sans succès (method, media-type, doctype, disable-output-escaping, copy-of...)

    Pour info si j'essaye d'afficher avec firefox (ou un agregateur RSS externe) mon xml sans appliquer le xsl, le contenu de <summary> est parfaitement récupéré et interprété. Comment font ils

    Merci d'avance

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    J'ai trouvé un exemple concret de mon problème.

    Peut etre que quelqu'un pourra m'aider.

    j'arrive a afficher ca correctement ds le navigateur

    exemple xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <title type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        Making an <strong>emphatic</strong> statement
      </div>
    </title>
    mais pas ca :

    exemple xml
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <title type="html">
       Making an &lt;strong&gt;emphatic&lt;/strong&gt; statement
    </title>
    Comment faire en sorte que le 2eme exemple s'affiche correctement.

    Merci Datchou

  3. #3
    Rédacteur

    Avatar de Erwy
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2003
    Messages
    4 967
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2003
    Messages : 4 967
    Points : 10 927
    Points
    10 927
    Par défaut
    il y a , sur la balise xsl:text et xs:value-of, un attribut disable-output-escaping avec comme valeur yes ou no.
    regarde peut être de ce coté

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6
    Points : 3
    Points
    3
    Par défaut
    Merci pour ta reponse.

    J'ai deja essayé cette option ms ca ne change rien et je ne comprends toujours pas pourquoi.(il semblerait qu'elle ne soit pas toujours prise en compte en fonction du navigateur)


    Personne n'a deja été confronté a ce meme probleme?

    ++

Discussions similaires

  1. [DTD] Tags Html dans XML ---> Etendre la dtd du Xhtml
    Par tipaquo dans le forum Valider
    Réponses: 14
    Dernier message: 19/07/2010, 09h09
  2. [XSLT] Utiliser des balises XHTML dans un fichier XML
    Par zoubidaman dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 20/03/2007, 14h30
  3. [DTD] xhtml dans xml
    Par dolly2 dans le forum Valider
    Réponses: 3
    Dernier message: 30/10/2006, 17h23
  4. [XML-XSLT-PHP] Récupération de l'heure courante dans xml
    Par mamat- dans le forum XSL/XSLT/XPATH
    Réponses: 12
    Dernier message: 05/08/2005, 16h02
  5. [XML-XSLT] Données dans un tableau
    Par Hoegaarden dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 10/12/2004, 15h51

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