Well, I learned something today.

The XML entity "'" is not displayed properly under IE7. Instead of showing the single quote, as I would expect, it shows "'".

' works well under FireFox, IE6, IE5, Safari and Opera. But no longer under IE7.

The most understandable explanation I've found about this is that it is part of the XML standard and not HTML.

To which I would reply: yeah, but I'm doing XHTML.

To which I've read the insightful reply:

If you're doing XHTML, the world is not ready for you.

Another hilarious and insightful answer to the problem was :

Use ' instead of ' ?

So I'm resting from the shock and looking at my HTML transformation libraries wondering if there is a tsunami of problems that is waiting for me if I remove the conversion from single quote to the ' entity.

I really don't expect any troubles as we never used single quotes to delimit parameters within HTML and we never used the HTML transformation methods to send text to javascript.

Still, one wonders about the woodpeckers and civilization.

Maybe Microsoft will let out a patch?

LOL.

For once, it seems that it is MS that is sticking to the standards. Brave new world?

To clarify the standards:

&apos is not part of HTML: W3CCharacter entity references in HTML 4

But is a part of XHTML: W3C xhtml DTD entity set: Special characters

Here's a link to an entity test, devised by W3C.

The whole issue is also described in Wikipedia - Entities representing special characters in XHTML