字符值引用

限制

通用字符集(UCS)是SGML以及HTML 4的文档字符集, 因此缺省地, 用这些标记语言写的文档的所有字符，必须出自UCS.
同时SGML并不禁止引用一个Unicode中未赋予字符的码位, 例如&#xFFFF;。SGML派生的标记语言如HTML与XML限于引用那些赋予字符的码位以及那些没有永久性保留不赋予字符的码位.
还存在其它的限制情况. 例如在HTML 4中, &#12;, 引用了一个不可显示的字符"换页"控制字符，这是被允许的。但在XML中, 不能使用换页符, 甚至不能引用换页符. 另一个例子, &#128;引用另外一个控制字符，在HTML与XML中不能使用、引用, 但是如果出现在HTML中, 网页浏览器通常不会把它标记为一个错误—有的甚至把它解释为Windows-1252编码中码位为128的字符: "€"，虽然这个字符应该表示为字符值引用&#8364;. 进一步的例子, 在2000年10月6日XML 1.0第二版发布之前，XML 1.0是基于老版的ISO 10646因此禁止使用码位大于U+FFFD的字符，因此引用&#65536; (U+10000)字符是非法的。在XML 1.1与更新版本的XML 1.x, 这些引用是允许的，因为字符库(repertoire)被大大扩展了。