This document is the output of an XML test harness. It reports on the conformance of the following XML 1.0 processor configuration, as reported through the Java version of the SAX (Simple API for XML) parser interface. For SAX 2.0 (alpha) processors, the processing mode and entity handling values could be non-default values, if such a feature is supported by that processor. For SAX 1.0 processors, those values were as reported to the test harness by its operator.
XML Processor | Microsoft MSXML (from JVM) |
SAX Parser Class | com.megginson.sax.MSXMLDriver |
Processing Mode | Validating |
General Entities | included |
Parameter Entities | included |
The test harness and execution environment was:
Test Run Date | Tue Sep 07 07:46:30 PDT 1999 |
Harness and Version | org.brownell.xml.conformance.Driver (alpha; 3-September-1999) |
Java VM Info | Microsoft JVM 5.00.3186 |
Suite of Testcases | OASIS Conformance Tests, v1.0 |
An summary of test results follows. To know the actual test status, someone must examine the result of each passed negative test to make sure it failed for the right reason. That examination may cause the counts of failed tests to increase, changing a provisional "conforms" status to a "does not conform".
Status | DOES NOT CONFORM |
Total Passed Tests (provisional) | 648 |
Passed Negative Tests (provisional) | 359 |
Failed Tests (provisional) | 417 |
Tests Skipped | 0 |
Sections of this report are: Explanation of Tables; Positive Tests, cases where this processor should report no errors; Negative Tests, documents for which this processor must report the known errors; and Informative Tests, documents with errors which processors are not required to report.
NOTE: The OASIS/NIST test suite is currently in draft state, and can't actually be used without modifications to the configuration file, which is used both to generate the test documentation published at the OASIS/NIST site and to operate this test harness. Accordingly, treat these results as preliminary.
Sections presenting test results are composed largely of tables, with explanations focussing on exactly what those tables indicate. Diagnostics for failed tests are presented in italics, with a cherry colored background, to highlight the result. Diagnostics for succesful tests should as a rule only exist for negative tests. Diagnostics with parenthesized comments indicate the reporting path:
In all cases, negative tests that appear to pass (diagnostics presented with a white background) must be individually examined in the report below. The diagnostic provided by the processor must correspond to the description of the test provided; if the processor does not report the matching error, the seeming "pass" is in fact an error of a type the test harness could not detect or report. That error is either a conformance bug, or an error in the diagnostic being produced, or sometimes both.
Note also that some SAX processors (or drivers for non-SAX processors) appear to have a bug wherein they don't close all of the files which they open. When running this test harness with large numbers of tests, failures at the end of this report could reflect such bugs in SAX conformance more than bugs in XML processor conformance.
All conformant XML 1.0 processors must accept "valid" input documents without reporting any errors, and moreover must report the correct output data to the application when processing those documents. Nonvalidating processors must also accept "invalid" input documents without reporting any errors. These are called "Positive Tests" because they ensure that the processor just "does the right thing" without reporting any problems.
In the interest of brevity, the only tests listed here are those which produce diagnostics of some kind, such as test failures. In some cases, warnings may be reported when processing these documents, but these do not indicate failures.
No interpretation of these results is necessary; every "error" or "fatal" message presented here is an XML conformance failure. Maintainers of an XML processor will generally want to fix their software so that it conforms fully to the XML specification.
All XML processors must accept all valid documents. This group of tests must accordingly produce no test failures.
Section and [Rules] | Test ID | Description | Diagnostic |
2.10 | valid-sa-093 | Test demonstrates that extra whitespace is not intended for inclusion in the delivered version of the document. | FAIL (odd SAXException) (fatal) Expected comments, PI, or EOF instead of TEXT 'null' |
2.2 [2] | valid-sa-051 | The document is encoded in UTF-16 and uses some name characters well outside of the normal ASCII range. | FAIL (odd SAXException) (fatal) Unexpected token '์' inside tag <null> |
2.3 4.1 [10] [69] | valid-not-sa-023 | Test demonstrates the use of a parameter entity reference within an attribute list declaration. | FAIL (odd SAXException) (fatal) Missing Element declaration 'do' |
2.3 [12] | o-p12pass1 | valid public IDs. | FAIL (odd SAXException) (fatal) Expected quote(' or ") instead of tag end(>) |
2.3 [4] | valid-sa-012 | Uses a legal XML 1.0 name consisting of a single colon character (disallowed by the latest XML Namespaces draft). | FAIL (odd SAXException) (fatal) Expecting name instead of ' ' |
2.3 [5] | valid-sa-063 | The document is encoded in UTF-8 and the name of the root element type uses non-ASCII characters. | FAIL (odd SAXException) (fatal) Unexpected token '¹' inside tag <null> |
2.3 [7] | o-p07pass1 | various valid Nmtoken 's in an attribute list declaration. | FAIL (odd SAXException) (fatal) Expecting name instead of '-' |
2.3 [8] | o-p08pass1 | various satisfaction of an NMTOKENS attribute value. | FAIL (odd SAXException) (fatal) Expecting name instead of '.' |
2.4 2.7 [18] | empty | Whitespace found in CDATA sections and entity references works is treated like other optional whitespace | FAIL (odd SAXException) (fatal) Invalid element 'PCDATA' in content of 'foo'. Expected [a] |
2.7 | valid-not-sa-031 | Expands a general entity which contains a CDATA section with what looks like a markup declaration (but is just text since it's in a CDATA section). | FAIL (odd SAXException) (fatal) Entity 'e' is a parameter entity. |
2.8 4.2.2 4.3.1 [30] [75] [77] | o-p30pass2 | Valid doctypedecl with ExternalID as an Enternal Entity. The external entity begins with a Text Declaration. | FAIL (odd SAXException) (fatal) Expected version instead of null |
2.8 [29] | o-p29pass1 | Valid types of markupdecl. | FAIL (odd SAXException) (fatal) Expected quote(' or ") instead of tag end(>) |
2.8 [31] | o-p31pass1 | external subset can be empty | FAIL (odd SAXException) (fatal) Unexpected text in DTD. |
2.9 | not-sa02 | A non-standalone document is valid if declared as such. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <attributes> |
2.9 | not-sa03 | A non-standalone document is valid if declared as such. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <attributes> |
2.9 | not-sa04 | A non-standalone document is valid if declared as such. | FAIL (odd SAXException) (fatal) Missing Element declaration 'attributes' |
2.9 [32] | sa02 | A document may be marked 'standalone' if any attributes that need normalization are defined within the internal DTD subset. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <attributes> |
2.9 [32] | sa03 | A document may be marked 'standalone' if any the defined entities need expanding are internal, and no attributes need defaulting or normalization. On output, requires notations to be correctly reported. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <attributes> |
2.9 [32] | sa04 | Like sa03 but relies on attribute defaulting defined in the internal subset. On output, requires notations to be correctly reported. | FAIL (odd SAXException) (fatal) Missing Element declaration 'attributes' |
3.3 | valid-sa-043 | An element's attributes may be declared before its content model; and attribute values may contain newlines. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
3.3 [52] | o-p52pass1 | valid AttlistDecls: No AttDef's are required, and the terminating S is optional, multiple ATTLISTS per element are OK, and multiple declarations of the same attribute are OK. | FAIL (odd SAXException) (fatal) Attribute 'att2' is required. |
3.3 [52] | valid-not-sa-006 | Test demonstrates that when more than one definition is provided for the same attribute of a given element type only the first declaration is binding. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
3.3 [52] | valid-not-sa-010 | Test demonstrates that when more that one definition is provided for the same attribute of a given element type only the first declaration is binding. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
3.3 [52][53] | valid-sa-113 | Test demonstrates that it is not an error to have attributes declared for an element not itself declared. | FAIL (odd SAXException) (fatal) Missing Element declaration 'e' |
3.3.1 | valid-sa-076 | Verifies that an XML parser will parse a NOTATION attribute; the output phase of this test ensures that both notations are reported to the application. | FAIL (odd SAXException) (fatal) Notation not declared 'n1' |
3.3.1 | valid-sa-090 | Verifies that an XML parser will parse a NOTATION attribute; the output phase of this test ensures that the notation is reported to the application. | FAIL (odd SAXException) (fatal) Missing Element declaration 'e' |
3.3.1 [57] | o-p57pass1 | enumerated types are NMTOKEN or NOTATION lists | FAIL (odd SAXException) (fatal) Expected ) instead of NAME 'b' |
3.3.1 [58] | o-p58pass1 | NOTATION enumeration has on or more items | FAIL (odd SAXException) (fatal) Expected ) instead of # |
3.3.3 | valid-sa-058 | Test demonstrates that extra whitespace be normalized into a single space character in an attribute of type NMTOKENS. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
3.3.3 | valid-sa-095 | Basically an output test, this requires extra whitespace to be normalized into a single space character in an attribute of type NMTOKENS. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
3.3.3 | valid-sa-096 | Test demonstrates that extra whitespace is normalized into a single space character in an attribute of type NMTOKENS. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
3.3.3 | valid-sa-111 | Character references expanding to spaces doesn't affect treatment of attributes. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <doc> |
3.4 [62] | o-p62pass1 | valid INCLUDE sections -- options S before and after keyword, sections can nest | FAIL (odd SAXException) (fatal) Bad conditional section start syntax. Expected '[' |
3.4 [62] | valid-not-sa-013 | Test demonstrates the use of the conditional section INCLUDE that will include its contents as part of the DTD. | FAIL (odd SAXException) (fatal) Bad conditional section start syntax. Expected '[' |
3.4 [62] | valid-not-sa-014 | Test demonstrates the use of the conditional section INCLUDE that will include its contents as part of the DTD. The keyword is a parameter-entity reference. | FAIL (odd SAXException) (fatal) Bad conditional section start syntax. Expected '[' |
3.4 [63] | o-p63pass1 | valid IGNORE sections | FAIL (odd SAXException) (fatal) Bad conditional section start syntax. Expected '[' |
3.4 [63] | valid-not-sa-015 | Test demonstrates the use of the conditonal section IGNORE the will ignore its content from being part of the DTD. The keyword is a parameter-entity reference. | FAIL (odd SAXException) (fatal) Bad conditional section start syntax. Expected '[' |
3.4 [64] | o-p64pass1 | IGNOREd sections ignore everything except section delimiters | FAIL (odd SAXException) (fatal) Bad Ignore conditional section syntex. ']]>' is not allowed here. |
4 | valid-sa-085 | Parameter and General entities use different namespaces, so there can be an entity of each type with a given name. | FAIL (odd SAXException) (fatal) Entity 'e' is a parameter entity. |
4.1 4.4.3 [68] | valid-ext-sa-014 | Test demonstrates use of characters outside of normal ASCII range. | FAIL (EXCEPTION - DIRECTED FAILURE) |
4.1 [66] | valid-sa-066 | Expands a CDATA attribute with a character reference. | FAIL (odd SAXException) (fatal) Expected tag end(>) instead of quote(' or ") |
4.1 [66] | valid-sa-089 | Tests entity expansion of three legal character references, which each expand to a Unicode surrogate pair. | FAIL (EXCEPTION - DIRECTED FAILURE) |
4.1 [69] | valid-not-sa-003 | Test demonstrates the expansion of an external parameter entity that declares an attribute. | FAIL (odd SAXException) (fatal) Unexpected text in DTD. |
4.1 [69] | valid-not-sa-004 | Expands an external parameter entity in two different ways, with one of them declaring an attribute. | FAIL (odd SAXException) (fatal) Expected comments, PI, or EOF instead of NAME 'doc' |
4.1 [69] | valid-not-sa-005 | Test demonstrates the expansion of an external parameter entity that declares an attribute. | FAIL (odd SAXException) (fatal) Expected comments, PI, or EOF instead of NAME 'doc' |
4.2 | valid-not-sa-025 | Test demonstrates that when more that one definition is provided for the same entity only the first declaration is binding. | FAIL (odd SAXException) (fatal) Expected comments, PI, or EOF instead of NAME 'doc' |
4.2 [73] | o-p73pass1 | EntityDef is either Entity value or an external id, with an optional NDataDecl | FAIL (odd SAXException) (fatal) Expected quote(' or ") instead of tag end(>) |
4.2.2 4.3.3. 4.4.3 [75] [80] | valid-ext-sa-008 | Test demonstrates the use of external entity and how replacement text is retrieved and processed. Also tests the use of an EncodingDecl of UTF-16. | FAIL (odd SAXException) (fatal) Expecting element tag instead of '<U+0>' |
4.2.2 4.4.3 [75] | valid-ext-sa-007 | Test demonstrates the use of external entity and how replacement text is retrieved and processed. | FAIL (EXCEPTION - DIRECTED FAILURE) |
4.2.2 [75] | valid-not-sa-001 | Test demonstrates the use of an ExternalID within a document type definition. | FAIL (odd SAXException) (fatal) Unexpected text in DTD. |
4.2.2 [75] | valid-not-sa-002 | Test demonstrates the use of an ExternalID within a document type definition. | FAIL (odd SAXException) (fatal) Unexpected text in DTD. |
4.2.2 [75] | valid-not-sa-009 | Test demonstrates that an external identifier may include a public identifier. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doc' |
4.2.2 [76] | o-p76pass1 | valid NDataDecls | FAIL (odd SAXException) (fatal) Expected quote(' or ") instead of tag end(>) |
4.3.1 4.3.2 [77] [78] | ext01 | Tests use of external parsed entities with and without content. | FAIL (odd SAXException) (fatal) An XML declaration can only appear in the very beginning of the document. |
4.3.2 [78] | ext02 | Tests use of external parsed entities with different encodings than the base document. | FAIL (odd SAXException) (fatal) Invalid element 'PCDATA' in content of 'foo'. Expected [root] |
4.4.8 | valid-not-sa-020 | Parameter entities expand with spaces on either side. | FAIL (odd SAXException) (fatal) Missing Element declaration 'doca1' |
4.7 | valid-sa-069 | Verifies that an XML parser will parse a NOTATION declaration; the output phase of this test ensures that it's reported to the application. | FAIL (odd SAXException) (fatal) Expected quote(' or ") instead of tag end(>) |
4.7 [82] | notation01 | NOTATION declarations don't need SYSTEM IDs; and externally declared notations may be used to declare unparsed entities in the internal DTD subset. The notation must be reported to the application. | FAIL (odd SAXException) (fatal) Notation: GIF has not been declared yet |
The XML specification places requirements on the data which is reported by XML processors to applications. This data flows through the SAX API (with one minor omission: reporting external entities which are not included). These output tests verify conformance with the specification by recording that data and comparing it with what is required for conformance with the XML 1.0 specification.
Note that output tests automatically fail in cases where the processor failed to parse the (valid) input document used to generate the output data.
As of this writing, no output tests address the additional requirements which validating processors must satisfy. That is, reporting which whitespace is ignorable, and reporting declarations of unparsed entities.
Test ID | Diagnostic |
valid-sa-093 | (Input failed, no output available) |
valid-ext-sa-001 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x44 |
valid-ext-sa-002 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x44 |
valid-ext-sa-004 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x44 |
valid-ext-sa-009 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
valid-ext-sa-006 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x44 |
valid-ext-sa-011 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x78 |
valid-sa-108 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-sa-068 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
v-lang01 | Output byte 9 has the wrong value; actual 0x6c should instead be 0x3a |
v-lang02 | Output byte 9 has the wrong value; actual 0x6c should instead be 0x3a |
v-lang05 | Output byte 9 has the wrong value; actual 0x6c should instead be 0x3a |
v-lang03 | Output byte 9 has the wrong value; actual 0x6c should instead be 0x3a |
v-lang04 | Output byte 9 has the wrong value; actual 0x6c should instead be 0x3a |
v-lang06 | Output byte 9 has the wrong value; actual 0x6c should instead be 0x3a |
valid-sa-051 | (Input failed, no output available) |
valid-sa-052 | Output byte 5 has the wrong value; actual 0xc3 should instead be 0xf0 |
valid-not-sa-023 | (Input failed, no output available) |
o-p12pass1 | (Input failed, no output available) |
valid-sa-012 | (Input failed, no output available) |
valid-sa-063 | (Input failed, no output available) |
o-p07pass1 | (Input failed, no output available) |
o-p08pass1 | (Input failed, no output available) |
empty | (Input failed, no output available) |
valid-sa-008 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
dtd01 | Output ends at byte 6 but should continue to byte 13 |
valid-sa-055 | Output byte 5 has the wrong value; actual 0x20 should instead be 0x64 |
valid-sa-098 | Output byte 10 has the wrong value; actual 0x20 should instead be 0x78 |
valid-sa-017 | Output byte 10 has the wrong value; actual 0x20 should instead be 0x73 |
valid-sa-036 | Output byte 16 has the wrong value; actual 0x20 should instead be 0x64 |
valid-sa-039 | Output byte 5 has the wrong value; actual 0x20 should instead be 0x64 |
valid-not-sa-031 | (Input failed, no output available) |
valid-sa-018 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
valid-sa-114 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
o-p30pass2 | (Input failed, no output available) |
o-p29pass1 | (Input failed, no output available) |
o-p31pass1 | (Input failed, no output available) |
valid-not-sa-024 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
not-sa01 | Output byte 0 has the wrong value; actual 0x26 should instead be 0x3c |
not-sa02 | (Input failed, no output available) |
not-sa03 | (Input failed, no output available) |
not-sa04 | (Input failed, no output available) |
sa01 | Output byte 22 has the wrong value; actual 0x20 should instead be 0x26 |
sa02 | (Input failed, no output available) |
sa03 | (Input failed, no output available) |
sa04 | (Input failed, no output available) |
sa05 | Output byte 0 has the wrong value; actual 0x26 should instead be 0x3c |
element | Output byte 439 has the wrong value; actual 0x20 should instead be 0x26 |
optional | Output byte 0 has the wrong value; actual 0x26 should instead be 0x3c |
valid-sa-024 | Output byte 12 has the wrong value; actual 0x64 should instead be 0x66 |
valid-sa-104 | Output byte 9 has the wrong value; actual 0x26 should instead be 0x20 |
valid-sa-047 | Output byte 6 has the wrong value; actual 0x20 should instead be 0x26 |
valid-sa-034 | Output ends at byte 5 but should continue to byte 11 |
valid-sa-035 | Output ends at byte 5 but should continue to byte 11 |
valid-sa-044 | Output byte 14 has the wrong value; actual 0x33 should instead be 0x31 |
valid-sa-059 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
valid-sa-025 | Output byte 6 has the wrong value; actual 0x64 should instead be 0x66 |
valid-ext-sa-005 | Output byte 24 has the wrong value; actual 0x64 should instead be 0x65 |
dtd00 | Output ends at byte 6 but should continue to byte 13 |
valid-sa-001 | Output byte 6 has the wrong value; actual 0x64 should instead be 0x2f |
valid-sa-043 | (Input failed, no output available) |
valid-sa-097 | Output byte 1 has the wrong value; actual 0x44 should instead be 0x64 |
valid-sa-040 | Output byte 9 has the wrong value; actual 0x22 should instead be 0x26 |
valid-sa-080 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
o-p52pass1 | (Input failed, no output available) |
valid-not-sa-006 | (Input failed, no output available) |
valid-not-sa-007 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-not-sa-010 | (Input failed, no output available) |
valid-not-sa-026 | Output byte 1 has the wrong value; actual 0x44 should instead be 0x64 |
valid-sa-045 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-sa-046 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-sa-113 | (Input failed, no output available) |
valid-sa-076 | (Input failed, no output available) |
valid-sa-090 | (Input failed, no output available) |
o-p57pass1 | (Input failed, no output available) |
o-p58pass1 | (Input failed, no output available) |
v-sgml01 | Output byte 5 has the wrong value; actual 0x3e should instead be 0x20 |
required00 | Output ends at byte 16 but should continue to byte 23 |
valid-ext-sa-013 | Output byte 7 has the wrong value; actual 0x3e should instead be 0x20 |
valid-sa-058 | (Input failed, no output available) |
valid-sa-095 | (Input failed, no output available) |
valid-sa-096 | (Input failed, no output available) |
valid-sa-110 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-sa-111 | (Input failed, no output available) |
valid-sa-115 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x76 |
o-p62pass1 | (Input failed, no output available) |
valid-not-sa-013 | (Input failed, no output available) |
valid-not-sa-014 | (Input failed, no output available) |
valid-not-sa-016 | Output byte 0 has the wrong value; actual 0x26 should instead be 0x3c |
valid-not-sa-022 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-not-sa-028 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-not-sa-029 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
o-p63pass1 | (Input failed, no output available) |
valid-not-sa-015 | (Input failed, no output available) |
o-p64pass1 | (Input failed, no output available) |
valid-sa-085 | (Input failed, no output available) |
valid-ext-sa-014 | (Input failed, no output available) |
valid-sa-060 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x58 |
valid-sa-062 | Output byte 14 has the wrong value; actual 0xc3 should instead be 0xe0 |
valid-sa-064 | Output byte 5 has the wrong value; actual 0x0 should instead be 0xf0 |
valid-sa-066 | (Input failed, no output available) |
valid-sa-067 | Output byte 4 has the wrong value; actual 0x20 should instead be 0x3e |
valid-sa-089 | (Input failed, no output available) |
valid-not-sa-003 | (Input failed, no output available) |
valid-not-sa-004 | (Input failed, no output available) |
valid-not-sa-005 | (Input failed, no output available) |
valid-not-sa-027 | Output byte 6 has the wrong value; actual 0x64 should instead be 0x2f |
valid-not-sa-025 | (Input failed, no output available) |
valid-sa-086 | Output byte 6 has the wrong value; actual 0x64 should instead be 0x2f |
valid-not-sa-011 | Output byte 1 has the wrong value; actual 0x44 should instead be 0x64 |
valid-not-sa-017 | Output byte 0 has the wrong value; actual 0x26 should instead be 0x3c |
valid-not-sa-021 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
o-p73pass1 | (Input failed, no output available) |
valid-ext-sa-012 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x28 |
valid-ext-sa-008 | (Input failed, no output available) |
valid-ext-sa-007 | (Input failed, no output available) |
valid-not-sa-001 | (Input failed, no output available) |
valid-not-sa-002 | (Input failed, no output available) |
valid-not-sa-008 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-not-sa-009 | (Input failed, no output available) |
valid-not-sa-018 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
o-p76pass1 | (Input failed, no output available) |
ext01 | (Input failed, no output available) |
valid-not-sa-012 | Output byte 1 has the wrong value; actual 0x44 should instead be 0x64 |
ext02 | (Input failed, no output available) |
valid-sa-053 | Output byte 10 has the wrong value; actual 0x64 should instead be 0x65 |
valid-not-sa-019 | Output byte 4 has the wrong value; actual 0x3e should instead be 0x20 |
valid-not-sa-020 | (Input failed, no output available) |
v-pe00 | Output byte 0 has the wrong value; actual 0x26 should instead be 0x3c |
v-pe01 | Output byte 44 has the wrong value; actual 0x20 should instead be 0x26 |
v-pe02 | Output byte 26 has the wrong value; actual 0x20 should instead be 0x65 |
valid-sa-087 | Output byte 12 has the wrong value; actual 0x64 should instead be 0x66 |
valid-sa-088 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x26 |
valid-sa-117 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x5d |
valid-sa-118 | Output byte 5 has the wrong value; actual 0x3c should instead be 0x5d |
valid-sa-069 | (Input failed, no output available) |
notation01 | (Input failed, no output available) |
All conformant XML 1.0 processors must reject documents which are not well-formed. In addition, validating processors (such as this one) must report the validity errors for invalid documents. These are called Negative Tests because the test is intended to establish that errors are reported when they should be.
Moreover, the processor must both fail for the appropriate reason (given by the parser diagnostic) and must report an error at the right level ("error" or "fatal"). If both criteria were not considered, a processor which failed frequently (such as by failing to parse any document at all) would appear to pass a large number of conformance tests Unfortunately, the test driver can only tell whether the error was reported at the right level. It can't determine whether the processor failed for the right reason.
That's where a person to interpret these test results is critical. Such a person analyses the diagnostics, reported here, for negative tests not already known to be failures (for not reporting an error, or reporting one at the wrong level). If the diagnostic reported for such tests doesn't match the failure from the test description, there is an error in the diagnostic or in the processor's XML conformance (or sometimes in both).
For this processor, 359 diagnostics must be examined to get an accurate evaluation of its negative test status.
Validating processors must correctly report "error" diagnostics for all documents which are well formed but invalid. Such errors must also be, "at user option", recoverable so that the validating parser may be used in a nonvalidating mode by ignoring all validity errors.
Section and [Rules] | Test ID | Description | Diagnostic |
2.1 [1] | o-p01pass1 | no prolog | FAIL [Document invalid; no error reported] |
2.1 [1] | o-p01pass3 | Misc items after the document | FAIL [Document invalid; no error reported] |
2.3 [10] | o-p10pass1 | valid attribute values | FAIL [Document invalid; no error reported] |
2.3 [3] | o-p03pass1 | all valid S characters | FAIL [Document invalid; no error reported] |
2.3 [4] | o-p04pass1 | names with all valid ASCII characters, and one from each other class in NameChar | FAIL (odd SAXException) (fatal) Unexpected token '' inside tag <A.-Ì> |
2.3 [5] | o-p05pass1 | various valid Name constructions | FAIL (odd SAXException) (fatal) Expecting element tag instead of '.' |
2.3 [6] | o-p06fail1 | Requires at least one name. | FAIL (odd SAXException) (fatal) Expected IDREF insteadof quote(' or ") |
2.3 [8] | o-p08fail1 | at least one Nmtoken is required. | FAIL (odd SAXException) (fatal) Expected NMTOKEN insteadof quote(' or ") |
2.3 [8] | o-p08fail2 | an invalid Nmtoken character. | FAIL [Document invalid; no error reported] |
2.4 [14] | o-p14pass1 | valid CharData | FAIL [Document invalid; no error reported] |
2.5 [15] | o-p15pass1 | valid comments | FAIL [Document invalid; no error reported] |
2.6 [16] | o-p16fail3 | S after PITarget is required | FAIL [Document invalid; no error reported] |
2.6 [16] | o-p16pass2 | Valid form of Processing Instruction. Shows that whitespace character data is valid before end of processing instruction. | FAIL [Document invalid; no error reported] |
2.6 [16] | o-p16pass3 | Valid form of Processing Instruction. Shows that whitespace character data is valid before end of processing instruction. | FAIL [Document invalid; no error reported] |
2.6 [16] [17] | o-p16pass1 | Valid form of Processing Instruction. Shows that whitespace character data is valid before end of processing instruction. | FAIL [Document invalid; no error reported] |
2.7 [18] | o-p18pass1 | valid CDSect's. Note that a CDStart in a CDSect is not recognized as such | FAIL [Document invalid; no error reported] |
2.8 | invalid--001 | Tests the "Proper Declaration/PE Nesting" validity constraint by fragmenting a comment between two parameter entities. | FAIL (odd SAXException) (fatal) Expected comments, PI, or EOF instead of NAME 'doc' |
2.8 | invalid--003 | Tests the "Proper Declaration/PE Nesting" validity constraint by fragmenting an entity declaration between two parameter entities. | FAIL [Document invalid; no error reported] |
2.8 | invalid--004 | Tests the "Proper Declaration/PE Nesting" validity constraint by fragmenting an entity declaration between three parameter entities. | FAIL [Document invalid; no error reported] |
2.8 | invalid--005 | Tests the "Proper Declaration/PE Nesting" validity constraint by fragmenting an entity declaration between two parameter entities. | FAIL [Document invalid; no error reported] |
2.8 | invalid--006 | Tests the "Proper Declaration/PE Nesting" validity constraint by fragmenting an entity declaration between two parameter entities. | FAIL [Document invalid; no error reported] |
2.8 | root | Tests the Root Element Type VC | FAIL (odd SAXException) (fatal) Root element name must match the DOCTYPE name |
2.8 [22] | o-p22pass1 | prolog can be empty | FAIL [Document invalid; no error reported] |
2.8 [22] | o-p22pass2 | XML declaration only | FAIL [Document invalid; no error reported] |
2.8 [22] | o-p22pass3 | XML decl and Misc | FAIL [Document invalid; no error reported] |
2.8 [23] | o-p23pass1 | Test shows a valid XML declaration along with version info. | FAIL [Document invalid; no error reported] |
2.8 [23] | o-p23pass2 | Test shows a valid XML declaration along with encoding declaration. | FAIL [Document invalid; no error reported] |
2.8 [23] | o-p23pass3 | Test shows a valid XML declaration along with Standalone Document Declaration. | FAIL [Document invalid; no error reported] |
2.8 [23] | o-p23pass4 | Test shows a valid XML declaration, encoding declarationand Standalone Document Declaration. | FAIL [Document invalid; no error reported] |
2.8 [24] | o-p24pass1 | Test shows a prolog that has the VersionInfo delimited by double quotes. | FAIL [Document invalid; no error reported] |
2.8 [24] | o-p24pass2 | Test shows a prolog that has the VersionInfo delimited by single quotes. | FAIL [Document invalid; no error reported] |
2.8 [24] | o-p24pass3 | Test shows whitespace is allowed in prolog before version info. | FAIL [Document invalid; no error reported] |
2.8 [24] | o-p24pass4 | Test shows whitespace is allowed in prolog on both sides of equal sign. | FAIL [Document invalid; no error reported] |
2.8 [25] | o-p25pass1 | Test shows whitespace is NOT necessary before or after equal sign of versioninfo. | FAIL [Document invalid; no error reported] |
2.8 [25] | o-p25pass2 | Test shows whitespace can be used on both sides of equal sign of versioninfo. | FAIL [Document invalid; no error reported] |
2.8 [26] | o-p26pass1 | The valid version number. We cannot test others because a 1.0 processor is allowed to fail them. | FAIL [Document invalid; no error reported] |
2.8 [27] | o-p27pass1 | Comments are valid as the Misc part of the prolog. | FAIL [Document invalid; no error reported] |
2.8 [27] | o-p27pass2 | Processing Instructions are valid as the Misc part of the prolog. | FAIL [Document invalid; no error reported] |
2.8 [27] | o-p27pass3 | Whitespace is valid as the Misc part of the prolog. | FAIL [Document invalid; no error reported] |
2.8 [27] | o-p27pass4 | A combination of comments, whitespaces and processing instructions are valid as the Misc part of the prolog. | FAIL [Document invalid; no error reported] |
2.9 | inv-not-sa01 | Tests the Standalone Document Declaration VC, ensuring that optional whitespace causes a validity error. | FAIL [Document invalid; no error reported] |
2.9 | inv-not-sa02 | Tests the Standalone Document Declaration VC, ensuring that attributes needing normalization cause a validity error. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <attributes> |
2.9 | inv-not-sa03 | Tests the Standalone Document Declaration VC, ensuring that a reference to externally defined entity causes a validity error. | FAIL (odd SAXException) (fatal) Unexpected token '&' inside tag <attributes> |
2.9 | inv-not-sa04 | Tests the Standalone Document Declaration VC, ensuring that attributes needing defaulting cause a validity error. | FAIL (odd SAXException) (fatal) Expected comments, PI, or EOF instead of NAME 'pi' |
2.9 | inv-not-sa05 | Tests the Standalone Document Declaration VC, ensuring that a token attribute that needs normalization causes a validity error. | FAIL [Document invalid; no error reported] |
2.9 | inv-not-sa06 | Tests the Standalone Document Declaration VC, ensuring that a NOTATION attribute that needs normalization causes a validity error. | FAIL [Document invalid; no error reported] |
2.9 |