« Noeuds : xml xhtml et DOM » : différence entre les versions
Ligne 105 : | Ligne 105 : | ||
<td> | <td> | ||
Voici un exemple de fichier XSLT pour transformer le XML en XHTML | |||
<?xml version="1.0" encoding="ISO-8859-1"?> | |||
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" > | |||
<xsl:output method="html" /> | |||
<xsl:template match="student"> | |||
<html> | |||
<head> | |||
<title> | |||
Page Travaux STAF | |||
</title> | |||
<style type="text/css"> | |||
body | |||
{ | |||
background-image:url(image/bleu.jpg); | |||
color: white; | |||
font-family:arial; | |||
font-size:15px; | |||
margin-left:100px; | |||
} | |||
< | |||
</style> | |||
</head> | |||
<body> | |||
<h1>PAGE TRAVAUX</h1> | |||
<br /> | |||
<h2>Données Personnelles</h2> | |||
<xsl:apply-templates select="site"/> | |||
</div> | |||
<h2><xsl:value-of select="nom"/></h2> | |||
</body> | |||
</html> | |||
Ci-dessous | |||
</td> | </td> | ||
</table> | </table> |
Version du 25 octobre 2009 à 17:25
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 définie l'arborescence on peut créer la DTD
Voici un exemple de fichier XSLT pour transformer le XML en XHTML <?xml version="1.0" encoding="ISO-8859-1"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0" > <xsl:output method="html" /> <xsl:template match="student"> <html> <head> <title> Page Travaux STAF </title> <style type="text/css"> body { background-image:url(image/bleu.jpg); color: white; font-family:arial; font-size:15px; margin-left:100px; }
</head> <body> PAGE TRAVAUX Données Personnelles<xsl:apply-templates select="site"/> <xsl:value-of select="nom"/></body> </html> Ci-dessous
|