Subject: RE: [xsl] CSV instead of white-space From: "Michael Kay" <michael.h.kay@xxxxxxxxxxxx> Date: Tue, 29 Oct 2002 13:35:44 -0000 |
If you want all the descendant elements rather than just all the children, use select=".//*" rather than select="*". But perhaps you only want the "leaf nodes" (descendants that don't have children). In that case use select=".//*[not(*)]". Michael Kay Software AG home: Michael.H.Kay@xxxxxxxxxxxx work: Michael.Kay@xxxxxxxxxxxxxx > -----Original Message----- > From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx > [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx] On Behalf Of > Delaney Robin > Sent: 29 October 2002 10:29 > To: 'xsl-list@xxxxxxxxxxxxxxxxxxxxxx' > Subject: AW: [xsl] CSV instead of white-space > > > Michael, > > Thanks for your reply/help. It almost works :-) > > I get all the data right through the hierarchy but once I get > to elements that have "children" themselves the placing of > the "," doesn't happen. It seems to limit itself to direct > children of the <Vertrag> (for them it works perfectly!). > Here's a subset of the XML & XSL to explain. Within <Mandant> > I don't see the "," between elements and the same for > <Partner> and levels below. For all the others it's fine. Any Idea ? > > Sorry to hassle you directly (don't let it put you off > replying in the future :-) ) and thanks for any help in advance. > > - Robin > > XML: > <?xml version="1.0" encoding="ISO-8859-1"?> > <!DOCTYPE BFZV01 SYSTEM "BFZV01.dtd"> > <?xml-stylesheet type="text/xsl" > href="E:\XML\test\XSLtemplate.xsl"?> > <BFZV01> > <Vertrag> > <Mandant> > <MandantenID>01</MandantenID> > <AnbieterNr>1234567890</AnbieterNr> > </Mandant> > <ZertifizierungsNr/> > > <BestandsverwaltungssystemNr>01</BestandsverwaltungssystemNr> > <VertragsIDintern>01123456</VertragsIDintern> > <VertragsIDextern>123456</VertragsIDextern> > <OrgaNr/> > <InexkassosystemNr>01</InexkassosystemNr> > <Beitragsjahr>2001</Beitragsjahr> > <Beitrag > waehrungskennzeichen="EUR">150,00</Beitrag> > <SachbearbeiterID>12345678</SachbearbeiterID> > <Legitimationsklassevertrag > legitimationsklasse="J"/> > <Persoenlichedaten> > <Versicherteperson> > <Partner> > > <PartnersystemNr>01</PartnersystemNr> > <PartnerID>123456789</PartnerID> > <KundenNr/> > <Legitimationsklassepartner > legitimationsklasse="J"/> > <Rolle rolle="Rolle.VP"/> > <Anrede>Herr</Anrede> > XSL: > <xsl:stylesheet version="1.0" > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > <xsl:template match="Vertrag"> > <xsl:for-each select="*"> > <xsl:value-of select="."/> > <xsl:if > test="position()!=last()">;</xsl:if> > </xsl:for-each> > <xsl:text> </xsl:text> > </xsl:template> > </xsl:stylesheet> > > Output: > > 01 1234567890 ;;01;01123456;123456;;01;2001;150,00;12345678;; 01 > 123456789 Herr > > > > > > -----Ursprüngliche Nachricht----- > > Von: Michael Kay [SMTP:michael.h.kay@xxxxxxxxxxxx] > > Gesendet am: Montag, 28. Oktober 2002 18:54 > > An: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > > Betreff: RE: [xsl] CSV instead of white-space > > > > > I'm trying to create a CSV TXT file from an XML and have the > > > following XSL. There's a large hierarchy of elements under > > > the "Vertrag" element and I'm trying not to have to select > > > them individually as the structure may change. My select > > > statement works and I get all the values with at least 1 > > > whitespace between elements. > > > > > > Is there a way to either replace the whitespace with a ";" or > > > to concat a ";" onto my selection ? > > > > > > <xsl:stylesheet version="1.0" > > > xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> > > > <xsl:template match="Vertrag"> > > > <xsl:value-of select="(.)"/> > > > <xsl:text> </xsl:text> > > > </xsl:template> > > > </xsl:stylesheet> > > > > > > > Try > > <xsl:for-each select="*"> > > <xsl:value-of select="."/> > > <xsl:if test="position()!=last()">,</xsl:if> > > </xsl:for-each> > > > > Michael Kay > > Software AG > > home: Michael.H.Kay@xxxxxxxxxxxx > > work: Michael.Kay@xxxxxxxxxxxxxx > > > > > > XSL-List info and archive: > http://www.mulberrytech.com/xsl/xsl-list > > XSL-List info and > archive: http://www.mulberrytech.com/xsl/xsl-list > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
AW: [xsl] CSV instead of white-spac, Delaney Robin | Thread | [xsl] newbie question, Madhavi Thottempudi |
RE: [xsl] doubts: xsl:import and va, Michael Kay | Date | RE: [xsl] multiple <xsl:output/>'s , Michael Kay |
Month |