On the one hand, unparsed entities exist for purely physical reasons -- you
can't easily stored binary data in a text (XML) file -- and therefore don't pass
our XSchema-describes-logical-structures-only test.
On the other hand, an unparsed entity is a very close cousin to a PCDATA-only
Element with a NOTATION attribute. In both cases, a separate application
processes the data and the only real difference seems to be whether the XML
parser first parses that data; that the unparsed entity data is stored
separately is really a red herring. Thus, the unparsed entity becomes a special
type of element (logical structure) for holding unparseable data.
One other difference I'd like to point out is that, with the exception of the
"escape character" entities (lt, gt, amp, quot, and apos), I don't think you can
construct an XML file with parsed entities that you cannot construct without
them. This is not true of unparsed entities. Not only would an UnparsedEntity
element rectify this problem, it would also solve the validation problem pointed
out by John Cowan with respect to ENTITY attributes: we can't validate their
value without unparsed entity declarations.
-- Ron Bourret