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

RE: How can I placed end tags?

Subject: RE: How can I placed end tags?
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Date: Fri, 12 Aug 2005 09:21:57 +0100
xml free trial ead
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">
  &lt;<xsl:value-of select="."/>&gt;
</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:  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

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-2013 All Rights Reserved.