Confused about & in entity literal

roddey at roddey at
Sat May 8 01:01:47 BST 1999

Ok, I'm a little confused about the issues with & in entity literals. Here is
one JC test:

  <!DOCTYPE doc [
  <!ELEMENT doc (#PCDATA)>
  <!ENTITY e "<![CDATA[&foo;]]>">

In this one, there is definitely an ampersand in an entity literal which is not
part of a numeric character reference or an intrinsic character reference. The
spec does not seem to day "No raw & in an entity value unless its a numeric ref
or intrinsic ref, or some other reference that's just left unexpanded", right?
It just says that there can be no ampersands in an entity value unless its part
of a numeric reference or an intrinsic reference.

So am I really supposed to parse all general references in an entity value and
expand character references and intrinsic references and just ignore all others?
Where does it really say that that's what's supposed to happen?

And, while I'm at it, am I losing my mind or is this test from JC really not

  <!DOCTYPE doc [
  <!ELEMENT doc (#PCDATA)>
  <!ENTITY e "&lt;foo>">

This would expand to:


which is obviously wrong since foo has no end tag and is not empty? But its in
the valid\sa bucket.

xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at
Archived as: and on CD-ROM/ISBN 981-02-3594-1
To (un)subscribe, mailto:majordomo at the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at

More information about the Xml-dev mailing list