|
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] RE: How to add a top level element to the result ?
hi,
Interesting.....It worked.
In the apply templates below
<xsl:template match="/">
<Message><xsl:apply-templates /></Message>
</xsl:template>
If I change the expression for match to /A/B//C instead of / ie,similar to the match expression in the next rule then
it wont work.
Why is it so?
A/B//C means match C or all its descendants and then apply the templates.
So what is preventing the tag from being displayed?
thanks
Samuel Abraham
---------------------------------------- Message History ----------------------------------------
From: chris@xxxxxxxxxxx@l... on 12/20/2001 08:58 AM GMT
Please respond to xsl-list@xxxxxxxxxxxxxxxxxxxxxx
DELEGATED - Sent by: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
cc:
Subject: RE: How to add a top level element to the result ?
What about
<?xml version="1.0"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<Message><xsl:apply-templates /></Message>
</xsl:template>
<xsl:template match="/A/B//C">
<xsl:element name="{@attr1}">
<xsl:apply-templates />
<xsl:value-of select="@attr2"/>
</xsl:element>
</xsl:template>
<xsl:template match="T"/>
</xsl:stylesheet>
Ciao Chris
XML/XSL Portal
http://www.bayes.co.uk/xml
> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of
> Samuel Abraham
> Sent: 20 December 2001 08:31
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: How to add a top level element to the result ?
>
>
>
> Hi all,
> I have a xml file
> <A>
> <B>
> <C attr1="c" attr2="12" />
> <C attr1="d" >
> <C attr1="f" attr2="15"/>
> </C>
> <C attr1="e" attr2="14" />
> <T attr1="t" attr2="16" />
> </B>
> </A>
>
> and applied 2 rules
>
> <xsl:template match="/A/B//C">
> <xsl:element name="{@attr1}">
> <xsl:apply-templates />
> <xsl:value-of select="@attr2"/>
> </xsl:element>
> </xsl:template>
> <xsl:template match="T"/>
>
> I need to add a top level element to the result.
>
> eg:To add Message as a top level element.
>
> <Message>
> <c>12</c>
> <d>
> <f>15</f>
> </d>
> <e>14</e>
> </Message>
>
> Is it possible to do this?
>
> thanks
> Samuel Abraham
>
>
>
> --
>
> This e-mail may contain confidential and/or privileged
> information. If you are not the intended recipient (or have
> received this e-mail in error) please notify the sender
> immediately and destroy this e-mail. Any unauthorized
> copying, disclosure or distribution of the material in this
> e-mail is strictly forbidden.
>
>
>
> XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
>
>
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
--
This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and destroy this e-mail. Any unauthorized copying, disclosure or distribution of the material in this e-mail is strictly forbidden.
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|

Cart








