Noeuds : xml xhtml et DOM
Objectifs :
- Expliquer la notion de noeud relativement aux données XML pour mieux en comprendre la combinaison avec DTD, XSLT, XHTML et CSS
Les noeuds XML par l'exemple
Un exemple imagé de noeuds
Une fois définie l'arborescence on peut créer la DTD
Comme vous voyez la DTD reprend l'arborescence. Le noeud père "sites_touristiques" à comme fils "site". Il peut d'ailleurs avoir plusieurs fils "site" de par le * placer à côté. Un noeud "site" contient lui-même plusieurs noeuds, qui sont frère. Ici nous avons : nom*(plusieurs noeuds "nom" possibles), lieu, hauteur, historique, image_principale, source). "#PCDATA" signifie la valeur textuelle de l'élément. Le balise ATTLIST sert à défini l'attribut d'un élément, ici l'attribut "unite" de l'élément "hauteur", ainsi que l'attribut "langue" de l'élément "nom". Vous pourrez examiner ce Tutoriel DTD pour comprendre l'exercice. A partir de l'arborescence ci-dessus on peut créer cette DTD :
<!ELEMENT site(nom*, lieu, hauteur, historique, image_principale, source)> <!ELEMENT nom(#PCDATA)> <!ATTLIST nom langue CDATA #IMPLIED> <!ELEMENT lieu(#PCDATA)> <!ELEMENT hauteur(#PCDATA)> <!ATTLIST hauteur unite CDATA #IMPLIED> <!ELEMENT historique(#PCDATA)> <!ELEMENT image_principale(#PCDATA)> <!ELEMENT source(#PCDATA)> |
Une fois crée la DTD on peut créer à partir de celle-ci la page XML
Vous pouvez vous référer à XML pour comprendre cet exemple. A partir de la DTD qui est en quelque sorte la structure qui prédéfini comment s'organisent les balises XML relatives au site touristique, on peut faire ainsi :
<TOURISME>
<sites_touristiques>
<site>
<nom>
</site>
</sites_touristiques>
</TOURISME>