[PHP][XSLT][entity] Problème avec les Entities ...

Problème avec les Entities ... [PHP][XSLT][entity] - XML/XSL - Programmation

Marsh Posté le 10-04-2006 à 21:36:57    

Bonjour,
 
Je cherche depuis plusieurs heures comment faire pour que le transformateur XSL de PHP veuillez bien accepter mes XSL récupéré d'une autre application sans succès  :fou: .
 
Le problème provent des entity ("Á" , "  " , ...) présentes dans mes XSL ... si le parseur rencontre une entité le message d'erreur suivant est retourné :
 

Warning: Sablotron error on line 9: XML parser error 11: undefined entity in p:\easyphp1-8\www\mortem\info.php on line 7
Erreur XSLT


Mon XSL contient bien un "Á" à cette ligne, donc l'erreur provient de là ....
 
Le problème c'est que je n'ai pas trouvé comment faire pour inclure les entités que j'utilise dans mes xsl... car les xsl sont basés sur des schémas XSD  :( .  D'ailleur ces entités devraient déjà être déclarées, car si j'édite mon XSL avec XMLSPY, le panneau de droite "Entites" proposent bien toutes les entités ...  
 
Si quelqu'un peut me mettre sur une piste ...

Reply

Marsh Posté le 10-04-2006 à 21:36:57   

Reply

Marsh Posté le 11-04-2006 à 21:33:06    

bon, j'ai du progrès mais c'est pas encore ça. J'ai déclaré un fichier externe d'entité à mon document XSL, et ça à l'air de fonctionner vu que je n'ai plus d'erreur PHP dans le log.  
 
Par contre les entités ne sorte pas dans le document de résultat .... c'est comme si php savait que ces entités sont déclarées, mais qu'il ne puisse pas les utiliser ...
 
une idée ?
 
P.S. Est-ce possible de déplacer ce message dans la rubrique PHP plutôt qu'XSL ? je pense que c'est plus un problème du parseur XSL de PHP ...
 

Code :
  1. <?xml version="1.0" encoding="iso-8859-1"?>
  2. <!DOCTYPE xsl:stylesheet [
  3. <!ENTITY % HTMLlat1 SYSTEM "HTMLlat1x.ent">
  4. %HTMLlat1;
  5. ]>
  6. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
  7. <xsl:output indent="yes" method="xml" omit-xml-declaration="no" encoding="iso-8859-1" doctype-public="-//W3C//DTD XHTML 1.0 Strict//EN" doctype-system="http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"/>
  8. <xsl:output method="html"/>
  9. <xsl:template match="/">
  10.  <html>
  11.   <head>
  12.    <title>
  13.     <xsl:value-of select="/page/titre"/>
  14.    </title>
  15.   </head>
  16.   <body>
  17.    <table>
  18.     <tbody>
  19.      <tr>
  20.       <td>menu &copy; </td>
  21.       <td>con&nbsp;ten&nbsp;u ca marche pas&yen;&yen;</td>
  22.       <td>par&#169;contre&#169;ca&#169;ca&#169;marche</td>
  23.      </tr>
  24.     </tbody>
  25.    </table>
  26.   </body>
  27.  </html>
  28. </xsl:template>
  29. </xsl:stylesheet>
  30. <!--
  31. <!DOCTYPE xsl:stylesheet [
  32. <!ENTITY % HTMLlat1 SYSTEM "HTMLlat1x.ent">
  33. %HTMLlat1;
  34. <!ENTITY % HTMLsymbol SYSTEM "HTMLsymbolx.ent">
  35. %HTMLsymbol;
  36. <!ENTITY % HTMLspecial SYSTEM "HTMLspecialx.ent">
  37. %HTMLspecial;
  38. ]>
  39. -->

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed