Just google for
XSLT replace newline with <br> element
or try
http://www.biglist.com/lists/xsl-list/archives/200103/msg00184.html
Michael Kay
http://www.saxonica.com/
-----Original Message-----
From: Karl Stubsjoen [mailto:kstubs(_at_)gmail(_dot_)com]
Sent: 21 December 2006 23:56
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: Re: [xsl] Preceding comment() match
I probably shouldn't go here...
so, now that I am self-documenting these comments, I'd like
to create line breaks for the web, where line break occur
naturally in my comments, so:
<!--
these are comments
with line breaks
should output to browser with
these line breaks.
-->
Currently, this:
<xsl:value-of
select="preceding-sibling::node()[not(self::text()[not(normali
ze-space())])][1][self::comment()]"/>
Produces no line breaks. If I include <br/>(s) in the above
comments and add disable-output-escaping="yes" to my
value-of... I get the line breaks, but who wants to add these
"unnatural" html elements to these comments!
Any hints?
On 12/21/06, Karl Stubsjoen <kstubs(_at_)gmail(_dot_)com> wrote:
Working perfect ; )
Nothing like self-documenting XSL Docs!
Karl..
On 12/21/06, Wendell Piez <wapiez(_at_)mulberrytech(_dot_)com> wrote:
Karl,
Please double check your code. I would expect "every preceding
element's first comment tag" to be
"preceding-sibling::*/comment()[1]" (note extra step). The
expression you provided us,
"preceding-sibling::comment()[1]", would
select the first preceding (sibling) comment.
If you want the first preceding node, but only if it's a comment,
that would be
preceding-sibling::node()[1][self::comment()]
but note that whitespace-only text nodes can impede that.
Working around those would be
preceding-sibling::node()[not(self::text()[not(normalize-space()])]
[1][self::comment()]"
... which I know is a monster, but there you have it.
Cheers,
Wendell
At 04:53 PM 12/21/2006, you wrote:
I need to match the first comment() preceding the
current context.
So from:
<!--
this is the comments, first preceding
-->
<xsl:template name="example">
</xs:template>
Assuming that this xpath should work:
<xsl:value-of select="preceding-sibling::comment()[1]"/>
But instead, I am matching on every preceding elements first
comment tag. I just need "your" comment tag, and if you
don't have
one, then nevermind.
Please help.
Karl..
--~----------------------------------------------------------------
-- XSL-List info and archive:
http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
======================================================================
Wendell Piez
mailto:wapiez(_at_)mulberrytech(_dot_)com
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
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail:
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--