Beaucoup de questions à ce sujet mais toujours la même réponse.
< En XML, toutes les balises vides sont converties en auto-fermée. >
Ma question, donc, est celle-ci: Le DOM peut-il (par une fonction X ou Y) renvoyer un code décimal
concernant ce type particulier de balises? Existerait-il une fonction -même non documentée- qui puisse
faire cela?
Pour info: J'ai beaucoup cherché avant de poster mais rien (à part la ligne plus haut).
Ici même, du reste, j'ai trouvé un post s'approchant un peu de ca:
xml/balises-auto-fermante-t240542.html?hilit=balise mais...
Simple rappel des codes décimaux renvoyés par DOM:
Afin d'être complêt:XML_ELEMENT_NODE (entier) 1 Le noeud est un DOMElement
XML_ATTRIBUTE_NODE (entier) 2 Le noeud est un DOMAttr
XML_TEXT_NODE (entier) 3 Le noeud est un DOMText
XML_CDATA_SECTION_NODE (entier) 4 Le noeud est un DOMCharacterData
XML_ENTITY_REF_NODE (entier) 5 Le noeud est un DOMEntityReference
XML_ENTITY_NODE (entier) 6 Le noeud est un DOMEntity
XML_PI_NODE (entier) 7 Le noeud est un DOMProcessingInstruction
XML_COMMENT_NODE (entier) 8 Le noeud est un DOMComment
XML_DOCUMENT_NODE (entier) 9 Le noeud est un DOMDocument
XML_DOCUMENT_TYPE_NODE (entier) 10 Le noeud est un DOMDocumentType
XML_DOCUMENT_FRAG_NODE (entier) 11 Le noeud est un DOMDocumentFragment
XML_NOTATION_NODE (entier) 12 Le noeud est un DOMNotation
- J'appel un script xml (script ou file osef)
- Je le parse par les fonctions dom
- Je recois via DOM -> nodeType le type et effectue un traitement dessus:
> Je transforme le Type 1 en 2 s'il est vide [*]
> Si le type est un tag ouvert j'empile DOM -> nodeName
- J'incrémente de 2 tous les autres types
- Je créé un objet et y sauvegarde les données recues
- ...
Ca marche, en gros ma class est presque finie mais reste ce soucis des auto-fermantes[*].
Procéder ainsi c'est présumer qu'une balise vide est auto-fermée donc... C'est pas très propre.
D'autre part, l'inverse est aussi vrai. Si une balise est "auto-fermante" elle peut devenir, de par ce
traitement, une balise bloc... bref...
Si l'un de vous a une idée...
@+ les gens et merci d'avance.
PS: ...arf, vous aussi vous trouvez que c'est une question biz...?
EDIT: Désolé pour le paté, j'ai juste essayé d'être le plus clair possible, hein