[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] Immediately preceding-sibling


Subject: Re: [xsl] Immediately preceding-sibling
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Mon, 20 Oct 2003 11:54:10 -0400

Mick,

The simplest XPath test to check whether the immediately preceding sibling is a 'nospace' is:

preceding-sibling::*[1][self::nospace]

which retrieves the nospace node (which evaluates to Boolean "true") if the immediately preceding node is a nospace; if not, it retrieves nothing (which evaluates to Boolean "false").

If you want to be *really* fancy:

substring(" _",1 + preceding-sibling::*[1][self::nospace], 1)

will give you a " " or a "_" depending on what the immediate preceding sibling is (since a Boolean false or true becomes the number 0 or 1 when you try to add it).

Cheers,
Wendell

At 10:59 AM 10/20/2003, you wrote:
What I want to do is to present the contents of the line; where a word
is *not* preceded by a <nospace/> tag, I want to put a space, where it
*is* preceded by a <nospace/> tag, I want to display an underscore.



====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list




Current Thread
Keywords