2013-10-10 27 views
7

Sto provando a trasformare un elenco in un elenco di valori distinti utilizzando XSLT.XSLT seleziona valori distinti utilizzando gli attributi

ingresso:

<object name="obj1"/> 
<object name="obj2"/> 
<object name="obj1"/> 

output desiderato:

<object>obj1</object> 
<object>obj2</object> 

Qualcuno un'idea di come farlo fare sia in XSLT 1.0 o 2.0?

THX

risposta

15

Usa XSLT 2.0 e

<xsl:for-each select="distinct-values(//object/@name)"> 
    <object><xsl:value-of select="."/></object> 
</xsl:for-each> 

o

<xsl:for-each-group select="//object" group-by="@name"> 
    <object><xsl:value-of select="current-grouping-key()"/></object> 
</xsl:for-each-group> 
+0

Per me la sua venuta questo errore ' 'valori distinti()' è uno sconosciuto XSLT function.' – shanmugharaj

+0

È è necessario utilizzare un processore XSLT 2 per eseguire quel codice. –

+0

Per favore, puoi dirmi come farlo. Sto usando C# – shanmugharaj

Problemi correlati