Bonjour
Voilà, j'ai fait un fichier xml, une dtd et un fichier xsl.
Les voici :

fichierxml

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE classedec08 SYSTEM "classedec08.dtd">
<?xml-stylesheet  type="text/xsl" href="classedec08.xsl"?>
<ecole>
	<eleve>
			<classe>M1</classe>
			<nom>Durand</nom>
			<prenom>Jacques</prenom>
			<appreciation>11</appreciation>
		</eleve>
		<eleve>
			<classe>M1</classe>
			<nom>Dupont</nom>
			<prenom>Joséphine</prenom>
			<appreciation>13</appreciation>
		</eleve>
		<eleve>
			<classe>M1</classe>
			<nom>Dugenou</nom>
			<prenom>Gédéon</prenom>
			<appreciation>4</appreciation>
		</eleve>
		<eleve>
			<classe>M1</classe>
			<nom>Dufour</nom>
			<prenom>Gaétan</prenom>
			<appreciation>10</appreciation>
		</eleve>
</ecole>
fichier xsl

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 <?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"
xmlns="http://www.w3.org/TR/REC-html40"
result-ns="">
<!-- Feuille de style pour les élèves de l'école -->
<xsl:template match="/">
<html>
	<head>
		<title>Classes de l'école</title>
	</head>
	<body>
	<table border="1">
			<caption>Classes de l'école</caption>
			<tr>
				<th>classe</th>
				<th>nom</th>
				<th>prénom</th>
				<th>appréciation</th>
			</tr>
			<xsl:for-each select="ecole/eleve" >		
			<tr>
					<td><xsl:value-of select="classe"/></td>
					<td><xsl:value-of select="nom"/></td>
					<td><xsl:value-of select="prenom"/></td>
					<td><xsl:value-of select="appreciation"/></td>
			</tr>
			</xsl:for-each>			
	</table>
	</body>
</html>
</xsl:template>
</xsl:stylesheet>
dtd

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<!ELEMENT ecole ( classe+)>
<!ELEMENT classe ( #PCDATA)>
<!ELEMENT classe ( eleve+)>
<!ELEMENT eleve ( nom,prenom,appreciation)>
<!ELEMENT nom ( #PCDATA)>
<!ELEMENT prenom ( #PCDATA)>
<!ELEMENT appreciation ( #PCDATA)>
J'obtiens bien un tableau mais pas celui que je voudrais : je voudrais dans la première colonne classe n'avoir qu'une seule fois M1 (car il y aura ensuite plusieurs classes).
Est-ce que quelqu'un peut m'aider, je n'arrive pas du tout à touver la solution. Je débute et donc c'est surement pour cela.
Merci