Thread View: fr.comp.text.xml
2 messages
2 total messages
Started by Eric Jacoboni
Mon, 16 Oct 2000 00:00
Generation de _plusieurs_ fichiers avec _une_ stylesheet ?
Author: Eric Jacoboni
Date: Mon, 16 Oct 2000 00:00
Date: Mon, 16 Oct 2000 00:00
68 lines
2697 bytes
2697 bytes
Salut,
J'ai un petit probl�me � r�soudre : soit deux fichiers xml, le premier
repr�sentant, par exemple, des chanteurs ou des groupes, le deuxi�me
repr�sentant un ensemble d'albums (tous auteurs confondus). Bref un
truc comme �a :
artistes.xml :
<?xml version="1.0"?>
<Artistes>
<Artiste id="1">
<Nom>Pop</Nom>
<Prenom>Iggy</Prenom>
</Artiste>
<Artiste id="2">
<Nom>Led Zeppelin</Nom>
</Artiste>
<Artiste id="3">
<Nom>The Flamin' Groovies</Nom>
</Artiste>
</Artistes>
albums.xml :
<?xml version="1.0"?>
<Albums>
<Album id="1">
<Titre>One night stand</Titre>
<Artiste ref="3"/>
</Album>
<Album id="2">
<Titre>Led Zeppelin III</Titre>
<Artiste ref="2"/>
</Album>
<Album id="3">
<Titre>Led Zeppelin II</Titre>
<Artiste ref="2"/>
</Album>
<Album id="4">
<Titre>Soldier</Titre>
<Artiste ref="1"/>
</Album>
</Albums>
Le but de la manip consisterait � g�n�rer une page HTML contenant un
tableau de deux colonnes : (nom artiste, lien vers une page index).
La page index serait une liste des albums de cet artiste (donc une
page index par artiste).
Pour ce qui est de la premi�re �tape, no problemo, une transformation
XSL me g�n�re correctement des entr�es de type "Led Zeppelin"
"index.2.html".
Le probl�me se situe � la deuxi�me �tape : j'ai beau prendre le truc
dans tous les sens, je ne vois pas comment g�n�rer plusieurs fichiers
index.x.html � partir du fichier albums.xml. Alors, avant de me
gratter la t�te plus longtemps, j'aimerai savoir si c'est seulement
possible ou si je dois changer d'id�e.
Le but du jeu (c'est une manip pour expliquer XML et les transfo XSL � des
�tudiants) est de n'utiliser qu'XML, pas de passer par un SGBD,
�videmment...
Tanqueyou
--
�ric Jacoboni, n� il y a 1275081928 secondes.
Re: Generation de _plusieurs_ fichiers avec _une_ stylesheet ?
Author: Tom
Date: Tue, 17 Oct 2000 00:00
Date: Tue, 17 Oct 2000 00:00
42 lines
2792 bytes
2792 bytes
In article <87u2ac7kg0.fsf@titine.fr.eu.org>, Eric Jacoboni <jaco@titine.fr.eu.org> wrote: > Le probl�me se situe � la deuxi�me �tape : j'ai beau prendre le truc > dans tous les sens, je ne vois pas comment g�n�rer plusieurs fichiers > index.x.html � partir du fichier albums.xml. Alors, avant de me > gratter la t�te plus longtemps, j'aimerai savoir si c'est seulement > possible ou si je dois changer d'id�e. Salut Eric, Tout d�pend de ton processeur XSLT en fait. Pas mal de processeurs ont une extension pour des sorties multiples. Xalan par exemple <http://xml.apache.org/> appelle son extension Redirect. > Le but du jeu (c'est une manip pour expliquer XML et les transfo XSL � des > �tudiants) est de n'utiliser qu'XML, pas de passer par un SGBD, > �videmment... Si tu veux �tre ind�pendant du processeur XSLT, je crois qu'il va falloir transformer plusieurs fois ton document XML. Tu fais une feuille XSLT avec un param�tre (<xsl:param/>). Toutes les transformations d�pendent de ce param�tre (qui sera id�alement le nom de l'artiste), param�tre d�fini lors de l'appel � ton processeur (je pense que tous les processeurs XSLT te permettent de passer un param�tre � une feuille de transformation). Probl�me : il faut connaitre tous les artistes � l'avance et ne pas en oublier... <A-propos sujet="ton article sur linux-france"> Je me demande bien pourquoi tu t'em...b�te � recoder ton document en UTF-8, si ce n'est pour �tre s�r que tous tes correspondants pourront l'utiliser peu importe leur parser. Mais j'ose douter que tes correspondants n'aient pas des parsers connaissant l'iso-8859-1 (latin-1), alors autant garder ton document en latin-1 non ? Il suffit de l'indiquer au d�but : <?xml version="1.0" encoding="iso-8859-1" ?> Tu gagnes l'�tape du recode. Autre chose, pour la d�claration des attributs dans la DTD, pas besoin d'en faire d'abord une entit� (<!ENTITY>), tu peux les d�clarer de suite : <!ATTLIST �l�ment "attribut1 CDATA #IMPLIED attribut2 ID #REQUIRED" > </A-propos>
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads