MSXML 6.0 vs. System.Xml 区别 比较
Feature |
MSXML 6 | system.xml |
Using XML attributes without explicit schema declaration |
not supported | supported |
element of type xs:ID | supported* | not supported |
Conflicting values of facets minInclusive, maxInclusive in base and derived types | not allowed* | allowed |
maxOccurs=0 with no minOccurs | error* | no error |
Multiple redefines of the same schema document | error | warning (only first redefine is processed) |
parsing of targetNamespace attribute as anyURI | supported* | not supported |
Regex support for Unicode Character blocks | Unicode 3.1 | Unicode 4.0.1 |
Regex patterns involving combinating a negative group with another using ‘|’ | not supported | supported* |
XSD Errata for Regex E2-52 | not supported | supported* |
Regex character class subtraction | not supported | supported* |
Matching newlines/linebreaks from a xsd:pattern facet | not supported | supported* |
minOccurs/maxOccurs value limits | upto 2^32 | CLR decimal |
limit of totalDigits facet values | upto 2^32 | CLR decimal |
datatypes used to store length, minLength, maxLength facet values | upto 2^32 | CLR decimal |
a prohibited attribute in a complex type | no error, attribute stripped* | warning, attribute stripped* |
unreferenced groups in the schema | always compiled | compiled on reference |
default element values availability | not supported | supported* |
expose post schema validation infoset | not supported | supported* |
ENTITY in DTD resolvable by attribute/elements of type xs:ENTITY | DOM=Yes, SAX=no | Yes |
adding a default qualified attribute to an element in a document that has attribute’s namespace as default | DOM: apply qualified default attribute with namespace value as the prefix. SAX=does not generate prefix for default qualified attributes | error |
identity constraints (key/unique) evaluation for skip/lax blocks | node is null | not able to find node |
element with mixed content, and a fixed schema value, containing child elements | instance accepted | instance not accepted* |
whitespace facet on anySimpleType | preserve* | collapsed |
XSD Errata on xs:base64Binary parsing | supported* | not supported |
xs:dateTime: number of year digits supported | 10 | 4 |
xs:dateTIme: number of fraction digits supported in seconds | 9 | 7 |
xs:dateTime: Range of hours in time zone | “-14:00 to +14:00” * | 99:00 to -99:00 |
xs:dateTime: negative years | supported* | not supported |
“z” (as opposed to “Z”) in xs:dateTime to represent UTC time | not allowed* | allowed |
xs:time: range of hour value | 00:00:00 to 24:00:00* | 00:00:00 to 23:59:59 |
xs:gMonth: XSD Errata revised the lexical representation of gMonth | only –MM is allowed* | both –MM and –MM– are allowed |
maximum digits allowed for the xs:decimal data type | 128 | 29 |
xs:duration: duration with second part specified, but has no digits | error | no error, infer a 0 for the second part |