"may not" considered harmful

In 5.2, we have a sentence as below:

   For example, a non-validating processor may not normalize attribute
   values, include the replacement text of internal entities, or
   supply default attribute values, where doing so depends on having
   read declarations in external or parameter entities.

What does this "may not" mean?  Are such actions prohibited 
or not guaranteed to occur?  Moreover, "doing so depends" is 
ambiguous.

Cheers,

Makoto

Received on Friday, 2 August 2002 05:46:41 UTC