[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Preceding sibling selction

Subject: Re: Preceding sibling selction
From: Senthilukvelaan <skumaravelan@xxxxxxxxxxxxxx>
Date: Tue, 3 Mar 2009 14:25:55 -0800
Re:  Preceding sibling selction
Hi ,
Can you please help me ,How do I get two distinct Body text values for
Different content-Type values?
I could not figure out the missing piece.
Thanks
S

On Tue, Mar 3, 2009 at 12:04 PM, Senthilukvelaan
<skumaravelan@xxxxxxxxxxxxxx> wrote:
> Hi All,
> As Michael suggested, Though I have added two matching templates for
> the content-type, My desired output is not showing. I am not sure What
> am I missing in here.
>
> My  XML Input looks like this .
>
> <Message>
> <Return-path></Return-path>
> <Received>
> </Received>
> <From>testing@xxxxxxxxx</From>
> <Subject>Testing Mime </Subject>
> <MIME-version>1.0</MIME-version>
> <Content-type boundary="test">multipart/alternative</Content-type>
> <Body>
> <Message>
> <Content-Disposition>inline</Content-Disposition>
> <Content-Type charset="ISO-8859-1">text/plain</Content-Type>
> <Content-Transfer-Encoding>quoted-printable</Content-Transfer-Encoding>
> <Body>
> Hello Welcome to MIme Text message.
> </Body>
> </Message>
> <Message>
> <Content-Disposition>inline</Content-Disposition>
> <Content-Type charset="ISO-8859-1">text/html</Content-Type>
> <Content-Transfer-Encoding>quoted-printable</Content-Transfer-Encoding>
> <Body>
> <html xmlns="http://www.w3.org/1999/xhtml">
> <head>
> <title>Testing MIME</title>
> <meta content="text/html; charset=utf-8" http-equiv="content-type"/>
> </head>
> <body>
> <p>
> Hello Welcome to MIme HTML message.
> </p>
> </body>
> </html>
> </Body>
> </Message>
> </Body>
> </Message>
>
> My XSLT is the below.
> <?xml version="1.0" encoding="UTF-8"?>
> <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="1.0">
>        <xsl:template match="/">
>                <html>
>                        <body>
>                                <table>
>                <xsl:call-template name="text"></xsl:call-template>
>                <xsl:call-template name="html"></xsl:call-template>
>                                </table>
>                        </body>
>                </html>
>        </xsl:template>
> <xsl:template name="text" match="Message[Content-Type='text/plain']/Body">
> <div id="textForm">
> <textarea id="output" readonly="readonly" rows='30'>
> <xsl:value-of select="." />
> </textarea>
> </div>
> </xsl:template>
>
> <xsl:template name="html"  match="Message[Content-Type='text/html']/Body">
> <div id="htmlForm">
> <xsl:value-of select="." disable-output-escaping="yes"/>
> </div>
> </xsl:template>
> </xsl:stylesheet>
>
> I want to show only the Body text value for the said match.
> I am not sure ,which node causing the problem to show the Body  text value?
>
> Kindly help.
>
>
>
> On Tue, Mar 3, 2009 at 12:14 AM, Michael Kay <mike@xxxxxxxxxxxx> wrote:
>>
>> I would have two template rules:
>>
>> <xsl:template match="MIME[Content-Type='text/plain']/BODY">
>> ...
>> </xsl:template>
>>
>> and another
>>
>> <xsl:template match="MIME[Content-Type='text/html']/BODY">
>> ...
>> </xsl:template>
>>
>> to match BODY elements based on the Content-Type of their enclosing MIME
>> element.
>>
>> Michael Kay
>> http://www.saxonica.com/
>>
>>> -----Original Message-----
>>> From: Senthilukvelaan [mailto:skumaravelan@xxxxxxxxxxxxxx]
>>> Sent: 03 March 2009 05:10
>>> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
>>> Subject:  Preceding sibling selction
>>>
>>> Hi
>>> I would like to produce the below expected output, How I do
>>> select a BODY, based on the preceding sibling value .
>>>
>>> If it is "text/plain" It should be shown in text area node.
>>> If it is "text/html" and it should be selected and rendered.
>>> I need a help in selecting the testing the preceding sibling
>>> . I am not sure ,How do I escape a "/".
>>>
>>> Thanks,
>>> SK
>>>
>>> XML message
>>> <BODY>
>>> <Parts>
>>> <MIME>
>>> <Content-Type charset="iso-8859-1">text/plain</Content-Type>
>>> <Content-transfer-encoding>7bit</Content-transfer-encoding>
>>> <BODY>
>>> Here is the text of the message.
>>> </BODY>
>>> </MIME>
>>> <MIME>
>>> <Content-Type charset="iso-8859-1">text/html</Content-Type>
>>> <Content-transfer-encoding>binary</Content-transfer-encoding>
>>> <BODY>
>>> <HTML>
>>> <HEAD></HEAD>
>>> <BODY>
>>> <P>
>>> Here is the html of the message.
>>> </P>
>>> </BODY>
>>> </HTML>
>>> </BODY>
>>> </MIME>
>>> </Parts>
>>> </BODY>
>>>
>>> Expected output:
>>>
>>> <html>
>>> <div id=htmlForm>
>>> <HTML>
>>> <HEAD></HEAD>
>>> <BODY>
>>> <P>
>>> Here is the html of the message.
>>> </P>
>>> </BODY>
>>> </HTML>
>>> </div>
>>> <div id=textForm>
>>> <textarea id="output" readonly="readonly"rows='30'> Here is
>>> the text of the message.
>>> </textarea>
>>> </div>
>>> <html>

Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2007 All Rights Reserved.