|
Subject: RE: [xsl] How can I placed end tags? From: "Michael Kay" <mike@xxxxxxxxxxxx> Date: Fri, 12 Aug 2005 09:21:57 +0100 |
Firstly, you don't create tags in XSLT, you create element nodes in a tree.
This is a very important distinction.
If you don't know the name of the element you want to create at compile
time, use xsl:element: for example
<xsl:element name="{@text:name}">
. . .
</xsl:element>
Your data is extremely peculiar, because it has things like "ce:author" and
"/ce:author" as the values of attribute nodes, in other words it contains
markup within the data. You may therefore be better off generating text
output rather than XML output, something like this:
<xsl:output method="text">
<xsl:template match="text:user-field-get">
<<xsl:value-of select="."/>>
</xsl:template>
However, I would go back to the application architecture. Why is anyone
generating this weird XML in the first place?
Michael Kay
http://www.saxonica.com/
> -----Original Message-----
> From: aaron apigo [mailto:aaronjose_apigo2001@xxxxxxxxx]
> Sent: 12 August 2005 07:29
> To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> Subject: [xsl] How can I placed end tags?
>
> Hi All,
>
> Can anyone help me to transform this XML,
>
> <text:p>
> <text:user-field-get
> text:name="ce:author">au</text:user-field-get>
> <text:span>
> <text:user-field-get
> text:name="ce:given-name">fnm</text:user-field-get>
> </text:span>
> <text:span>Jun</text:span>
> <text:span>
> <text:user-field-get
> text:name="ce:surname">snm</text:user-field-get>
> </text:span>
> <text:span>Wang
> </text:span>
> <text:span>
> <text:user-field-get
> text:name="ce:e-address">ead</text:user-field-get>
> </text:span>
> <text:span>jwang@xxxxxxxx</text:span>
> <text:span>
> <text:user-field-get
> text:name="/ce:e-address">/ead</text:user-field-get>
> </text:span>
> <text:user-field-get
> text:name="/ce:author">/au</text:user-field-get>
> </text:p>
>
> to
>
> <ce:author>
> <ce:given-name>Jun</ce:given-name>
> <ce:surname>Wang</ce:surname>
> <ce:e-address>jwang@xxxxxxxx</ce:e-address>
> </ce:author>
>
> is it possible?
>
> well as you can see, I used the attribute of
> <text:user-field-get text:name="____"> as the name of
> my tags. In my XSLT, I cannot get the data e.g.,
>
> <ce:author>
> <ce:given-name>
> <ce:surname>
> <ce:e-address></ce:e-address>
>
> and since I cannot get the data, I cannot also
> generate the end tags.
>
> Please help.
>
> regards.
>
> aaron
>
>
>
>
>
> ____________________________________________________
> Start your day with Yahoo! - make it your home page
> http://www.yahoo.com/r/hs
| Current Thread |
|---|
|
| <- Previous | Index | Next -> |
|---|---|---|
| Re: [xsl] How can I placed end tags, Joris Gillis | Thread | [xsl] problems with position() and , Georges Schmitz |
| Re: [xsl] How can I placed end tags, Joris Gillis | Date | [xsl] problems with position() and , Georges Schmitz |
| Month |