xsl-list
[Top] [All Lists]

RE: Best practice for "walking" node

2003-01-08 07:11:31
Thanks Andrew for the explanation.

-----Original Message-----
From: Andrew Welch [mailto:AWelch(_at_)piper-group(_dot_)com]
Sent: Wednesday, January 08, 2003 3:43 AM
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: RE: [xsl] Best practice for "walking" node



<xsl:value-of
select="./following-sibling::WorkGroupCollection/WorkGroup/@name"/>

<xsl:value-of select="./following::WorkGroup/@name"/> <-- I 
like this one
because it is shorter

The following-sibling axis will select nodes after the current node in
document order that have the same parent, whereas the following will select
*all* nodes after the current node in document order, regardless of parent.
Therefore it depends on what you are trying to achieve, you can't really
compare the two on performance.

cheers
andrew

-----Original Message-----
From: Lopez, William [mailto:william(_dot_)lopez(_at_)eds(_dot_)com]
Sent: 07 January 2003 23:14
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] Best practice for "walking" node


Sorry if this is trivial...I was wondering which way is best to access
elements/attributes. I was playing around with the axis 
(pardon if the lingo
is bogus) way of accessing elements/attributes and found the 
following ways
work but is there an advantage of using one over the other 
(besides brevity
of code). See 1. & 2. below.

<xsl:value-of
select="./following-sibling::WorkGroupCollection/WorkGroup/@name"/>

<xsl:value-of select="./following::WorkGroup/@name"/> <-- I 
like this one
because it is shorter

*** xml document ***
<WorkGroupMaint>
  <BusinessUnitRef oid="0:0:0:1" name="BU01">  <-- 1. 
processor is here
    <TeamRef oid="0:0:1:1" name="TM01"/>
  </BusinessUnitRef>
  <WorkGroupCollection nbrWorkGroup="1">
    <WorkGroup oid="0:0:0:2" name="WorkGroup 1"> <-- 2. I need @name
      <WorkTypeCollection nbrWorkType="2">
...
</WorkGroupMaint>

 *** xsl template ***
<xsl:template match="BusinessUnitRef">
        <p id="topLabel">
          <span class="info">Team: <xsl:value-of
select="TeamRef/@name"/></span><br/>
          <span class="info">Business Unit: <xsl:value-of
select="@name"/></span><br/>
          <xsl:choose>
            <xsl:when test="$entryMode = 'Add'">
             <span class="info">Work Group Name: </span>
               <input type="text" name="txtWorkGroupName" class="info"
value="" size="30"/>
            </xsl:when>
              <xsl:otherwise>
               <span class="info">Work Group Name: <xsl:value-of
select="./following::WorkGroup/@name"/></span>
              </xsl:otherwise>
          </xsl:choose>
        </p>
</xsl:template>

Thanks,
-Will

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



---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.427 / Virus Database: 240 - Release Date: 06/12/2002
 


---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.427 / Virus Database: 240 - Release Date: 06/12/2002
 

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

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



<Prev in Thread] Current Thread [Next in Thread>