[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

RE: xpath question, getting count of cousins

Subject: RE: xpath question, getting count of cousins
From: "Marty McKeever" <marty.mckeever@xxxxxxxxxx>
Date: Tue, 25 Feb 2003 16:13:23 -0500
xpath count siblings
Trying to count the preceding-siblings?-cousins? of input[@type='radio']
that belong to the current group or form:

Input example:
<html>
<form id="1">
	<input type="radio" />
</form>
<form id="2">
	<input type="text" />
	<radiogroup>
	<input type="radio" />
	<p>
 		<input type="radio" />
		<input type="radio" />
	</p>
	<input type="radio" />
	<input type="radio" />
	</radiogroup>
</form>
</html>

processing form[@id='2'], the result of my xpath should enable the following
indexing of radio buttons:

Output example:
<form id="2">
	<input type="text" />
	<input type="radio" id="radio_1"/>
	<p>
 		<input type="radio" id="radio_2" />
		<input type="radio" id="radio_3" />
	</p>
	<input type="radio" id="radio_4" />
	<input type="radio" id="radio_5" />
	</radiogroup>
</form>

the closest i've come is with match="input[@type='radio']"
<xsl:variable name="idx"
select="count(preceding-sibling::input[@type='radio'])+1"/>
which only works per level:
	1
		<p>
			1
			2
		</p>
	2
	3

or
<xsl:variable name="idx" select="count(preceding::input[@type='radio'])+1"/>
which ignores the radioGroup boundary.

Basically each radio needs to count the preceding relatives of his own
radiogroup family.

or am i thinking this through wrong...?

TIA!




> -----Original Message-----
> From: owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx
> [mailto:owner-xsl-list@xxxxxxxxxxxxxxxxxxxxxx]On Behalf Of G. Ken Holman
> Sent: Tuesday, February 25, 2003 1:47 PM
> To: XSL-List@xxxxxxxxxxxxxxxxxxxxxx
> Subject: Re:  xpath question, getting last instance of element
>
>
> At 2003-02-25 13:37 -0500, Alan Stein wrote:
> >I'm trying to figure out how to select the final instance of
> "DDD" in the
> >following example,
>
> (//DDD)[last()]
>
> By putting the XPath expression in parentheses you are obtaining
> the set of
> all DDD elements from the whole document.  Then, applying the
> predicate to
> the entire set, you end up with the last DDD.  Had you not used
> parentheses
> you would end up with the set of all DDD elements that are the last of
> their sibling DDD elements.
>
> I hope this helps.
>
> ................... Ken
>
>
> --
> Upcoming hands-on in-depth XSLT/XPath and/or XSL-FO
>                               North America:      June 16-20, 2003
>
> G. Ken Holman                mailto:gkholman@xxxxxxxxxxxxxxxxxxxx
> Crane Softwrights Ltd.         http://www.CraneSoftwrights.com/s/
> Box 266, Kars, Ontario CANADA K0A-2E0   +1(613)489-0999 (F:-0995)
> ISBN 0-13-065196-6                      Definitive XSLT and XPath
> ISBN 0-13-140374-5                              Definitive XSL-FO
> ISBN 1-894049-08-X  Practical Transformation Using XSLT and XPath
> ISBN 1-894049-10-1              Practical Formatting Using XSL-FO
> Male Breast Cancer Awareness http://www.CraneSoftwrights.com/s/bc
>
>
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
>
>


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


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.