<?xml version='1.0' encoding='utf-8' standalone='yes'?>
<?xml-stylesheet type='text/xsl' href='/style/atom-comments.xsl'?>
<feed xmlns='http://www.w3.org/2005/Atom'>
<title>norman.walsh.name: Comments on /2006/01/17/xmlLanguages</title>
<link rel='alternate' type='text/html' href='http://norman.walsh.name/2006/01/17/xmlLanguages'/>
<id>http://norman.walsh.name/2006/01/17/xmlLanguages/comments.atom</id>
<updated>2006-01-18T21:13:47Z</updated>

<entry xmlns:foaf='http://xmlns.com/foaf/0.1/'>
<title>Comment 1 on /2006/01/17/xmlLanguages</title>
<link rel='alternate' type='text/html' href='http://norman.walsh.name/2006/01/17/xmlLanguages#comment0001'/>
<id>http://norman.walsh.name/2006/01/17/xmlLanguages#comment0001</id>
<published>2006-01-17T17:24:01Z</published>
<updated>2006-01-17T17:24:01Z</updated>
<author>
  <name>Elliotte Rusty Harold</name>
  <foaf:mbox_sha1sum>fcc9a2c3412d8d046a24619e3aa59dadeec7dc91</foaf:mbox_sha1sum>
  <uri>http://cafe.elharo.com/</uri>
</author>
<content type='xhtml'><div xmlns="http://www.w3.org/1999/xhtml">Norm, all three of the options you present are suboptimal. HTML must-ignore enables us to do this:

<pre>&lt;p&gt;The Eiffel Tower is located at
 &lt;geo xmlns="http://example.org/geo"&gt;
  &lt;latitude&gt;48.8589&lt;/latitude&gt;&#176; latitude 
  &lt;longitude&gt;2.2958&lt;/longitude&gt;&#176; longitude
&lt;/geo&gt;.
&lt;/p&gt;</pre>

This will display correctly in essentially all existing browsers, no stylesheet required. I've been using markup like this for years on Cafe con Leche and Cafe au Lait. It works. It doesn't cause any problems. It's easy to validate. It's easy to process. Just don't stuff content you want humans to read in attribute values and you'll be fine.</div></content>
</entry>

<entry xmlns:foaf='http://xmlns.com/foaf/0.1/'>
<title>Comment 2 on /2006/01/17/xmlLanguages</title>
<link rel='alternate' type='text/html' href='http://norman.walsh.name/2006/01/17/xmlLanguages#comment0002'/>
<id>http://norman.walsh.name/2006/01/17/xmlLanguages#comment0002</id>
<published>2006-01-17T17:34:17Z</published>
<updated>2006-01-17T17:34:17Z</updated>
<author>
  <name>Norman Walsh</name>
  <foaf:mbox_sha1sum>9f5c771a25733700b2f96af4f8e6f35c9b0ad327</foaf:mbox_sha1sum>
  <uri>http://norman.walsh.name/</uri>
</author>
<content type='xhtml'><div xmlns="http://www.w3.org/1999/xhtml"><p>Yes, Elliotte, you're right. I chose the example to illustrate a problem, but I should equally have illustrated the workaround. In fact, I had initially done what you suggest, but changed it to highlight the point I wanted to make about must ignore.</p></div></content>
</entry>

<entry xmlns:foaf='http://xmlns.com/foaf/0.1/'>
<title>Comment 3 on /2006/01/17/xmlLanguages</title>
<link rel='alternate' type='text/html' href='http://norman.walsh.name/2006/01/17/xmlLanguages#comment0003'/>
<id>http://norman.walsh.name/2006/01/17/xmlLanguages#comment0003</id>
<published>2006-01-17T18:55:17Z</published>
<updated>2006-01-17T18:55:17Z</updated>
<author>
  <name>Steve Loughran</name>
  <foaf:mbox_sha1sum>80f5e544ad8be8358acc31ca6ec24c5a20bb1291</foaf:mbox_sha1sum>
  <uri>http://www.1060.org/blogxter/publish/5</uri>
</author>
<content type='xhtml'><div xmlns="http://www.w3.org/1999/xhtml">The problem of what to do with unknown tags has existed since HTTP0.9. The early NeXT HTTP browser ignored unknown stuff, with consequences that were noted way back in 1993: <a rel='nofollow' href="http://catless.ncl.ac.uk/Risks/14.75.html#subj2.1">http://catless.ncl.ac.uk/Risks/14.75.html#subj2.1</a>
<p>
It was probably incidents like these that led to the current policy, one that caused problems the moment the script tag was added, hence most javascript element bodies hide the content in a comment, to stop the script ignorant browsers from displaying it.
</p>
<p>
It really does need improving. Maybe an attribute that set the notunderstood to either "skip" or "display". I don't approve of "fail" on unknown tags, as it would make too much stuff unreadable by odd browsers.
</p></div></content>
</entry>

<entry xmlns:foaf='http://xmlns.com/foaf/0.1/'>
<title>Comment 4 on /2006/01/17/xmlLanguages</title>
<link rel='alternate' type='text/html' href='http://norman.walsh.name/2006/01/17/xmlLanguages#comment0004'/>
<id>http://norman.walsh.name/2006/01/17/xmlLanguages#comment0004</id>
<published>2006-01-18T16:46:49Z</published>
<updated>2006-01-18T16:46:49Z</updated>
<author>
  <name>Elliotte Rusty Harold</name>
  <foaf:mbox_sha1sum>fcc9a2c3412d8d046a24619e3aa59dadeec7dc91</foaf:mbox_sha1sum>
  <uri>http://cafe.elharo.com/</uri>
</author>
<content type='xhtml'><div xmlns="http://www.w3.org/1999/xhtml"><p>The script element is the flip side of what I was complaining about in Norm's examples. The script should have been placed in  an attribute value because it's not intended for human readers. Then the problems wouldn't have arisen. Java got this right. It's surprising JavaScript didn't. 
</p><p>
Here's the rule: if you want people to read the text make it element content. If you want them not to see it, put it in an attribute value.
</p><p>
MustIgnore, MustUnderstand, and so forth are fundamentally bad ideas. The author of the document does not get to tell the reader what they do or do not or must or must not understand. The author does not get to specify what processing the reader does. Authorial intent is bogus and irrelevant.</p></div></content>
</entry>

<entry xmlns:foaf='http://xmlns.com/foaf/0.1/'>
<title>Comment 5 on /2006/01/17/xmlLanguages</title>
<link rel='alternate' type='text/html' href='http://norman.walsh.name/2006/01/17/xmlLanguages#comment0005'/>
<id>http://norman.walsh.name/2006/01/17/xmlLanguages#comment0005</id>
<published>2006-01-18T21:13:47Z</published>
<updated>2006-01-18T21:13:47Z</updated>
<author>
  <name>Norbert Lindenberg</name>
  <foaf:mbox_sha1sum>286c07e6c6ca6a920c49799d23da309b084af07e</foaf:mbox_sha1sum>
</author>
<content type='xhtml'><div xmlns="http://www.w3.org/1999/xhtml"><p>Elliotte, your solution works fine if both human readers and software are happy with the same representation of the data. But what if you want to show today&#8217;s date to your human readers as &#24179;&#25104;18&#24180;1&#26376;18&#26085;, while feeding 2006-01-18 to software?</p></div></content>
</entry>

</feed>
