You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@xalan.apache.org by bu...@apache.org on 2001/09/06 19:58:29 UTC
[DO NOT REPLY: Bug 3466] New:
xsltc fails conf test position80 on last() with unionpaths of ancestors
PLEASE DO NOT REPLY TO THIS MESSAGE. TO FURTHER COMMENT
ON THE STATUS OF THIS BUG PLEASE FOLLOW THE LINK BELOW
AND USE THE ON-LINE APPLICATION. REPLYING TO THIS MESSAGE
DOES NOT UPDATE THE DATABASE, AND SO YOUR COMMENT WILL
BE LOST SOMEWHERE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=3466
*** shadow/3466 Thu Sep 6 10:58:29 2001
--- shadow/3466.tmp.23124 Thu Sep 6 10:58:29 2001
***************
*** 0 ****
--- 1,148 ----
+ +============================================================================+
+ | xsltc fails conf test position80 on last() with unionpaths of ancestors |
+ +----------------------------------------------------------------------------+
+ | Bug #: 3466 Product: XalanJ2 |
+ | Status: NEW Version: 2.0.0 |
+ | Resolution: Platform: Sun |
+ | Severity: Normal OS/Version: Solaris |
+ | Priority: Other Component: org.apache.xalan.xsltc |
+ +----------------------------------------------------------------------------+
+ | Assigned To: xalan-dev@xml.apache.org |
+ | Reported By: tamiro@east.sun.com |
+ | CC list: Cc: |
+ +----------------------------------------------------------------------------+
+ | URL: |
+ +============================================================================+
+ | DESCRIPTION |
+ Expected Output
+ ---------------
+ <?xml version="1.0" encoding="UTF-8"?>
+ <out>
+ Title= BBB<name last-of="2">section</name>
+ Title= CCC<name last-of="1">section</name>
+ Title= YYY<name last-of="1">section</name>
+ Title= ZZZ<name last-of="2">section</name></out>
+
+
+ Obtained Output
+ ---------------
+ <?xml version="1.0" encoding="utf-8" ?>
+ <out>
+ Title=
+
+ AAA
+
+ BBB
+ About this article
+
+
+
+ CCC
+ ...
+
+
+ YYY
+ ...
+
+ ZZZ
+ This is the section titled "ZZZ".
+
+
+
+ Title=
+ AAA
+
+ BBB
+ About this article
+
+
+ Title=
+ CCC
+ ...
+
+ Title=
+ YYY
+ ...
+
+ ZZZ
+ This is the section titled "ZZZ".
+
+
+ Title= AAA<name last-of="1">articleinfo</name>
+ Title=
+ BBB
+ About this article
+ <name last-of="1">articleinfo</name>
+ Title= BBB<name last-of="2">section</name>
+ Title= About this article<name last-of="2">section</name>
+ Title= CCC<name last-of="1">section</name>
+ Title= ...<name last-of="1">section</name>
+ Title= YYY<name last-of="1">section</name>
+ Title= ...<name last-of="1">section</name>
+ Title=
+ ZZZ
+ This is the section titled "ZZZ".
+ <name last-of="1">section</name>
+ Title= ZZZ<name last-of="2">section</name>
+ Title= This is the section titled "ZZZ".<name
+ last-of="2">section</name></out>
+
+ position80.xsl
+ --------------
+ <?xml version="1.0"?>
+ <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
+ version="1.0">
+
+ <!-- FileName: position80 -->
+ <!-- Document: http://www.w3.org/TR/xpath -->
+ <!-- DocVersion: 19991116 -->
+ <!-- Section: 2.2 -->
+ <!-- Purpose: Ensure last() is working with unionpaths of ancestors. -->
+ <!-- Creator: Scott Boag -->
+
+ <xsl:template match="/">
+ <out>
+ <xsl:for-each select="//section/title">
+ Title= <xsl:value-of select="."/>
+ <xsl:variable name="size">
+ <xsl:value-of select="count(ancestor::section
+ |ancestor::simplesect|ancestor::articleinfo)"/>
+ </xsl:variable>
+ <xsl:for-each select="(ancestor::section|ancestor::simplesect
+ |ancestor::articleinfo)[last()]">
+ <name>
+ <xsl:attribute name="last-of">
+ <xsl:value-of select="$size"/>
+ </xsl:attribute>
+ <xsl:value-of select="name(.)"/>
+ </name>
+ </xsl:for-each>
+ </xsl:for-each>
+ </out>
+ </xsl:template>
+
+ </xsl:stylesheet>
+
+ position80.xml
+ --------------
+ <article class="whitepaper" status="Note">
+ <articleinfo>
+ <title>AAA</title>
+ <section id="info">
+ <title>BBB</title>
+ <para>About this article</para>
+ </section>
+ </articleinfo>
+ <section id="intro">
+ <title>CCC</title>
+ <para>...</para>
+ </section>
+ <section>
+ <title>YYY</title>
+ <para>...</para>
+ <section revisionflag="added">
+ <title>ZZZ</title>
+ <para>This is the section titled "ZZZ".</para>
+ </section>
+ </section>
+ </article>