RE: [xsl] Replacing character entities

Subject: RE: [xsl] Replacing character entities
From: "Bhaskar, Rajan" <RBhaskar@xxxxxxx>
Date: Mon, 14 Feb 2005 14:16:23 -0500
Joris,
 what does "Scio me nihil scire"  mean?

-----Original Message-----
From: Joris Gillis [mailto:roac@xxxxxxxxxx]
Sent: Monday, February 14, 2005 1:39 PM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] Replacing character entities


Tempore 19:07:22, die 02/14/2005 AD, hinc in  
xsl-list@xxxxxxxxxxxxxxxxxxxxxx scripsit Wagstaff, Jason  
<WagstaffJ@xxxxxxxxxxxx>:

> I have a text block that contains &#13; &#13; wherever the user wanted
> it to look like a paragraph break. I don't any have control over the
> input.
>
> Any ideas on how can I replace &#13; with <br/>? Or better still, use
> the &#13 to identify the paragraphs and wrap each <p>paragraph</p>?
Hi,

Let's assume you have an XML with this node in it:

<text>Line1&#13;Line2&#13;other content</text>


And the desired output would be:
<div>
	<p>Line1</p>
	<p>Line2</p>
	<p>other content</p>
</div>


This can be achieved by applying a stylesheet like this:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";  
version="1.0">
<xsl:output method="xml" indent="yes"/>

<xsl:template match="text">
<div>
	<xsl:call-template name="par"/>
</div>
</xsl:template>

<xsl:template name="par">
	<xsl:param name="text" select="."/>
	<p>
		<xsl:value-of select="substring-before(concat($text,'&#13;'),'&#13;')"/>
	</p>
	<xsl:if test="contains($text,'&#13;')">
		<xsl:call-template name="par">
			<xsl:with-param name="text">
				<xsl:value-of select="substring-after($text,'&#13;')"/>
			</xsl:with-param>
		</xsl:call-template>
	</xsl:if>
</xsl:template>

</xsl:stylesheet>


regards,
-- 
Joris Gillis (http://www.ticalc.org/cgi-bin/acct-view.cgi?userid=38041)
"Scio me nihil scire"  - Socrates

--~------------------------------------------------------------------
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@xxxxxxxxxxxxxxxxxxxxxx>
--~--

Current Thread