Rechercher : dans
Par :

[java] validation xml, '&' et CDATA

Dernière réponse le 8 jan 2008 à 17:17:11 kij_82, le 8 jan 2008 à 17:01:14 
 Signaler ce message aux modérateurs

Bonjour,

Je viens à vous car j'ai un soucis lorsque j'essai de valider un document XML.
Dans mon xml en entrée il se trouve que j'ai parfois pour valeur de certaines balise un texte contenant le caractère '&' sans pour autant que ce soit une entité.
Ex: "Je suis dans la mainson avec mon frere & ma mere"

Or, lorsque je valide le document, SAX lève une exception me disant que le caractère '&' n'est pas suivi du nom d'une entité correcte, ce qui a pour conséquence de ne pas valider mon document.

Je voudrais pouvoir passer outre cette erreur, sauriez-vous comment faire ?

Je me suis dit que définir les données interne à une balise en CDATA serait la solution ? Mais là encore je ne suis pas sûr de la marche à suivre (ni tout simplement comment le faire).
Je précise que dans mon fichier xml, une DTD est renseignée, indiquant les différentes entities à remplacer, mais c'est tout. Pour la validation j'utilise un schéma xsd (non créé par mes soins) externe.

Si l'un de vous peut me venir en aide je l'en remercierai beaucoup :)


~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :) ~

Configuration: Windows XP
Firefox 2.0.0.11

Meilleures réponses pour « [java] validation xml, '&' et CDATA » dans :
DOM (Document Object Model) et SAX (Simple API for XML) VoirXML permet de définir la structure du document uniquement, ce qui permet d'une part de pouvoir définir séparément la présentation de ce document, d'autre part d'être capable de récupérer les données présentes dans le document pour les...
Introduction à XML VoirPrésentation de XML XML (entendez eXtensible Markup Language et traduisez Langage à balises étendu, ou Langage à balises extensible) est en quelque sorte un langage HTML amélioré permettant de définir de nouvelles balises. Il s'agit effectivement...
Java - Premier programme VoirPremière application avec Java La première chose à faire est de créer un simple fichier texte (sans mise en forme) et de taper les quelques lignes suivantes : // Votre premiere application en Java class FirstApp { public static void main...

1

 kij_82, le 8 jan 2008 à 17:17:11
  • +1

Bon en fait je posais la question car je recois des fichiers xml ou autre en entrée d'une première étape qui consiste à transformer n'importe quel type de fichier de donnée en XML, puis de standardiser les différents tags de ces xml, les valider, avant de le retranscrire dans un fichier à plat en EBCDIC.

Ayant donc 4 étapes, je vais finalement retranscrire les caractères '&' sans entities en '&' dans l'étape 1, puis reconvertir les & en & juste avant la conversion en EBCDIC dans la 4 ieme étape.

Je n'ai donc plus besoin de réponse, mais si toutefois quelqun à une solution autre je suis preneur, à titre d'information :)

~ N'oubliez pas la balise "Résolu" lorsque votre problème est... résolu :) ~

Répondre à kij_82