Je suis intrigué par la manipulation de l'élément vide par l'analyseur minidom, comme indiqué dans la section de code suivante.Gestion des éléments XML vides en Python
import xml.dom.minidom
doc = xml.dom.minidom.parseString('<value></value>')
print doc.firstChild.nodeValue.__repr__()
# Out: None
print doc.firstChild.toxml()
# Out: <value/>
doc = xml.dom.minidom.Document()
v = doc.appendChild(doc.createElement('value'))
v.appendChild(doc.createTextNode(''))
print v.firstChild.nodeValue.__repr__()
# Out: ''
print doc.firstChild.toxml()
# Out: <value></value>
Comment puis-je obtenir un comportement cohérent? Je voudrais recevoir chaîne vide comme valeur de élément vide (IS est ce que j'ai mis dans la structure XML en premier lieu).
C'est exactement ce que je veux dire. XML spec définit deux formes comme équivalentes, mais minidom traite comme '' si créé au moment de l'exécution, et analyse cependant en élément "v" sans noeud enfant TextElemet. –
Josip
J'ai suivi votre conseil pour changer mon approche sur la sérialisation des données. Je vais essayer JSON, car il correspond mieux à mes besoins. Merci pour l'aide. – Josip