Test case ibm-valid-P28-ibm28v02.xml: oracle.xml.parser.v2.SAXParser Failed

Test case ibm-valid-P28-ibm28v02.xml: oracle.xml.parser.v2.SAXParser Failed

Tests doctypedecl with external subset and combinations of different markup declarations and PEReferences

<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE animal SYSTEM "ibm28v02.dtd" [
   <!NOTATION animal_class SYSTEM "ibm28v02.txt">
   <!ENTITY forcat "This is a small cat">
   <!ELEMENT tiger (#PCDATA)>
   <!ENTITY % make_small "<!ELEMENT small EMPTY>">
   <!ENTITY % make_leopard_element "<!ELEMENT leopard ANY>">
   <!ENTITY % make_attlist "<!ATTLIST tiger color CDATA #REQUIRED>">
   %make_leopard_element; 
   <!ELEMENT cat ANY>
   %make_small;
   <!ENTITY % make_big "<!ELEMENT big EMPTY>">
   %make_big;
   %make_attlist;
   <?sound "This is a PI" ?>
   <!-- This is a valid test file for p28 -->
]>
<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 oracle.xml.parser.v2.SAXParser
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <processingInstruction>
        <target>sound</target>
        <data>"This\sis\sa\sPI"\s</data>
    </processingInstruction>
    <resolveEntity>
        <systemID>file:/home/elharo/SAXTest/xmlconf/ibm/valid/P28/ibm28v02.dtd</systemID>
    </resolveEntity>
    <notation>
        <name>animal_class</name>
        <systemID>file:/home/elharo/SAXTest/xmlconf/ibm/valid/P28/ibm28v02.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>
    <resolveEntity>
        <systemID>file:/home/elharo/SAXTest/xmlconf/ibm/valid/P28/ibm28v02.dtd</systemID>
    </resolveEntity>
    <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>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>small</localName>
        <qualifiedName>small</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>small</localName>
        <qualifiedName>small</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>big</localName>
        <qualifiedName>big</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>big</localName>
        <qualifiedName>big</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <endElement>
        <namespaceURI/>
        <localName>leopard</localName>
        <qualifiedName>leopard</qualifiedName>
    </endElement>
    <ignorable>\n</ignorable>
    <endElement>
        <namespaceURI/>
        <localName>animal</localName>
        <qualifiedName>animal</qualifiedName>
    </endElement>
    <endDocument/>
</ConformanceResults>