[XSL] Problème de parse d'un fichier avec Namspaces
Bonjour,
J'ai un problème pour parser un fichier de Bookmarks. Ce fichier a des prefixes pénibles devant les balises (du genre <NC:Bookmark> au lieu de <Bookmark> tout court).
Voici extrait de mon XML :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
|
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet href="test-xsl.xsl" type="text/xsl"?>
<rdf xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:NS="http://home.netscape.com/WEB-rdf#" xmlns:NC="http://home.netscape.com/NC-rdf#" xmlns:FP="http://developer.mozilla.org/rdf/vocabulary/forward-proxy#">
<NC:Bookmark about="rdf:#$5rfVU3" URL="URL Ok" Name="Nom Ok">
<BookmarkAddDate parseType="Date">Date 1 Ok</BookmarkAddDate>
<LastVisitDate parseType="Date">Date 2 Ok</LastVisitDate>
<LastModifiedDate parseType="Date">Date 3 Ok</LastModifiedDate>
</NC:Bookmark>
<NC:Bookmark about="rdf:#$5rfVU3" URL="URL Ok" Name="Nom Ok">
<BookmarkAddDate parseType="Date">Date 1 Ok</BookmarkAddDate>
<LastVisitDate parseType="Date">Date 2 Ok</LastVisitDate>
<LastModifiedDate parseType="Date">Date 3 Ok</LastModifiedDate>
</NC:Bookmark>
<NC:Bookmark about="rdf:#$5rfVU3" URL="URL Ok" Name="Nom Ok">
<BookmarkAddDate parseType="Date">Date 1 Ok</BookmarkAddDate>
<LastVisitDate parseType="Date">Date 2 Ok</LastVisitDate>
<LastModifiedDate parseType="Date">Date 3 Ok</LastModifiedDate>
</NC:Bookmark>
</rdf> |
Et voici mon fichier XSL :
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
|
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:NC="http://home.netscape.com/NC-rdf#"
xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
<xsl:output method="html" encoding="utf-8" indent="yes"/>
<xsl:template match="/">
<html>
<head>
<title>Titre de la page</title>
</head>
<body>
<xsl:apply-templates/>
</body>
</html>
</xsl:template>
<xsl:template match="NC:Bookmark" >
<ul>
<li>
<xsl:value-of select="BookmarkAddDate"/>
-
<xsl:value-of select="LastVisitDate"/>
</li>
</ul>
</xsl:template >
</xsl:stylesheet> |
Avec Internet Explorer, c'est censé afficher tout simplement :
Code:
1 2 3 4 5 6
|
* Date 1 Ok - Date 2 Ok
* Date 1 Ok - Date 2 Ok
* Date 1 Ok - Date 2 Ok |
Quand j'enlève les vilains "NC" dans les balises, ça marche comme sur les roulettes. Par contre quand je remets les "NC" ça sort tout le texte entre les balises du XML en vrac, et ce indépendament de ce qu'on bricole dans le fichier XSL.
Voilà, merci d'avance :)