Re: [xsl] how to xpath the *value* of an attribute based on value of other attribute in same element

Subject: Re: [xsl] how to xpath the *value* of an attribute based on value of other attribute in same element
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Wed, 01 Jul 2009 13:47:23 -0400
At 2009-07-01 13:42 -0400, dan haig wrote:
Hi, sorry if this has been answered a hundred times but I haven't had
much luck finding this in the archives.

For this xml:

<xtf:snippets>

That isn't XML because it isn't well-formed due to the absence of the namespace declaration for "xtf".


... I want to write an xpath that will select  just the numeric value
of 5 for the attribute hitNum, based on its being a sibling attribute
of rank="1". However, I can't get any closer than selecting the whole
xtf:snippet element. This are a couple ways of accessing that
inadequate result:

/xtf:snippets/xtf:snippet[@rank='1']/attribute::hitNum

/xtf:snippets/xtf:snippet[@rank='1']/@hitNum

Works for me! I wouldn't change a thing.


. . . . . . . . . Ken

T:\ftemp>type dan.xml
<xtf:snippets xmlns:xtf="urn:x-Dan">
   <xtf:snippet score="100" rank="1" hitNum="5">
       MS Clark Library, University of
       <xtf:hit>
           <xtf:term>California</xtf:term>
       </xtf:hit>. 40 Albion Street Broadstairs |
   </xtf:snippet>
</xtf:snippets>

T:\ftemp>xslt dan.xml dan.xsl
5
T:\ftemp>type dan.xsl
<?xml version="1.0" encoding="US-ASCII"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
                xmlns:xtf="urn:x-Dan"
                version="1.0">

<xsl:output method="text"/>

<xsl:template match="/">
  <xsl:value-of select="/xtf:snippets/xtf:snippet[@rank='1']/@hitNum"/>
</xsl:template>

</xsl:stylesheet>
T:\ftemp>



--
Possible July/August XSLT/XQuery/XSL-FO training in Oakland/CA/USA
Crane Softwrights Ltd.          http://www.CraneSoftwrights.com/s/
Training tools: Comprehensive interactive XSLT/XPath 1.0/2.0 video
Video lesson:    http://www.youtube.com/watch?v=PrNjJCh7Ppg&fmt=18
Video overview:  http://www.youtube.com/watch?v=VTiodiij6gE&fmt=18
G. Ken Holman                 mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
Male Cancer Awareness Nov'07  http://www.CraneSoftwrights.com/s/bc
Legal business disclaimers:  http://www.CraneSoftwrights.com/legal

Current Thread