Re WF, V, and MSXML
Peter Murray-Rust
Peter at ursus.demon.co.uk
Fri Jun 13 00:14:38 BST 1997
In message <41135C785691CF11B73B00805FD4D2D702A3F8B9 at RED-17-MSG.dns.microsoft.com> Chris Lovett writes:
>
> Regading all the discussion about the RMD attribute and
> switching validation on and off and error recovery and so on....
I think MSXML has taken a reasonable position given the ambiguities...
>
> The reason MSXML doesn't implement RMD yet is because there are
> problems with the RMD=IGNORE concept since ignoring the DTD can result
Agreed.
[I'm working from XML-lang-970331, which doesn't use RMD="IGNORE". Is this
the same as "NONE"?]
> in different data being given to the application - which generally is a
> bad thing. The spec says it is an error to specify RMD=IGNORE if the
^^^^^^^^^^^
I would have said it was always a bad thing!
> DTD contains any declarations of:
> 1) attributes with default values, if elements to which
> these attributes apply appear in the document instance without
> specifying values for these attributes, or
> 2) entities. (other than the built in entities), if
> references to those entities appear in the document instance, or
> 3) element types with element content, if white space
> occurs in the document instance directly within any instance of those
> types.
>
> The problem is that if the parser ignores the DTD, how can it
> detect #1 above ? Also, the white space handling can be ambiguous.
Agreed. I think the ERB have to consider this. I cannot see how a parser
(even with RMD="NONE") may not read the DTD. I think the option is really
related only to #3.
>
> So, MSXML currently takes the following approach:
> - RMD attribute is not implmented yet, so if a DTD is
> there it uses it.
...........^^^^
This is an ambigous word :-) It can mean either the creation of the proper
document content and/or validation.
> - If an error is found it stops. No error recovery is
> attempted.
:-)
> - If you don't want validation, remove the DTD.
Ah, but you cannot use entities or default attribute values.
> - It is ok to not define some of the elements in the
> DTD. This simply means that in the same document there is certain data
> that you want to guarantee to be correct, and other data that is more
> unknown in structure (but still well-formed). This is simply a side
> effect of being able to parse a document without a DTD.
This implies partial validation, which we don't have. There is no reason
for defining any ELEMENTs if the document is not validated (and the element
content not analysed).
P.
--
Peter Murray-Rust, domestic net connection
Virtual School of Molecular Sciences
http://www.vsms.nottingham.ac.uk/
xml-dev: A list for W3C XML Developers
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To unsubscribe, send to majordomo at ic.ac.uk the following message;
unsubscribe xml-dev
List coordinator, Henry Rzepa (rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list