Salve a tutti,
vorrei prendere come risultato il numero di tag <x> contenuti nel tag <y>.
ho provato con count(), ma mi dà il numero di tag <x> contenuti in tutto il documento! come posso fare?
mi può aiutare qualcuno?
Salve a tutti,
vorrei prendere come risultato il numero di tag <x> contenuti nel tag <y>.
ho provato con count(), ma mi dà il numero di tag <x> contenuti in tutto il documento! come posso fare?
mi può aiutare qualcuno?
è tutta questione di XPath:
prova con count("//y/x")
Cacca!
ciao ilgiovo,
ho provato come mi hai scritto ma mi dà errore.
ho tolto le virgolette, e ho scritto:
<xsl:value-of select="count(//lista_news/news)"/>
ma ugualmente mi dà il numero totale delle "news" del documento
e non nel nodo di quella "lista_news".
forse devo scrivere in un altro modo?
o forse devo risolvere da lato server per forza?
ma vorrei evitare se possibile...
aiuto...
![]()
forse non ho capito allora... qual è la struttura del tuo xml? il tag <lista_news> quante volte è presente nel documento??
Cacca!
ciao ilgiovo,
scusami per il ritardo, ti rispondo subito:
il fatto è che il tag <lista_news> è previsto che venga ripetuto diverse volte. pensavo di essere stato chiaro. scusami.
saluti
Ciao.
Prova con
<xsl:value-of select="count(./lista_news/news)"/>
Quando metti // il parser xsl non si limita ad analizzare i nodi che partono dal punto in cui sei, ma li cerca a qualsiasi profondità del documento XML.
Penso di aver capito che devi dire al parser di analizzare i nodi a partire dal nodo in cui si trova; lo si fa con ./
Il ragionamento è analogo a quello che indica un path relativo di un link HTML.
Prova e fammi sapere!
:adhone:
Ciao ciao!
grazie mille!