Test case ibm-invalid-P39-ibm39i02.xml: org.dom4j.io.aelfred.SAXDriver Failed

Test case ibm-invalid-P39-ibm39i02.xml: org.dom4j.io.aelfred.SAXDriver Failed

This test violates VC: Element Valid in P39. root is declared only having element children in DTD, but have text content in the document.

<?xml version="1.0"?>
<!DOCTYPE root [
  <!ELEMENT root (a,b)>
  <!ELEMENT a EMPTY>
  <!ELEMENT b (#PCDATA|c)* >
  <!ELEMENT c ANY>

]>
<!--* root element have text content *-->
<root>
 root can't have text content
<a></a><b>
   <c></c> 
   content of b element
</b></root>

Expected resultActual result for org.dom4j.io.aelfred.SAXDriver
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <startElement>
        <namespaceURI/>
        <localName>root</localName>
        <qualifiedName>root</qualifiedName>
        <attributes/>
    </startElement>
    <char>\n</char>
    <char>\s</char>
    <char>r</char>
    <char>o</char>
    <char>o</char>
    <char>t</char>
    <char>\s</char>
    <char>c</char>
    <char>a</char>
    <char>n</char>
    <char>'</char>
    <char>t</char>
    <char>\s</char>
    <char>h</char>
    <char>a</char>
    <char>v</char>
    <char>e</char>
    <char>\s</char>
    <char>t</char>
    <char>e</char>
    <char>x</char>
    <char>t</char>
    <char>\s</char>
    <char>c</char>
    <char>o</char>
    <char>n</char>
    <char>t</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <ignorable>\n</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>a</localName>
        <qualifiedName>a</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>a</localName>
        <qualifiedName>a</qualifiedName>
    </endElement>
    <startElement>
        <namespaceURI/>
        <localName>b</localName>
        <qualifiedName>b</qualifiedName>
        <attributes/>
    </startElement>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <startElement>
        <namespaceURI/>
        <localName>c</localName>
        <qualifiedName>c</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>c</localName>
        <qualifiedName>c</qualifiedName>
    </endElement>
    <char>\s</char>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>c</char>
    <char>o</char>
    <char>n</char>
    <char>t</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <char>\s</char>
    <char>o</char>
    <char>f</char>
    <char>\s</char>
    <char>b</char>
    <char>\s</char>
    <char>e</char>
    <char>l</char>
    <char>e</char>
    <char>m</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <char>\n</char>
    <endElement>
        <namespaceURI/>
        <localName>b</localName>
        <qualifiedName>b</qualifiedName>
    </endElement>
    <endElement>
        <namespaceURI/>
        <localName>root</localName>
        <qualifiedName>root</qualifiedName>
    </endElement>
    <endDocument/>
</ConformanceResults>
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <resolveEntity>
        <systemID>file:/home/elharo/SAXTest/xmlconf/ibm/invalid/P39/ibm39i02.xml</systemID>
    </resolveEntity>
    <startElement>
        <namespaceURI/>
        <localName>root</localName>
        <qualifiedName>root</qualifiedName>
        <attributes/>
    </startElement>
    <ignorable>\n</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\s</ignorable>
    <ignorable>\n</ignorable>
    <startElement>
        <namespaceURI/>
        <localName>a</localName>
        <qualifiedName>a</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName/>
        <qualifiedName>a</qualifiedName>
    </endElement>
    <startElement>
        <namespaceURI/>
        <localName>b</localName>
        <qualifiedName>b</qualifiedName>
        <attributes/>
    </startElement>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <startElement>
        <namespaceURI/>
        <localName>c</localName>
        <qualifiedName>c</qualifiedName>
        <attributes/>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName/>
        <qualifiedName>c</qualifiedName>
    </endElement>
    <char>\s</char>
    <char>\n</char>
    <char>\s</char>
    <char>\s</char>
    <char>\s</char>
    <char>c</char>
    <char>o</char>
    <char>n</char>
    <char>t</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <char>\s</char>
    <char>o</char>
    <char>f</char>
    <char>\s</char>
    <char>b</char>
    <char>\s</char>
    <char>e</char>
    <char>l</char>
    <char>e</char>
    <char>m</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <char>\n</char>
    <endElement>
        <namespaceURI/>
        <localName/>
        <qualifiedName>b</qualifiedName>
    </endElement>
    <endElement>
        <namespaceURI/>
        <localName/>
        <qualifiedName>root</qualifiedName>
    </endElement>
    <endDocument/>
</ConformanceResults>