Subject: [xsl] Changing the structur of a file From: "Madlik, Monika (LNG-VIE)" <Monika.Madlik@xxxxxxxxxxxxx> Date: Wed, 24 Sep 2008 10:46:43 +0200 |
Hi, I've a problem structuring a file in a special way. This is an excerpt of my XML-file: <Document> <artikel> <meta.p> <fachgbt.p-alt> <fachgbt.a-alt kuerzel="QUAS"> Qualitdtssicherung/Qualitdtsmanagement </fachgbt.a-alt> </fachgbt.p-alt> </meta.p> <artikel-allg> <stichwt.p> <stichwt.a>Ablaufdiagramm</stichwt.a> </stichwt.p> <inhalt.p> <variante.p> <uebers.engl.a> <gentext type="gerade">(engl.) </gentext>flow chart<gentext type="gerade">;</gentext> </uebers.engl.a> <variante.syn.a> <gentext> syn. </gentext>Flussdiagramm<gentext>;</gentext> </variante.syn.a> </variante.p> <titel>Definition</titel> <bedeut.p> <bedeut.a> <gentext/>visuelle Darstellung von Prozessen in Form von graphischen Symbolen mit Erlduterung;<gentext/> </bedeut.a> <bedeut.zus.a> <struk typ="verw" absatz="nein"> <titel>Verwendung</titel> <text absatz="nein">z. B. im Qualitdtsmanagement.</text> </struk> </bedeut.zus.a> </bedeut.p> </inhalt.p> </artikel-allg> </artikel> </Document> I have to structure the file the way, that every <titel> becomes <gliederung1>. But the second <titel> is not at the same hirarchy as the first <titel>. This is the excerpt how the XML-file should look like: <gliederung1> <ueberschrift>Definition</ueberschrift> <absatz>visuelle Darstellung von Prozessen in Form von graphischen Symbolen mit Erlduterung;</absatz> </gliederung1> <gliederung1> <ueberschrift>Verwendung</ueberschrift> <absatz>z. B. im Qualitdtsmanagement.</absatz> </gliederung1> I tried to solve this via xsl:key, but either I got no text or I got all text including the text under the second title. The second <title> is no problem, but the first <titel> is ... This is a part of my XSLT-file: <xsl:template match="titel"> <xsl:choose> <xsl:when test="not(preceding::titel)"> <gliederung1> <ueberschrift><xsl:apply-templates/></ueberschrift> <xsl:apply-templates select="key('immediate-nodes_t1', generate-id())" mode="gl1"/> </gliederung1> </xsl:when> <xsl:when test="preceding::titel"> <gliederung1> <ueberschrift><xsl:apply-templates/></ueberschrift> <xsl:apply-templates select="key('immediate-nodes_t2', generate-id())" mode="gl1"/> </gliederung1> </xsl:when> </xsl:choose> </xsl:template> <xsl:key name="immediate-nodes_t1" match="node()[following::node()[not(self::titel)]]" use="generate-id(preceding-sibling::*[self::titel][1])"/> <xsl:key name="immediate-nodes_t2" match="node()[not(self::titel) and not(descendant::titel)]" use="generate-id(preceding-sibling::*[self::titel][1])"/> I hope I find somebody that could help me :) Kind regards, Monika
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] Include ASCII29 in output, Tim Mansour | Thread | Re: [xsl] Changing the structur of , Martin Honnen |
Re: [xsl] Include ASCII29 in output, Colin Adams | Date | RE: [xsl] Xsl:strip-space and xsl:p, Pankaj Chaturvedi |
Month |