| 
 
Subject: Re: [xsl] Pass an element based on its childrens content From: Mike Brown <mike@xxxxxxxx> Date: Tue, 4 Jun 2002 19:00:33 -0600 (MDT)  | 
CROFT, MICHAEL wrote:
> I need to pass an element to a template based on a condition where its
> children would contain certain text(an id).  
<xsl:param name="cid"/>  <!-- $cid comes from somewhere.. it is either a
                              string or a node-set containing the claim
                              IDs to find. it doesn't have to be a param -->
<!-- template to process the root node (always the first node processed) -->
<xsl:template match="/">
  <!-- go process the matching InsClaimElements elements, one at a time -->
  <xsl:apply-templates select="ListOfInsClaimsElements/InsClaimsElements[ClaimId=$cid]"/>
</xsl:template>
<!-- template to process an InsClaimsElements element -->
<xsl:template match="InsClaimsElements">
  <result>
    <xsl:text>The claim ID is </xsl:text>
    <xsl:value-of select="ClaimId"/>
    <xsl:text>and the claimant is </xsl:text>
    <xsl:value-of select="concat(ClaimantFirstName,' ',Claimant,'.')"/>
  </result>
</xsl:template>
> I need to find the list of claims elements (ListOfInsClaimsElements) which
> contains the claims (InsClaimsElements) that Im interested in (ClaimId).
The above will work even if $cid is a node-set.
> THen I would pass this entire list to a called template for processing.
The way XSLT works, you generally just select nodes for processing
with xsl:apply-templates or xsl:for-each. Select the right nodes, and
have a template to match them. You don't need to pass node-sets as
parameters to named templates.
> THere are multiple lists within the xml document each with possible multiple
> claims but each list of claims only belongs to one claimant.
See the FAQ at www.dpawson.co.uk for more sorting and grouping examples.
   - Mike
____________________________________________________________________________
  mike j. brown                   |  xml/xslt: http://skew.org/xml/
  denver/boulder, colorado, usa   |  resume: http://skew.org/~mike/resume/
 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
| Current Thread | 
|---|
  | 
| <- Previous | Index | Next -> | 
|---|---|---|
| [xsl] Pass an element based on its , CROFT, MICHAEL | Thread | [xsl] Pass an element based on its , CROFT, MICHAEL | 
| Re: [xsl] back again: child nodes i, Greg Newton | Date | Re: [xsl] back again: child nodes i, Mike Brown | 
| Month |