README 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. Test runner for w3.org XML compliance suite
  2. -------------------------------------------
  3. The xmlts is intended to run the XML compliance suite from W3.org.
  4. The suite includes 2500+ tests. It may be downloaded from
  5. http://www.w3.org/XML/Test/xmlts20031210.zip (approx. 1.7 mBytes)
  6. After compiling xmlts.pp, run it with the following command line:
  7. xmlts <path-to-xmlconf.xml> <report-filename> [-t template.xml] [-v]
  8. Two required commandline parameters include path to test database file and report
  9. filename. Optionally, you may specify validating mode with -v switch and report
  10. template filename with -t (by default, 'template.xml' is used).
  11. The test suite includes several test databases (all named 'xmlconf.xml'). There is
  12. master database located in root dir, and several individual databases in different
  13. subdirs.
  14. for example, to run all tests included into the suite in non-validating mode, use:
  15. xmlts xmlconf/xmlconf.xml myreport.html
  16. Report is produced in xhtml format, use your favourite browser to view it.
  17. As of 10.03.2007, the xml package does not support namespaces yet, so you might wish
  18. to exclude namespace tests. To do this, edit xmlconf/xmlconf.xml file and comment out
  19. two lines at the bottom which reference 'eduni-ns10' and 'eduni-ns11' testsuites.
  20. (The last lines should look like:
  21. &eduni-xml11;
  22. <!-- &eduni-ns10; -->
  23. <!-- &eduni-ns11; -->
  24. </TESTSUITE>
  25. )
  26. Testsuite errata
  27. --------------------------------------------
  28. The following issues were encountered while testing the parser. Fortunately, none
  29. of these change the category of any test, but in some cases cause incorrect error
  30. message and/or postion to be reported.
  31. 1) xmltest/not-wf/sa/081.xml
  32. xmltest/not-wf/sa/082.xml
  33. xmltest/not-wf/sa/083.xml
  34. xmltest/not-wf/sa/084.xml
  35. All four reference an external entity with SystemID 'nul', which is a reserved
  36. name under Windows (you won't be able to create such file). The archive contains
  37. a file named 'nul.ent' that differs from entity's SystemID, so it won't resolve
  38. anyway even in non-Windows.
  39. This issue does not have any effect on FCL parser.
  40. Additionally, tests 083.xml and 084.xml contain a reference to undefined notation.
  41. This cause an extra validation error to be reported before the fatal error.
  42. 2) oasis/p49fail1.xml
  43. oasis/p50fail1.xml
  44. Both tests are missing ']' that should close the internal DTD subset.
  45. 3) oasis/p58fail1.xml
  46. oasis/p58fail2.xml
  47. oasis/p58fail3.xml
  48. All three have a NOTATION attribute declared on EMPTY element. This causes an extra
  49. validation error to be reported before the fatal one.
  50. 4) ibm/xml-1.1/not-wf/p02/ibm02n66.ent
  51. Presumably, missing '<' at start of CDATA. Does not change the diagnostic, though.
  52. 5) ibm/not-wf/p23/ibm23n05.xml
  53. Contains encoding name 'ASCII' which is not supported by the parser. As a result, it aborts
  54. before detecting the illegal XML declaration closing sequence.
  55. 6) ibm/not-wf/p72/ibm72n09.xml
  56. Missing whitespace between 'ENTITY' and '%' at line 6 is detected before the bad tag closing
  57. sequence.
  58. 7) ibm/not-wf/p77/ibm77n01.ent
  59. Invalid encoding name 'UTF8' is detected before the wrong token order.
  60. 8) sun/invalid/attr03.xml
  61. sun/invalid/attr04.xml
  62. sun/invalid/attr15.xml
  63. Have a NOTATION attribute is declared on EMPTY element. Diagnostics incorrect.
  64. 9) ibm/invalid/p56/ibm56i11.xml
  65. ibm/invalid/p56/ibm56i12.xml
  66. ibm/invalid/p56/ibm56i14.xml
  67. ibm/invalid/p56/ibm56i15.xml
  68. Contain a reference to undeclared notation 'gif'. Diagnostics incorrect.
  69. 10) eduni/xml-1.1/052.xml
  70. eduni/xml-1.1/053.xml
  71. Intended to test handling of NEL and LSEP chars as element content whitespace, these
  72. tests enclose NEL and LSEP within ordinary ascii chars ('abc_def') that are clearly not
  73. a whitespace. A 'correct' error is therefore reported regardless of actual NEL/LSEP handling.
  74. 11) ibm/not-wf/p69/ibm69n06.xml
  75. ibm/not-wf/p69/ibm69n07.xml
  76. Designed to check parameter entity recursion, both tests contain PE references within entity
  77. value declarations in internal DTD subset, which is a fatal error by itself.
  78. 12) ibm/not-wf/p21/ibm21n01.xml
  79. Tests illegal CDEnd, but has an extra '[' in CDStart, which is detected earlier.
  80. 13) ibm/not-wf/p21/ibm21n02.xml
  81. Tests illegal CDEnd, but has lowercase 'cdata' in CDStart, which is detected earlier.
  82. 14) ibm/xml-1.1/not-wf/p02/ibm02n58.xml
  83. The first illegal character 0x99 is at position (2, 24), but another one at position (4,7) is
  84. represented with malformed UTF-8 sequence (0xC1 0xA3, while correct one is 0xC2 0x99).
  85. An 'xml-unaware' decoder can detect this before processing any 'normal' characters,
  86. so diagnostics may be wrong.