Bonjour,
J'ai crée une application qui a une méthode pour parser les XMLs et pour se faire j'utilise SAXBuiler. Cette application vient chercher des informations dans mon fichier XML pour envoyer ensuite un/plusieurs mail(s) à l'utilisateur.
voici ma DTD :
voila mon fichier XML à parser :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <?xml version="1.0" encoding="UTF-8"?> <!ELEMENT MAILS (MAIL+)> <!ELEMENT MAIL (DATE+, SUBJECT+, CONTENT+)> <!ELEMENT DATE (#PCDATA)> <!ELEMENT SUBJECT (#PCDATA)> <!ELEMENT CONTENT (#PCDATA)>
et mon problème :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 <?xml version="1.0" encoding="UTF8"?> <!DOCTYPE MAILS SYSTEM "Mails.dtd"> <MAILS> <MAIL> <DATE>Wed Oct 1 11:39:23 RDT 2008</DATE> <SUBJECT>Info : file.txt generated</SUBJECT> <CONTENT> New file.txt file generated. Put it into your SNEC environment : Database/Xml/<equipment name>, before running it. </CONTENT> </MAIL> </MAILS>
mon programme JAVA pense que <equipment name> est une balise et me retourne une erreur : Attribute name "name" associated with an element type "equipment" must be followed by the ' = ' character.
Comment dire, au moment de parser mon fichier que seules les balises de ma DTD sont bien des balises ? Je dois pouvoir mettre les caractères que je veux entre mes balises...!
Je précise que mon fichier XML est généré en Perl et non en JAVA, ce qui fait que je n'ai pas de contrôle sur le contenu avant de le parser.
Merci par avance pour le coup de main,
Bap
Partager