Sérialiser un Document avec le DOCTYPE.
Salut tous,
Mon problème de base est que je veux transformer un objet Document en un fichier XML (le Document est créé au départ à partir d'un fichier).
Au départ, j'étais parti sur une transformation XSL qui marchait très bien sauf qu'elle supprime la déclaration du DOCTYPE.
J'ai trouvé l'alternative de sérialiser mon objet Document qui est alors écrit à l'identique dans le cas ou mon fichier est lié à un fichier DTD.
Mais dans le cas d'un schéma XSD et d'un DOCTYPE qui référence des entitées, et bien c'est le binz car toutes mes définitions d'entitées sont inclues dans mon fichier, et j'en ai des caisses.
Exemple de fichier que je n'arrive pas à recopier à l'identique :
Code:
1 2 3 4 5 6 7 8
| <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE description [
<!ENTITY % ops.ent SYSTEM "xsd/V32/characters.ent">
%ops.ent;
]>
<description>
.....
</description> |
Je me retrouve ensuite avec :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE description [<!ENTITY % ops.ent SYSTEM 'xsd/V32/characters.ent'>
<!-- =plus sign B: --><!ENTITY plusmn '±'>
<!-- /pm B: =plus-or-minus sign --><!ENTITY lt '<'>
<!-- =less-than sign R: --><!ENTITY equals '='>
<!-- =equals sign R: --><!ENTITY gt '>'>
<!-- =greater-than sign R: --><!ENTITY divide '÷'>
<!-- /div B: =divide sign --><!ENTITY times '×'>
<!-- /times B: =multiply sign --><!ENTITY curren '¤'>
<!-- =general currency sign --><!ENTITY pound '£'>
<!-- =pound sign --><!ENTITY dollar '$'>
<!-- =dollar sign --><!ENTITY cent '¢'>
.......
.......
<!-- =cent sign --><!ENTITY yen '¥'>
<!-- /yen =yen sign --><!ENTITY num '#'>
]>
<description>
.....
</description> |
Help SVP, je n'ai bientôt plus d'ongles.... :pleure: