[XSLT] for-each-group et sort
Bonjour,
J'ai des données en XML (livres) et je dois créer des pages html, notamment un classement par auteurs.
J'arrive bien à avoir la liste des auteurs:
Code:
1 2
|
<xsl:for-each-group group-by="mainsection/credits/credit[./role[@id='dfAuthor']]/person/displayname" select="book"> |
Sachant que le path XML complet jusqu'à displayname est:
Code:
1 2
|
booklist/book/mainsection/credits/credit/person/displayname |
et que bien sûr il peut y avoir plusieurs auteurs, donc plusieurs blocs "credit" sous "credits".
J'ai donc essayé de mettre un "xsl:sort" pour avoir les auteurs dans l'ordre alphabétique:
Code:
1 2
|
<xsl:sort select="mainsection/credits/credit[./role[@id='dfAuthor']]/person/sortname"/> |
ce qui provoque l'erreur suivante quand il y a plusieurs auteurs:
Code:
1 2
|
A sequence of more than one item is not allowed as the @select attribute of xsl:sort |
Je débute en XML / XLS et je ne vois pas trop comment m'en sortir...
Merci pour votre aide.