One of the consequences of XML's case-sensitivity is that there's no flexibility about the keywords; they must always be in upper-case letters just as they appear in the grammar. That means you have to use <!DOCTYPE and <!ELEMENT and <!ATTLIST and <!NOTATION. This also applies to keywords like SYSTEM and PUBLIC, and those such as ID, CDATA and NMTOKEN that appear in attribute-list declarations.
Back-link to specCopyright © 1998, Tim Bray. All rights reserved.