Re: [xsl] match string

Subject: Re: [xsl] match string
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Wed, 20 Oct 2004 11:51:37 -0400
Hi Anton,

At 08:39 AM 10/20/2004, you wrote:

As you have it, you are doing string operations on the entire paragraph
text which means that any element markup within the paragraph will be
lost.
There's another problem. I thought "//text()[1]" would give "the first text node (inside that first paragraph) however deeply nested in any markup". But instead, it seems to return the first text node of *all* the nested markup.

That's correct. The expression expands to (long syntax):


/descendant-or-self::node()/child::text()[1]

that is, it selects all the text nodes that are the first child of their respective parents.

You want either:

(//text())[1]

(collects all the text nodes, returns only the first)

or

/descendant::text()[1]

(returns the first descendant text node).

Cheers,
Wendell


====================================================================== 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 ======================================================================

Current Thread