inessential by Brent Simmons

Another Atom title question

Another Atom question... (Is there a mailing list or forum somewhere where I can ask questions instead?)

How must a client display the following title?

<title>&#38;</title>

When defaults are applied, this expands to:

<title mode="xml" type="text/plain">&#38;</title>

The value is inline XML and it should be displayed as plain text.

Were the type HTML, then clearly it should be displayed &. But, since it’s plain text, I believe it should be displayed as &#38;.

But — here’s where I’m tripped up — this case is part of a set of examples that imply that it should be displayed as & and not as &#38;.

This example has to be correct, and I have to be wrong, because the following would be flat-out illegal:

<title>&</title>

Here’s what it comes down to — the Atom spec talks about escaped content, but doesn’t specify what that means, and it’s giving me some trouble.

If mode=xml, which entities should be converted? Ampersands, yes. What about lt, gt, and apos?

If I do convert lt, gt, and apos also (when mode=xml), then I don’t understand how the third example in the History of <blink> tag test work. It looks like this:

<title type="application/xhtml+xml" mode="xml"><div xmlns="http://www.w3.org/1999/xhtml">History of the &lt;blink&gt; tag</div></title>

If I do translate lt and gt (at parse time), then &lt;blink&gt; turns into <blink> — and, consequently, you don’t see it, because now it’s an HTML tag. The test clearly says it should be displayed as <blink>, which means that the string value has to be &lt;blink&gt;.