How do I define HTML entity references inside a valid XML document?

If you can modify the the XML to include an inline DTD you can define the entities there:

<!DOCTYPE yourRootElement [
    <!ENTITY bull "&#8226;">
    ....
]>

I'm not cetain, but I think the XHTML DTD's should give you quite a few entities (253):

http://en.wikipedia.org/wiki/List_of_XML_and_HTML_character_entity_references#Entities_representing_special_characters_in_XHTML

Also in the w3 spec, there is a mention of additional DTD's for special characters etc. http://www.w3.org/TR/xhtml-modularization/dtd_module_defs.html#a_dtd_xhtml_character_entities

However I haven't been able to find an implementation example of the special character DTDs.


Edit by DevNull

Here is an extremely generic example implementation of one of the entity DTD modules. To implement, you only need to add a parameter entity pointing to the module.

<?xml version="1.0"?>
<!DOCTYPE test [
<!ELEMENT test (#PCDATA)>
<!ENTITY % xhtml-special SYSTEM "xhtml-special.ent">
%xhtml-special;
]>
<test>Here is a left double quote: &ldquo;</test>

Tags:

Xml

Dtd

Xhtml