XML Editor
Sign up for a WebBoard account Sign Up Keyword Search Search More Options... Options
Chat Rooms Chat Help Help News News Log in to WebBoard Log in Not Logged in
Show tree view Topic
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Postnext
bart van HeesSubject: Please help in a simple convert xml to csv
Author: bart van Hees
Date: 09 Apr 2009 05:09 AM
hello all,

please assist me in first time use of stylus studio:
I want to convert an xml to a csv.
the xml looks like this:

<?xml version="1.0" ?>
- <eExact xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="eExact-Schema.xsd">
- <Orders>
- <Order type="B" number="20026510">
- <OrderLine lineNo="1">
<Description>testarticle1</Description>
<Quantity>10</Quantity>
</OrderLine>
- <OrderLine lineNo="2">
<Description>testarticle2</Description>
<Quantity>8</Quantity>
</OrderLine>
</Order>
</Orders>
</eExact>

( to make it readable, I deleted a lot of lines, which are not relevant now, but the actual file is a lot bigger with more tags)

What I want to create is a flat file (csv)

I must look like this:

10;testarticle1
8;testarticle2

So, what I'd really appriciate if someone can give me like a step-to-step guido of how to tackle this issue.

The final use must be that I can select a XML with every time the above mentioned structure. After selecting this XML and processing by Stylus Studio, the goal is that a flat file (.csv) is stored at my local drive. Maybe a hint for this too?

Thanks for your help!!

regards,
Bart

Postnext
John BamptonSubject: Please help in a simple convert xml to csv
Author: John Bampton
Date: 10 Apr 2009 06:09 AM
Just write some xslt to do the transformation

Postnext
Tony LavinioSubject: Please help in a simple convert xml to csv
Author: Tony Lavinio
Date: 10 Apr 2009 06:29 AM
1. File > New > XSLT Stylesheet
2. Choose the XML file as the source
3. In the tree that appears on the right, drag the "OrderLine" node
to within the <xsl:template> block, and choose "apply-templates" from
the menu.
4. Before the final </xsl:stylesheet>, again drag the "OrderLine" node
but this time as a "template".
5. Drag the "Quantity" and "Description" nodes into the newly-created
template as value-of's.
6. Insert <xsl:text> blocks for the ; and the linefeed
7. Set the output method to "text" (you can do that on the "Params/Other"
tab at the bottom of the window).

The finished transform should look something like this:

<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="text"/>
<xsl:template match="/">
<xsl:apply-templates select="eExact/Orders/Order/OrderLine"/>
</xsl:template>
<xsl:template match="OrderLine">
<xsl:value-of select="Quantity"/>
<xsl:text>;</xsl:text>
<xsl:value-of select="Description"/>
<xsl:text>&#x10;</xsl:text>
</xsl:template>
</xsl:stylesheet>

You might need &#13;&#10; for your line ending, depending on your
target platform.

When you preview, make sure you use the "Preview Text" view and not
the "Preview in Browser" view, to see what your output will really
look like.

Postnext
bart van HeesSubject: Please help in a simple convert xml to csv
Author: bart van Hees
Date: 10 Apr 2009 08:13 AM
Hello! thanks a lot for your post. It was really helpful. I managed to get the output!!
Now I only need some support in the 'last step'.

I need to be able to transfer seperate files, and create new files with converted data.
I really don't know how to tackle this.

So I got the output in the preview window, but want to store it in some textfile. And beond: I want to be able to select individual files to be converted, preferably with every created file with a unique name.

Can someone point me out in the right direction???

Regards, Bart

Posttop
Tony LavinioSubject: Please help in a simple convert xml to csv
Author: Tony Lavinio
Date: 10 Apr 2009 08:32 AM
You can use the bundled executable, StylusXslt.exe, to run the
transforms outside of Stylus Studio. This will let you control
the input and output filenames.

Alternatively, you can use another transform engine. Saxon,
from www.saxonica.com, includes both Java and .net engines of
very high quality, and can be used for no cost.

 
Topic Page 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Go to previous topicPrev TopicGo to next topicNext Topic
Download A Free Trial of Stylus Studio 6 XML Professional Edition Today! Powered by Stylus Studio, the world's leading XML IDE for XML, XSLT, XQuery, XML Schema, DTD, XPath, WSDL, XHTML, SQL/XML, and XML Mapping!  
go

Log In Options

Site Map | Privacy Policy | Terms of Use | Trademarks
Stylus Scoop XML Newsletter:
W3C Member
Stylus Studio® and DataDirect XQuery ™are from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2016 All Rights Reserved.