Bonjour à tous,
J'ai un souci avec mon fichier. Y a-t-il une bonne âme qui pourrait m'aider?
J'aimerais trier les titres par ordre alphabétique. Le souci c'est qu'ils sont bien triés mais du coup "mon number format A)" est trié en fonction du tritre. J'obtiens donc mes lettres mélangés. Cela fait une heure que j'essaye et je n'y arrive pas. En plus l'exercice me demande d'afficher que les trois premiers titres.
NB: je ne peux pas modifier mon fichier xml !!
Voici mon fichier xml :
Et voilà mon 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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60 <?xml version="1.0" encoding="ISO-8859-1" ?> <?xml-stylesheet type="text/xsl" href="EPFC_EXA_ABDELKALEK.xsl"?> <?xml-stylesheet type="text/css" href="Films.css"?> <Liste_des_films> <Film Origine="France"> <Titre>Dans la peau de John Malkovitch</Titre> <Acteur_principal Prénom="John" Nom="Cusak"/> <Date_sortie Année="1999" Mois="Décembre" Jour="08"/> <Durée>1h 52 min</Durée> <Réalisateur> <Prénom>Spike</Prénom> <Nom>Jonze</Nom> </Réalisateur> <Description>Un marionnettiste trouve un nouvel emploi</Description> </Film> <Film Origine="USA"> <Titre>Sleepy Hollow</Titre> <Acteur_principal Prénom="Johnny" Nom="Depp"/> <Date_sortie Année="2000" Mois="février" Jour="09"/> <Durée>1h 45 min</Durée> <Réalisateur> <Prénom>Tim</Prénom> <Nom>Burton</Nom> </Réalisateur> <Description>Ichabod Crane enquête sur le cavalier sans tête</Description> </Film> <Film Origine="USA"> <Titre>American Beauty</Titre> <Acteur_principal Prénom="Kevin" Nom="Spacy"/> <Date_sortie Année="2000" Mois="février" Jour="02"/> <Durée>1h 45 min</Durée> <Réalisateur> <Prénom>Sam</Prénom> <Nom>Mendes</Nom> </Réalisateur> <Description>Lester décide de changer la vie</Description> </Film> <Film Origine="FRANCE"> <Titre>Van Gogh</Titre> <Acteur_principal Prénom="Jacques" Nom="Dutronc"/> <Date_sortie Année="1991" Mois="février" Jour="05"/> <Durée>1h 49 min</Durée> <Réalisateur> <Prénom>Maurice</Prénom> <Nom>Pialat</Nom> </Réalisateur> <Description>Histoire de la vie de Van gogh</Description> </Film> <Film Origine="USA"> <Titre>Pige de cristal</Titre> <Acteur_principal Prénom="Bruce" Nom="Willis"/> <Date_sortie Année="1988" Mois="septembre" Jour="21"/> <Durée>2h 05 min</Durée> <Réalisateur> <Prénom>John</Prénom> <Nom>McClane</Nom> </Réalisateur> <Description>John Mc Clane, policier, vient passer Noel Los Angeles ...</Description> </Film> </Liste_des_films>
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
33
34
35
36
37 <?xml version="1.0" encoding="ISO-8859-1" ?> <xsl:stylesheet xmlnssl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:output method="html" version="html4.01" encoding="ISO-8859-1" doctype-public="-//W3C//DTD HTML 4.01//EN" doctype-system="http://www.w3.org/TR/html4/strict.dtd"/> <xsl:template match="/"> <html> <head> <link type="text/css" rel="stylesheet" href="Films.css"/> <title>FilmListe</title> </head> <body> <h1>Les Films americains</h1> <xsl:for-each select="Liste_des_films/Film"> <xsl:sort order="ascending" /> <h2>Titre: <xsl:number level = "single" format ="A)"/> <xsl:apply-templates select="Titre"/></h2> <h3>Informations:</h3> <ul> <xsl:for-each select="Date_sortie/@Année"><li><i>Date de sortie:</i> <xsl:apply-templates select="." /></li></xsl:for-each> <xsl:for-each select="Durée"><li><i>Durée:</i> <xsl:apply-templates select="." /></li></xsl:for-each> <xsl:for-each select="Réalisateur/Prénom"><li><i>Réalisateur:</i> <xsl:apply-templates select="." /></li></xsl:for-each>-<xsl:for-each select="Réalisateur/Nom"><xsl:apply-templates select="." /></xsl:for-each> </ul> <h3>Histoire et acteur principal:</h3> <ul> <xsl:for-each select="Description"><li><i>Description:</i> <xsl:apply-templates select="." /></li></xsl:for-each> <xsl:for-each select="Acteur_principal/@Prénom"><li><i>Acteur principal:</i> <xsl:apply-templates select="." /></li></xsl:for-each>-<xsl:for-each select="Acteur_principal/@Nom"><xsl:apply-templates select="." /></xsl:for-each> </ul> </xsl:for-each> <br /><br /> </body> </html> </xsl:template>
Partager