Test case ibm-invalid-P56-ibm56i10.xml: org.apache.crimson.parser.XMLReaderImpl Passed

Test case ibm-invalid-P56-ibm56i10.xml: org.apache.crimson.parser.XMLReaderImpl Passed

Tests invalid TokenizedType which is against P56 VC: IDREFS. The value of the IDREFS attribute "reference" is "EF456 DE355" which does not match the values assigned to two ID attributes.

<?xml  version="1.0"?>
<!-- validity constraint check for Production 56(Negative Test)-->
<!DOCTYPE test
 [
 <!ELEMENT test ANY>
 <!ELEMENT id1 EMPTY>
 <!ELEMENT id2 EMPTY>
 <!ELEMENT idrefs EMPTY>
 <!ATTLIST id1 UniqueName ID #REQUIRED>
 <!ATTLIST id2 UName ID #IMPLIED>
 <!ATTLIST idrefs reference IDREFS #IMPLIED>
 ]>
<test>
<id1 UniqueName = "BC456"></id1>
<id2 UName = "AC567"></id2>
<idrefs reference = "EF456 DE355"></idrefs>
Negative test for validity constraint of IDREFS.
In an attribute decl, values of type IDREFS match the name production
but IDREFS value do not match the values assigned to one or more ID attributes
somewhere in the XML document
</test>
Expected resultActual result for org.apache.crimson.parser.XMLReaderImpl
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <startElement>
        <namespaceURI/>
        <localName>test</localName>
        <qualifiedName>test</qualifiedName>
        <attributes/>
    </startElement>
    <char>\n</char>
    <startElement>
        <namespaceURI/>
        <localName>id1</localName>
        <qualifiedName>id1</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>UniqueName</localName>
                <qualifiedName>UniqueName</qualifiedName>
                <value>BC456</value>
                <type>ID</type>
            </attribute>
        </attributes>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>id1</localName>
        <qualifiedName>id1</qualifiedName>
    </endElement>
    <char>\n</char>
    <startElement>
        <namespaceURI/>
        <localName>id2</localName>
        <qualifiedName>id2</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>UName</localName>
                <qualifiedName>UName</qualifiedName>
                <value>AC567</value>
                <type>ID</type>
            </attribute>
        </attributes>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>id2</localName>
        <qualifiedName>id2</qualifiedName>
    </endElement>
    <char>\n</char>
    <startElement>
        <namespaceURI/>
        <localName>idrefs</localName>
        <qualifiedName>idrefs</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>reference</localName>
                <qualifiedName>reference</qualifiedName>
                <value>EF456\sDE355</value>
                <type>IDREFS</type>
            </attribute>
        </attributes>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>idrefs</localName>
        <qualifiedName>idrefs</qualifiedName>
    </endElement>
    <char>\n</char>
    <char>N</char>
    <char>e</char>
    <char>g</char>
    <char>a</char>
    <char>t</char>
    <char>i</char>
    <char>v</char>
    <char>e</char>
    <char>\s</char>
    <char>t</char>
    <char>e</char>
    <char>s</char>
    <char>t</char>
    <char>\s</char>
    <char>f</char>
    <char>o</char>
    <char>r</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>i</char>
    <char>d</char>
    <char>i</char>
    <char>t</char>
    <char>y</char>
    <char>\s</char>
    <char>c</char>
    <char>o</char>
    <char>n</char>
    <char>s</char>
    <char>t</char>
    <char>r</char>
    <char>a</char>
    <char>i</char>
    <char>n</char>
    <char>t</char>
    <char>\s</char>
    <char>o</char>
    <char>f</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>R</char>
    <char>E</char>
    <char>F</char>
    <char>S</char>
    <char>.</char>
    <char>\n</char>
    <char>I</char>
    <char>n</char>
    <char>\s</char>
    <char>a</char>
    <char>n</char>
    <char>\s</char>
    <char>a</char>
    <char>t</char>
    <char>t</char>
    <char>r</char>
    <char>i</char>
    <char>b</char>
    <char>u</char>
    <char>t</char>
    <char>e</char>
    <char>\s</char>
    <char>d</char>
    <char>e</char>
    <char>c</char>
    <char>l</char>
    <char>,</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>u</char>
    <char>e</char>
    <char>s</char>
    <char>\s</char>
    <char>o</char>
    <char>f</char>
    <char>\s</char>
    <char>t</char>
    <char>y</char>
    <char>p</char>
    <char>e</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>R</char>
    <char>E</char>
    <char>F</char>
    <char>S</char>
    <char>\s</char>
    <char>m</char>
    <char>a</char>
    <char>t</char>
    <char>c</char>
    <char>h</char>
    <char>\s</char>
    <char>t</char>
    <char>h</char>
    <char>e</char>
    <char>\s</char>
    <char>n</char>
    <char>a</char>
    <char>m</char>
    <char>e</char>
    <char>\s</char>
    <char>p</char>
    <char>r</char>
    <char>o</char>
    <char>d</char>
    <char>u</char>
    <char>c</char>
    <char>t</char>
    <char>i</char>
    <char>o</char>
    <char>n</char>
    <char>\n</char>
    <char>b</char>
    <char>u</char>
    <char>t</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>R</char>
    <char>E</char>
    <char>F</char>
    <char>S</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>u</char>
    <char>e</char>
    <char>\s</char>
    <char>d</char>
    <char>o</char>
    <char>\s</char>
    <char>n</char>
    <char>o</char>
    <char>t</char>
    <char>\s</char>
    <char>m</char>
    <char>a</char>
    <char>t</char>
    <char>c</char>
    <char>h</char>
    <char>\s</char>
    <char>t</char>
    <char>h</char>
    <char>e</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>u</char>
    <char>e</char>
    <char>s</char>
    <char>\s</char>
    <char>a</char>
    <char>s</char>
    <char>s</char>
    <char>i</char>
    <char>g</char>
    <char>n</char>
    <char>e</char>
    <char>d</char>
    <char>\s</char>
    <char>t</char>
    <char>o</char>
    <char>\s</char>
    <char>o</char>
    <char>n</char>
    <char>e</char>
    <char>\s</char>
    <char>o</char>
    <char>r</char>
    <char>\s</char>
    <char>m</char>
    <char>o</char>
    <char>r</char>
    <char>e</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>\s</char>
    <char>a</char>
    <char>t</char>
    <char>t</char>
    <char>r</char>
    <char>i</char>
    <char>b</char>
    <char>u</char>
    <char>t</char>
    <char>e</char>
    <char>s</char>
    <char>\n</char>
    <char>s</char>
    <char>o</char>
    <char>m</char>
    <char>e</char>
    <char>w</char>
    <char>h</char>
    <char>e</char>
    <char>r</char>
    <char>e</char>
    <char>\s</char>
    <char>i</char>
    <char>n</char>
    <char>\s</char>
    <char>t</char>
    <char>h</char>
    <char>e</char>
    <char>\s</char>
    <char>X</char>
    <char>M</char>
    <char>L</char>
    <char>\s</char>
    <char>d</char>
    <char>o</char>
    <char>c</char>
    <char>u</char>
    <char>m</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <char>\n</char>
    <endElement>
        <namespaceURI/>
        <localName>test</localName>
        <qualifiedName>test</qualifiedName>
    </endElement>
    <endDocument/>
</ConformanceResults>
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
    <startDocument/>
    <startElement>
        <namespaceURI/>
        <localName>test</localName>
        <qualifiedName>test</qualifiedName>
        <attributes/>
    </startElement>
    <char>\n</char>
    <startElement>
        <namespaceURI/>
        <localName>id1</localName>
        <qualifiedName>id1</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>UniqueName</localName>
                <qualifiedName>UniqueName</qualifiedName>
                <value>BC456</value>
                <type>ID</type>
            </attribute>
        </attributes>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>id1</localName>
        <qualifiedName>id1</qualifiedName>
    </endElement>
    <char>\n</char>
    <startElement>
        <namespaceURI/>
        <localName>id2</localName>
        <qualifiedName>id2</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>UName</localName>
                <qualifiedName>UName</qualifiedName>
                <value>AC567</value>
                <type>ID</type>
            </attribute>
        </attributes>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>id2</localName>
        <qualifiedName>id2</qualifiedName>
    </endElement>
    <char>\n</char>
    <startElement>
        <namespaceURI/>
        <localName>idrefs</localName>
        <qualifiedName>idrefs</qualifiedName>
        <attributes>
            <attribute>
                <namespaceURI/>
                <localName>reference</localName>
                <qualifiedName>reference</qualifiedName>
                <value>EF456\sDE355</value>
                <type>IDREFS</type>
            </attribute>
        </attributes>
    </startElement>
    <endElement>
        <namespaceURI/>
        <localName>idrefs</localName>
        <qualifiedName>idrefs</qualifiedName>
    </endElement>
    <char>\n</char>
    <char>N</char>
    <char>e</char>
    <char>g</char>
    <char>a</char>
    <char>t</char>
    <char>i</char>
    <char>v</char>
    <char>e</char>
    <char>\s</char>
    <char>t</char>
    <char>e</char>
    <char>s</char>
    <char>t</char>
    <char>\s</char>
    <char>f</char>
    <char>o</char>
    <char>r</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>i</char>
    <char>d</char>
    <char>i</char>
    <char>t</char>
    <char>y</char>
    <char>\s</char>
    <char>c</char>
    <char>o</char>
    <char>n</char>
    <char>s</char>
    <char>t</char>
    <char>r</char>
    <char>a</char>
    <char>i</char>
    <char>n</char>
    <char>t</char>
    <char>\s</char>
    <char>o</char>
    <char>f</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>R</char>
    <char>E</char>
    <char>F</char>
    <char>S</char>
    <char>.</char>
    <char>\n</char>
    <char>I</char>
    <char>n</char>
    <char>\s</char>
    <char>a</char>
    <char>n</char>
    <char>\s</char>
    <char>a</char>
    <char>t</char>
    <char>t</char>
    <char>r</char>
    <char>i</char>
    <char>b</char>
    <char>u</char>
    <char>t</char>
    <char>e</char>
    <char>\s</char>
    <char>d</char>
    <char>e</char>
    <char>c</char>
    <char>l</char>
    <char>,</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>u</char>
    <char>e</char>
    <char>s</char>
    <char>\s</char>
    <char>o</char>
    <char>f</char>
    <char>\s</char>
    <char>t</char>
    <char>y</char>
    <char>p</char>
    <char>e</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>R</char>
    <char>E</char>
    <char>F</char>
    <char>S</char>
    <char>\s</char>
    <char>m</char>
    <char>a</char>
    <char>t</char>
    <char>c</char>
    <char>h</char>
    <char>\s</char>
    <char>t</char>
    <char>h</char>
    <char>e</char>
    <char>\s</char>
    <char>n</char>
    <char>a</char>
    <char>m</char>
    <char>e</char>
    <char>\s</char>
    <char>p</char>
    <char>r</char>
    <char>o</char>
    <char>d</char>
    <char>u</char>
    <char>c</char>
    <char>t</char>
    <char>i</char>
    <char>o</char>
    <char>n</char>
    <char>\n</char>
    <char>b</char>
    <char>u</char>
    <char>t</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>R</char>
    <char>E</char>
    <char>F</char>
    <char>S</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>u</char>
    <char>e</char>
    <char>\s</char>
    <char>d</char>
    <char>o</char>
    <char>\s</char>
    <char>n</char>
    <char>o</char>
    <char>t</char>
    <char>\s</char>
    <char>m</char>
    <char>a</char>
    <char>t</char>
    <char>c</char>
    <char>h</char>
    <char>\s</char>
    <char>t</char>
    <char>h</char>
    <char>e</char>
    <char>\s</char>
    <char>v</char>
    <char>a</char>
    <char>l</char>
    <char>u</char>
    <char>e</char>
    <char>s</char>
    <char>\s</char>
    <char>a</char>
    <char>s</char>
    <char>s</char>
    <char>i</char>
    <char>g</char>
    <char>n</char>
    <char>e</char>
    <char>d</char>
    <char>\s</char>
    <char>t</char>
    <char>o</char>
    <char>\s</char>
    <char>o</char>
    <char>n</char>
    <char>e</char>
    <char>\s</char>
    <char>o</char>
    <char>r</char>
    <char>\s</char>
    <char>m</char>
    <char>o</char>
    <char>r</char>
    <char>e</char>
    <char>\s</char>
    <char>I</char>
    <char>D</char>
    <char>\s</char>
    <char>a</char>
    <char>t</char>
    <char>t</char>
    <char>r</char>
    <char>i</char>
    <char>b</char>
    <char>u</char>
    <char>t</char>
    <char>e</char>
    <char>s</char>
    <char>\n</char>
    <char>s</char>
    <char>o</char>
    <char>m</char>
    <char>e</char>
    <char>w</char>
    <char>h</char>
    <char>e</char>
    <char>r</char>
    <char>e</char>
    <char>\s</char>
    <char>i</char>
    <char>n</char>
    <char>\s</char>
    <char>t</char>
    <char>h</char>
    <char>e</char>
    <char>\s</char>
    <char>X</char>
    <char>M</char>
    <char>L</char>
    <char>\s</char>
    <char>d</char>
    <char>o</char>
    <char>c</char>
    <char>u</char>
    <char>m</char>
    <char>e</char>
    <char>n</char>
    <char>t</char>
    <char>\n</char>
    <endElement>
        <namespaceURI/>
        <localName>test</localName>
        <qualifiedName>test</qualifiedName>
    </endElement>
    <endDocument/>
</ConformanceResults>