bonjour à tous,
je me permets d'ouvrir une nouvelle discussion sur les navigateurs qui supportent xml, l'autre étant écrit comme résolu...

voilà, je débute totalement. J'ai un fichier test.xml
<?xml version="1.0" encoding="ISO-8859-1" ?>
<?xml-stylesheet type="text/xsl" href="test.xsl"?>
<compilation>
<mp3>
<titre>Foule sentimentale</titre>
<artiste>Alain Souchon</artiste>
</mp3>
<mp3>
<titre>Solaar pleure</titre>
<artiste>MC Solaar</artiste>
</mp3>
<mp3>
<titre>Le baiser</titre>
<artiste>Alain Souchon</artiste>
</mp3>
<mp3>
<titre>Pourtant</titre>
<artiste>Vanessa Paradis</artiste>
</mp3>
<mp3>
<titre>Chambre avec vue</titre>
<artiste>Henri Salvador</artiste>
</mp3>
</compilation>


avec le fichier XSL associé :

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl">
<xsl:template match="/">
<html>
<body>
<table border="1" cellspacing="0" cellpadding="3">
<tr bgcolor="#FFFF00">
<td>Artiste</td>
<td>Titre</td>
</tr>
<xsl:for-each select="compilation/mp3">
<xsl:choose>
<xsl:when test=".[artiste='Alain Souchon']">
<tr bgcolor="#00FF00">
<td><xsl:value-of select="titre" /></td>
<td><xsl:value-of select="artiste" /></td>
</tr>
</xsl:when>
<xsl:otherwise>
<tr>
<td><xsl:value-of select="titre" /></td>
<td><xsl:value-of select="artiste" /></td>
</tr>
</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>


le principe est de sélectionner toutes les occurences de titres d'alain souchon et de surligner la ligne en vert.

Le problème, c'est je n'ai un résultat correct que sur Internet Explorer. Sur Firefox j'ai ce message :
Erreur lors du chargement de la feuille de style : Échec de l'analyse d'une feuille de style XSLT.


Par contre si je change la deuxième ligne du fichier xsl et que j'écris

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


c'est le contraire qui se passe!! ca fonctionne sur Firefox mais plus sur IE, j'ai ce message :

Jeton attendu 'eof' trouvé '['. .-->[<--artiste='Alain Souchon']


J'aimerais avoir quelques ecclaircissements, et savoir quoi écrire en début de fichier xml ou xsl pour assurer une compatibilité entre ces deux navigateurs.

Merci!
Modifié par hollywood57 (31 Jan 2006 - 18:09)
Bonjour!

Il me semble que dans le second cas, qui est la bonne déclaration de la feuille XSL, FireFox reconnaît celle-ci comme une feuille "digne de ce nom", mais ne signale pas d'erreur.

Essaie d'écrire tout simplement test="article='Alain Souchon'", sans mettre l'ensemble sous forme de prédicat. Cela devrait passer...
Modifié par Gilles (31 Jan 2006 - 16:04)
merci, ca fonctionne.

donc une feuille xml commence par cette ligne...
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">


le prédicat devait être mal écrit sur le magazine sur lequel je l'ai trouvé...