Re: [xsl] debugging source line numbers

Subject: Re: [xsl] debugging source line numbers
From: Dimitre Novatchev <dnovatchev@xxxxxxxxx>
Date: Tue, 21 Jan 2003 21:51:47 -0800 (PST)
In case preserving of whitespace-only nodes has not been turned off and
the xml source has "a single tag with all attributs/namespace
definitions" on a single line, then the following gives the exact line
number:

count(preceding::text()[contains(., '&#xA;')]) + 1


=====
Cheers,

Dimitre Novatchev.
http://fxsl.sourceforge.net/ -- the home of FXSL


"S Woodside" <sbwoodside@xxxxxxxxx> wrote in message
news:FD40E2C0-2DC9-11D7-86C5-000393414368@xxxxxxxxxxxx
>   The FAQ is pretty thin on debugging tips, so I thought I'd share
this 
> that I came up with. the gurus on the list can probably improve it
;-)
> 
> I wanted to include a line number in the output that would take me to

> the line in the source XML that is being processed. It's tricky
because 
> the processor doesn't count close tags in the various number/count 
> functions, but I came up with this xslt. In order to make it work you

> have to "pretty-print" your source document (like in BBEdit, format
as 
> "hierarchical") to have one node / tag  text per line. This trick
puts 
> me within about +/- 20 lines of the right line, in my 2000 line
source 
> file.
> 
>    <xsl:text>{{{</xsl:text>
>    <xsl:value-of select="(count(preceding::* | ancestor::*) * 2 * 9
div 
> 10 + 1" />
>    <xsl:text>}}}</xsl:text>
> 
> I multiply the result of the count by 2 because every node has a
close 
> tag, thus doubling the number of lines. Except for the nodes that
don't 
> have close tags, so I multiply by a "constant" that should be roughly

> the ratio of nodes with close tags to nodes w/o close tags, 9/10
seemed 
> to work after fiddling. I can't remember what the +1 does ;-)
> 
> simon
> ---
> www.simonwoodside.com
> 
> 
>  XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
> 

__________________________________________________
Do you Yahoo!?
Yahoo! Mail Plus - Powerful. Affordable. Sign up now.
http://mailplus.yahoo.com

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


Current Thread