To me, line 907 indicates that declared sets are considered referenced but that does not mean the converse is true (i.e., a thing referenced is not necessarily declared). Are you using the ead dtd or ead schema or something else? Even with a blank xml document with no schema or dtd declared I still can use &
<, etc in oXygen 13.2 but I can replicate your issue with &hearts, &diams, &spades, etc.
Entities have to be declared some place.
&hearts et al are declared in the Publishing extensions of ISO 8879 (see http://www.oasis-open.org/docbook/specs/wd-docbook-xmlcharent-0.3.html#isopub).
To declare the Publishing
extensions, I added the following to my document :
<!DOCTYPE doc [
<!ENTITY % iso-pub PUBLIC "ISO 8879:1986//ENTITIES Publishing//EN//XML"
I put it after the <?xml ...> tag and before <ead> (Entities have to be declared in dtd since there is no support for them in xsd - see http://www.w3.org/TR/xhtml1-schema/#diffs)
Also if you have declared a schema in your xml document, in oXygen, click on Options|Preferences|XML|XML Parser and make sure the XML Parser Property "Ignore the DTD for validation if a schema is specified" is *not* checked.
Why you can't use & is a mystery, though. Sorry.
The entity "hearts" was referenced, but not declared
I've run into an issue with oXygen 13.2 that baffles me.
I'm putting together a demonstration of how entities work for a class. I tried to create the note "I ♥ Ben & Jerry's ice cream" to make my point.
I got the following error message: "The entity "hearts" was referenced, but not declared" and the file does not parse.
I found the following statement at line 907 of the DTD "By default, all declared sets are referenced" which leads me to believe that I do not need to declare the standard ISO entities individually.
Can anyone offer any insight as to why I've hit this problem. FYI, I got the same message for & .
Elizabeth H. Dow
School of Library and Information Science
Louisiana State University