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