David,
Thanks for the reply. My apologies, i didn't give example of my XML. The
XML contains single occurance of ElementToExtract/ node. In which case I
thought that instead of going through the whole tree, jumping to the
element using descendant::*:ElementToExtract is firstly small in code and
secondly eleminating the useless node traversal ?
Wanted to validate my thought ..
On Mon, Dec 17, 2018, 2:23 PM David Carlisle
d(_dot_)p(_dot_)carlisle(_at_)gmail(_dot_)com <
xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com wrote:
On Mon, 17 Dec 2018 at 17:54, Mailing Lists Mail
daktapaal(_at_)gmail(_dot_)com
<xsl-list-service(_at_)lists(_dot_)mulberrytech(_dot_)com> wrote:
Hi all
I have a requirement where I need to write an xslt to extract a
particular node from source tree.
Someone wrote an xslt that looked like this.. pseudo code
Template Match node()|@*
Apply-template select node()|@*
Template match *:ElementToExtract
Copy of select .
I thought the developer was making a lot of traversing using the above
approach and he could have instead done
Template match "/"
Copy of select descendant::*:ElementToExtract
Would you agree ? I thought this was very obviously better and faster ...
Forgive my pseudo code.
whether or not it is faster depends on the processor you are using and
how it optimises such searches but in general they are not equivalent
if you can have
<ElementToExtract>...<ElementToExtract>zzz</ElementToExtract>...</ElementToExtract>
Then the first form will return
<ElementToExtract>...<ElementToExtract>zzz</ElementToExtract>...</ElementToExtract>
and the second
<ElementToExtract>...<ElementToExtract>zzz</ElementToExtract>...</ElementToExtract><ElementToExtract>zzz</ElementToExtract
David
Dr.pal
XSL-List info and archive
EasyUnsubscribe (by email)
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--