This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
Re: given @id="1.2.3" .... -1 || +1 to the "3" in @id??
- To: xsl-list at lists dot mulberrytech dot com
- Subject: Re: [xsl] given @id="1.2.3" .... -1 || +1 to the "3" in @id??
- From: "Christopher R. Maden" <crism at maden dot org>
- Date: Mon, 02 Jul 2001 21:33:57 -0700
- References: <5.0.2.1.0.20010629230756.00a53bc0@mail.maden.org>
- Reply-To: xsl-list at lists dot mulberrytech dot com
At 11:20 2-07-2001, Anthony E. wrote:
>the sections for the prev & next links are in
>different xml files, so I can't use xpath to determine
>if it's the first or last element. I will have an
>attribute first="1.1.1" and last="1.1.3" in each
><section> element. Then I can compare if the current
>"id" attribute is equal to first or last and determine
>whether or not there is a prev or next link.
OK. Then the other suggestions on this thread ought to work. If there are
always two periods, then you can use
substring-after(substring-after(@id,'.'),'.')
to get the part after the last dot; to build the entire number for the next
part, it'll look like (the rather complicated):
concat(
substring-before(@id,'.'), '.',
substring-before(substring-after(@id,'.'),'.'), '.',
number(substring-after(substring-after(@id,'.'),'.'))+1
)
If you don't know how many subparts there will be, then you need to use
recursive templates to continue stripping as long as there are periods left
in the string.
-Chris
--
Christopher R. Maden, XML Consultant
DTDs/schemas - conversion - ebooks - publishing - Web - B2B - training
<URL: http://crism.maden.org/consulting/ >
PGP Fingerprint: BBA6 4085 DED0 E176 D6D4 5DFC AC52 F825 AFEC 58DA
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list