What An XML Processor Must Do

This little definition is awfully important to XML. What it means that if anything claims to accept XML, then you can send it documents that have an internal subset, and if that internal subset uses handy tricks like attribute defaults and internal entities, then you can be confident that they'll be processed correctly.

Note, however, that you can't safely use external entities unless the use of validating processors is advertised.

The reason this paragraph is here is that during the development of XML, it became apparent that some people, given the chance, would claim XML support for anything that processed text that contained something that looked like a tag. The result of this would be that there would be legal XML documents that wouldn't be processed correctly by these people; while we can't make everyone do the right thing, we can (we hope) keep these sort of half-baked efforts from being awarded an "XML" label.

Back-link to spec

Copyright © 1998, Tim Bray. All rights reserved.