Uploaded image for project: 'XalanJ2'
  1. XalanJ2
  2. XALANJ-1431

bug with evaluation of a matching clause

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.0.0
    • None
    • Xalan
    • Security Level: No security risk; visible to anyone (Ordinary problems in Xalan projects. Anybody can view the issue.)
    • None
    • Operating System: All
      Platform: All
    • PatchAvailable

    Description

      Hi,
      In using xalan I ran into the following issue:

      in evaluating a match condition the conditions pertaining to attributes are not
      tested completely before evaluating the condition following an or clause.

      Example:

      <xsl:template match='@*[.!='']|node()'>
      <xsl:copy>
      <xsl:apply-templates select='@*'/>
      </xsl:copy>
      </xsl:template>

      Input:
      <elemen1 a='1' b='' c='3'/>
      <element2/>

      Output From XALAN:
      <elemen1 a='1' >
      <element2/>

      The bug is the fact the non empty attribute followed by the empty attribute was
      not matched. It was somehow skipped.

      I have tried this in xalan 1.2 C and xalan2 and xala 2_4 and have seem similar
      behavior. In xalan 1.2 the behavior was worse since the non empty attribute
      was copied to the subsequent element.

      Atleast the xalan 2 and 2_4 versions do not copy the attributes to next node.
      But they are still missing the non empty attribute occuring after the empty
      attribute.

      In SAXON the output is correct :

      <elemen1 a='1' c='3'/>
      <element2/>

      thanks in advance for fixing this.

      ds

      Attachments

        1. XalanJ1431_Patch.txt
          1.0 kB
          Yash Talwar
        2. XalanJ1431_GoodPatch.txt
          1 kB
          Yash Talwar

        Activity

          People

            ytalwar@ca.ibm.com Yash Talwar
            ds5j@excite.com ds
            Brian Minchau Brian Minchau
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: