Velocity Reviews

Velocity Reviews (http://www.velocityreviews.com/forums/index.php)
-   XML (http://www.velocityreviews.com/forums/f32-xml.html)
-   -   Simple way to go from xml to simple text format (http://www.velocityreviews.com/forums/t392695-simple-way-to-go-from-xml-to-simple-text-format.html)

mathieu 01-06-2007 09:17 PM

Simple way to go from xml to simple text format
 
Hello,

I have the following xml file:

<Elements>
<Element>
<A>1235</A>
<B>Hello</B>
</Element>
...
</Elements>

I would like to produce a text file containing each Element per line
(xml element being separated let say by a whitespace).

$ cat out.txt
12345 Hello
....

The correct solution would be to use fop and write an xsl document,
right ? Thanks for pointer to 'Hello World' example.

Regards,
Mathieu


Bjoern Hoehrmann 01-06-2007 09:29 PM

Re: Simple way to go from xml to simple text format
 
* mathieu wrote in comp.text.xml:
> I have the following xml file:
>
><Elements>
> <Element>
> <A>1235</A>
> <B>Hello</B>
> </Element>
> ...
></Elements>
>
>I would like to produce a text file containing each Element per line
>(xml element being separated let say by a whitespace).
>
>$ cat out.txt
>12345 Hello
>...
>
> The correct solution would be to use fop and write an xsl document,
>right ? Thanks for pointer to 'Hello World' example.


XSLT would probably be a simple solution, yes. Note though that Apache
FOP is a XSL Formatting Objects Processor, it's useful if you want to
make complex graphical layouts, not for plain text. For XSLT tutorials,
try a search engine of your choice.
--
Björn Höhrmann · mailto:bjoern@hoehrmann.de · http://bjoern.hoehrmann.de
Weinh. Str. 22 · Telefon: +49(0)621/4309674 · http://www.bjoernsworld.de
68309 Mannheim · PGP Pub. KeyID: 0xA4357E78 · http://www.websitedev.de/

mathieu 01-06-2007 10:07 PM

Re: Simple way to go from xml to simple text format (fop -txt ?)
 

Bjoern Hoehrmann wrote:
> * mathieu wrote in comp.text.xml:
> > I have the following xml file:
> >
> ><Elements>
> > <Element>
> > <A>1235</A>
> > <B>Hello</B>
> > </Element>
> > ...
> ></Elements>
> >
> >I would like to produce a text file containing each Element per line
> >(xml element being separated let say by a whitespace).
> >
> >$ cat out.txt
> >12345 Hello
> >...
> >
> > The correct solution would be to use fop and write an xsl document,
> >right ? Thanks for pointer to 'Hello World' example.

>
> XSLT would probably be a simple solution, yes. Note though that Apache
> FOP is a XSL Formatting Objects Processor, it's useful if you want to
> make complex graphical layouts, not for plain text. For XSLT tutorials,
> try a search engine of your choice.


Thanks Björn this is really helpful. Unfortunately there is very
little help on the web when it come to outputing text file. So far I
have (*). But the command using fop does not output anything:

$ fop -xml dummy.xml -xsl dummy.xsl -txt out.txt

Thanks again !
Mathieu

(*)
$ cat dummy.xsl

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="/">
<xsl:for-each select="Elements/Element">
<xsl:value-of select="//A"/>
<xsl:text>
</xsl:text><!--produce a newline -->
<xsl:value-of select="//B"/>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>

$ cat dummy.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="dummy.xsl"?>
<Elements>
<Element>
<A>1235</A>
<B>Hello</B>
</Element>
<Element>
<A>4567</A>
<B>World</B>
</Element>
</Elements>


mathieu 01-06-2007 10:18 PM

Re: Simple way to go from xml to simple text format (fop -txt ?)
 

mathieu wrote:
> Bjoern Hoehrmann wrote:
> > * mathieu wrote in comp.text.xml:
> > > I have the following xml file:
> > >
> > ><Elements>
> > > <Element>
> > > <A>1235</A>
> > > <B>Hello</B>
> > > </Element>
> > > ...
> > ></Elements>
> > >
> > >I would like to produce a text file containing each Element per line
> > >(xml element being separated let say by a whitespace).
> > >
> > >$ cat out.txt
> > >12345 Hello
> > >...
> > >
> > > The correct solution would be to use fop and write an xsl document,
> > >right ? Thanks for pointer to 'Hello World' example.

> >
> > XSLT would probably be a simple solution, yes. Note though that Apache
> > FOP is a XSL Formatting Objects Processor, it's useful if you want to
> > make complex graphical layouts, not for plain text. For XSLT tutorials,
> > try a search engine of your choice.

>
> Thanks Björn this is really helpful. Unfortunately there is very
> little help on the web when it come to outputing text file. So far I
> have (*). But the command using fop does not output anything:
>
> $ fop -xml dummy.xml -xsl dummy.xsl -txt out.txt


Nevermind xsltproc worked out of the box, I'll use this tool instead.

$ xsltproc dummy.xsl dummy.xml

Sorry for the noise,
Mathieu



All times are GMT. The time now is 01:55 PM.

Powered by vBulletin®. Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO ©2010, Crawlability, Inc.