Mon but est de générer un fichier CSV en XML en utilisant Saxon. Lors de l'exécution (! Simplifié) XQuery ci-dessous à Saxon (PE, 9.7.0.15), dans le résultat de chaque ligne après la première ligne de résultat, un espace supplémentaire est ajouté:Comment éviter les espaces supplémentaires lors de la sérialisation de XML en texte (csv)
declare namespace output = "http://www.w3.org/2010/xslt-xquery-serialization";
declare option output:method "text";
let $document := <A>
<B><C>1</C><D>2</D></B>
<B><C>3</C><D>4</D></B>
<B><C>5</C><D>6</D></B>
</A>
for $b in $document/B
return string-join(for $x in $b/* return $x, ",") || "
"
le résultat:
1,2
3,4
5,6
Je ne peux simplement pas supprimer cet espace supplémentaire de manière «propre» (c'est-à-dire: sans post-traitement du résultat).
Une idée de comment générer un fichier csv (Text) 'clean'?
3.x XQuery il y a une option de sérialisation std: https : //www.w3.org/TR/xslt-xquery-serialization-31/#XML_ITEM-SEPARATOR mais cela ne m'a pas aidé (aurait dû le mentionner avant, désolé) – DiZzZz