Comment insérer CDATA en XML de balisage de texte exporté à partir d'Access 2003?

J'ai un export XML à partir d'Access 2003 et j'ai essayé d'insérer une balise CDATA sur le champ de texte (en latin...) avec XSLT, mais je suis très mauvais en XSLT...

Ici la source XML :

    <?xml version="1.0" encoding="UTF-8"?>
    <dataroot xmlns:od="urn:schemas-microsoft-com:officedata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation="MESSAGES%20old.xsd" generated="2012-07-31T13:25:46">
      <export_x005F_xml_message>
       <libelle>h euismod tincidu </libelle>
       <price>300</price>
       <libelle2>h euirci tation ullamc</libelle2>
    </export_x005F_xml_message>
    <export_x005F_xml_message>
      <libelle>h euismod tincidunt ut lao</libelle>
      <price>200</price>
      <libelle2>h euirci tation ullamcorper</libelle2>
   </export_x005F_xml_message>
  </dataroot>

Ici mon XSLT du début... :

    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
   <xsl:output method="xml"/>
     <xsl:template match='*[name() = "MESSAGES"]'>
           <xsl:text disable-output-escaping="yes">
             &lt;![CDATA[
           </xsl:text>
           <xsl:copy-of select="./node()"/>
           <xsl:text disable-output-escaping="yes">
             ]]&gt;
            </xsl:text>
     </xsl:template>
    </xsl:stylesheet>

Je voudrais obtenir quelque chose comme ça :

    <?xml version="1.0" encoding="UTF-8"?>
    <dataroot xmlns:od="urn:schemas-microsoft-com:officedata" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xsi:noNamespaceSchemaLocation="MESSAGES%20old.xsd" generated="2012-07-31T13:25:46">
      <export_x005F_xml_message>
       <libelle><![CDATA[h euismod tincidu ]]></libelle>
       <price>300</price>
       <libelle2><![CDATA[h euirci tation ullamc ]]></libelle>
    </export_x005F_xml_message>
    <export_x005F_xml_message>
      <libelle><![CDATA[h euismod tincidunt ut lao ]]></libelle2>
      <price>200</price>
      <libelle2><![CDATA[h euirci tation ullamcorper ]]></libelle2>
   </export_x005F_xml_message>
  </dataroot>

Pouvez-vous m'aider à créer le droit XSLT ?
Ce XML est à venir à partir d'Access 2003 qui ne fournit pas la CDATA option pour le champ de texte... je suis sûr qu'un modèle générique pourrait aider d'autres développeurs comme moi 🙂

OriginalL'auteur Jim 007 | 2012-07-31