This test case covers legal NMTOKEN Name character ranges plus discrete legal characters for production 7.
<?xml version="1.1" encoding="UTF-8"?> <!DOCTYPE NMtokenName [ <!ELEMENT NMtokenName ANY> <!ATTLIST NMtokenName thistoken0 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken1 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken2 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken3 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken4 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken5 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken6 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken7 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken8 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken9 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken10 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken11 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken12 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken13 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken14 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken15 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken16 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken17 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken18 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken19 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken20 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken21 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken22 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken23 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken24 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken25 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken26 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken27 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken28 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken29 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken30 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken31 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken32 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken33 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken34 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken35 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken36 NMTOKEN #IMPLIED> <!ATTLIST NMtokenName thistoken37 NMTOKEN #IMPLIED> ]> <!-- LegalNameChar 0x300,0x333,0x369,0x37E,0x2000,0x2001,0x2002,0x2005,0x200B,0x200E,x200F,0x2069,0x2190,0x23FF,0x280F,0x2A00,0x2EDC,0x2FED,0x2FFF,0x3000,0xD800,0xD801,0xDAFF,0xDFFF,0xEFFF,0xF1FF,0xF8FF,0xFFFFF; _, ., 0, B7, C0, 2FFF in P07 --> <NMtokenName thistoken0=":" thistoken1="À" thistoken2="Á" thistoken3="˾" thistoken4="À" thistoken5="Á" thistoken6="˾" thistoken7="˿" thistoken8="Ͱ" thistoken9="ͱ" thistoken10="ͼ" thistoken11="ͽ" thistoken12="Ϳ" thistoken13="" thistoken14="῾" thistoken15="" thistoken16="" thistoken17="" thistoken18="⁰" thistoken19="ⁱ" thistoken20="" thistoken21="" thistoken22="Ⰰ" thistoken23="Ⰱ" thistoken24="" thistoken25="" thistoken26="、" thistoken27="。" thistoken28="" thistoken29="" thistoken30="豈" thistoken31="更" thistoken32="_" thistoken33="." thistoken34="0" thistoken35="·" thistoken36="À" thistoken37="ͼ" />
| Expected result | Actual result for org.apache.crimson.parser.XMLReaderImpl |
|---|---|
<?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
<startDocument/>
<startElement>
<namespaceURI/>
<localName>NMtokenName</localName>
<qualifiedName>NMtokenName</qualifiedName>
<attributes>
<attribute>
<namespaceURI/>
<localName>thistoken0</localName>
<qualifiedName>thistoken0</qualifiedName>
<value>:</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken1</localName>
<qualifiedName>thistoken1</qualifiedName>
<value>À</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken10</localName>
<qualifiedName>thistoken10</qualifiedName>
<value>ͼ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken11</localName>
<qualifiedName>thistoken11</qualifiedName>
<value>ͽ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken12</localName>
<qualifiedName>thistoken12</qualifiedName>
<value>Ϳ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken13</localName>
<qualifiedName>thistoken13</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken14</localName>
<qualifiedName>thistoken14</qualifiedName>
<value>῾</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken15</localName>
<qualifiedName>thistoken15</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken16</localName>
<qualifiedName>thistoken16</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken17</localName>
<qualifiedName>thistoken17</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken18</localName>
<qualifiedName>thistoken18</qualifiedName>
<value>⁰</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken19</localName>
<qualifiedName>thistoken19</qualifiedName>
<value>ⁱ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken2</localName>
<qualifiedName>thistoken2</qualifiedName>
<value>Á</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken20</localName>
<qualifiedName>thistoken20</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken21</localName>
<qualifiedName>thistoken21</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken22</localName>
<qualifiedName>thistoken22</qualifiedName>
<value>Ⰰ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken23</localName>
<qualifiedName>thistoken23</qualifiedName>
<value>Ⰱ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken24</localName>
<qualifiedName>thistoken24</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken25</localName>
<qualifiedName>thistoken25</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken26</localName>
<qualifiedName>thistoken26</qualifiedName>
<value>、</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken27</localName>
<qualifiedName>thistoken27</qualifiedName>
<value>。</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken28</localName>
<qualifiedName>thistoken28</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken29</localName>
<qualifiedName>thistoken29</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken3</localName>
<qualifiedName>thistoken3</qualifiedName>
<value>˾</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken30</localName>
<qualifiedName>thistoken30</qualifiedName>
<value>豈</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken31</localName>
<qualifiedName>thistoken31</qualifiedName>
<value>更</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken32</localName>
<qualifiedName>thistoken32</qualifiedName>
<value>_</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken33</localName>
<qualifiedName>thistoken33</qualifiedName>
<value>.</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken34</localName>
<qualifiedName>thistoken34</qualifiedName>
<value>0</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken35</localName>
<qualifiedName>thistoken35</qualifiedName>
<value>·</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken36</localName>
<qualifiedName>thistoken36</qualifiedName>
<value>À</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken37</localName>
<qualifiedName>thistoken37</qualifiedName>
<value>ͼ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken4</localName>
<qualifiedName>thistoken4</qualifiedName>
<value>À</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken5</localName>
<qualifiedName>thistoken5</qualifiedName>
<value>Á</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken6</localName>
<qualifiedName>thistoken6</qualifiedName>
<value>˾</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken7</localName>
<qualifiedName>thistoken7</qualifiedName>
<value>˿</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken8</localName>
<qualifiedName>thistoken8</qualifiedName>
<value>Ͱ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken9</localName>
<qualifiedName>thistoken9</qualifiedName>
<value>ͱ</value>
<type>NMTOKEN</type>
</attribute>
</attributes>
</startElement>
<endElement>
<namespaceURI/>
<localName>NMtokenName</localName>
<qualifiedName>NMtokenName</qualifiedName>
</endElement>
<endDocument/>
</ConformanceResults>
| <?xml version="1.0" encoding="UTF-8"?>
<ConformanceResults>
<startDocument/>
<startElement>
<namespaceURI/>
<localName>NMtokenName</localName>
<qualifiedName>NMtokenName</qualifiedName>
<attributes>
<attribute>
<namespaceURI/>
<localName>thistoken0</localName>
<qualifiedName>thistoken0</qualifiedName>
<value>:</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken1</localName>
<qualifiedName>thistoken1</qualifiedName>
<value>À</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken10</localName>
<qualifiedName>thistoken10</qualifiedName>
<value>ͼ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken11</localName>
<qualifiedName>thistoken11</qualifiedName>
<value>ͽ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken12</localName>
<qualifiedName>thistoken12</qualifiedName>
<value>Ϳ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken13</localName>
<qualifiedName>thistoken13</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken14</localName>
<qualifiedName>thistoken14</qualifiedName>
<value>῾</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken15</localName>
<qualifiedName>thistoken15</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken16</localName>
<qualifiedName>thistoken16</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken17</localName>
<qualifiedName>thistoken17</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken18</localName>
<qualifiedName>thistoken18</qualifiedName>
<value>⁰</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken19</localName>
<qualifiedName>thistoken19</qualifiedName>
<value>ⁱ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken2</localName>
<qualifiedName>thistoken2</qualifiedName>
<value>Á</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken20</localName>
<qualifiedName>thistoken20</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken21</localName>
<qualifiedName>thistoken21</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken22</localName>
<qualifiedName>thistoken22</qualifiedName>
<value>Ⰰ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken23</localName>
<qualifiedName>thistoken23</qualifiedName>
<value>Ⰱ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken24</localName>
<qualifiedName>thistoken24</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken25</localName>
<qualifiedName>thistoken25</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken26</localName>
<qualifiedName>thistoken26</qualifiedName>
<value>、</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken27</localName>
<qualifiedName>thistoken27</qualifiedName>
<value>。</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken28</localName>
<qualifiedName>thistoken28</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken29</localName>
<qualifiedName>thistoken29</qualifiedName>
<value></value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken3</localName>
<qualifiedName>thistoken3</qualifiedName>
<value>˾</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken30</localName>
<qualifiedName>thistoken30</qualifiedName>
<value>豈</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken31</localName>
<qualifiedName>thistoken31</qualifiedName>
<value>更</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken32</localName>
<qualifiedName>thistoken32</qualifiedName>
<value>_</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken33</localName>
<qualifiedName>thistoken33</qualifiedName>
<value>.</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken34</localName>
<qualifiedName>thistoken34</qualifiedName>
<value>0</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken35</localName>
<qualifiedName>thistoken35</qualifiedName>
<value>·</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken36</localName>
<qualifiedName>thistoken36</qualifiedName>
<value>À</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken37</localName>
<qualifiedName>thistoken37</qualifiedName>
<value>ͼ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken4</localName>
<qualifiedName>thistoken4</qualifiedName>
<value>À</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken5</localName>
<qualifiedName>thistoken5</qualifiedName>
<value>Á</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken6</localName>
<qualifiedName>thistoken6</qualifiedName>
<value>˾</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken7</localName>
<qualifiedName>thistoken7</qualifiedName>
<value>˿</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken8</localName>
<qualifiedName>thistoken8</qualifiedName>
<value>Ͱ</value>
<type>NMTOKEN</type>
</attribute>
<attribute>
<namespaceURI/>
<localName>thistoken9</localName>
<qualifiedName>thistoken9</qualifiedName>
<value>ͱ</value>
<type>NMTOKEN</type>
</attribute>
</attributes>
</startElement>
<endElement>
<namespaceURI/>
<localName>NMtokenName</localName>
<qualifiedName>NMtokenName</qualifiedName>
</endElement>
<endDocument/>
</ConformanceResults>
|