Re: [xsl] Numbering: position() ?

Subject: Re: [xsl] Numbering: position() ?
From: Sven Waibel <sven.waibel@xxxxxxxx>
Date: Wed, 10 Jan 2007 14:37:10 +0100
Okay, this works:

<xsl:number from="book" level="any"/>

Is it possible to assign it to a variable?


Michael Kay wrote:
> Then try <xsl:number level="any"/>
> 
> You can use position() if the apply-templates is
> 
> <xsl:apply-templates select="//page"/>
> 
> but not if you are doing a hierarchic tree walk.
> 
> Michael Kay
> http://www.saxonica.com/ 
> 
>> -----Original Message-----
>> From: Sven Waibel [mailto:sven.waibel@xxxxxxxx] 
>> Sent: 10 January 2007 10:55
>> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>> Subject: Re: [xsl] Numbering: position() ?
>>
>> The right one should look like:
>> 1.1
>> 1.2
>> 1.3
>> 1.4
>> 1.5
>>
>>
>> Michael Kay wrote:
>>> 1. The value of position() within an xsl:template depends on the 
>>> position of the node within the set of nodes selected by the select 
>>> expression of the corresponding xsl:apply-templates, which 
>> you haven't shown us.
>>> 2. You don't say what numbering you would consider correct. 
>> If you're 
>>> looking for multi-level numbering, try <xsl:number 
>> level="multiple"/>. 
>>> If you want single-level numbering, consider <xsl:number 
>> level="any"/>.
>>> Michael Kay
>>> http://www.saxonica.com/
>>>  
>>>
>>>> -----Original Message-----
>>>> From: Sven Waibel [mailto:sven.waibel@xxxxxxxx]
>>>> Sent: 10 January 2007 10:41
>>>> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>>>> Subject: [xsl] Numbering: position() ?
>>>>
>>>> Hi,
>>>>
>>>> i got following xml:
>>>>
>>>> <book id="1">
>>>> 	<page>
>>>> 	<special>
>>>> 		<page>
>>>> 		<page>
>>>> 	</special>	
>>>> 	<page>
>>>> 	<page>
>>>> </book>
>>>>
>>>> xslt:
>>>>
>>>>
>>>> <xsl:template match="page">
>>>> 	<xsl:value-of select="concat(concat(ancestor::book/$id,
>>>> '.'), position())"/> </xsl:template>
>>>>
>>>> I got this numbering:
>>>> 1.1
>>>> 1.1
>>>> 1.2
>>>> 1.3
>>>> 1.4
>>>>
>>>> How can i achieve that the numbering is correct?
>>>>
>>>> Thanks
>>>> Sven
>>>
>>>
>>>
>> --
>> -----BEGIN PGP PUBLIC KEY BLOCK-----
>> Version: GnuPG v1.4.2.1 (MingW32)
>>
>> mQGhBEOBzYARBACoMaMMoAsQShbK1CcoW1IsNJCpLYIkKPE1sRQmexqeBh0Fc9w+
>> o3nbfhxmfWj9KABeWiLqU0Z4uIIJzOSbMXn7LDIJTQSCHvJ7MGV/yvz31szViWlk
>> eUNsFb6JbCo424Eiqh01Z/6Txtr0zIkiAKO68WnGOD1UiFjHMrsTqquVywCg747m
>> Da8LuvtkulqPm4BiPUsDvw8D+Ip90zPZptqpaf4jc55g4CuGNVr/2QqUJ3au8Flx
>> oXaTvQDOMNa69Eeob/5g9qKy5mB6dNqUYAvZL1wKXSULbb2bxzJox9RZTLDb6Q3G
>> +VN9aMMikq6Ef1FVE0t92tJp6G9PPPL0Oy7j2EPWXfuqj1BxjRB2YQufFfNQGmad
>> ZeMD/iMaBRdzcIB8SmxXH+ifO5GOcHYNL2NN5mV7KTWoS+9WpFSaT5Q2xoVtKpl1
>> aQynehKx4ppmdN54bn1HP3tnnV6gtORGEi1eSA2Ob7zqFTIdYQ9sdQAFLOYXfROj
>> qxLvh50NIv0wtaX5S81jNl9Tmm6E7b91qH9TV5NDsxO24KqGtCJTdmVuIFdhaWJl
>> bCA8c3Zlbi53YWliZWxAaW1idXMuZGU+iGEEExECACEFAkOBzYAFCQlmAYAGCwkI
>> BwMCAxUCAwMWAgECHgECF4AACgkQkdghT07BOqxILQCg7qfxGsOcUKUi08+pxy0/
>> rBPwj4IAoLpE/pTEpqXtVjwJv3Ew0SU2MAkTtBtTdmVuIFdhaWJlbCA8c3ZlbkBp
>> bWJ1cy5kZT6IZgQTEQIAJgUCRXacYQIbIwUJCWYBgAYLCQgHAwIEFQIIAwQWAgMB
>> Ah4BAheAAAoJEJHYIU9OwTqsKBAAoOUani/sqz2Vqlohcb7KHGKy2KsYAKCKPq/2
>> uUd4ghAJAT/iHEYpUytWibkCDQRDgc2HEAgArjMI5+e7VpxuGyMypjosiGhOklh4
>> aWP4pUjH+hkBQnKQcsFcgl+5EjKd6S0tNH9Jf1WgAmhPiWuutauKYujpvLu3UUSi
>> AcOs+xhnD0qeyBLClpfa+Th6OzBhY/OIOTnL+fAN28ftyT2sci7dUv17Rae9WCUd
>> R4Y/D+bVN+bAvWNFU9tZO34L6ZYSIc3UJN76zroaVqxGUnPKlpVA4AlDkk4Nq5v0
>> FBznvgJNEO48rIR7m6JNLYbACDjyCMnhx2HvD02GlYIGvv1eokRusEdAF+idqQQd
>> VXQE+OfOpf0EgDViImdKMLEp3UqG8NZUanbeQfATe3kNWd4kBE2gUYp0uwADBgf+
>> KNoj19Mdo6h15d714X7NhI/lSoFtkFoEIRetZPVQ9n4kKEnW1Oc/FRKdDI2Di6tp
>> JwqbpeazwML4Rlf3vMfdjuSeG0jvu9WbLAFcpzj5BpJNw4xHoK8w6I2djWzG3qsk
>> wfVDXgXL3SSf4owkRNDOT+M+Kt6XMa27TKtWuu/CtBQaIZFIYlPwlVkxpwRKjLBy
>> 5PJ8uO+x4nwsaV+KZFGcy9vG7tJlS45AeafokSJ6S1nVf6bZBTZ3Kt1Rd3ZiEXW0
>> 1m3MmtCXH2ecrK8q039374KfiARKshB9aLr6FC2T0MB50bjk6FCX+flywPHkXGry
>> tjurD0wb/4MulfKAn7EdaIhMBBgRAgAMBQJDgc2HBQkJZgGAAAoJEJHYIU9OwTqs
>> dnkAoNntj0XiJ+pkiYx2sztNIDDoHLF3AJ488oMgSbcwFYhnBsDEg6Acg9qNcg==
>> =AD7B
>> -----END PGP PUBLIC KEY BLOCK-----
> 
> 
> 

-- 
-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: GnuPG v1.4.2.1 (MingW32)

mQGhBEOBzYARBACoMaMMoAsQShbK1CcoW1IsNJCpLYIkKPE1sRQmexqeBh0Fc9w+
o3nbfhxmfWj9KABeWiLqU0Z4uIIJzOSbMXn7LDIJTQSCHvJ7MGV/yvz31szViWlk
eUNsFb6JbCo424Eiqh01Z/6Txtr0zIkiAKO68WnGOD1UiFjHMrsTqquVywCg747m
Da8LuvtkulqPm4BiPUsDvw8D+Ip90zPZptqpaf4jc55g4CuGNVr/2QqUJ3au8Flx
oXaTvQDOMNa69Eeob/5g9qKy5mB6dNqUYAvZL1wKXSULbb2bxzJox9RZTLDb6Q3G
+VN9aMMikq6Ef1FVE0t92tJp6G9PPPL0Oy7j2EPWXfuqj1BxjRB2YQufFfNQGmad
ZeMD/iMaBRdzcIB8SmxXH+ifO5GOcHYNL2NN5mV7KTWoS+9WpFSaT5Q2xoVtKpl1
aQynehKx4ppmdN54bn1HP3tnnV6gtORGEi1eSA2Ob7zqFTIdYQ9sdQAFLOYXfROj
qxLvh50NIv0wtaX5S81jNl9Tmm6E7b91qH9TV5NDsxO24KqGtCJTdmVuIFdhaWJl
bCA8c3Zlbi53YWliZWxAaW1idXMuZGU+iGEEExECACEFAkOBzYAFCQlmAYAGCwkI
BwMCAxUCAwMWAgECHgECF4AACgkQkdghT07BOqxILQCg7qfxGsOcUKUi08+pxy0/
rBPwj4IAoLpE/pTEpqXtVjwJv3Ew0SU2MAkTtBtTdmVuIFdhaWJlbCA8c3ZlbkBp
bWJ1cy5kZT6IZgQTEQIAJgUCRXacYQIbIwUJCWYBgAYLCQgHAwIEFQIIAwQWAgMB
Ah4BAheAAAoJEJHYIU9OwTqsKBAAoOUani/sqz2Vqlohcb7KHGKy2KsYAKCKPq/2
uUd4ghAJAT/iHEYpUytWibkCDQRDgc2HEAgArjMI5+e7VpxuGyMypjosiGhOklh4
aWP4pUjH+hkBQnKQcsFcgl+5EjKd6S0tNH9Jf1WgAmhPiWuutauKYujpvLu3UUSi
AcOs+xhnD0qeyBLClpfa+Th6OzBhY/OIOTnL+fAN28ftyT2sci7dUv17Rae9WCUd
R4Y/D+bVN+bAvWNFU9tZO34L6ZYSIc3UJN76zroaVqxGUnPKlpVA4AlDkk4Nq5v0
FBznvgJNEO48rIR7m6JNLYbACDjyCMnhx2HvD02GlYIGvv1eokRusEdAF+idqQQd
VXQE+OfOpf0EgDViImdKMLEp3UqG8NZUanbeQfATe3kNWd4kBE2gUYp0uwADBgf+
KNoj19Mdo6h15d714X7NhI/lSoFtkFoEIRetZPVQ9n4kKEnW1Oc/FRKdDI2Di6tp
JwqbpeazwML4Rlf3vMfdjuSeG0jvu9WbLAFcpzj5BpJNw4xHoK8w6I2djWzG3qsk
wfVDXgXL3SSf4owkRNDOT+M+Kt6XMa27TKtWuu/CtBQaIZFIYlPwlVkxpwRKjLBy
5PJ8uO+x4nwsaV+KZFGcy9vG7tJlS45AeafokSJ6S1nVf6bZBTZ3Kt1Rd3ZiEXW0
1m3MmtCXH2ecrK8q039374KfiARKshB9aLr6FC2T0MB50bjk6FCX+flywPHkXGry
tjurD0wb/4MulfKAn7EdaIhMBBgRAgAMBQJDgc2HBQkJZgGAAAoJEJHYIU9OwTqs
dnkAoNntj0XiJ+pkiYx2sztNIDDoHLF3AJ488oMgSbcwFYhnBsDEg6Acg9qNcg==
=AD7B
-----END PGP PUBLIC KEY BLOCK-----

Current Thread