xml editor

Supported platforms

Compatible with Windows7 & Mac OS X Snow Leopard

Ready for data server software
[XSL-LIST Mailing List Archive Home] [By Thread] [By Date]

RE: [xsl] passing_cousin_content_as_counter


Subject: RE: [xsl] passing_cousin_content_as_counter
From: "Michael Kay" <mhk@xxxxxxxxx>
Date: Sun, 1 Aug 2004 23:02:02 +0100

> and while it seems pretty logical to just select the relevant
> COORDINATES_ITEM elements
> and add a d character in front of their number content, it doesn't.It
> produces an identical
> xml doc with the source one.It looks like, it ignores the 
> second template
> and just applies
> the first identity template, producing exactly the same document.

It's a shame that having got that far, you weren't able to find the simple
error in my code. The predicate should be

<xsl:template match="COORDINATES_ITEM[position() =
    /SHAPE/ELEM_INFO/ELEM_INFO_ITEM[position() mod 3 = 1]]">

This now works in Saxon 6.5.3. Unfortunately it shows up an optimization bug
in Saxon 8.0, which is related to
https://sourceforge.net/tracker/index.php?func=detail&aid=998978&group_id=29
872&atid=397617 but not identical to it. Although this predicate does not
use variables explicitly, it is optimized to the XQuery expression

let $temp := /SHAPE/ELEM_INFO/ELEM_INFO_ITEM[position() mod 3 = 1]
return COORDINATES_ITEM[position() = $temp]

and this is hitting problems in allocating stack space for variables in
patterns.

Michael Kay


Current Thread
Keywords
XML Editor | XML Author | WYSIWYG Editors | Schema Editor | XSD Documentation | XSL/XSLT Editor | XQuery | XML Databases | SVN Client
© 2002-2011 SyncRO Soft Ltd. All rights reserved. | Sitemap | Privacy Policy | This website was created & generated with <oXygen/>®XML Editor