Thomas J.S.: XSL Number

Beitrag lesen

Hallo Andreas,

<xsl:number value="position()" />

Was ist der Unterschied (Vor-/Nachteile) zu
<xsl:value-of select="position()" />
?

In der Frage von jens (und so wie er es wollte) nichts.
Sonst ist xsl:number für die Behandlung von natürlichen Zahlen, die beim Zählen vom Knoten entstehen, gedacht.

Vorteile bei der Nummerierung mit position() sind, dass es etwas schneller ist und es nummeriert die "Elemente" so wie sie ausgegeben werden.

xsl:number dagegen nummieriert auf Grund der Position der Knoten im Quelldokument. Deshalb ist es z.B. nach einem xsl:sort wenig nützlich.

Aber xsl:number hat eine Menge Vorteile:
Nicht zuletzt man kann es noch immer kombinieren: <xsl:number value="position()" />.
Von den neun möglichen Attributen sind value="" und count="" die interessantesten:
count="" akzeptiert einen xsl-Pattern als Wert und erzeugt so eine Zahlenreihe von den zu zählenden Knoten.
value="" akzeptiert einen Ausdruck, also ein selbst bestimmbare Zahl anstatt eine Zahlenreihe.
Dann halt die andere möglichkeiten der formatierung für die Zahlen: format="", land="" ...
Und dann noch level="" und from="", die die Art und Weise der zu zählenden Knoten bestimmt.

Ich hoffe ich konnte es einigermaßen erklären  8-)

Grüße
Thomas