<?xml version="1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> ... </xsl:stylesheet> |
<?xml version="1.0" ?> <xslt:stylesheet xmlns:xslt="http://www.w3.org/1999/XSL/Transform"> ... </xslt:stylesheet> |
<?xml version="1.0" ?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <!-- instructions de premier niveau --> ... <!-- fin des instructions de premier niveau --> </xsl:stylesheet> |
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <xsl:import href="..."/> <xsl:include href="..."/> <xsl:strip-space elements="..."/> <xsl:preserve-space elements="..."/> <xsl:output method="..."/> <xsl:key name="..." match="..." use="..."/> <xsl:decimal-format name="..."/> <xsl:namespace-alias stylesheet-prefix="..." result-prefix="..."/> <xsl:attribute-set name="..."> ... </xsl:attribute-set> <xsl:variable name="...">...</xsl:variable> <xsl:param name="...">...</xsl:param> <xsl:template match="..."> ... </xsl:template> <xsl:template name="..."> ... </xsl:template> </xsl:stylesheet> |
<?xml version="1.0" encoding="UCS-2"?> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method='html' encoding='ISO-8859-1' /> <xsl:template match="/"> <html> <head> <title><xsl:value-of select="/Concert/Entête"/></title> </head> <body bgcolor="white" text="black"> <xsl:apply-templates/> </body> </html> </xsl:template> <xsl:template match="Entête"> <p> <xsl:value-of select="."/> présentent </p> </xsl:template> <xsl:template match="Date"> <H1 align="center"> Concert du <xsl:value-of select="."/> </H1> </xsl:template> <xsl:template match="Lieu"> <H4 align="center"> <xsl:value-of select="."/> </H4> </xsl:template> <xsl:template match="Ensemble"> <H2 align="center"> Ensemble <xsl:value-of select="."/></H2> </xsl:template> <xsl:template match="Compositeurs"> <H3 align="center"> Oeuvres de <br/> <xsl:value-of select="."/> </H3> </xsl:template> </xsl:stylesheet> |
<xsl:template match="...pattern...">
<!-- modèle de transformation -->
...
<!-- fin du modèle de transformation -->
</xsl:template> |
<!-- modèle de transformation --> bla bla ... bla bla ... <!-- fin du modèle de transformation --> |
<!-- modèle de transformation -->
bla bla ...
ici, une instruction XSLT qui va provoquer l'insertion,
à cet endroit, de la valeur de l'attribut "nom" de l'élément <personne>
qui se trouve à tel endroit dans l'arbre XML du document
bla bla ...
<!-- fin du modèle de transformation --> |
<!-- modèle de transformation -->
bla bla ...
insérer ici le contenu de l'élément <description> qui se trouve à
tel endroit dans l'arbre XML du document
bla bla ...
<!-- fin du modèle de transformation --> |
<!-- modèle de transformation -->
bla bla ...
insérer ici la somme des valeurs des attributs "prix"
des éléments <produit> qui se trouvent à
tels et tels endroits dans l'arbre XML du document
bla bla ...
<!-- fin du modèle de transformation --> |
<!-- modèle de transformation -->
<BR/> bla bla ...
<p>
insérer ici la somme des valeurs des attributs "prix"
des éléments <produit> qui se trouvent à
tels et tels endroits dans l'arbre XML du document
</p>
<H1>bla bla ...</H1>
<!-- fin du modèle de transformation --> |
Exemple |
<xsl:template match="...pattern..."> <!-- modèle de transformation littéral--> Détail du rez-de-chaussée : <RDC> <cuisine surface='12m2'> Evier inox. Mobilier encastré. </cuisine> <WC> Lavabo. Cumulus 200L. </WC> <séjour surface='40m2'> Cheminée en pierre. Poutres au plafond. Carrelage terre cuite. Grande baie vitrée. </séjour> </RDC> <!-- fin du modèle de transformation littéral--> </xsl:template> |
ligne de commande (d'un seul tenant) |
java -classpath "C:\Program Files\JavaSoft\SAXON\saxon.jar;" com.icl.saxon.StyleSheet -o Concert.html Concert.xml Concert.xsl |
<xsl:template match="child::Théâtre/child::*"> <!-- modèle de transformation --> ... <!-- fin du modèle de transformation --> </xsl:template> |
<?xml version="1.0" encoding="UTF-8"?> <Saison> <Concert> <Organisation> Anacréon </Organisation> <Date>Samedi 9 Octobre 1999 <Heure> 20H30 </Heure> </Date> <Lieu>Chapelle des Ursules</Lieu> </Concert> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mardi 19 Novembre 1999 <Heure> 21H </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mercredi 20 Novembre 1999 <Heure> 21H30 </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> </Saison> |
<?xml version="1.0" encoding="UTF-8"?> <Saison> <Concert> <Organisation> Anacréon </Organisation> <Date>Samedi 9 Octobre 1999 <Heure> 20H30 </Heure> </Date> <Lieu>Chapelle des Ursules</Lieu> </Concert> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mardi 19 Novembre 1999 <Heure> 21H </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mercredi 20 Novembre 1999 <Heure> 21H30 </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> </Saison> |
<xsl:template match="...Pattern LocationPath...">
<!-- modèle de transformation -->
...
<!-- fin du modèle de transformation -->
</xsl:template> |
child::chapitre/child::section/child::paragraphe Forme courte : chapitre/section/paragraphe |
child::chapitre/descendant-or-self::node()/child::paragraphe Forme courte : chapitre//paragraphe |
chapitre/section | annexe |
child::paragraphe/attribute::alignement Forme courte : paragraphe/@alignement |
paragraphe/processing-instruction() |
chapitre/section/paragraphe[@alignement = "centré"] |
child::chapitre[following-sibling::annexe]/descendant-or-self::node()/child::paragraphe Forme courte : chapitre[following-sibling::annexe]//paragraphe |
child::chapitre[position() = last()] | child::annexe Forme courte : chapitre[last()] | annexe |
<xsl:template select="chapitre/section[ position() < 3 ]"> |
<xsl:template match="Heure"> ... </xsl:template> <xsl:template match="*"> ... </xsl:template>> |
<?xml version="1.0" encoding="UTF-8"?> <Saison> <Concert> <Organisation> Anacréon </Organisation> <Date>Samedi 9 Octobre 1999 <Heure> 20H30 </Heure> </Date> <Lieu>Chapelle des Ursules</Lieu> </Concert> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mardi 19 Novembre 1999 <Heure> 21H </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mercredi 20 Novembre 1999 <Heure> 21H30 </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> </Saison> |
<xsl:template match='Théâtre//Heure' priority="2"> ... </xsl:template> <xsl:template match='Heure' priority="1"> ... </xsl:template> |
<xsl:template match="... motif (pattern) ...">
<!-- modèle de transformation -->
...
mélange de texte et d'instructions XSLT du genre
<xsl:xxx ...> ... </xsl:xxx>
...
<!-- fin du modèle de transformation -->
</xsl:template>
|
<xsl:template match="... motif (pattern) ..."> <!-- modèle de transformation --> ... mélange de texte et d'instructions XSLT de la forme : <xsl:value-of select="... chemin de localisation ..." /> ... <!-- fin du modèle de transformation --> </xsl:template> |
Saison.xml |
<?xml version="1.0" encoding="UTF-8"?> <Saison> <Concert> <Organisation> Anacréon </Organisation> <Date>Samedi 9 Octobre 1999 <Heure> 20H30 </Heure> </Date> <Lieu>Chapelle des Ursules</Lieu> </Concert> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mardi 19 Novembre 1999 <Heure> 21H </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> <Théâtre> <Organisation> Masques et Lyres </Organisation> <Date>Mercredi 20 Novembre 1999 <Heure> 21H30 </Heure> </Date> <Lieu>Salle des Cordeliers</Lieu> </Théâtre> </Saison> |
Saison.xsl |
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0"> <xsl:output method='text' encoding='UTF-8'/> <xsl:template match='/'> Date Concert : <xsl:value-of select="Saison/Concert/Date"/> Date Théâtre : <xsl:value-of select="Saison/Théâtre[1]/Date"/> Date Théâtre : <xsl:value-of select="Saison/Théâtre[2]/Date"/> </xsl:template> </xsl:stylesheet> |
Date Concert : Samedi 9 Octobre 1999 20H30 Date Théâtre : Mardi 19 Novembre 1999 21H Date Théâtre : Mercredi 20 Novembre 1999 21H30 |
<?xml version="1.0" encoding="UTF-8"?> Date Concert : Samedi 9 Octobre 1999 20H30 Date Théâtre : Mardi 19 Novembre 1999 21H Date Théâtre : Mercredi 20 Novembre 1999 21H30 |
<xsl:template match="... motif (pattern) ..."> <!-- modèle de transformation --> ... texte ... <xsl:apply-templates /> ... texte ... <!-- fin du modèle de transformation --> </xsl:template> |
Saison.xsl |
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0"> <xsl:output method='text' encoding='UTF-8'/> <xsl:template match='/'> <xsl:apply-templates/> </xsl:template> <xsl:template match='Saison'> Manifestations au programme <xsl:apply-templates/> Réservations 10 jours avant la date. </xsl:template> <xsl:template match='Concert'> Concert : <xsl:value-of select="."/> </xsl:template> <xsl:template match='Théâtre'> Théâtre : <xsl:value-of select="."/> </xsl:template> </xsl:stylesheet> |
Manifestations au programme Concert : Pygmalion Samedi 9 Octobre 1999 20H30 Chapelle des Ursules Théâtre : Masques et Lyres Mardi 19 Novembre 1999 21H Salle des Cordeliers Théâtre : Aristophane Mercredi 20 Novembre 1999 21H30 Salle des Cordeliers Réservations 10 jours avant la date. |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
<xsl:template match='text()|attribute::*'> <xsl:value-of select = "." /> </xsl:template> |
<xsl:template match='comment() | processing-instruction()'> </xsl:template> |
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0"> <xsl:output method='text' encoding='UTF-8'/> </xsl:stylesheet> |
Anacréon Samedi 9 Octobre 1999 20H30 Chapelle des Ursules Masques et Lyres Mardi 19 Novembre 1999 21H Salle des Cordeliers Masques et Lyres Mercredi 20 Novembre 1999 21H30 Salle des Cordeliers |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
<xsl:template match='text()|attribute::*'> <xsl:value-of select = "." /> </xsl:template> |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
<xsl:template match='text()|attribute::*'> <xsl:value-of select = "." /> </xsl:template> |
Saison.xsl |
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0"> <xsl:output method='text' encoding='UTF-8'/> <xsl:template match='/'> Date Concert : <xsl:value-of select="Saison/Concert/Date"/> Date Théâtre : <xsl:value-of select="Saison/Théâtre[1]/Date"/> Date Théâtre : <xsl:value-of select="Saison/Théâtre[2]/Date"/> </xsl:template> </xsl:stylesheet> |
Saison.xsl |
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0"> <xsl:output method='text' encoding='ISO-8859-1'/> <xsl:template match='Concert'> Date Concert : <xsl:value-of select="Date"/> </xsl:template> <xsl:template match='Théâtre'> Date Théâtre : <xsl:value-of select="Date"/> </xsl:template> </xsl:stylesheet> |
Date Concert : Samedi 9 Octobre 1999 20H30 Date Théâtre : Mardi 19 Novembre 1999 21H Date Théâtre : Mercredi 20 Novembre 1999 21H30 |
Saison.xsl |
<?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" version = "1.0"> <xsl:output method='text' encoding='ISO-8859-1'/> <xsl:template match='Concert'> Date Concert : <xsl:value-of select="Date"/> </xsl:template> <xsl:template match='Théatre'> Date Théâtre : <xsl:value-of select="Date"/> </xsl:template> </xsl:stylesheet> |
Date Concert : Samedi 9 Octobre 1999 20H30 Masques et Lyres Mardi 19 Novembre 1999 21H Salle des Cordeliers Masques et Lyres Mercredi 20 Novembre 1999 21H30 Salle des Cordeliers |
<xsl:template match='*'> erreur : élément non prévu : tag{ <xsl:value-of select="local-name(.)" /> } <xsl:apply-templates/> </xsl:template> |
<xsl:template match='/|*'> <xsl:apply-templates/> </xsl:template> |
erreur : élément non prévu : tag{ Saison } Date Concert : Samedi 9 Octobre 1999 20H30 erreur : élément non prévu : tag{ Théâtre } erreur : élément non prévu : tag{ Organisation } Masques et Lyres erreur : élément non prévu : tag{ Date } Mardi 19 Novembre 1999 erreur : élément non prévu : tag{ Heure } 21H erreur : élément non prévu : tag{ Lieu } Salle des Cordeliers erreur : élément non prévu : tag{ Théâtre } erreur : élément non prévu : tag{ Organisation } Masques et Lyres erreur : élément non prévu : tag{ Date } Mercredi 20 Novembre 1999 erreur : élément non prévu : tag{ Heure } 21H30 erreur : élément non prévu : tag{ Lieu } Salle des Cordeliers |
preceding-sibling::*[1] | Table | following-sibling::*[1] |