[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

Re: [xsl] union vs. "or" vs. contains?


Subject: Re: [xsl] union vs. "or" vs. contains?
From: David Carlisle <davidc@xxxxxxxxx>
Date: Tue, 19 Oct 2004 12:21:44 +0100

  Is this to avoid repeating it on multiple templates?  In my case, the 
  conditional statements only occur on a single template in each class.


I think it's clearer for anyone reading the stylesheet and (until
Mike posts in 10 minutes saying he's added optimisation code to saxon so
that both forms produce the same internal code) it is more efficient as
if you do the test up at the apply-templates then if it's false you are
done and can get on with something else, but if you put the test on the
match pattern and it's false  then on _every_ node to which templates are
potentially going to be applied, you will first have to decide which is
the highest priority matching template which will at some point mean
looking at that template and evaluating the predicate to false (again)
and then finding the next matching template. So even if there is only
one template involved it's a lot more work for the system: if you apply
templates to an element with 1000 children in one case you do one
boolean test then skip the whole process, in the other you do the test
and the rest of the template matching process 1000 times.

David

________________________________________________________________________
This e-mail has been scanned for all viruses by Star. The
service is powered by MessageLabs. For more information on a proactive
anti-virus service working around the clock, around the globe, visit:
http://www.star.net.uk
________________________________________________________________________


Current Thread