PDA

Επιστροφή στο Forum : Ερωτηση σε XSLT



giraios
20-01-08, 01:19
Θα χρειαστώ για άλλη μια φορά τα φώτα σας. Είμαι αρχάριος στην xslt.
Λοιπόν έχω ένα xml με δεδομένα. Υπάρχουν 4 κατηγορίες προιόντων από τα οποία πρέπει να τα 10 πιο ακριβά δεδομένα. Η δομή από που υπάρχει με xpath είναι :
αποθήκη/προιόντα
αποθήκη/προιόντα/υπολογιστές
αποθήκη/προιόντα/εκτυπωτες
αποθήκη/προιόντα/οθόνες
αποθήκη/προιόντα/πληκτρολογια

Όλες οι κατηγορίες έχουν τα ίδια attributes.

Χρησιμοποιώντας την xsl:for-each μπορώ να πάρω τις top-10 τιμές για το attribute "τιμή" μόνο από μια κατηγορία:

<xsl:for-each select="αποθήκη/προιόντα/υπολογιστές">
<xsl:sort select="@τιμή" data-type="number" order="descending"/>
<xsl:if test="position() &lt; 11">
<xsl:value-of select="@τιμή"/>
</xsl:if>
</xsl:for-each>

Πως μπορώ να πάρω τις top-10 τιμές από όλες τις κατηγορίες????
Οποιαδήποτε βοήθεια είναι πολύτιμη.

nikospara
21-01-08, 13:32
Μια γρήγορη λύση, ίσως όχι η καλύτερη (άλλες ιδέες; ) είναι η:



<xsl:for-each select="αποθήκη/προιόντα/υπολογιστές | αποθήκη/προιόντα/εκτυπωτες | αποθήκη/προιόντα/οθόνες | αποθήκη/προιόντα/πληκτρολογια">

giraios
26-01-08, 12:52
Θα το κοιτάξω. Ευχαριστώ πάντως για την απάντηση

@ ADSLgr.com All rights reserved.