[XSLT] Grouper, trier, compiler une donnée spécifique - trop difficile pour moi
Bonjour,
Débutant ici :)
Utilisant ce fichier XML,
http://pages.infinit.net/plague/top500.xml
Comment je peux faire un fichier XSLT qui va produire cette sortie:
http://pages.infinit.net/plague/countrystats.png
Je demande pas nécessairement un fichier XSLT complet, juste quelques astuces pour me pointer dans la bonne direction, s'il vous plait. J'imagine que vous aller mentionner l'algorithme de Muench et xsl:key mais mes attemptives avec ça n'ont pas porté fruit.
J'ai encore un long bout à faire... voici mon fichier XSLT en progrès.
Merci! :)
Code:
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
|
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:top500="http://www.top500.org/xml/top500/1.0">
<xsl:output method="html" version="1.0" encoding="UTF-8" indent="yes"/>
<xsl:key name="sites-by-country" match="top500:site" use="top500:country"/>
<xsl:template match="/top500:list">
<html>
<head>
<title>ALL COUNTRIES IN TOP 500</title>
</head>
<body>
<table style="text-align:left">
<tr style="background-color=7777FF">
<th width="150">Countries</th>
<th>Count</th>
<th>Share %</th>
</tr>
<xsl:for-each select="top500:site/top500:country">
<xsl:sort select="top500:country"/>
<tr>
<td>
<xsl:value-of select="."/>
</td>
<td>
<xsl:value-of select="count(//top500:site[top500:country=current()])"/>
</td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet> |