Hello,
regarding Michael comment about my silly question: is it not obvious in my
case(i shortcut my question), because i need
from the xml-information-source for each node row some data, but i output a
html-rows from the template rule for DARKONTRAKT (a child from each row).
To summarize a walking on a parent node seems no big difference with other
methods, like passing parameters.
It seems that like post David that major selections like
<snip comment="David Carliste">
If you were searching up arbitrary amounts,
ancestor::*[this and that and the other] then not doing that search and
passing down a parameter will probably start to win
</snip>
one should go better with passing parameters.
Thanks for your time,
Hans
It might be a silly question, but I would have thought the obvious way
of coding this was:
<xsl:template match="row">
<xsl:value-of select="tannr"/>
<xsl:value-of select="tscreate"/>
<xsl:value-of select="tsupdate"/>
<xsl:apply-templates select="DARKONTRAKT"/>
</xsl:template>
In any case, the only way to get answers to this kind of question is to
try it on your chosen XSLT processor and see. I would expect the
difference to be very small on most processors.
Michael Kay
-----Original Message-----
From: owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
[mailto:owner-xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com] On Behalf Of
Braumüller, Hans
Sent: 22 May 2003 15:36
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] perfomance question about selecting from child-node
Hello friends,
a short perfomance question about selecting from child-node
XML (... = etc)
/********************/
<DARLEHEN>
...
<row num="16">
<tannr>20010013</tannr>
<tscreate>2001-06-01-12.17.02.162000</tscreate>
<tsupdate>2001-06-01-14.46.15.125000</tsupdate>
<geschart ztp="true"/>
<DARKONTRAKT num="16">
<credit_line>1000000,00</credit_line>
<isonominal>EUR</isonominal>
<kontraktnr>1</kontraktnr>
</DARKONTRAKT>
<DARKONTRAKT num="17">
...
</DARKONTRAKT>
</row>
<row num="17">
...
</row>
...
</DARLEHEN>
XSLT (... = etc)
/********************/
What is better for getting a faster transformation in
general? 1. When i am transcurring node-set "DARLEHEN" doing
an applying template for "row" with rule
<xsl:template match="row">
<xsl:apply-templates select="DARKONTRAKT">
<xsl:with-param name="tannr" select="tannr"/>
<xsl:with-param name="tscreate" select="tscreate"/>
<xsl:with-param name="tsupdate" select="tsupdate"/>
<!-- §_010 -->
<xsl:with-param name="geschartZTP" select="geschart/@ztp"/>
</xsl:apply-templates>
</xsl:template>
then putting the values of the parameters on the node-set
DARKONTRAKT out
2.
Or make a direct applying template DARKONTRAKT and from there
getting the tree one step up, like
<xsl:value-of select="../tannr"/></xsl:attribute>
<xsl:value-of select="../tscreate"/>
<xsl:value-of select="../tsupdate"/>
<xsl:value-of select="../geschart/@ztp"/>
Imagine hundreds of rows in the xml-source!
Thanks,
Hans Braumüller
Systementwickler Web-Design
Hanse Orga AG
Oldesloer Straße 63
D-22457 Hamburg
Telefon: (+49) 040 51 48 08-62
Telefax: (+49) 040 51 48 08-88
E-Mail: h(_dot_)braumueller(_at_)hanseorga(_dot_)de
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