- Well-formedness as a minimum requirement
- Unambiguous parsing, even with extensions
- Validation (DTDs now, later XSchema)
- Internal DTD subset - add entities, new attributes
- High level of implementation interoperability
- Ready availability of standard parsers