Test case ibm-valid-P29-ibm29v01.xml: gnu.xml.aelfred2.XmlReader Failed

Test case ibm-valid-P29-ibm29v01.xml: gnu.xml.aelfred2.XmlReader Failed

Tests markupdecl with combinations of elementdecl, AttlistDecl,EntityDecl, NotationDecl, PI and comment

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE animal [
   <!ELEMENT animal (cat|tiger|leopard)+>
   <!NOTATION animal_class SYSTEM "ibm29v01.txt">
   <!ELEMENT cat ANY>
   <!ENTITY forcat "This is a small cat">
   <!ELEMENT tiger (#PCDATA)>
   <!ELEMENT leopard ANY>
   <!ELEMENT small EMPTY>
   <!ELEMENT big EMPTY>
   <!ATTLIST tiger color CDATA #REQUIRED>
   <?sound "This is a PI" ?>
   <!-- This is a comment -->
    
]>
<animal>
   <cat>&forcat;</cat>
   <tiger color="white">This is a white tiger in Mirage!!</tiger>
   <cat/>
   <leopard>
      <small/>
      <big/>
   </leopard>
</animal>
Expected resultActual result for gnu.xml.aelfred2.XmlReader
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <processingInstruction>
        <target>sound</target>
        <data>"This\sis\sa\sPI"\s</data>
    </processingInstruction>
    <notation>
        <name>animal_class</name>
        <systemID>file:/home/elharo/SAXTest/xmlconf/ibm/valid/P29/ibm29v01.txt</systemID>
    </notation>
    <startElement>
        <namespaceURI/>
        <localName>animal</localName>
        <qualifiedName>animal</qualifiedName>
        <attributes/>
    </startElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>cat</localName>
        <qualifiedName>cat</qualifiedName>
        <attributes/>
    </startElement>
    <char>T</char>
    <char>h</char>
    <char>i</char>
    <char>s</char>
    <char>\s</char>
    <char>i</char>
    <char>s</char>
    <char>\s</char>
    <char>a</char>
    <char>\s</char>
    <char>s</char>
    <char>m</char>
    <char>a</char>
    <char>l</char>
    <char>l</char>
    <char>\s</char>
    <char>c</char>
    <char>a</char>
    <char>t</char>
    <endElement>
        <namespaceURI/>
        <localName>cat</localName>
        <qualifiedName>cat</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>tiger</localName>
        <qualifiedName>tiger</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>color</localName>
                <qualifiedName>color</qualifiedName>
                <value>white</value>
                <type>CDATA</type>
            </attribute>
        </attributes>
    </startElement>
    <char>T</char>
    <char>h</char>
    <char>i</char>
    <char>s</char>
    <char>\s</char>
    <char>i</char>
    <char>s</char>
    <char>\s</char>
    <char>a</char>
    <char>\s</char>
    <char>w</char>
    <char>h</char>
    <char>i</char>
    <char>t</char>
    <char>e</char>
    <char>\s</char>
    <char>t</char>
    <char>i</char>
    <char>g</char>
    <char>e</char>
    <char>r</char>
    <char>\s</char>
    <char>i</char>
    <char>n</char>
    <char>\s</char>
    <char>M</char>
    <char>i</char>
    <char>r</char>
    <char>a</char>
    <char>g</char>
    <char>e</char>
    <char>!</char>
    <char>!</char>
    <endElement>
        <namespaceURI/>
        <localName>tiger</localName>
        <qualifiedName>tiger</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>cat</localName>
        <qualifiedName>cat</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>cat</localName>
        <qualifiedName>cat</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>leopard</localName>
        <qualifiedName>leopard</qualifiedName>
        <attributes/>
    </startElement>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <startElement>
        <namespaceURI/>
        <localName>small</localName>
        <qualifiedName>small</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>small</localName>
        <qualifiedName>small</qualifiedName>
    </endElement>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <startElement>
        <namespaceURI/>
        <localName>big</localName>
        <qualifiedName>big</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>big</localName>
        <qualifiedName>big</qualifiedName>
    </endElement>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <endElement>
        <namespaceURI/>
        <localName>leopard</localName>
        <qualifiedName>leopard</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <endElement>
        <namespaceURI/>
        <localName>animal</localName>
        <qualifiedName>animal</qualifiedName>
    </endElement>
    <endDocument/>
</ConformanceResults>
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <processingInstruction>
        <target>sound</target>
        <data>"This\sis\sa\sPI"\s</data>
    </processingInstruction>
    <endDocument/>
    <bug reason="Parser should only throw SAXExceptions" type="java.lang.ArrayIndexOutOfBoundsException">0 &gt;= 0</bug>
</ConformanceResults>