Hallo!
wird die Reihenfolge der Elemente im XML-Dokumentes verwendet und nicht die sortierte Reihenfolge.
kein Wunder, die sibling-Teile gehen auf die Dokumentstruktur.
Das habe ich ja auch schon fest gestellt bzw. ist mir klar.
Verwende position() - laß Dir das Element mit der aktuellen position() - 1 und das mit der aktuellen position() + 1 auswählen.
Soweit war ich auch schon, nur irgendwie kommt nichts.
<xsl:template match="eintrag">
<tr>
<td><xsl:value-of select="position()"/></td>
<td><xsl:value-of select="../eintrag[position() - 1]/name"/></td>
<td><xsl:value-of select="name"/></td>
<td><xsl:value-of select="../eintrag[position() + 1]/name"/></td>
</tr>
</xsl:template>
Wenn ich anstatt der XPath-Audrücke "../eintrag[position() - 1]/name" oder "../eintrag[position() + 1]/name" den XPath-Ausdruck "../eintrag/name" schreibe, bekomme ich wie erwartet "Berta", also das erste Element "eintrag/name" aus dem XML-Dokument. Der Pfad stimmt also.
MfG, André Laugks
L-Andre @ gmx.de