[débutant] conversion XML en CSV
Bonjour à toutes & à tous,
étant completement novice en XSL, je me permet de poster ce message.
Je ne sais meme pas si ma démarche est correct.
Je souhaite convertir un fichier XML (nommé : RBL.xml) suivant :
Code:
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 30 31 32 33 34 35 36 37 38 39
| <?xml version="1.0" encoding="UTF-8"?>
<ROOT xmlns:exp="urn:n1">
<MANUAL_DOMAIN_WL>
<Entries>
<Entry_0>
<DateToExpire exp:type="base64">AAAAAAAAAAAAAAAAAAAAAA==</DateToExpire>
<Address>1miniface.com</Address>
</Entry_0>
<Entry_1>
<DateToExpire exp:type="base64">AAAAAAAAAAAAAAAAAAAAAA==</DateToExpire>
<Address>3six9.com.fr</Address>
</Entry_1>
.................
.................
<Entry_438>
<DateToExpire exp:type="base64">AAAAAAAAAAAAAAAAAAAAAA==</DateToExpire>
<Address>zhr.fr</Address>
</Entry_438>
</Entries>
</MANUAL_EMAIL_ADDRESS_BL>
<MANUAL_EMAIL_ADDRESS_WL>
<Entries>
<Entry_0>
<DateToExpire exp:type="base64">AAAAAAAAAAAAAAAAAAAAAA==</DateToExpire>
<Address>2s.conseil@wanadoo.fr</Address>
</Entry_0>
<Entry_1>
<DateToExpire exp:type="base64">AAAAAAAAAAAAAAAAAAAAAA==</DateToExpire>
<Address>3x3@wanadoo.fr</Address>
</Entry_1>
....................
....................
<Entry_352>
<DateToExpire exp:type="base64">AAAAAAAAAAAAAAAAAAAAAA==</DateToExpire>
<Address>zebreh@wanadoo.fr</Address>
</Entry_352>
</Entries>
</MANUAL_EMAIL_ADDRESS_WL>
</ROOT> |
en fichier CSV du type:
Code:
1 2 3 4 5 6 7 8 9 10
| 1miniface.com
3six9.com.fr
.................
.................
zhr.fr
et
2s.conseil@wanadoo.fr
3x3@wanadoo.fr
zebreh@wanadoo.fr |
Pour cela, a partir d'un serveur web, je créé une page php (nommé executeXslt.php) de type:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
<?
// Crée le processeur XSLT
$xh = xslt_create();
xslt_set_base ($xh, 'file://' . getcwd () . '/');
// Traite le document, puis affiche le résultat
$result = xslt_process($xh, 'RBL.xml', 'xmlToCsv.xsl');
if (!$result)
echo ("Erreur XSLT ...");
else
echo ($result);
// Détruit le processeur XSLT
xslt_free($xh);
?> |
qui va utiliser la page XmlToCsv.xsl suivante:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <?xml version="1.0"?>
<xsl:stylesheet version = "1.0" xmlns:xsl = "http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:template match="/" >
<xsl:apply-templates select="//Contexte"/>
</xsl:template>
<xsl:template match="Contexte" >
???????????
</xsl:template>
</xsl:stylesheet> |
Et bien entendu, je ne sais pas du tout par quoi remplacer les ??????. (je ne pratique pas du tout le XSL).
Une ame charitable pourrais t'elle m'offrir un début de solution ?? Merci d'avance.