summaryrefslogtreecommitdiffstats
path: root/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid')
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.ent0
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.ent4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.entbin0 -> 4 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml.ref11
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.entbin0 -> 54 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml.ref11
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.ent0
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml.ref14
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml.ref12
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.entbin0 -> 12 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml13
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml.ref47
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml14
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml.ref47
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml.ref16
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.ent0
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-1.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-2.ent0
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-1.ent4
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-2.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-1.ent3
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-2.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml.ref8
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml.ref8
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml.ref8
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml.ref10
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.ent4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.ent4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml.ref8
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.ent5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml.ref8
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.ent4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml.ref8
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.ent5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.ent4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.ent5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml.ref12
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.ent2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.ent3
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml.ref7
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-1.ent3
-rwxr-xr-xtests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-2.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml2
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml.ref11
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml.ref11
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml.ref11
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml.ref20
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xmlbin0 -> 124 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xmlbin0 -> 132 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xmlbin0 -> 140 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml.ref20
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml.refbin0 -> 312 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml.ref15
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml.ref7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.bak5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.refbin0 -> 381 bytes
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml.ref17
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.ent1
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml.ref12
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml7
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml.ref8
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml.ref11
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml6
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml.ref10
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml5
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml.ref9
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml4
-rw-r--r--tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml.ref8
385 files changed, 2424 insertions, 0 deletions
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.ent
new file mode 100755
index 0000000000..1cff3fd44f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.ent
@@ -0,0 +1 @@
+Data
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml
new file mode 100644
index 0000000000..147d70d2d1
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "001.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml.ref
new file mode 100644
index 0000000000..355c937e11
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/001.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="001.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="001.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.ent
new file mode 100755
index 0000000000..45f6d8e74e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.ent
@@ -0,0 +1 @@
+Data \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml
new file mode 100644
index 0000000000..9eaf91724f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "002.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml.ref
new file mode 100644
index 0000000000..f843995646
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/002.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="002.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="002.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.ent
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.ent
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml
new file mode 100644
index 0000000000..bb60b663ef
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "003.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml.ref
new file mode 100644
index 0000000000..79d3531637
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/003.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="003.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="003.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.ent
new file mode 100755
index 0000000000..3436f20001
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.ent
@@ -0,0 +1 @@
+Data \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml
new file mode 100644
index 0000000000..074498ce19
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "004.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml.ref
new file mode 100644
index 0000000000..38abcb2fc6
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/004.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="004.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="004.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.ent
new file mode 100755
index 0000000000..c6e97f821f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.ent
@@ -0,0 +1 @@
+<e/><e/><e/> \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml
new file mode 100644
index 0000000000..82a6228205
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (e*)>
+<!ELEMENT e EMPTY>
+<!ENTITY e SYSTEM "005.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml.ref
new file mode 100644
index 0000000000..2601030f2a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/005.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="005.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="005.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.ent
new file mode 100755
index 0000000000..4df2f0c2ac
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.ent
@@ -0,0 +1,4 @@
+Data
+<e/>
+More data
+<e/>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml
new file mode 100644
index 0000000000..0b326cad4c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA|e)*>
+<!ELEMENT e EMPTY>
+<!ENTITY e SYSTEM "006.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml.ref
new file mode 100644
index 0000000000..17fd238b67
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/006.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="006.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="006.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.ent
new file mode 100755
index 0000000000..ab1d696dd7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.ent
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml
new file mode 100644
index 0000000000..825e3b286a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "007.ent">
+]>
+<doc>X&e;Z</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml.ref
new file mode 100644
index 0000000000..81e7ccdaf3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/007.xml.ref
@@ -0,0 +1,11 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="007.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="007.ent", ret={})
+ skippedEntity(name="e")
+ characters(ch="XZ")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.ent
new file mode 100755
index 0000000000..c6ca61f9c8
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.ent
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml
new file mode 100644
index 0000000000..3c001b6cb3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "008.ent">
+]>
+<doc>X&e;Z</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml.ref
new file mode 100644
index 0000000000..eb7f1086e1
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/008.xml.ref
@@ -0,0 +1,11 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="008.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="008.ent", ret={})
+ skippedEntity(name="e")
+ characters(ch="XZ")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.ent
new file mode 100755
index 0000000000..67c3297611
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.ent
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml
new file mode 100644
index 0000000000..a5866e5a77
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "009.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml.ref
new file mode 100644
index 0000000000..5c294de017
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/009.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="009.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="009.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.ent
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.ent
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml
new file mode 100644
index 0000000000..418e9b0141
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "010.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml.ref
new file mode 100644
index 0000000000..4dc03c6dba
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/010.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="010.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="010.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.ent
new file mode 100755
index 0000000000..b19be3a497
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.ent
@@ -0,0 +1 @@
+xyzzy
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml
new file mode 100644
index 0000000000..2ceefa1d21
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e PUBLIC "a not very interesting file" "011.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml.ref
new file mode 100644
index 0000000000..c078139d84
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/011.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="a not very interesting file", systemId="011.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="a not very interesting file", systemId="011.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.ent
new file mode 100755
index 0000000000..8eb1fb9c41
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.ent
@@ -0,0 +1 @@
+&e4; \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml
new file mode 100644
index 0000000000..5a8f009b4a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml
@@ -0,0 +1,9 @@
+<!DOCTYPE doc [
+<!ENTITY e1 "&e2;">
+<!ENTITY e2 "&e3;">
+<!ENTITY e3 SYSTEM "012.ent">
+<!ENTITY e4 "&e5;">
+<!ENTITY e5 "(e5)">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&e1;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml.ref
new file mode 100644
index 0000000000..2af77a3b99
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/012.xml.ref
@@ -0,0 +1,14 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e1", value="&e2;")
+ internatlEntityDecl(name="e2", value="&e3;")
+ externalEntityDecl(name="e3", publicId="", systemId="012.ent")
+ internatlEntityDecl(name="e4", value="&e5;")
+ internatlEntityDecl(name="e5", value="(e5)")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="012.ent", ret={})
+ skippedEntity(name="e3")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.ent
new file mode 100755
index 0000000000..7f25c502dd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.ent
@@ -0,0 +1 @@
+<e/> \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml
new file mode 100644
index 0000000000..7717c97afe
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (e)>
+<!ELEMENT e (#PCDATA)>
+<!ATTLIST e
+ a1 CDATA "a1 default"
+ a2 NMTOKENS "a2 default"
+>
+<!ENTITY x SYSTEM "013.ent">
+]>
+<doc>&x;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml.ref
new file mode 100644
index 0000000000..92fb65a2d2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/013.xml.ref
@@ -0,0 +1,12 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="e", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="e", aName="a2", type="", valueDefault="", value="")
+ externalEntityDecl(name="x", publicId="", systemId="013.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="013.ent", ret={})
+ skippedEntity(name="x")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.ent
new file mode 100755
index 0000000000..470fd6fe44
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.ent
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml
new file mode 100644
index 0000000000..816fd1e796
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e SYSTEM "014.ent">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml.ref
new file mode 100644
index 0000000000..a087786e69
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/014.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId="", systemId="014.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ resolveEntity(publicId="", systemId="014.ent", ret={})
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml
new file mode 100644
index 0000000000..e91a10895e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<!DOCTYPE foo SYSTEM "foo.dtd" [
+ <!ENTITY def "foo">
+]>
+<foo>
+ <!-- check that the call to skippedEntity() is inserted in the right place -->
+ <a>abc&undef;gh</a>
+ <b>&undef;gh</b>
+ <c>abc&undef;</c>
+ <d>&undef;</d>
+ <e>&undef;&def;&undef;&def;</e>
+ <e>a&undef;b&def;c&undef;d&def;e</e>
+</foo>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml.ref
new file mode 100644
index 0000000000..67f1fbe808
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_1.xml.ref
@@ -0,0 +1,47 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' encoding='UTF-8' standalone='no'")
+ startDTD(name="foo", publicId="", systemId="foo.dtd")
+ internatlEntityDecl(name="def", value="foo")
+ endDTD()
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ characters(ch="\n ")
+ comment(ch=" check that the call to skippedEntity() is inserted in the right place ")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ characters(ch="abc")
+ skippedEntity(name="undef")
+ characters(ch="gh")
+ endElement(namespaceURI="", localName="a", qName="a")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="b", qName="b", atts=[])
+ skippedEntity(name="undef")
+ characters(ch="gh")
+ endElement(namespaceURI="", localName="b", qName="b")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="c", qName="c", atts=[])
+ characters(ch="abc")
+ skippedEntity(name="undef")
+ endElement(namespaceURI="", localName="c", qName="c")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="d", qName="d", atts=[])
+ skippedEntity(name="undef")
+ endElement(namespaceURI="", localName="d", qName="d")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[])
+ skippedEntity(name="undef")
+ characters(ch="foo")
+ skippedEntity(name="undef")
+ characters(ch="foo")
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[])
+ characters(ch="a")
+ skippedEntity(name="undef")
+ characters(ch="bfooc")
+ skippedEntity(name="undef")
+ characters(ch="dfooe")
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\n")
+ endElement(namespaceURI="", localName="foo", qName="foo")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml
new file mode 100644
index 0000000000..a1fb393371
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<!DOCTYPE foo SYSTEM "foo.dtd" [
+ <!ENTITY a1 "&a2;">
+ <!ENTITY a2 "&a3;">
+ <!ENTITY def "foo">
+]>
+<foo>
+ <a>abc&a1;gh</a>
+ <b>&a1;gh</b>
+ <c>abc&a1;</c>
+ <d>&a1;</d>
+ <e>&a1;&def;&a1;&def;</e>
+ <e>a&a1;b&def;c&a1;d&def;e</e>
+</foo>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml.ref
new file mode 100644
index 0000000000..a7ed3a2848
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_2.xml.ref
@@ -0,0 +1,47 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' encoding='UTF-8' standalone='no'")
+ startDTD(name="foo", publicId="", systemId="foo.dtd")
+ internatlEntityDecl(name="a1", value="&a2;")
+ internatlEntityDecl(name="a2", value="&a3;")
+ internatlEntityDecl(name="def", value="foo")
+ endDTD()
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ characters(ch="abc")
+ skippedEntity(name="a3")
+ characters(ch="gh")
+ endElement(namespaceURI="", localName="a", qName="a")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="b", qName="b", atts=[])
+ skippedEntity(name="a3")
+ characters(ch="gh")
+ endElement(namespaceURI="", localName="b", qName="b")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="c", qName="c", atts=[])
+ characters(ch="abc")
+ skippedEntity(name="a3")
+ endElement(namespaceURI="", localName="c", qName="c")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="d", qName="d", atts=[])
+ skippedEntity(name="a3")
+ endElement(namespaceURI="", localName="d", qName="d")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[])
+ skippedEntity(name="a3")
+ characters(ch="foo")
+ skippedEntity(name="a3")
+ characters(ch="foo")
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\n ")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[])
+ characters(ch="a")
+ skippedEntity(name="a3")
+ characters(ch="bfooc")
+ skippedEntity(name="a3")
+ characters(ch="dfooe")
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\n")
+ endElement(namespaceURI="", localName="foo", qName="foo")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml
new file mode 100644
index 0000000000..ae745d4da1
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
+<!DOCTYPE foo SYSTEM "foo.dtd" [
+ <!ENTITY a1 "&a2;">
+ <!ENTITY a2 "&a3;">
+ <!ENTITY def "foo">
+]>
+<foo>
+ <a attr="foo&a1;bar&def;ding"/>
+</foo>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml.ref
new file mode 100644
index 0000000000..09f8e96b9c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/ext-sa/undef_entity_3.xml.ref
@@ -0,0 +1,16 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' encoding='UTF-8' standalone='no'")
+ startDTD(name="foo", publicId="", systemId="foo.dtd")
+ internatlEntityDecl(name="a1", value="&a2;")
+ internatlEntityDecl(name="a2", value="&a3;")
+ internatlEntityDecl(name="def", value="foo")
+ endDTD()
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ characters(ch="\n ")
+ skippedEntity(name="a3")
+ startElement(namespaceURI="", localName="a", qName="a", atts=[{localName="attr", qName="attr", uri="", type="CDATA", value="foobarfooding"}])
+ endElement(namespaceURI="", localName="a", qName="a")
+ characters(ch="\n")
+ endElement(namespaceURI="", localName="foo", qName="foo")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.ent
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.ent
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml
new file mode 100644
index 0000000000..2d6f41a137
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "001.ent" [
+<!ELEMENT doc EMPTY>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml.ref
new file mode 100644
index 0000000000..eea47ce41b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/001.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="001.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.ent
new file mode 100755
index 0000000000..67c3297611
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.ent
@@ -0,0 +1 @@
+ \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml
new file mode 100644
index 0000000000..023fce8499
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "002.ent" [
+<!ELEMENT doc EMPTY>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml.ref
new file mode 100644
index 0000000000..cbaf6dc22d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/002.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="002.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-1.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-1.ent
new file mode 100755
index 0000000000..931f3ad6d8
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-1.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc EMPTY>
+<!ENTITY % e SYSTEM "003-2.ent">
+<!ATTLIST doc a1 CDATA %e; "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-2.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-2.ent
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003-2.ent
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml
new file mode 100644
index 0000000000..63a5e8bdfc
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "003-1.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml.ref
new file mode 100644
index 0000000000..4f83c741fb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/003.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="003-1.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-1.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-1.ent
new file mode 100755
index 0000000000..40f7ff58a2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-1.ent
@@ -0,0 +1,4 @@
+<!ELEMENT doc EMPTY>
+<!ENTITY % e1 SYSTEM "004-2.ent">
+<!ENTITY % e2 "%e1;">
+%e1;
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-2.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-2.ent
new file mode 100755
index 0000000000..61def75cb7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004-2.ent
@@ -0,0 +1 @@
+<!ATTLIST doc a1 CDATA "value">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml
new file mode 100644
index 0000000000..adc9201496
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "004-1.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml.ref
new file mode 100644
index 0000000000..e2d3af888e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/004.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="004-1.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-1.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-1.ent
new file mode 100755
index 0000000000..ade9599032
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-1.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc EMPTY>
+<!ENTITY % e SYSTEM "005-2.ent">
+%e;
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-2.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-2.ent
new file mode 100755
index 0000000000..bef50b1f38
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005-2.ent
@@ -0,0 +1 @@
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml
new file mode 100644
index 0000000000..6bd44cfee0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "005-1.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml.ref
new file mode 100644
index 0000000000..8057322cf2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/005.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="005-1.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.ent
new file mode 100755
index 0000000000..8f305a82bd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc EMPTY>
+<!ATTLIST doc a1 CDATA "w1" a2 CDATA "w2">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml
new file mode 100644
index 0000000000..eb80bb7409
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "006.ent" [
+<!ATTLIST doc a1 CDATA "v1">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml.ref
new file mode 100644
index 0000000000..e2e2584353
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/006.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="006.ent")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.ent
new file mode 100755
index 0000000000..fbf4ca4947
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml
new file mode 100644
index 0000000000..38897e34ea
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "007.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml.ref
new file mode 100644
index 0000000000..d96790fb37
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/007.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="007.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.ent
new file mode 100755
index 0000000000..fbf4ca4947
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml
new file mode 100644
index 0000000000..bf777a7ff2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc PUBLIC "whatever" "008.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml.ref
new file mode 100644
index 0000000000..08ba9c035b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/008.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="whatever", systemId="008.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.ent
new file mode 100755
index 0000000000..fbf4ca4947
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml
new file mode 100644
index 0000000000..c17562fe68
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc PUBLIC "whatever" "009.ent" [
+<!ATTLIST doc a2 CDATA "v2">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml.ref
new file mode 100644
index 0000000000..d789785173
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/009.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="whatever", systemId="009.ent")
+ attributeDecl(eName="doc", aName="a2", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.ent
new file mode 100755
index 0000000000..52a28f5deb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v2">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml
new file mode 100644
index 0000000000..2786b328f3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "010.ent" [
+<!ATTLIST doc a1 CDATA "v1">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml.ref
new file mode 100644
index 0000000000..6045d46296
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/010.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="010.ent")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.ent
new file mode 100755
index 0000000000..fbf4ca4947
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml
new file mode 100644
index 0000000000..03b482bbb6
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY % e SYSTEM "011.ent">
+%e;
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml.ref
new file mode 100644
index 0000000000..09fd89bd38
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/011.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="%e", publicId="", systemId="011.ent")
+ resolveEntity(publicId="", systemId="011.ent", ret={})
+ skippedEntity(name="%e")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.ent
new file mode 100755
index 0000000000..7e372e65e9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.ent
@@ -0,0 +1,3 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml
new file mode 100644
index 0000000000..1967edbba7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY % e SYSTEM "012.ent">
+%e;
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml.ref
new file mode 100644
index 0000000000..8d90b187dd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/012.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="%e", publicId="", systemId="012.ent")
+ resolveEntity(publicId="", systemId="012.ent", ret={})
+ skippedEntity(name="%e")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.ent
new file mode 100755
index 0000000000..a3691d9f08
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.ent
@@ -0,0 +1,4 @@
+<!ELEMENT doc (#PCDATA)>
+<![ INCLUDE [
+<!ATTLIST doc a1 CDATA "v1">
+]]>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml
new file mode 100644
index 0000000000..cf44f2600a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "013.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml.ref
new file mode 100644
index 0000000000..d84839e625
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/013.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="013.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.ent
new file mode 100755
index 0000000000..6eaf779329
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.ent
@@ -0,0 +1,4 @@
+<!ELEMENT doc (#PCDATA)>
+<![ %e; [
+<!ATTLIST doc a1 CDATA "v1">
+]]>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml
new file mode 100644
index 0000000000..bd08502489
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "014.ent" [
+<!ENTITY % e "INCLUDE">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml.ref
new file mode 100644
index 0000000000..f9c8220bbb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/014.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="014.ent")
+ internatlEntityDecl(name="%e", value="INCLUDE")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.ent
new file mode 100755
index 0000000000..00d2f30e1d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.ent
@@ -0,0 +1,5 @@
+<!ELEMENT doc (#PCDATA)>
+<![ %e; [
+<!ATTLIST doc a1 CDATA "v1">
+]]>
+<!ATTLIST doc a2 CDATA "v2">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml
new file mode 100644
index 0000000000..e04e75ffca
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "015.ent" [
+<!ENTITY % e "IGNORE">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml.ref
new file mode 100644
index 0000000000..de94a45356
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/015.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="015.ent")
+ internatlEntityDecl(name="%e", value="IGNORE")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.ent
new file mode 100755
index 0000000000..bf77ef8336
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.ent
@@ -0,0 +1,4 @@
+<!ELEMENT doc (#PCDATA)>
+<![%e;[
+<!ATTLIST doc a1 CDATA "v1">
+]]>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml
new file mode 100644
index 0000000000..4ccf4af350
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc SYSTEM "016.ent" [
+<!ENTITY % e "INCLUDE">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml.ref
new file mode 100644
index 0000000000..7c234cfc5f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/016.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="016.ent")
+ internatlEntityDecl(name="%e", value="INCLUDE")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.ent
new file mode 100755
index 0000000000..ffd9adde61
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e "<!ATTLIST doc a1 CDATA 'v1'>">
+%e;
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml
new file mode 100644
index 0000000000..7fe18f4c7a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "017.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml.ref
new file mode 100644
index 0000000000..25cc198610
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/017.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="017.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.ent
new file mode 100755
index 0000000000..2d46f76fc3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e "'v1'">
+<!ATTLIST doc a1 CDATA %e;>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml
new file mode 100644
index 0000000000..31e90f2405
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "018.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml.ref
new file mode 100644
index 0000000000..3db7bc846b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/018.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="018.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.ent
new file mode 100755
index 0000000000..d18201a98b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e "'v1'">
+<!ATTLIST doc a1 CDATA%e;>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml
new file mode 100644
index 0000000000..b7a18faba0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "019.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml.ref
new file mode 100644
index 0000000000..9961aa93b4
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/019.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="019.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.ent
new file mode 100755
index 0000000000..815291c6d2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.ent
@@ -0,0 +1,3 @@
+<!ENTITY % e "doc">
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST%e;a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml
new file mode 100644
index 0000000000..d70892f7ad
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "020.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml.ref
new file mode 100644
index 0000000000..fc9a0535c1
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/020.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="020.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.ent
new file mode 100755
index 0000000000..9f8f2afd2b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.ent
@@ -0,0 +1,3 @@
+<!ENTITY % e "doc a1 CDATA">
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST %e; "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml
new file mode 100644
index 0000000000..70c28730db
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "021.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml.ref
new file mode 100644
index 0000000000..e6d91722d3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/021.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="021.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.ent
new file mode 100755
index 0000000000..26f2d8beb2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.ent
@@ -0,0 +1,3 @@
+<!ENTITY % e "INCLUDE[">
+<!ELEMENT doc (#PCDATA)>
+<![ %e; <!ATTLIST doc a1 CDATA "v1"> ]]>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml
new file mode 100644
index 0000000000..b639f2551c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "022.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml.ref
new file mode 100644
index 0000000000..de3ddf732f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/022.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="022.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.ent
new file mode 100755
index 0000000000..e3268819f7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.ent
@@ -0,0 +1,5 @@
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e1 "do">
+<!ENTITY % e2 "c">
+<!ENTITY % e3 "%e1;%e2;">
+<!ATTLIST %e3; a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml
new file mode 100644
index 0000000000..1c2484b70b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "023.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml.ref
new file mode 100644
index 0000000000..a150bde52a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/023.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="023.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.ent
new file mode 100755
index 0000000000..aa6d0eccac
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.ent
@@ -0,0 +1,4 @@
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e1 "'v1'">
+<!ENTITY % e2 'a1 CDATA %e1;'>
+<!ATTLIST doc %e2;>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml
new file mode 100644
index 0000000000..96e1ecb61b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "024.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml.ref
new file mode 100644
index 0000000000..e97c61bd94
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/024.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="024.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.ent
new file mode 100755
index 0000000000..389d259eb1
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.ent
@@ -0,0 +1,5 @@
+<!ELEMENT doc EMPTY>
+<!ENTITY % e "x">
+<!ENTITY % e "y">
+<!ENTITY % v "'%e;'">
+<!ATTLIST doc a1 CDATA %v;>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml
new file mode 100644
index 0000000000..8fdbc14c47
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "025.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml.ref
new file mode 100644
index 0000000000..1eca607181
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/025.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="025.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.ent
new file mode 100755
index 0000000000..bdc93af639
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.ent
@@ -0,0 +1 @@
+<!ATTLIST doc a1 CDATA "w1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml
new file mode 100644
index 0000000000..7b109c0913
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!ELEMENT doc ANY>
+<!ENTITY % e SYSTEM "026.ent">
+%e;
+<!ATTLIST doc a1 CDATA "x1" a2 CDATA "x2">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml.ref
new file mode 100644
index 0000000000..1bea883d9c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/026.xml.ref
@@ -0,0 +1,12 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="%e", publicId="", systemId="026.ent")
+ resolveEntity(publicId="", systemId="026.ent", ret={})
+ skippedEntity(name="%e")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="doc", aName="a2", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.ent
new file mode 100755
index 0000000000..712cce3700
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.ent
@@ -0,0 +1,2 @@
+<!ENTITY % e "">
+<!ELEMENT doc (#PCDATA %e;)>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml
new file mode 100644
index 0000000000..d0c8c7abb5
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "027.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml.ref
new file mode 100644
index 0000000000..d010327624
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/027.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="027.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.ent
new file mode 100755
index 0000000000..ac249d7b2c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.ent
@@ -0,0 +1,2 @@
+<!ELEMENT doc (#PCDATA)>
+<![INCLUDE[<!ATTLIST doc a1 CDATA "v1">]]>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml
new file mode 100644
index 0000000000..50e5248cbf
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "028.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml.ref
new file mode 100644
index 0000000000..8466141897
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/028.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="028.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.ent
new file mode 100755
index 0000000000..df94df5560
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc (#PCDATA)>
+<![IGNORE[<!ATTLIST doc a1 CDATA "v1">]]>
+<!ATTLIST doc a1 CDATA "v2">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml
new file mode 100644
index 0000000000..07e226c1d7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "029.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml.ref
new file mode 100644
index 0000000000..0bffc4aaa7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/029.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="029.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.ent
new file mode 100755
index 0000000000..e3864460df
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc (#PCDATA)>
+<![IGNORE[]]>
+<![INCLUDE[]]>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml
new file mode 100644
index 0000000000..01fc2be4ca
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "030.ent">
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml.ref
new file mode 100644
index 0000000000..51e7f033f9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/030.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="030.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-1.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-1.ent
new file mode 100755
index 0000000000..f7f94ab152
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-1.ent
@@ -0,0 +1,3 @@
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e SYSTEM "031-2.ent">
+<!ENTITY e "<![CDATA[%e;]]>">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-2.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-2.ent
new file mode 100755
index 0000000000..bef50b1f38
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031-2.ent
@@ -0,0 +1 @@
+<!ATTLIST doc a1 CDATA "v1">
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml
new file mode 100644
index 0000000000..c3fe5fca71
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml
@@ -0,0 +1,2 @@
+<!DOCTYPE doc SYSTEM "031-1.ent">
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml.ref
new file mode 100644
index 0000000000..72ab9d974f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/not-sa/031.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="031-1.ent")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml
new file mode 100644
index 0000000000..7fbef49502
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/001.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml
new file mode 100644
index 0000000000..2e3f1d81dd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc ></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/002.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml
new file mode 100644
index 0000000000..c841b81784
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc >
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/003.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml
new file mode 100644
index 0000000000..a9c5756933
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+]>
+<doc a1="v1"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml.ref
new file mode 100644
index 0000000000..2d7bfdfd73
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/004.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml
new file mode 100644
index 0000000000..b069efe727
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+]>
+<doc a1 = "v1"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml.ref
new file mode 100644
index 0000000000..2d7bfdfd73
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/005.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml
new file mode 100644
index 0000000000..39a346342f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+]>
+<doc a1='v1'></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml.ref
new file mode 100644
index 0000000000..2d7bfdfd73
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/006.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml
new file mode 100644
index 0000000000..cc3dc53166
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#32;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml.ref
new file mode 100644
index 0000000000..016a577ded
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/007.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch=" ")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml
new file mode 100644
index 0000000000..b3370eb1cc
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&amp;&lt;&gt;&quot;&apos;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml.ref
new file mode 100644
index 0000000000..2c879a43a9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/008.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="&<>\"'")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml
new file mode 100644
index 0000000000..0fa183eccf
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#x20;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml.ref
new file mode 100644
index 0000000000..016a577ded
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/009.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch=" ")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml
new file mode 100644
index 0000000000..eb64d18590
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+]>
+<doc a1="v1" ></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml.ref
new file mode 100644
index 0000000000..2d7bfdfd73
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/010.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml
new file mode 100644
index 0000000000..4cac44b4e4
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED a2 CDATA #IMPLIED>
+]>
+<doc a1="v1" a2="v2"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml.ref
new file mode 100644
index 0000000000..9fc96fdb80
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/011.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="doc", aName="a2", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}, {localName="a2", qName="a2", uri="", type="CDATA", value="v2"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml
new file mode 100644
index 0000000000..6ce2a3eae2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc : CDATA #IMPLIED>
+]>
+<doc :="v1"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml.ref
new file mode 100644
index 0000000000..00c76deaf9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/012.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName=":", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="", qName=":", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml
new file mode 100644
index 0000000000..2f4aae4e28
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc _.-0123456789 CDATA #IMPLIED>
+]>
+<doc _.-0123456789="v1"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml.ref
new file mode 100644
index 0000000000..ef2903d87a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/013.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="_.-0123456789", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="_.-0123456789", qName="_.-0123456789", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml
new file mode 100644
index 0000000000..47f1f723e3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc abcdefghijklmnopqrstuvwxyz CDATA #IMPLIED>
+]>
+<doc abcdefghijklmnopqrstuvwxyz="v1"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml.ref
new file mode 100644
index 0000000000..bbf1ff75e7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/014.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="abcdefghijklmnopqrstuvwxyz", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="abcdefghijklmnopqrstuvwxyz", qName="abcdefghijklmnopqrstuvwxyz", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml
new file mode 100644
index 0000000000..861df8a610
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc ABCDEFGHIJKLMNOPQRSTUVWXYZ CDATA #IMPLIED>
+]>
+<doc ABCDEFGHIJKLMNOPQRSTUVWXYZ="v1"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml.ref
new file mode 100644
index 0000000000..882da5a6fd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/015.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="ABCDEFGHIJKLMNOPQRSTUVWXYZ", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="ABCDEFGHIJKLMNOPQRSTUVWXYZ", qName="ABCDEFGHIJKLMNOPQRSTUVWXYZ", uri="", type="CDATA", value="v1"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml
new file mode 100644
index 0000000000..66b1973c5d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><?pi?></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml.ref
new file mode 100644
index 0000000000..32c60b28a7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/016.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ processingInstruction(target="pi", data="")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml
new file mode 100644
index 0000000000..827ba963bf
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><?pi some data ? > <??></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml.ref
new file mode 100644
index 0000000000..604d975e15
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/017.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ processingInstruction(target="pi", data="some data ? > <?")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml
new file mode 100644
index 0000000000..4570903fee
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><![CDATA[<foo>]]></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml.ref
new file mode 100644
index 0000000000..21117d22b4
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/018.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startCDATA()
+ characters(ch="<foo>")
+ endCDATA()
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml
new file mode 100644
index 0000000000..3e6b74cbf2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><![CDATA[<&]]></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml.ref
new file mode 100644
index 0000000000..f95f625b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/019.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startCDATA()
+ characters(ch="<&")
+ endCDATA()
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml
new file mode 100644
index 0000000000..f749551a1b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><![CDATA[<&]>]]]></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml.ref
new file mode 100644
index 0000000000..ff6ff3683c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/020.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startCDATA()
+ characters(ch="<&]>]")
+ endCDATA()
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml
new file mode 100644
index 0000000000..13dda8c8a5
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><!-- a comment --></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml.ref
new file mode 100644
index 0000000000..52bf68a717
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/021.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ comment(ch=" a comment ")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml
new file mode 100644
index 0000000000..41d300e950
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><!-- a comment ->--></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml.ref
new file mode 100644
index 0000000000..b299ce71ee
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/022.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ comment(ch=" a comment ->")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml
new file mode 100644
index 0000000000..3837b831ad
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml.ref
new file mode 100644
index 0000000000..b59c216593
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/023.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml
new file mode 100644
index 0000000000..b0655c634c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (foo)>
+<!ELEMENT foo (#PCDATA)>
+<!ENTITY e "&#60;foo></foo>">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml.ref
new file mode 100644
index 0000000000..00f7fce160
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/024.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="<foo></foo>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml
new file mode 100644
index 0000000000..ed01f36d89
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (foo*)>
+<!ELEMENT foo (#PCDATA)>
+]>
+<doc><foo/><foo></foo></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml.ref
new file mode 100644
index 0000000000..6a7605c082
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/025.xml.ref
@@ -0,0 +1,11 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml
new file mode 100644
index 0000000000..1ba033c1a7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (foo*)>
+<!ELEMENT foo EMPTY>
+]>
+<doc><foo/><foo></foo></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml.ref
new file mode 100644
index 0000000000..6a7605c082
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/026.xml.ref
@@ -0,0 +1,11 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml
new file mode 100644
index 0000000000..ee02439051
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (foo*)>
+<!ELEMENT foo ANY>
+]>
+<doc><foo/><foo></foo></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml.ref
new file mode 100644
index 0000000000..6a7605c082
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/027.xml.ref
@@ -0,0 +1,11 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml
new file mode 100644
index 0000000000..3d95747913
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0"?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml.ref
new file mode 100644
index 0000000000..dcda37de1e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/028.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml
new file mode 100644
index 0000000000..909f6ff712
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml
@@ -0,0 +1,5 @@
+<?xml version='1.0'?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml.ref
new file mode 100644
index 0000000000..dcda37de1e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/029.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml
new file mode 100644
index 0000000000..3a7ddaa716
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml
@@ -0,0 +1,5 @@
+<?xml version = "1.0"?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml.ref
new file mode 100644
index 0000000000..dcda37de1e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/030.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml
new file mode 100644
index 0000000000..a58e05867f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml
@@ -0,0 +1,5 @@
+<?xml version='1.0' encoding="UTF-8"?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml.ref
new file mode 100644
index 0000000000..7d81068e24
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/031.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' encoding='UTF-8'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml
new file mode 100644
index 0000000000..be55c8d721
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml
@@ -0,0 +1,5 @@
+<?xml version='1.0' standalone='yes'?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml.ref
new file mode 100644
index 0000000000..96d8f1014d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/032.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' standalone='yes'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml
new file mode 100644
index 0000000000..a3f9053868
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml
@@ -0,0 +1,5 @@
+<?xml version='1.0' encoding="UTF-8" standalone='yes'?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml.ref
new file mode 100644
index 0000000000..d56d96d584
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/033.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' encoding='UTF-8' standalone='yes'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml
new file mode 100644
index 0000000000..7d52f31c0e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc/>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/034.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml
new file mode 100644
index 0000000000..f109a8b782
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc />
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/035.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml
new file mode 100644
index 0000000000..8ab2b3fb16
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
+<?pi data?>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml.ref
new file mode 100644
index 0000000000..db2cbb1e8d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/036.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+ processingInstruction(target="pi", data="data")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml
new file mode 100644
index 0000000000..f9b2113940
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
+<!-- comment -->
+
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml.ref
new file mode 100644
index 0000000000..12d6a77cad
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/037.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+ comment(ch=" comment ")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml
new file mode 100644
index 0000000000..d14f41bfe2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml
@@ -0,0 +1,6 @@
+<!-- comment -->
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
+
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml.ref
new file mode 100644
index 0000000000..d24c10b495
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/038.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ comment(ch=" comment ")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml
new file mode 100644
index 0000000000..0897316e46
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml
@@ -0,0 +1,5 @@
+<?pi data?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml.ref
new file mode 100644
index 0000000000..9eb38b42bb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/039.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="pi", data="data")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml
new file mode 100644
index 0000000000..12c419b65b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+]>
+<doc a1="&quot;&lt;&amp;&gt;&apos;"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml.ref
new file mode 100644
index 0000000000..81409bdc13
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/040.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="\"<&>'"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml
new file mode 100644
index 0000000000..a59f536277
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+]>
+<doc a1="&#65;"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml.ref
new file mode 100644
index 0000000000..13f83dffcf
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/041.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="A"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml
new file mode 100644
index 0000000000..5d7c650944
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#00000000000000000000000000000000065;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml.ref
new file mode 100644
index 0000000000..ed02b8c709
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/042.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="A")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml
new file mode 100644
index 0000000000..a8095dfe28
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ATTLIST doc a1 CDATA #IMPLIED>
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc a1="foo
+bar"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml.ref
new file mode 100644
index 0000000000..3f898a182a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/043.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="foo\r\nbar"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml
new file mode 100644
index 0000000000..bee1d23e1a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (e*)>
+<!ELEMENT e EMPTY>
+<!ATTLIST e a1 CDATA "v1" a2 CDATA "v2" a3 CDATA #IMPLIED>
+]>
+<doc>
+<e a3="v3"/>
+<e a1="w1"/>
+<e a2="w2" a3="v3"/>
+</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml.ref
new file mode 100644
index 0000000000..daab693b31
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/044.xml.ref
@@ -0,0 +1,20 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="e", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="e", aName="a2", type="", valueDefault="", value="")
+ attributeDecl(eName="e", aName="a3", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[{localName="a3", qName="a3", uri="", type="CDATA", value="v3"}])
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="w1"}])
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[{localName="a2", qName="a2", uri="", type="CDATA", value="w2"}, {localName="a3", qName="a3", uri="", type="CDATA", value="v3"}])
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\r\n")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml
new file mode 100644
index 0000000000..e2567f532d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
+<!ATTLIST doc a1 CDATA "z1">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml.ref
new file mode 100644
index 0000000000..566221ae0d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/045.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml
new file mode 100644
index 0000000000..c50a2846f9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "v1">
+<!ATTLIST doc a2 CDATA "v2">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml.ref
new file mode 100644
index 0000000000..7b1a28d90c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/046.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="doc", aName="a2", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml
new file mode 100644
index 0000000000..a4c688cf1a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>X
+Y</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml.ref
new file mode 100644
index 0000000000..3af5bf2d74
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/047.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="X\r\nY")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml
new file mode 100644
index 0000000000..c6b2dedbba
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>]</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml.ref
new file mode 100644
index 0000000000..0e8482350f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/048.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="]")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml
new file mode 100644
index 0000000000..c3cc797b59
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml.ref
new file mode 100644
index 0000000000..72897d1943
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/049.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="£")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml
new file mode 100644
index 0000000000..12303b1af2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml.ref
new file mode 100644
index 0000000000..8f39355258
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/050.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="เจมส์")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml
new file mode 100644
index 0000000000..7ae8f6c73a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml.ref
new file mode 100644
index 0000000000..71a89a922c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/051.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="เจมส์", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="เจมส์", qName="เจมส์", atts=[])
+ endElement(namespaceURI="", localName="เจมส์", qName="เจมส์")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml
new file mode 100644
index 0000000000..3f33a4c760
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>𐀀􏿽</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml.ref
new file mode 100644
index 0000000000..0b806c96a8
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/052.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="𐀀􏿽")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml
new file mode 100644
index 0000000000..0d88f28718
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ENTITY e "<e/>">
+<!ELEMENT doc (e)>
+<!ELEMENT e EMPTY>
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml.ref
new file mode 100644
index 0000000000..2aa90a79d0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/053.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="<e/>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="e", qName="e", atts=[])
+ endElement(namespaceURI="", localName="e", qName="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml
new file mode 100644
index 0000000000..5d1c88b946
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+
+
+<doc
+></doc
+>
+
+
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/054.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml
new file mode 100644
index 0000000000..da0292c5bc
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<?pi data?>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml.ref
new file mode 100644
index 0000000000..dc3312be38
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/055.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ processingInstruction(target="pi", data="data")
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml
new file mode 100644
index 0000000000..144871b2a3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#x0000000000000000000000000000000000000041;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml.ref
new file mode 100644
index 0000000000..ed02b8c709
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/056.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="A")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml
new file mode 100644
index 0000000000..c1ac849ed1
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (a*)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/057.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml
new file mode 100644
index 0000000000..2ff23b233f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ATTLIST doc a1 NMTOKENS #IMPLIED>
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc a1=" 1 2 "></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml.ref
new file mode 100644
index 0000000000..0acf5f4acd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/058.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value=" 1 \t2 \t"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml
new file mode 100644
index 0000000000..2171480ecf
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (e*)>
+<!ELEMENT e EMPTY>
+<!ATTLIST e a1 CDATA #IMPLIED a2 CDATA #IMPLIED a3 CDATA #IMPLIED>
+]>
+<doc>
+<e a1="v1" a2="v2" a3="v3"/>
+<e a1="w1" a2="v2"/>
+<e a1="v1" a2="w2" a3="v3"/>
+</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml.ref
new file mode 100644
index 0000000000..8a73895f0d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/059.xml.ref
@@ -0,0 +1,20 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="e", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="e", aName="a2", type="", valueDefault="", value="")
+ attributeDecl(eName="e", aName="a3", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}, {localName="a2", qName="a2", uri="", type="CDATA", value="v2"}, {localName="a3", qName="a3", uri="", type="CDATA", value="v3"}])
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="w1"}, {localName="a2", qName="a2", uri="", type="CDATA", value="v2"}])
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="e", qName="e", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="v1"}, {localName="a2", qName="a2", uri="", type="CDATA", value="w2"}, {localName="a3", qName="a3", uri="", type="CDATA", value="v3"}])
+ endElement(namespaceURI="", localName="e", qName="e")
+ characters(ch="\r\n")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml
new file mode 100644
index 0000000000..6cd6b4386b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>X&#10;Y</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml.ref
new file mode 100644
index 0000000000..ea1cbd40c0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/060.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="X\nY")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml
new file mode 100644
index 0000000000..bbdc152492
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#163;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml.ref
new file mode 100644
index 0000000000..72897d1943
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/061.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="£")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml
new file mode 100644
index 0000000000..f4ba53090a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#xe40;&#xe08;&#xe21;ส์</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml.ref
new file mode 100644
index 0000000000..8f39355258
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/062.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="เจมส์")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml
new file mode 100644
index 0000000000..9668f2da73
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE เจมส์ [
+<!ELEMENT เจมส์ (#PCDATA)>
+]>
+<เจมส์></เจมส์>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml.ref
new file mode 100644
index 0000000000..71a89a922c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/063.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="เจมส์", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="เจมส์", qName="เจมส์", atts=[])
+ endElement(namespaceURI="", localName="เจมส์", qName="เจมส์")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml
new file mode 100644
index 0000000000..74a97aa431
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#x10000;&#x10FFFD;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml.ref
new file mode 100644
index 0000000000..579aeb52f6
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/064.xml.ref
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml
new file mode 100644
index 0000000000..f708f2bc17
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY e "&#60;">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml.ref
new file mode 100644
index 0000000000..ba31414499
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/065.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="<")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml
new file mode 100644
index 0000000000..a27340b9a7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA #IMPLIED>
+<!-- 34 is double quote -->
+<!ENTITY e1 "&#34;">
+]>
+<doc a1="&e1;"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml.ref
new file mode 100644
index 0000000000..d650af13d3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/066.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ comment(ch=" 34 is double quote ")
+ internatlEntityDecl(name="e1", value="\"")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="\""}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml
new file mode 100644
index 0000000000..a0ccf772a5
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#13;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml.ref
new file mode 100644
index 0000000000..9a2358d700
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/067.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="\r")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml
new file mode 100644
index 0000000000..8ed806b9a3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "&#13;">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml.ref
new file mode 100644
index 0000000000..8ebf150e48
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/068.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="\r")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="\r")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml
new file mode 100644
index 0000000000..2437f60530
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!NOTATION n PUBLIC "whatever">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml.ref
new file mode 100644
index 0000000000..c5685c6d7a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/069.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ notationDecl(name="n", publicId="whatever", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml
new file mode 100644
index 0000000000..eef097df76
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY % e "<!ELEMENT doc (#PCDATA)>">
+%e;
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml.ref
new file mode 100644
index 0000000000..2525ef6ae3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/070.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="%e", value="<!ELEMENT doc (#PCDATA)>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml
new file mode 100644
index 0000000000..ebfba230a4
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a ID #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/071.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml
new file mode 100644
index 0000000000..6ef39dc49e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a IDREF #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/072.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml
new file mode 100644
index 0000000000..217476d9a9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a IDREFS #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/073.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml
new file mode 100644
index 0000000000..8b2354ff73
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a ENTITY #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/074.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml
new file mode 100644
index 0000000000..33c012441a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a ENTITIES #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/075.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml
new file mode 100644
index 0000000000..65b731cf6d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a NOTATION (n1|n2) #IMPLIED>
+<!NOTATION n1 SYSTEM "http://www.w3.org/">
+<!NOTATION n2 SYSTEM "http://www.w3.org/">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml.ref
new file mode 100644
index 0000000000..3145f641b2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/076.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ notationDecl(name="n1", publicId="", systemId="http://www.w3.org/")
+ notationDecl(name="n2", publicId="", systemId="http://www.w3.org/")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml
new file mode 100644
index 0000000000..e5f301eac8
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a (1|2) #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/077.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml
new file mode 100644
index 0000000000..b31f40f94e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #REQUIRED>
+]>
+<doc a="v"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml.ref
new file mode 100644
index 0000000000..6b4e3c4f31
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/078.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="v"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml
new file mode 100644
index 0000000000..a3290d6cbb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #FIXED "v">
+]>
+<doc a="v"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml.ref
new file mode 100644
index 0000000000..6b4e3c4f31
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/079.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="v"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml
new file mode 100644
index 0000000000..3208fa9aa5
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #FIXED "v">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml.ref
new file mode 100644
index 0000000000..0b8e512b33
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/080.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml
new file mode 100644
index 0000000000..51ee1a375c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (a, b, c)>
+<!ELEMENT a (a?)>
+<!ELEMENT b (b*)>
+<!ELEMENT c (a | b)+>
+]>
+<doc><a/><b/><c><a/></c></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml.ref
new file mode 100644
index 0000000000..1bc73000f8
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/081.xml.ref
@@ -0,0 +1,15 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ endElement(namespaceURI="", localName="a", qName="a")
+ startElement(namespaceURI="", localName="b", qName="b", atts=[])
+ endElement(namespaceURI="", localName="b", qName="b")
+ startElement(namespaceURI="", localName="c", qName="c", atts=[])
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ endElement(namespaceURI="", localName="a", qName="a")
+ endElement(namespaceURI="", localName="c", qName="c")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml
new file mode 100644
index 0000000000..d5245ac51a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY % e SYSTEM "e.dtd">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml.ref
new file mode 100644
index 0000000000..a333feb826
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/082.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="%e", publicId="", systemId="e.dtd")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml
new file mode 100644
index 0000000000..937cfc0bdd
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY % e PUBLIC 'whatever' "e.dtd">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml.ref
new file mode 100644
index 0000000000..d52b5aa8b9
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/083.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="%e", publicId="whatever", systemId="e.dtd")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml
new file mode 100644
index 0000000000..82760767aa
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml
@@ -0,0 +1 @@
+<!DOCTYPE doc [<!ELEMENT doc (#PCDATA)>]><doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml.ref
new file mode 100644
index 0000000000..37b53fc0b3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/084.xml.ref
@@ -0,0 +1,7 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml
new file mode 100644
index 0000000000..cf5834f2a5
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e "<foo>">
+<!ENTITY e "">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml.ref
new file mode 100644
index 0000000000..8f9cdcc6d0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/085.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="%e", value="<foo>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ skippedEntity(name="e")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml
new file mode 100644
index 0000000000..bbc3080db6
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "">
+<!ENTITY e "<foo>">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml.ref
new file mode 100644
index 0000000000..b59c216593
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/086.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml
new file mode 100644
index 0000000000..34797a67d7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ENTITY e "<foo/&#62;">
+<!ELEMENT doc (foo)>
+<!ELEMENT foo EMPTY>
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml.ref
new file mode 100644
index 0000000000..33d23092ef
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/087.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="<foo/>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="foo", qName="foo", atts=[])
+ endElement(namespaceURI="", localName="foo", qName="foo")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml
new file mode 100644
index 0000000000..f97d96848d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "&lt;foo>">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml.ref
new file mode 100644
index 0000000000..db24f3408f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/088.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="&lt;foo>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="<foo>")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml
new file mode 100644
index 0000000000..2d80c8f3fb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY e "&#x10000;&#x10FFFD;&#x10FFFF;">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.bak b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.bak
new file mode 100644
index 0000000000..2d80c8f3fb
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.bak
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY e "&#x10000;&#x10FFFD;&#x10FFFF;">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.ref
new file mode 100644
index 0000000000..7c68c32286
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/089.xml.ref
Binary files differ
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml
new file mode 100644
index 0000000000..c392c96084
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!ATTLIST e a NOTATION (n) #IMPLIED>
+<!ELEMENT doc (e)*>
+<!ELEMENT e (#PCDATA)>
+<!NOTATION n PUBLIC "whatever">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml.ref
new file mode 100644
index 0000000000..1cc0f1e082
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/090.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="e", aName="a", type="", valueDefault="", value="")
+ notationDecl(name="n", publicId="whatever", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml
new file mode 100644
index 0000000000..7343d0f795
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!NOTATION n SYSTEM "http://www.w3.org/">
+<!ENTITY e SYSTEM "http://www.w3.org/" NDATA n>
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a ENTITY "e">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml.ref
new file mode 100644
index 0000000000..da92a9d906
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/091.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ notationDecl(name="n", publicId="", systemId="http://www.w3.org/")
+ unparsedEntityDecl(name="e", publicId="", systemId="http://www.w3.org/", notationName="n")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml
new file mode 100644
index 0000000000..627b74ecdf
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml
@@ -0,0 +1,10 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (a)*>
+<!ELEMENT a EMPTY>
+]>
+<doc>
+<a/>
+ <a/> <a/>
+
+
+</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml.ref
new file mode 100644
index 0000000000..3b9e06dc9e
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/092.xml.ref
@@ -0,0 +1,17 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="\r\n")
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ endElement(namespaceURI="", localName="a", qName="a")
+ characters(ch="\r\n ")
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ endElement(namespaceURI="", localName="a", qName="a")
+ characters(ch="\t")
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ endElement(namespaceURI="", localName="a", qName="a")
+ characters(ch="\r\n\r\n\r\n")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml
new file mode 100644
index 0000000000..968acb628f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>
+ </doc> \ No newline at end of file
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml.ref
new file mode 100644
index 0000000000..2e8bee6814
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/093.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="\r\n\r\r")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml
new file mode 100644
index 0000000000..5726e7db6f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ENTITY % e "foo">
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a1 CDATA "%e;">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml.ref
new file mode 100644
index 0000000000..4f42980c0b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/094.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="%e", value="foo")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml
new file mode 100644
index 0000000000..1fe69596da
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ATTLIST doc a1 CDATA #IMPLIED>
+<!ATTLIST doc a1 NMTOKENS #IMPLIED>
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc a1="1 2"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml.ref
new file mode 100644
index 0000000000..567feee5ad
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/095.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a1", qName="a1", uri="", type="CDATA", value="1 2"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml
new file mode 100644
index 0000000000..a6f8f43620
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ATTLIST doc a1 NMTOKENS " 1 2 ">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml.ref
new file mode 100644
index 0000000000..1e3200f48c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/096.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.ent b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.ent
new file mode 100644
index 0000000000..e06554ace2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.ent
@@ -0,0 +1 @@
+<!ATTLIST doc a2 CDATA #IMPLIED>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml
new file mode 100644
index 0000000000..c606afa97f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml
@@ -0,0 +1,8 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY % e SYSTEM "097.ent">
+<!ATTLIST doc a1 CDATA "v1">
+%e;
+<!ATTLIST doc a2 CDATA "v2">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml.ref
new file mode 100644
index 0000000000..b211a094ed
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/097.xml.ref
@@ -0,0 +1,12 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="%e", publicId="", systemId="097.ent")
+ attributeDecl(eName="doc", aName="a1", type="", valueDefault="", value="")
+ resolveEntity(publicId="", systemId="097.ent", ret={})
+ skippedEntity(name="%e")
+ attributeDecl(eName="doc", aName="a2", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml
new file mode 100644
index 0000000000..33a64ce5ae
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><?pi x
+y?></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml.ref
new file mode 100644
index 0000000000..5108be0763
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/098.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ processingInstruction(target="pi", data="x\r\ny")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml
new file mode 100644
index 0000000000..1b7214a137
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml.ref
new file mode 100644
index 0000000000..21cd9bced2
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/099.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ processingInstruction(target="xml", data="version='1.0' encoding='utf-8'")
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml
new file mode 100644
index 0000000000..5b839e76bc
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ENTITY e PUBLIC ";!*#@$_%" "100.xml">
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml.ref
new file mode 100644
index 0000000000..aaeec27038
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/100.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ externalEntityDecl(name="e", publicId=";!*#@$_%", systemId="100.xml")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml
new file mode 100644
index 0000000000..f464484bf5
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "&#34;">
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml.ref
new file mode 100644
index 0000000000..5b7646c82f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/101.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="\"")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml
new file mode 100644
index 0000000000..f239ff5fee
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="&#34;"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml.ref
new file mode 100644
index 0000000000..75b25052de
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/102.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="\""}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml
new file mode 100644
index 0000000000..1dbbd5bb7c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc>&#60;doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml.ref
new file mode 100644
index 0000000000..63526243dc
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/103.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="<doc>")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml
new file mode 100644
index 0000000000..666f43de0f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="x y"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml.ref
new file mode 100644
index 0000000000..2bccd0e3c7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/104.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="x\ty"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml
new file mode 100644
index 0000000000..6b3af2b847
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="x&#9;y"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml.ref
new file mode 100644
index 0000000000..2bccd0e3c7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/105.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="x\ty"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml
new file mode 100644
index 0000000000..8757c0a5ae
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="x&#10;y"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml.ref
new file mode 100644
index 0000000000..1e9cc0949b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/106.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="x\ny"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml
new file mode 100644
index 0000000000..3d2c2566a7
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="x&#13;y"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml.ref
new file mode 100644
index 0000000000..803dbc297b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/107.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="x\ry"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml
new file mode 100644
index 0000000000..e919bf229a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml
@@ -0,0 +1,7 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "
+">
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="x&e;y"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml.ref
new file mode 100644
index 0000000000..2199bd8fb3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/108.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="\r\n")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="x\r\ny"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml
new file mode 100644
index 0000000000..33fa38e13b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a=""></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml.ref
new file mode 100644
index 0000000000..789cb33821
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/109.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value=""}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml
new file mode 100644
index 0000000000..0c61c65119
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "&#13;&#10;">
+<!ATTLIST doc a CDATA #IMPLIED>
+]>
+<doc a="x&e;y"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml.ref
new file mode 100644
index 0000000000..2199bd8fb3
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/110.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="\r\n")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value="x\r\ny"}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml
new file mode 100644
index 0000000000..cb56f264b0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST doc a NMTOKENS #IMPLIED>
+]>
+<doc a="&#32;x&#32;&#32;y&#32;"></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml.ref
new file mode 100644
index 0000000000..152e284e58
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/111.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="doc", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[{localName="a", qName="a", uri="", type="CDATA", value=" x y "}])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml
new file mode 100644
index 0000000000..27b6a4c793
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (a | b)>
+<!ELEMENT a (#PCDATA)>
+]>
+<doc><a></a></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml.ref
new file mode 100644
index 0000000000..f82c6dca3f
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/112.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startElement(namespaceURI="", localName="a", qName="a", atts=[])
+ endElement(namespaceURI="", localName="a", qName="a")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml
new file mode 100644
index 0000000000..d2edd0f01d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ATTLIST e a CDATA #IMPLIED>
+]>
+<doc></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml.ref
new file mode 100644
index 0000000000..6342ccc536
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/113.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ attributeDecl(eName="e", aName="a", type="", valueDefault="", value="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml
new file mode 100644
index 0000000000..52e207096d
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e "<![CDATA[&foo;]]>">
+]>
+<doc>&e;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml.ref
new file mode 100644
index 0000000000..b11750e4b0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/114.xml.ref
@@ -0,0 +1,11 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e", value="<![CDATA[&foo;]]>")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startCDATA()
+ characters(ch="&foo;")
+ endCDATA()
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml
new file mode 100644
index 0000000000..d939a67010
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml
@@ -0,0 +1,6 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY e1 "&e2;">
+<!ENTITY e2 "v">
+]>
+<doc>&e1;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml.ref
new file mode 100644
index 0000000000..5b09ebd425
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/115.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="e1", value="&e2;")
+ internatlEntityDecl(name="e2", value="v")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="v")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml
new file mode 100644
index 0000000000..55ab49620b
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+]>
+<doc><![CDATA[
+]]></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml.ref
new file mode 100644
index 0000000000..9bdec9e5cc
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/116.xml.ref
@@ -0,0 +1,10 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ startCDATA()
+ characters(ch="\r\n")
+ endCDATA()
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml
new file mode 100644
index 0000000000..e4f02b14c8
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY rsqb "]">
+]>
+<doc>&rsqb;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml.ref
new file mode 100644
index 0000000000..78dd11416a
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/117.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="rsqb", value="]")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="]")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml
new file mode 100644
index 0000000000..fba6c44668
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml
@@ -0,0 +1,5 @@
+<!DOCTYPE doc [
+<!ELEMENT doc (#PCDATA)>
+<!ENTITY rsqb "]]">
+]>
+<doc>&rsqb;</doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml.ref
new file mode 100644
index 0000000000..c84da55fe0
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/118.xml.ref
@@ -0,0 +1,9 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ internatlEntityDecl(name="rsqb", value="]]")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ characters(ch="]]")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml
new file mode 100644
index 0000000000..876e74730c
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml
@@ -0,0 +1,4 @@
+<!DOCTYPE doc [
+<!ELEMENT doc ANY>
+]>
+<doc><!-- -á --></doc>
diff --git a/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml.ref b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml.ref
new file mode 100644
index 0000000000..d1c643ee03
--- /dev/null
+++ b/tests/auto/xml/sax/qxmlsimplereader/xmldocs/valid/sa/119.xml.ref
@@ -0,0 +1,8 @@
+setDocumentLocator(locator={columnNumber=1, lineNumber=1})
+startDocument()
+ startDTD(name="doc", publicId="", systemId="")
+ endDTD()
+ startElement(namespaceURI="", localName="doc", qName="doc", atts=[])
+ comment(ch=" -á ")
+ endElement(namespaceURI="", localName="doc", qName="doc")
+endDocument()