|
kann eine Sequenzzahl, basierend auf der aktuellen Postion des Knotens,
ermitteln und / oder eine Zahl für den Output formatieren. Die Berechnung
der Sequenzzahl ergibt sich aus der spezifischen Level-Regel. Ist keine
angegeben, wird als Level "single" angenommen. Nachdem die Zahl
ermittelt worden ist, wird sie durch die angebenen Attribute formatiert
und an die aktuelle Position des Output-Dokuments als String ausgegeben.
|
| Level |
Regel |
| single |
Die Nummerierung der Knoten erfolgt auf dem gleichen Level: Zunächst
wird der Ausgangsknoten bestimmt. Entspricht der aktuelle Knoten dem
[count] Attribut, ist er der Ausgangsknoten. Andernfalls sucht der
Prozessor ein Vorgängerknoten, der dem [count] Attribut entspricht
und stoppt (falls angegeben) bei dem Knoten, der dem [from] Attribut
entspricht. Konnte ein Ausgangsknoten bestimmt werden, wird die Sequenzzahl
ermittelt. Sie entspricht der Anzahl der gleichartigen Vorgängerknoten
plus dem Ausgangsknoten. Konnte kein Ausgangsknoten ermittelt werden,
ist das Ergebnis eine leere Liste. |
| any |
Die Nummerierung der Knoten erfolgt auf einem beliebigen
Level: Ausgehend von der aktuellen Position, sucht der Prozessor in
aufsteigender Reihenfolge nach Knoten, die dem [count] Attribut enstsprechen.
Ist das [from] Attribut definiert, stoppt der Prozessor seinen Suchprozess
an dem angegebenen Knoten. Andernfalls stoppt er, wenn er den Rootknoten
erreicht hat. Das Ergebnis ist die Anzahl der gefunden Knoten. Attribut-
und Namespaceknoten werden ignoriert. |
| multiple |
Es wird eine zusammengesetzte Sequenznummer erstellt, welche die
hierarchische Position des Knotens darstellt: Ausgehend vom aktuellen
Knoten, generiert der Prozessor eine Liste aller Vorgängerknoten
und stoppt (falls angegeben) bei dem Knoten, welcher dem [from] Attribute
entspricht. Dieser Knoten wird allerdings nicht der Liste hinzugefügt.
Jeder Knoten in der generierten Liste, der dem [count] Attribut entspricht,
erhält als Zahl die Anzahl der Vorgängerknoten, die auf
dem gleichen Level liegen. |
|
| Formatierungs-Token |
Output-Sequenz |
| 1 |
1, 2, 3, 4, ... |
| 01 |
01, 02, 03,
, 10, 11, 12,
|
| a |
a, b, c, d,
, x, y, z, aa, ab, ac,
|
| A |
A, B, C, D,
, X, Y, Z, AA, AB, AC,
|
| i |
i, ii, iii, iv,
, x, xi, xii, xiii, xiv,
|
| I |
I, II, III, IV,
, X, XI, XII, XIII, XIV |
|
|
- die n-te Zahl der Sequenz wird mit dem n-ten Token der Formatierungsanweisung
formatiert
- falls mehrere Zahlen in der Sequenz existieren als Token in der Formatierungsanweisung,
werden die restlichen
Zahlen mit dem letzten Formatierungstoken formatiert
- existieren keine Formatierungsanweisungen, ist der Formatierungstoken
"1"
- falls weniger Zahlen in der Sequenz existieren als Token in der Formatierungsanweisung,
werden die restlichen Formatierungstoken ignoriert
|