This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Correct use of Parameters?


Hi Will--

At 04:32 PM 9/4/2002, you wrote:
I'm using 2 parameters (probably could have used xsl:variables...) to store
values that are referenced more than once while performing XSLT. My question
is: Is this more efficient (better practice) than walking the nodes each
time?
Probably. Yes, unless the processor has implemented some kind of optimization which does the same thing internally. Certainly easier to maintain and, arguably, to read.

       <INPUT ID="userID" TYPE="TEXT" NAME="txtUserID"  SIZE="8"
MAXLENGTH="8" TABINDEX="1">
                <xsl:attribute name="value"><xsl:value-of
select="$userID"/></xsl:attribute>
             </INPUT>
As you're interested in being concise, know that this is the same as:

  <INPUT ID="userID" TYPE="TEXT" NAME="txtUserID"  SIZE="8"
         MAXLENGTH="8" TABINDEX="1" value="{$userID}"/>

One more thing...Is there a better way to write this?
<xsl:value-of
select="/RouteCodeMaintLookup/RouteCodeList/RouteCodeItem/Team/BusinessUnit/
@businessUnitName"/>
Well, yes and no. "//@businessUnitName", assuming there is only one such attribute node in the document, is much more concise; but this is a bad idea unless either or both (a) your documents are small and will always remain so (this XPath will traverse the entire document looking for @businessUnitName attributes instead of going straight to it), or (b) the attribute may sometimes be located somewhere else but you still want your code to find it.

Most experts would recommend against "//@businessUnitName" as a waste of cycles, if you know where the node is, since it will be expensive on large documents. Aiming not for conciseness of expression but for efficiency of traversal, there's no better way to write it than what you have.

Cheers,
Wendell


======================================================================
Wendell Piez mailto:wapiez@mulberrytech.com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]