RE: [xsl] FW: transformation fails with Xalan, works in XMLspy

Subject: RE: [xsl] FW: transformation fails with Xalan, works in XMLspy
From: Daniel Norek <dr.milbe@xxxxxx>
Date: Wed, 05 Aug 2009 12:44:25 +0200
you were absolutely right, strip-space was the solution!

thank you so much for your quick reply! :)

regards,
daniel

> -----Urspr|ngliche Nachricht-----
> Von: "Michael Kay" <mike@xxxxxxxxxxxx>
> Gesendet: 05.08.09 11:57:28
> An: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
> Betreff: RE: [xsl] FW: transformation fails with Xalan, works in XMLspy


> > I am using XSLT 1.0 with Xalan Java-version 2.7.1.
> >
> > What I am trying to do is to exchange the text nodes of the
> > processed XML with text nodes with the same id from a second
> > XML document.
> >
> > My XSL:
> >
> > <xsl:template match="*[not(parent::*/text())]">
>
> That's matching elements that don't have any text node siblings. It's
> working in XMLSpy because the XMLSpy processor (incorrectly) strips
> whitespace text nodes from the source. To get the same behaviour in Xalan
> use <xsl:strip-space elements="*"/>.
>
> (Though I haven't tried to understand your logic: it's a very strange
> condition to be testing).
>
> Regards,
>
> Michael Kay
> http://www.saxonica.com/
> http://twitter.com/michaelhkay
>
>
>
> >         <xsl:variable name="hid" select="@hid"/>
> >         <xsl:element name="{name()}">
> >             <xsl:copy-of select="@*"/>
> >             <xsl:for-each
> > select="document('out/_EL_task_installation.xml')/TRANSLATION/
> > *[@hid=$hid]">
> >                 <xsl:copy-of select="*| text()"/>
> >             </xsl:for-each>
> >             <xsl:apply-templates select="*[not(parent::*/text())]"/>
> >         </xsl:element>
> >     </xsl:template>
> > </xsl:stylesheet>
> >
> > The transformation works fine in XMLSpy, however when using a
> > batch file to transform with Xalan, the transformation
> > results in nearly empty document like this:
> >
> > <?xml version="1.0" encoding="UTF-8"?><task hid="d0e2"/>
> >
> > There is no error message. I guess this line is the problem:
> >             <xsl:for-each
> > select="document('out/_EL_task_installation.xml')/TRANSLATION/
> > *[@hid=$hid]">
> >
> > Any ideas?
> > Thanks
> >
> >
> > ______________________________________________________
> > GRATIS f|r alle WEB.DE-Nutzer: Die maxdome Movie-FLAT!
> > Jetzt freischalten unter http://movieflat.web.de
>
>


______________________________________________________
GRATIS f|r alle WEB.DE-Nutzer: Die maxdome Movie-FLAT!
Jetzt freischalten unter http://movieflat.web.de

Current Thread