sdx-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sdx-users] Encodage / récupération fic hiers XML bruts


From: Pierrick Brihaye
Subject: Re: [sdx-users] Encodage / récupération fic hiers XML bruts
Date: Tue, 30 Sep 2003 17:12:35 +0200
User-agent: Mozilla/5.0 (Windows; U; Win98; fr-FR; rv:1.0.2) Gecko/20030208 Netscape/7.02

Bonjour,

Emmanuel Bégué a écrit:

>Après une recherche je souhaite exporter les résultats de la
>recherche vers un fichier xml unique

La xsp d'export (export.xsp) contient:

Euh... les xsp sont, par défaut, sérialisées en *HTML*.

<xsl:output method="xml" encoding="iso-8859-1" media-type="text/html"/>

on prend des risques avec ça --------^^^^^^^^^^
------------------------------ et ça ------------------------^^^^^^^^^

1- la source ne contient pas de déclaration xml (et le fichier
n'est pas reconnu comme xml par IE)

V. plus haut : un fichier HTML n'a pas de prologue ;-)

2- les caractères spéciaux sont transformés en entités html
(é => &eacute;) ce qui fait que le fichier "xml" produit n'est
en réalité pas correct.

Mmmh... quel est ton encodage par défaut ?

Quoi qu'il en soit, v. les exemples de sérialisation dans la sitemap de sdxtest (on en parlait l'autre jour, ceux avec le privilège admin ;-), en particulier xsp2htmX et s'en inspirer pour sérialiser en XML car un navigateur n'aura peut-être pas toujours envie d'afficher du XML alors qu'on lui a dit qu'on lui envoyait du "html" ou du "text".

PS: ce deuxième point pose également un problème lorsque, en
affichant un document résultat, on veut construire des liens
avec le contenu des éléments du document xml original; dans ce
cas en effet, le contenu des attributs href est apparemment
transformé en UTF-8

... réponse à la question que je viens de poser. Brrr, de l'iso-8859-1 transformé par une XSL qui sort de l'iso-8859-1 sans contrôle de Cocoon, le tout sérialisé en UTF-8, ça risque de ne pas le faire :-)

c'est à dire que par exemple "é" qui vaut
"&eacute;" dans le document vaut "%C3%A9" à l'intérieur d'un
attribut href (et seulement dans ce cas) -- et je voudrais
qu'il reste à "é" (ou "e" à la rigueur).

Est-ce encore une href dans ce cas ? J'en doute...

Ce que je ne comprends pas c'est que cela ne se produise pas
lorsqu'on utilise les valeurs de champs sdx:field ("brief"),
même non échappés (dans ce cas on aura bien "é" pour "é") => ?

Parce qu'on laisse le contrôle du flux à Cocoon et qu'on ne cherche pas à le berner avec une XSL qui contredit la façon dont il a été configuré :-)

Plus sérieusement, il faut aller mettre les mains dans la sitemap et sérialiser en XML. On peut jouer sur l'extension ou sur le nom de fichier. Accessoirement, ça permet une gestion du type MIME plus canonique ; pour "text", c'est du texte brut, pas du "xml".

J'espère, moi aussi, avoir été assez clair :-)

A+

--
Pierrick Brihaye, informaticien
Service régional de l'Inventaire
DRAC Bretagne
mailto:address@hidden





reply via email to

[Prev in Thread] Current Thread [Next in Thread]