Ajouter un nœud à un arbre DOM

Problème

Vous avez un arbre DOM en mémoire et voulez ajouter un nœud à cet arbre.

Solution

Créez votre nouveau nœud avec xmlNewNode(), puis accrochez-le à l’arbre avec xmlAddChild(), xmlAddSibling(), xmlAddPrevSibling() ou xmlAddNextSibling(). Dans le cas d’un nœud texte, ces deux opérations sont possibles en une seule fois via xmlNewTextChild().

Discussion

L’ajout d’un nœud s’effectue en deux étapes. La première est la création du nœud avec xmlNewNode(). Vous pouvez préciser des attributs avec xmlSetProp(). Pour qu’il contienne du texte, nous utilisons xmlNodeSetContent(). La seconde étape consiste à rattacher le nœud ainsi créé à l’arbre par rapport à un autre nœud. Les fonctions xmlAddSibling() et xmlAddChild() accrochent le nouveau nœud à l’arbre en l’ajoutant à la liste, respectivement, des nœuds frères ou des nœuds fils du nœud indiqué. Les fonctions xmlAddPrevSibling() et xmlAddNextSibling() sont plus précises en accrochant le nœud juste à côté du nœud spécifié, respectivement avant ou après ce nœud. En guise d’exemple, ajoutons la distance de la galaxie d’Andromède par rapport à notre système solaire dans l’arbre précédent :


xmlNodePtr xmlroot; ...
Pour consulter la suite, découvrez le livre suivant :
couv_EI3CACT.png
60-signet.svg
En version papier
20-ecran_lettre.svg
En version numérique
41-logo_abonnement.svg
En illimité avec l'abonnement ENI
130-boutique.svg
Sur la boutique officielle ENI
Précédent
Transformer un arbre DOM en XML
Suivant
Modifier un nœud d'un arbre DOM