This test case covers legal NameChars character ranges plus discrete legal characters for production 04a.
<?xml version="1.1" encoding="UTF-8"?> <!DOCTYPE LegalNameChar [ <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameCharÀ ANY> <!ELEMENT LegalNameCharÁ ANY> <!ELEMENT LegalNameChar˾ ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameCharà ANY> <!ELEMENT LegalNameChar˽ ANY> <!ELEMENT LegalNameChar˿ ANY> <!ELEMENT LegalNameCharͰ ANY> <!ELEMENT LegalNameCharͱ ANY> <!ELEMENT LegalNameCharͼ ANY> <!ELEMENT LegalNameCharͽ ANY> <!ELEMENT LegalNameCharͿ ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar῾ ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar⁰ ANY> <!ELEMENT LegalNameCharⁱ ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameCharⰀ ANY> <!ELEMENT LegalNameCharⰁ ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar、 ANY> <!ELEMENT LegalNameChar。 ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar ANY> <!ELEMENT LegalNameChar豈 ANY> <!ELEMENT LegalNameChar更 ANY> <!ELEMENT LegalNameChar� ANY> <!ELEMENT LegalNameChar- ANY> <!ELEMENT LegalNameChar. ANY> <!ELEMENT LegalNameCharA ANY> <!ELEMENT LegalNameCharz ANY> <!ELEMENT LegalNameChar0 ANY> <!ELEMENT LegalNameChar· ANY> <!ELEMENT LegalNameChar̀ ANY> <!ELEMENT LegalNameChaŕ ANY> <!ELEMENT LegalNameCharͮ ANY> <!ELEMENT LegalNameCharͯ ANY> <!ELEMENT LegalNameChar‿ ANY> <!ELEMENT LegalNameChar⁀ ANY> ]> <!-- LegalNameChars ending with 0x003A, 0x00C0, 0x00C1, 0x02FE, 0x00C2, 0x00C3, 0x02FD, 0x02FF, 0x0370, 0x0371, 0x037C, 0x037D, 0x037F, 0x0380, 0x1FFE, 0x1FFF, 0x200C, 0x200D, 0x2070, 0x2071, 0x218E, 0x218F, 0x2C00, 0x2C01, 0x2FEE, 0x2FEF, 0x3001, 0x3002, 0xD7FE, 0xD7FF, 0xF900, 0xF901, 0xFFFD, 0x002D, 0x002E, 0x0041, 0x007A, 0x0030, 0x00B7, 0x0300, 0x0301, 0x036E, 0x036F, 0x203F, 0x2040 --> <LegalNameChar> <LegalNameCharÀ/> <LegalNameCharÁ/> <LegalNameChar˾/> <LegalNameCharÂ/> <LegalNameCharÃ/> <LegalNameChar˽/> <LegalNameChar˿/> <LegalNameCharͰ/> <LegalNameCharͱ/> <LegalNameCharͼ/> <LegalNameCharͽ/> <LegalNameCharͿ/> <LegalNameChar/> <LegalNameChar῾/> <LegalNameChar/> <LegalNameChar/> <LegalNameChar/> <LegalNameChar⁰/> <LegalNameCharⁱ/> <LegalNameChar/> <LegalNameChar/> <LegalNameCharⰀ/> <LegalNameCharⰁ/> <LegalNameChar/> <LegalNameChar/> <LegalNameChar、/> <LegalNameChar。/> <LegalNameChar/> <LegalNameChar/> <LegalNameChar豈/> <LegalNameChar更/> <LegalNameChar�/> <LegalNameChar-/> <LegalNameChar./> <LegalNameCharA/> <LegalNameCharz/> <LegalNameChar0/> <LegalNameChar·/> <LegalNameChar̀/> <LegalNameChaŕ/> <LegalNameCharͮ/> <LegalNameCharͯ/> <LegalNameChar‿/> <LegalNameChar⁀/> </LegalNameChar>
Expected result | Actual result for org.apache.crimson.parser.XMLReaderImpl |
---|---|
<?xml version="1.0" encoding="UTF-8"?> <ConformanceResults> <startDocument/> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <char>\t</char> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharÀ</localName> <qualifiedName>LegalNameCharÀ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharÀ</localName> <qualifiedName>LegalNameCharÀ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharÁ</localName> <qualifiedName>LegalNameCharÁ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharÁ</localName> <qualifiedName>LegalNameCharÁ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar˾</localName> <qualifiedName>LegalNameChar˾</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar˾</localName> <qualifiedName>LegalNameChar˾</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharÂ</localName> <qualifiedName>LegalNameCharÂ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharÂ</localName> <qualifiedName>LegalNameCharÂ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharÃ</localName> <qualifiedName>LegalNameCharÃ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharÃ</localName> <qualifiedName>LegalNameCharÃ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar˽</localName> <qualifiedName>LegalNameChar˽</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar˽</localName> <qualifiedName>LegalNameChar˽</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar˿</localName> <qualifiedName>LegalNameChar˿</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar˿</localName> <qualifiedName>LegalNameChar˿</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͰ</localName> <qualifiedName>LegalNameCharͰ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͰ</localName> <qualifiedName>LegalNameCharͰ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͱ</localName> <qualifiedName>LegalNameCharͱ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͱ</localName> <qualifiedName>LegalNameCharͱ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͼ</localName> <qualifiedName>LegalNameCharͼ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͼ</localName> <qualifiedName>LegalNameCharͼ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͽ</localName> <qualifiedName>LegalNameCharͽ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͽ</localName> <qualifiedName>LegalNameCharͽ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͿ</localName> <qualifiedName>LegalNameCharͿ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͿ</localName> <qualifiedName>LegalNameCharͿ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar῾</localName> <qualifiedName>LegalNameChar῾</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar῾</localName> <qualifiedName>LegalNameChar῾</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar⁰</localName> <qualifiedName>LegalNameChar⁰</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar⁰</localName> <qualifiedName>LegalNameChar⁰</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharⁱ</localName> <qualifiedName>LegalNameCharⁱ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharⁱ</localName> <qualifiedName>LegalNameCharⁱ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharⰀ</localName> <qualifiedName>LegalNameCharⰀ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharⰀ</localName> <qualifiedName>LegalNameCharⰀ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharⰁ</localName> <qualifiedName>LegalNameCharⰁ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharⰁ</localName> <qualifiedName>LegalNameCharⰁ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar、</localName> <qualifiedName>LegalNameChar、</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar、</localName> <qualifiedName>LegalNameChar、</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar。</localName> <qualifiedName>LegalNameChar。</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar。</localName> <qualifiedName>LegalNameChar。</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar豈</localName> <qualifiedName>LegalNameChar豈</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar豈</localName> <qualifiedName>LegalNameChar豈</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar更</localName> <qualifiedName>LegalNameChar更</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar更</localName> <qualifiedName>LegalNameChar更</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar�</localName> <qualifiedName>LegalNameChar�</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar�</localName> <qualifiedName>LegalNameChar�</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar-</localName> <qualifiedName>LegalNameChar-</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar-</localName> <qualifiedName>LegalNameChar-</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar.</localName> <qualifiedName>LegalNameChar.</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar.</localName> <qualifiedName>LegalNameChar.</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharA</localName> <qualifiedName>LegalNameCharA</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharA</localName> <qualifiedName>LegalNameCharA</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharz</localName> <qualifiedName>LegalNameCharz</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharz</localName> <qualifiedName>LegalNameCharz</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar0</localName> <qualifiedName>LegalNameChar0</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar0</localName> <qualifiedName>LegalNameChar0</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar·</localName> <qualifiedName>LegalNameChar·</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar·</localName> <qualifiedName>LegalNameChar·</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar̀</localName> <qualifiedName>LegalNameChar̀</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar̀</localName> <qualifiedName>LegalNameChar̀</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChaŕ</localName> <qualifiedName>LegalNameChaŕ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChaŕ</localName> <qualifiedName>LegalNameChaŕ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͮ</localName> <qualifiedName>LegalNameCharͮ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͮ</localName> <qualifiedName>LegalNameCharͮ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameCharͯ</localName> <qualifiedName>LegalNameCharͯ</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameCharͯ</localName> <qualifiedName>LegalNameCharͯ</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar‿</localName> <qualifiedName>LegalNameChar‿</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar‿</localName> <qualifiedName>LegalNameChar‿</qualifiedName> </endElement> <char>\n</char> <char>\t</char> <startElement> <namespaceURI/> <localName>LegalNameChar⁀</localName> <qualifiedName>LegalNameChar⁀</qualifiedName> <attributes/> </startElement> <endElement> <namespaceURI/> <localName>LegalNameChar⁀</localName> <qualifiedName>LegalNameChar⁀</qualifiedName> </endElement> <char>\n</char> <endElement> <namespaceURI/> <localName>LegalNameChar</localName> <qualifiedName>LegalNameChar</qualifiedName> </endElement> <endDocument/> </ConformanceResults> | <?xml version="1.0" encoding="UTF-8"?> <ConformanceResults> <startDocument/> <fatalError/> </ConformanceResults> |