<html>
<head>
<title>Names</title>
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div id="Description">
<table cellpadding="0" cellspacing="0" border="0" width="100%" class="main">
<tr>
<td valign="top" class="NAME">Names</td>
<td valign="top" class="COMPATIBILITY">&nbsp;</td>
</tr>
<tr>
<td colspan="2" class="divider"><img src="dwres:18084" width="100%" height="1"></td>
</tr>
<tr>
<td valign="top" colspan="2" class="description">

<p>XML 1.0 names must adhere to the following lexical conventions:</p>

<ul><li>
<p>Begin with a letter, ideograph, <span class="LITERAL">_</span>, or
: character.</p>
</li><li>
<p>After the first character, be composed only of letters, digits,
., <span class="LITERAL">-</span>, <span class="LITERAL">_</span>, and
: characters.</p>
</li></ul>

<p>In this context, a letter is any Unicode character that matches the
<span class="LITERAL">Letter</span> production from the XML 1.0 EBNF grammar at
the end of this chapter.</p>

<tip id="xmlnut3-CHP-21-NOTE-132" role="ora">
<p>See the XML 1.1 EBNF grammar production for <span class="LITERAL">Name</span>
to see which characters are permitted within XML 1.1 names.</p>
</tip>

<p>According to the XML 1.0 specification, the
: character may be used freely within names,
although the character is now officially reserved as part of the
"Namespaces in XML" recommendation.
Even if a document does not use namespaces, the colon should still
not be used within identifiers to maintain compatibility with
namespace-aware parsers. See the <link linkend="xmlnut3-CHP-21-SECT-3.4">Section 21.3.4</link> in this chapter for
more information about how namespace-aware identifiers are formed.</p> <p>Names should also avoid starting with the three-letter
sequence X, M, L (in any case combination), unless specifically
sanctioned by an XML specification.</p>


</td></tr>
</table>
</div>
</body>
</html>