If all fails, read the spec :-).
4.3.3 Character Encoding in Entities
Each external parsed entity in an XML
document may use a different encoding
for its characters.
[...]
In an encoding declaration, the values
" UTF-8 ", " UTF-16 ", "
ISO-10646-UCS-2 ", and "
ISO-10646-UCS-4 " SHOULD be used for
the various encodings and
transformations of Unicode / ISO/IEC
10646, the values " ISO-8859-1 ", "
ISO-8859-2 ", ... " ISO-8859- n "
(where n is the part number) SHOULD be
used for the parts of ISO 8859, and
the values " ISO-2022-JP ", "
Shift_JIS ", and " EUC-JP " SHOULD be
used for the various encoded forms of
JIS X-0208-1997.
It is RECOMMENDED
that character encodings registered
(as charsets) with the Internet
Assigned Numbers Authority
IANA-CHARSETS, other than those just
listed, be referred to using their
registered names; other encodings
SHOULD use names starting with an "x-"
prefix.
Source: http://www.w3.org/TR/REC-xml/
So UTF-8 is written as encoding="UTF-8"
.
For other character sets not listed above, use the names given in the IANA character set list.
Case of the letters in the character set name is not significant: "However, no distinction is made
between use of upper and lower case letters." (IANA character set list). So you could also write
encoding="uTf-8"
if you feel like it ;-).
BTW: Are you really, really certain you want to write your own XML parser? This sounds suspiciously like reinventing the wheel.