Voici mon problème:Comment modifier facilement le doctype d'un document XML en Java?
Mon programme obtient des fichiers XML en entrée. Ces fichiers peuvent ou non avoir une déclaration xml, une déclaration doctype ou une déclaration d'entité, mais ils sont tous conformes au même schéma. Quand mon programme obtient un nouveau fichier, il doit l'inspecter, et assurez-vous qu'il a des déclarations comme ceci:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE my.doctype [
<!ENTITY % entity_file SYSTEM "my.entities.ent">
%entity_file;
]>
Si elle a cela, il est grand, et je peux les laisser en l'état, mais si les déclarations sont manquants ou faux, j'ai besoin de supprimer tout ce qui est déjà là et d'ajouter les déclarations correctes.
Comment puis-je faire cela (de préférence facilement, en utilisant les bibliothèques Java 6 et/ou Apache standard)?
C'est aussi un bon point de départ pour copier un DocumentType d'un document XML existant dans un nouveau document XML en utilisant Java. – jevon