aboutsummaryrefslogtreecommitdiff
path: root/files/fr/xslt_dans_gecko
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:40:17 -0500
commit33058f2b292b3a581333bdfb21b8f671898c5060 (patch)
tree51c3e392513ec574331b2d3f85c394445ea803c6 /files/fr/xslt_dans_gecko
parent8b66d724f7caf0157093fb09cfec8fbd0c6ad50a (diff)
downloadtranslated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.gz
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.tar.bz2
translated-content-33058f2b292b3a581333bdfb21b8f671898c5060.zip
initial commit
Diffstat (limited to 'files/fr/xslt_dans_gecko')
-rw-r--r--files/fr/xslt_dans_gecko/différences_entre_les_navigateurs/index.html22
-rw-r--r--files/fr/xslt_dans_gecko/exemple_basique/index.html65
-rw-r--r--files/fr/xslt_dans_gecko/génération_de_html/index.html190
-rw-r--r--files/fr/xslt_dans_gecko/index.html43
4 files changed, 320 insertions, 0 deletions
diff --git a/files/fr/xslt_dans_gecko/différences_entre_les_navigateurs/index.html b/files/fr/xslt_dans_gecko/différences_entre_les_navigateurs/index.html
new file mode 100644
index 0000000000..5b5a0c99c3
--- /dev/null
+++ b/files/fr/xslt_dans_gecko/différences_entre_les_navigateurs/index.html
@@ -0,0 +1,22 @@
+---
+title: Différences entre les navigateurs
+slug: XSLT_dans_Gecko/Différences_entre_les_navigateurs
+translation_of: Web/API/XSLTProcessor/Browser_Differences
+---
+<p></p><ol>
+<li><a href="/fr/docs/XSLT_dans_Gecko">Introduction</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Exemple_basique">Exemple basique</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/G%c3%a9n%c3%a9ration_de_HTML">Génération de HTML</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Diff%c3%a9rences_entre_les_navigateurs">Différences entre les navigateurs</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Ressources">Ressources</a></li>
+</ol><p></p>
+
+<h2 id="Diff.C3.A9rences_entre_les_navigateurs" name="Diff.C3.A9rences_entre_les_navigateurs">Différences entre les navigateurs</h2>
+
+<ul>
+ <li>Netscape 7.x (toutes plateformes confondues) et Internet Explorer 6 (Windows) support ent la recommandation <a class="external" href="http://www.w3.org/TR/xslt">XSLT 1.0 (en)</a> du W3C.</li>
+ <li>IE 5.0 et 5.5 (Windows) ne supportent que le brouillon de travail de XSLT, et ne sont donc pas compatibles avec les feuilles de style XSLT 1.0.</li>
+ <li>Netscape 6.x ne supporte que partiellement XSLT 1.0.</li>
+</ul>
+
+<p>{{PreviousNext("XSLT dans Gecko:Génération de HTML", "XSLT dans Gecko:Ressources")}}</p>
diff --git a/files/fr/xslt_dans_gecko/exemple_basique/index.html b/files/fr/xslt_dans_gecko/exemple_basique/index.html
new file mode 100644
index 0000000000..8d78422777
--- /dev/null
+++ b/files/fr/xslt_dans_gecko/exemple_basique/index.html
@@ -0,0 +1,65 @@
+---
+title: Exemple basique
+slug: XSLT_dans_Gecko/Exemple_basique
+translation_of: Web/API/XSLTProcessor/Basic_Example
+---
+<p></p><ol>
+<li><a href="/fr/docs/XSLT_dans_Gecko">Introduction</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Exemple_basique">Exemple basique</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/G%c3%a9n%c3%a9ration_de_HTML">Génération de HTML</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Diff%c3%a9rences_entre_les_navigateurs">Différences entre les navigateurs</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Ressources">Ressources</a></li>
+</ol><p></p>
+
+<h2 id="Exemple_basique" name="Exemple_basique">Exemple basique</h2>
+
+<p>Ce premier exemple présente les bases de l'utilisation d'une transformation XSLT dans un navigateur. L'exemple utilise un document XML qui contient des informations (titre, liste d'auteurs et corps de texte) à propos d'un article pour en tirer une version lisible par un humain.</p>
+
+<p>La figure 1 montre le code source de l'exemple XSLT. Le document XML (exemple.xml) contient les informations à propos de l'article. En utilisant l'instruction de traitement <code>?xml-stylesheet?</code>, il est lié à la feuille de style XSLT (exemple.xsl) via son attribut <code>href</code>.</p>
+
+<p>Une feuille de style XSLT débute par l'élément <code>xsl:stylesheet</code>, qui contient tous les modèles utilisés pour créer le résultat final. L'exemple de la figure 1 possède deux modèles - un qui s'applique au nœud racine et un aux nœuds <code>Author</code>. Le modèle correspondant au nœud racine produit en sortie le titre de l'article puis déclenche le traitement de tous les autres modèles (via <code>apply-templates</code>) correspondant aux nœuds <code>Author</code> qui sont les descendants du nœud <code>Authors</code>.</p>
+
+<p>Figure 1 : exemple XSLT simple</p>
+
+<p>Document XML (exemple.xml) :</p>
+
+<pre> &lt;?xml version="1.0"?&gt;
+ &lt;?xml-stylesheet type="text/xsl" href="exemple.xsl"?&gt;
+ &lt;Article&gt;
+ &lt;Title&gt;Mon article&lt;/Title&gt;
+ &lt;Authors&gt;
+ &lt;Author&gt;M. Foo&lt;/Author&gt;
+ &lt;Author&gt;M. Bar&lt;/Author&gt;
+ &lt;/Authors&gt;
+ &lt;Body&gt;Ceci est le texte de mon article.&lt;/Body&gt;
+ &lt;/Article&gt;
+</pre>
+
+<p>Feuille de style XSL (exemple.xsl) :</p>
+
+<pre> &lt;?xml version="1.0"?&gt;
+ &lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt;
+
+ &lt;xsl:output method="text"/&gt;
+
+ &lt;xsl:template match="/"&gt;
+ Article - &lt;xsl:value-of select="/Article/Title"/&gt;
+ Auteurs : &lt;xsl:apply-templates select="/Article/Authors/Author"/&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;xsl:template match="Author"&gt;
+ - &lt;xsl:value-of select="." /&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;/xsl:stylesheet&gt;
+</pre>
+
+<p>Sortie dans le navigateur :</p>
+
+<pre> Article - Mon article
+ Auteurs :
+ - M. Foo
+ - M. Bar
+</pre>
+
+<p>{{PreviousNext("XSLT dans Gecko", "XSLT dans Gecko:Génération de HTML")}}</p>
diff --git a/files/fr/xslt_dans_gecko/génération_de_html/index.html b/files/fr/xslt_dans_gecko/génération_de_html/index.html
new file mode 100644
index 0000000000..ca333bb2ac
--- /dev/null
+++ b/files/fr/xslt_dans_gecko/génération_de_html/index.html
@@ -0,0 +1,190 @@
+---
+title: Génération de HTML
+slug: XSLT_dans_Gecko/Génération_de_HTML
+translation_of: Web/API/XSLTProcessor/Generating_HTML
+---
+<p></p><ol>
+<li><a href="/fr/docs/XSLT_dans_Gecko">Introduction</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Exemple_basique">Exemple basique</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/G%c3%a9n%c3%a9ration_de_HTML">Génération de HTML</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Diff%c3%a9rences_entre_les_navigateurs">Différences entre les navigateurs</a></li>
+<li><a href="/fr/docs/XSLT_dans_Gecko/Ressources">Ressources</a></li>
+</ol><p></p>
+
+<h2 id="G.C3.A9n.C3.A9ration_de_HTML" name="G.C3.A9n.C3.A9ration_de_HTML">Génération de HTML</h2>
+
+<p>Une application courante de XSLT dans les navigateurs est la transformation de code XML en HTML du coté du client. Le second exemple va transformer un document d'entrée (example2.xml), qui contient des informations à propos d'un article, en un document HTML.</p>
+
+<p>L'élément <code>&lt;body&gt;</code> de l'article contient maintenant des éléments HTML (des balises <code>&lt;strong&gt;</code> et <code>&lt;em&gt;</code>, voir la figure 2). Le document XML contient à la fois des éléments HTML et éléments XML, mais un seul espace de nommage est nécessaire, pour les éléments XML. Comme il n'existe pas d'espace de nommage HTML, et que l'utilisation de l'espace de nommage XHTML forcerait le XSL à créer un document XML qui pourrait ne pas se comporter comme un document HTML, le nœud <code>xsl:output</code> de la feuille de style assure que le document résultant sera bien traité comme du HTML. Pour les éléments XML, nous avons besoin de notre propre espace de nommage, <code><a class="external" href="http://devedge.netscape.com/2002/de" rel="freelink">http://devedge.netscape.com/2002/de</a></code>, à qui nous donnons le préfixe myNS <code>(xmlns:myNS="<span class="nowiki">http://devedge.netscape.com/2002/de</span>")</code>.</p>
+
+<p><small><strong>Figure 2 : fichier XML (example2.xml)<span class="comment">voir l'exemple | voir le source</span></strong></small> <span class="comment">Document XML (example2.xml):</span> <span class="comment">&lt;div style="background: #EEE; font-size: 1.1em; line-height: 1.1em; border: dashed #666 1px; padding: 15px 20px 15px 20px; overflow: auto;"&gt;</span></p>
+
+<pre class="eval">&lt;?xml version="1.0"?&gt;
+&lt;?xml-stylesheet type="text/xsl" href="example.xsl"?&gt;
+ &lt;myNS:Article xmlns:myNS="<a class="external" href="http://devedge.netscape.com/2002/de" rel="freelink">http://devedge.netscape.com/2002/de</a>"&gt;
+ &lt;myNS:Title&gt;Mon article&lt;/myNS:Title&gt;
+ &lt;myNS:Authors&gt;
+ &lt;myNS:Author company="Foopy Corp."&gt;M. Foo&lt;/myNS:Author&gt;
+ &lt;myNS:Author&gt;M. Bar&lt;/myNS:Author&gt;
+ &lt;/myNS:Authors&gt;
+ &lt;myNS:Body&gt;
+ En &lt;em&gt;Espagne&lt;/em&gt;, les &lt;strong&gt;pluies&lt;/strong&gt; se concentrent
+ principalement dans les plaines.
+ &lt;/myNS:Body&gt;
+ &lt;/myNS:Article&gt;
+</pre>
+
+<p>La feuille de style XSL utilisée aura besoin de deux espaces de nommage - un pour les éléments XSLT et un pour nos propres éléments XML utilisés dans le document XML. La sortie de la feuille de style XSL est définie à <code>HTML</code> à l'aide de l'élément <code>xsl:output</code>. En définissant la sortie comme étant du code HTML et en n'ayant pas d'espace de nommage pour les éléments résultants (coloré en bleu), ces éléments seront traités comme des éléments HTML.</p>
+
+<p><small><strong>Figure 3 : feuille de style XSL avec 2 espaces de nommage</strong> (example2.xsl)</small> <span class="comment">feuille de style XSL (example2.xsl):</span></p>
+
+<pre> &lt;?xml version="1.0"?&gt;
+ &lt;xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:myNS="http://devedge.netscape.com/2002/de"&gt;
+
+ &lt;xsl:output method="html"/&gt;
+ ...
+ &lt;/xsl:stylesheet&gt;
+</pre>
+
+<p>Un modèle s'appliquant au nœud racine du document XML est créé et utilisé pour créer la structure de base de la page HTML.</p>
+
+<p><small><strong>Figure 4 : Création du document HTML de base</strong></small> <span class="comment">feuille de style XSL (example2.xsl):</span></p>
+
+<pre> ...
+ &lt;xsl:template match="/"&gt;
+ &lt;html&gt;
+
+ &lt;head&gt;
+
+ &lt;title&gt;
+ &lt;xsl:value-of select="/myNS:Article/myNS:Title"/&gt;
+ &lt;/title&gt;
+
+ &lt;style type="text/css"&gt;
+ .myBox {margin:10px 155px 0 50px; border: 1px dotted #639ACE; padding:0 5px 0 5px;}
+ &lt;/style&gt;
+
+ &lt;/head&gt;
+
+ &lt;body&gt;
+ &lt;p class="myBox"&gt;
+ &lt;span class="title"&gt;
+ &lt;xsl:value-of select="/myNS:Article/myNS:Title"/&gt;
+ &lt;/span&gt; &lt;br /&gt;
+
+ Auteurs : &lt;br /&gt;
+ &lt;xsl:apply-templates select="/myNS:Article/myNS:Authors/myNS:Author"/&gt;
+ &lt;/p&gt;
+
+ &lt;p class="myBox"&gt;
+ &lt;xsl:apply-templates select="//myNS:Body"/&gt;
+ &lt;/p&gt;
+
+ &lt;/body&gt;
+
+ &lt;/html&gt;
+ &lt;/xsl:template&gt;
+ ...
+</pre>
+
+<p>Nous avons besoin de trois <code>xsl:template</code> supplémentaires pour parachever l'exemple. Le premier <code>xsl:template</code> est utilisé pour les nœuds <code>Author</code>, alors que le deuxième traite le nœud <code>body</code>. Le troisième possède une règle de correspondance générale qui lui permet de s'appliquer à chaque nœud et chaque attribut. Cela est nécessaire afin de préserver les éléments HTML présents dans le document XML : il s'appliquant à tous, et les recopie dans le document HTML créé par la transformation.</p>
+
+<p><strong><small>Figure 5 : Les 3 modèles finaux</small></strong> <span class="comment">feuille de style XSL (example2.xsl):</span></p>
+
+<pre> ...
+ &lt;xsl:template match="myNS:Author"&gt;
+ -- &lt;xsl:value-of select="." /&gt;
+
+ &lt;xsl:if test="@company"&gt;
+  :: &lt;strong&gt; &lt;xsl:value-of select="@company" /&gt; &lt;/strong&gt;
+ &lt;/xsl:if&gt;
+
+ &lt;br /&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;xsl:template match="myNS:Body"&gt;
+ &lt;xsl:copy&gt;
+ &lt;xsl:apply-templates select="@*|node()"/&gt;
+ &lt;/xsl:copy&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;xsl:template match="@*|node()"&gt;
+ &lt;xsl:copy&gt;
+ &lt;xsl:apply-templates select="@*|node()"/&gt;
+ &lt;/xsl:copy&gt;
+ &lt;/xsl:template&gt;
+ ...
+</pre>
+
+<p>La feuille de style XSLT finale est donc :</p>
+
+<p><small><strong>Figure 6 : feuille de style XSLT finale <span class="comment">voir l'exemple | voir le source</span></strong></small> <span class="comment">feuille de style XSL :</span></p>
+
+<pre> &lt;?xml version="1.0"?&gt;
+ &lt;xsl:stylesheet version="1.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ xmlns:myNS="http://devedge.netscape.com/2002/de"&gt;
+
+ &lt;xsl:output method="html" /&gt;
+
+ &lt;xsl:template match="/"&gt;
+ &lt;html&gt;
+
+ &lt;head&gt;
+
+ &lt;title&gt;
+ &lt;xsl:value-of select="/myNS:Article/myNS:Title"/&gt;
+ &lt;/title&gt;
+
+ &lt;style type="text/css"&gt;
+ .myBox {margin:10px 155px 0 50px; border: 1px dotted #639ACE; padding:0 5px 0 5px;}
+ &lt;/style&gt;
+
+ &lt;/head&gt;
+
+ &lt;body&gt;
+ &lt;p class="myBox"&gt;
+ &lt;span class="title"&gt;
+ &lt;xsl:value-of select="/myNS:Article/myNS:Title"/&gt;
+ &lt;/span&gt; &lt;br /&gt;
+
+ Authors: &lt;br /&gt;
+ &lt;xsl:apply-templates select="/myNS:Article/myNS:Authors/myNS:Author"/&gt;
+ &lt;/p&gt;
+
+ &lt;p class="myBox"&gt;
+ &lt;xsl:apply-templates select="//myNS:Body"/&gt;
+ &lt;/p&gt;
+
+ &lt;/body&gt;
+
+ &lt;/html&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;xsl:template match="myNS:Author"&gt;
+ -- &lt;xsl:value-of select="." /&gt;
+
+ &lt;xsl:if test="@company"&gt;
+  :: &lt;b&gt; &lt;xsl:value-of select="@company" /&gt; &lt;/b&gt;
+ &lt;/xsl:if&gt;
+
+ &lt;br /&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;xsl:template match="myNS:Body"&gt;
+ &lt;xsl:copy&gt;
+ &lt;xsl:apply-templates select="@*|node()"/&gt;
+ &lt;/xsl:copy&gt;
+ &lt;/xsl:template&gt;
+
+ &lt;xsl:template match="@*|node()"&gt;
+ &lt;xsl:copy&gt;
+ &lt;xsl:apply-templates select="@*|node()"/&gt;
+ &lt;/xsl:copy&gt;
+ &lt;/xsl:template&gt;
+ &lt;/xsl:stylesheet&gt;
+</pre>
+
+<p>{{PreviousNext("XSLT dans Gecko:Exemple basique", "XSLT dans Gecko:Différences entre les navigateurs")}}</p>
diff --git a/files/fr/xslt_dans_gecko/index.html b/files/fr/xslt_dans_gecko/index.html
new file mode 100644
index 0000000000..05ad63a567
--- /dev/null
+++ b/files/fr/xslt_dans_gecko/index.html
@@ -0,0 +1,43 @@
+---
+title: XSLT dans Gecko
+slug: XSLT_dans_Gecko
+tags:
+ - XSLT
+translation_of: Web/API/XSLTProcessor
+---
+<p> </p>
+
+<ol>
+ <li><a href="/fr/docs/XSLT_dans_Gecko">Introduction</a></li>
+ <li><a href="/fr/docs/XSLT_dans_Gecko/Exemple_basique">Exemple basique</a></li>
+ <li><a href="/fr/docs/XSLT_dans_Gecko/G%c3%a9n%c3%a9ration_de_HTML">Génération de HTML</a></li>
+ <li><a href="/fr/docs/XSLT_dans_Gecko/Diff%c3%a9rences_entre_les_navigateurs">Différences entre les navigateurs</a></li>
+ <li><a href="/fr/docs/XSLT_dans_Gecko/Ressources">Ressources</a></li>
+</ol>
+
+<p> </p>
+
+<h2 id="Introduction" name="Introduction">Introduction</h2>
+
+<p>Une des tendances notables dans les standards du W3C a été l'effort de séparation du contenu et du style. Cela permet de réutiliser un même style pour de multiple contenus, mais également de simplifier le travail de maintenance et de permettre une modification rapide (en ne modifiant qu'un seul et unique fichier) de la charte graphique du contenu.</p>
+
+<p>CSS (Cascade Style Sheets) a été l'un des premiers moyens proposés par le W3C. CSS est un moyen simple d'appliquer des règles de style à un document Web. Ces règles de style définissent de quelle façon le document (le contenu) doit s'afficher. Cependant, CSS a plusieurs limitations, telles l'absence de structures de programmation et l' impossibilité de créer des modèles de rendu complexes. CSS possède également un support limité des changements de position d'un élément.</p>
+
+<p>Les transformations XSL (eXtensible Stylesheet Language) sont composées de deux parties : les éléments XSL, qui permettent la transformation d'un arbre XML en un arbre possédant un balisage différent, et XPath, un langage de sélection pour les arbres. XSLT traite un document XML (le contenu) et crée un nouveau document basé sur les règles contenues dans une feuille de style XSL. Ceci permet à XSLT d'ajouter, d'enlever, de réorganiser les éléments du document XML original et permet ainsi un contrôle plus fin de la structure du document résultant.</p>
+
+<p>Les transformations XSLT sont basées sur des règles qui sont constituées de modèles. Chaque modèle détermine à quels fragments du document XML d'entrée il applique (à l'aide de XPath) les règles de substitution qu'il contient pour créer le nouveau document en sortie.</p>
+
+<p>{{Next("XSLT dans Gecko:Exemple basique")}}</p>
+
+<div class="originaldocinfo">
+<h3 id="Informations_sur_le_document_original" name="Informations_sur_le_document_original">Informations sur le document original</h3>
+
+<ul>
+ <li>Auteur(s) : Doron Rosenberg</li>
+ <li>Dernière mise à jour : 30 janvier 2003</li>
+ <li>Copyright : © 2003 Netscape Communications.</li>
+ <li>URL : <a class="external" href="http://devedge-temp.mozilla.org/viewsource/2003/xslt-browser/index_en.html">XSLT in Netscape Gecko</a></li>
+</ul>
+</div>
+
+<p><span class="comment">Interwiki Languages Links</span></p>