> When Parsing (i.e. converting this XML doc to String) this XML file
> using Java code, I am getting following exception.
>
> org.xml.sax.SAXParseException: Next character must be ";" terminating
> reference to entity "Value".
Section 2.4 of the XML 1.0 specification:
"The ampersand character (&) and the left angle bracket (<) MUST NOT
appear in their literal form, except when used as markup delimiters, or
within a comment, a processing instruction, or a CDATA section. If they
are needed elsewhere, they MUST be escaped using either numeric character
references or the strings "&" and "<" respectively. The right angle
bracket (>) may be represented using the string ">", and MUST, for
compatibility, be escaped using either ">" or a character reference
when it appears in the string "]]>" in content, when that string is not
marking the end of a CDATA section."
> I think there is some changes/modification needed in DTD to treat the
> string in XML which contains & as a literal, instead of expecting some
> entity.
You can't fix this in the DTD, the XML is invalid and the parser is
correct to reject it.
> Adding to this, XML content is not under our control.
Unforunately, the only rational fix *is* to change the XML. Either use
& or wrap the element data in a CDATA section. If the XML is
controlled by a third part it would be reasonable to request that they
change it since it is not really XML at all if it is not valid.
Dan.

Signature
Daniel Dyer
http://www.uncommons.org
sohan.soni@gmail.com - 18 Feb 2007 09:26 GMT
> On Wed, 14 Feb 2007 11:31:18 -0000,sohan.s...@gmail.com
>
[quoted text clipped - 35 lines]
> --
> Daniel Dyerhttp://www.uncommons.org
Thanks Daniel,
That info really helped.
Regards
Sohan
> Hi,
>
[quoted text clipped - 31 lines]
>
> Adding to this, XML content is not under our control.
Like the other replier said, it's invalid XML. It shouldn't contain a
'naked' ampersand like that.
Do you have any chance at all to speak to the producer of this XML? It's
very reasonable to ask them to fix it. If you can't ask them to fix it,
then how about:
1) put in a fix yourself - e.g. do a search and replace kludge on the
content before the XML parser gets it - so replace naked '&' with
'&' (and any other nasty characters that crop up)
2) At least tell the party making the XML that it is broken - you may
help someone else down the line by doing this, if not yourself
lex
sohan.soni@gmail.com - 18 Feb 2007 09:26 GMT
> sohan.s...@gmail.com wrote:
> > Hi,
[quoted text clipped - 48 lines]
>
> - Show quoted text -
Thanks Lex,
Sohan