Le code en python est probablement le plus synthétique pour convertir un fichier (ou un fragment de fichier) xml ou html. Voici le code pour renommer tous les éléments d’un fichier xml pour en faire du html utilisable dans un epub par exemple.
<SCENE>
<REPLIQUE>
<ACTEUR>Roméo</ACTEUR>
<LIGNE>Salut Juliette</LIGNE>
<LIGNE>Il est haut ton balcon</LIGNE>
</REPLIQUE>
</SCENE>
devient:
<div class="SCENE">
<div class="REPLIQUE">
<p class="ACTEUR">Roméo</p>
<p class="LIGNE">Salut Juliette</p>
<p class="LIGNE">Il est haut ton balcon</p>
</div>
</div>
convertXml.py
# Converts read an xml fragment and renames a tag
# pip install --upgrade lxml
import lxml.etree
import lxml.html
from lxml import etree
tree = etree.parse('Romeo.xml')
for tag in tree.iter():
if not len(tag):
tag.attrib['class']= tag.tag
tag.tag = "p"
else:
tag.tag = "div"
# print (tag.tag, tag.text)
print(lxml.etree.tostring(tree).decode())
Pour que le résultat soit transcrit dans un fichier, je lance le script avec
convertXml.py > output.txt