<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Extended Dash</title>
	<atom:link href="http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/feed/" rel="self" type="application/rss+xml" />
	<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/</link>
	<description>Things that Eric A. Meyer, CSS expert, writes about on his personal Web site; it&#039;s largely Web standards and Web technology, but also various bits of culture, politics, personal observations, and other miscellaneous stuff</description>
	<lastBuildDate>Mon, 15 Mar 2010 16:37:39 -0400</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: Lachy’s Log  &#187; Blog Archive   &#187; Hixie’s Ruling and Composite Attribute</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-5125</link>
		<dc:creator>Lachy’s Log  &#187; Blog Archive   &#187; Hixie’s Ruling and Composite Attribute</dc:creator>
		<pubDate>Thu, 24 Feb 2005 08:46:34 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-5125</guid>
		<description>[...] hat a new DOCTYPE is not a good solution unless it were confined only to the dashboard. As I commented on for one of Eric Meyer&#8217;s posts, if Microsoft and  [...]</description>
		<content:encoded><![CDATA[<p>[...] hat a new DOCTYPE is not a good solution unless it were confined only to the dashboard. As I commented on for one of Eric Meyer&#8217;s posts, if Microsoft and  [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: J Christopher</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-444</link>
		<dc:creator>J Christopher</dc:creator>
		<pubDate>Tue, 13 Jul 2004 13:43:31 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-444</guid>
		<description>&lt;blockquote cite=&quot;http://www.meyerweb.com/eric/thoughts/2004/07/09/extended-dash/&quot;&gt;Dave has now done a test implementation of adding a default namespace for Dashboard widgets, using the namespace URI http://www.apple.com/2004/&lt;b&gt;xhtml&lt;/b&gt;-extended/.&lt;/blockquote&gt;

&lt;blockquote cite=&quot;http://www.meyerweb.com/eric/thoughts/2004/07/09/extended-dash/&quot;&gt;It was pointed out to me via e-mail that XHTML is perfect for this [...] except for Dave</description>
		<content:encoded><![CDATA[<blockquote cite="http://www.meyerweb.com/eric/thoughts/2004/07/09/extended-dash/"><p>Dave has now done a test implementation of adding a default namespace for Dashboard widgets, using the namespace URI <a href="http://www.apple.com/2004/" rel="nofollow">http://www.apple.com/2004/</a><b>xhtml</b>-extended/.</p></blockquote>
<blockquote cite="http://www.meyerweb.com/eric/thoughts/2004/07/09/extended-dash/"><p>It was pointed out to me via e-mail that XHTML is perfect for this [...] except for Dave</p></blockquote>
]]></content:encoded>
	</item>
	<item>
		<title>By: The Web Kit</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-418</link>
		<dc:creator>The Web Kit</dc:creator>
		<pubDate>Sat, 10 Jul 2004 17:04:53 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-418</guid>
		<description>&lt;strong&gt;Extending HTML&lt;/strong&gt;
As a Mac user, I&#039;ve been closely following news concerning the state of web browsers on the Macintosh platform, and particularly news concerning my two favorite browsers, Safari and OmniWeb. Like a number of other web enthusiasts, I was concerned...</description>
		<content:encoded><![CDATA[<p><strong>Extending HTML</strong><br />
As a Mac user, I&#8217;ve been closely following news concerning the state of web browsers on the Macintosh platform, and particularly news concerning my two favorite browsers, Safari and OmniWeb. Like a number of other web enthusiasts, I was concerned&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lachy</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-417</link>
		<dc:creator>Lachy</dc:creator>
		<pubDate>Sat, 10 Jul 2004 05:40:38 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-417</guid>
		<description>&lt;strong&gt; Safari&#039;s Pseudo-Solution&lt;/strong&gt;
Seriously, what is the point of adding it to HTML? Why not just do it correctly with XHTML? </description>
		<content:encoded><![CDATA[<p><strong> Safari&#8217;s Pseudo-Solution</strong><br />
Seriously, what is the point of adding it to HTML? Why not just do it correctly with XHTML?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: James</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-416</link>
		<dc:creator>James</dc:creator>
		<pubDate>Sat, 10 Jul 2004 05:26:46 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-416</guid>
		<description>From the XML point of view, re-namespacing the entire XHTML vocabulary seems like a bigger compatibility issue, since a namespace aware XML processor should treat &quot;http://www.w3.org/1999/xhtml h1&quot; elements as being distinct from &quot;http://www.apple.com/2004/xhtml-extended/ h1&quot; elements, for instance.  So rather than just creating a small number of new element types, we have a whole host of new ones.

I know that he says that in an XHTML document you&#039;d define an &quot;apple&quot; namespace prefix and only use it for &lt;apple:canvas&gt; elements and similar, but if Safari recognises all the other elements under this namespace, we could end up with pages on the web that display okay on Safari, but are unformatted on other browsers because it appears to be in a different XML dialect.

From the HTML perspective, it doesn&#039;t seem like such a big deal, since the namespace declaration will simply be ignored.  And if a future HTML spec is incompatible with these extensions, it provides a way to tell what the author intended.</description>
		<content:encoded><![CDATA[<p>From the XML point of view, re-namespacing the entire XHTML vocabulary seems like a bigger compatibility issue, since a namespace aware XML processor should treat &#8220;http://www.w3.org/1999/xhtml h1&#8243; elements as being distinct from &#8220;http://www.apple.com/2004/xhtml-extended/ h1&#8243; elements, for instance.  So rather than just creating a small number of new element types, we have a whole host of new ones.</p>
<p>I know that he says that in an XHTML document you&#8217;d define an &#8220;apple&#8221; namespace prefix and only use it for &lt;apple:canvas&gt; elements and similar, but if Safari recognises all the other elements under this namespace, we could end up with pages on the web that display okay on Safari, but are unformatted on other browsers because it appears to be in a different XML dialect.</p>
<p>From the HTML perspective, it doesn&#8217;t seem like such a big deal, since the namespace declaration will simply be ignored.  And if a future HTML spec is incompatible with these extensions, it provides a way to tell what the author intended.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ubiquitous minghong - My Blogger</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-415</link>
		<dc:creator>ubiquitous minghong - My Blogger</dc:creator>
		<pubDate>Sat, 10 Jul 2004 04:08:00 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-415</guid>
		<description>&lt;strong&gt;Please extend the web correctly&lt;/strong&gt;
Dave Hyatt is an open person who listens to comments. But unfortunately he seems to misunderstood the suggestions.

On his previous blog post, he mentioned 2 ways to extend the (X)HTML:

    * Namespace mechanism
    * New DOCTYPE declaration
...</description>
		<content:encoded><![CDATA[<p><strong>Please extend the web correctly</strong><br />
Dave Hyatt is an open person who listens to comments. But unfortunately he seems to misunderstood the suggestions.</p>
<p>On his previous blog post, he mentioned 2 ways to extend the (X)HTML:</p>
<p>    * Namespace mechanism<br />
    * New DOCTYPE declaration</p>
<p>&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Lachlan Hunt</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-413</link>
		<dc:creator>Lachlan Hunt</dc:creator>
		<pubDate>Sat, 10 Jul 2004 02:36:29 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-413</guid>
		<description>I think the idea of using a new &lt;code&gt;DOCTYPE&lt;/code&gt; is quite good, but I completely disagree when the purpose is to extend the language with presentational elements and attributes.  &lt;code&gt;&lt;canvas&gt;&lt;/code&gt; is quite clearly presentational.  Why couldn&#039;t they use &lt;code&gt;&lt;object&gt;&lt;/code&gt; to include a pre-written applet or other control that can do exactly what canvas is supposed to, or if not, then it should definately be included with a seperate namespace in a XHTML or other XML document.  As for the &lt;code&gt;compisite&lt;/code&gt; attribute for the &lt;code&gt;&lt;img/&gt;&lt;/code&gt; element, I can only assume it&#039;s something presentational that should definately go into a stylesheet, such as CSS.  Although, I don&#039;t particularly like proprietary CSS extensions, they&#039;re better than HTML because they don&#039;t pollute the markup, so they could always add it with their user agent prefix.  eg. &lt;code&gt;-safari-composite: &lt;em&gt;whatever&lt;/em&gt;;&lt;/code&gt; (or whatever their prefix is).

If Microsoft and Netscape had done what you are suggesting Safari do by creating a new &lt;code&gt;DOCTYPE&lt;/code&gt;, where would we be now?  We&#039;d have millions of websites using &lt;acronym title=&quot;Microsoft Internet Explorer Markup Language&quot;&gt;MSIEML&lt;/acronym&gt; or &lt;acronym title=&quot;Netscape Markup Langague&quot;&gt;NSML&lt;/acronym&gt;, and neither docuement would work well in the other browser, because of all the extra presentational elements and attributes that we may have ended up with (in addition to the ones we already have).  Whether this would be better or worse than the current sitution we&#039;re in (ie. most sites either don&#039;t use a doctype, or many of those that do don&#039;t validate against it) is debatable, but I think it would be worse because it would further encourage authors into believing that using presentational markup was acceptable.

I stand by what I said in my recent blog posting, &lt;a href=&quot;http://www.lachy.id.au/blogs/log/2004/07/exploring-safaris-html-tag-soup.html&quot;&gt;Exploring Safari&#039;s &lt;del&gt;&lt;abbr title=&quot;HyperText Markup Language&quot;&gt;HTML&lt;/abbr&gt;&lt;/del&gt; &lt;ins&gt;Tag-Soup&lt;/ins&gt; Extensions&lt;/a&gt;, in that the Safari team should &lt;em&gt;hang their heads in shame&lt;/em&gt; over these extensions.  However, if they were semantic extensions that actually contributed to the structure of the widget, then I might not be so against them, it&#039;s just that they&#039;re clearly presentational, and thus should not be included in a semantic language.</description>
		<content:encoded><![CDATA[<p>I think the idea of using a new <code>DOCTYPE</code> is quite good, but I completely disagree when the purpose is to extend the language with presentational elements and attributes.  <code>&lt;canvas&gt;</code> is quite clearly presentational.  Why couldn&#8217;t they use <code>&lt;object&gt;</code> to include a pre-written applet or other control that can do exactly what canvas is supposed to, or if not, then it should definately be included with a seperate namespace in a XHTML or other XML document.  As for the <code>compisite</code> attribute for the <code>&lt;img/&gt;</code> element, I can only assume it&#8217;s something presentational that should definately go into a stylesheet, such as CSS.  Although, I don&#8217;t particularly like proprietary CSS extensions, they&#8217;re better than HTML because they don&#8217;t pollute the markup, so they could always add it with their user agent prefix.  eg. <code>-safari-composite: <em>whatever</em>;</code> (or whatever their prefix is).</p>
<p>If Microsoft and Netscape had done what you are suggesting Safari do by creating a new <code>DOCTYPE</code>, where would we be now?  We&#8217;d have millions of websites using <acronym title="Microsoft Internet Explorer Markup Language">MSIEML</acronym> or <acronym title="Netscape Markup Langague">NSML</acronym>, and neither docuement would work well in the other browser, because of all the extra presentational elements and attributes that we may have ended up with (in addition to the ones we already have).  Whether this would be better or worse than the current sitution we&#8217;re in (ie. most sites either don&#8217;t use a doctype, or many of those that do don&#8217;t validate against it) is debatable, but I think it would be worse because it would further encourage authors into believing that using presentational markup was acceptable.</p>
<p>I stand by what I said in my recent blog posting, <a href="http://www.lachy.id.au/blogs/log/2004/07/exploring-safaris-html-tag-soup.html">Exploring Safari&#8217;s <del><abbr title="HyperText Markup Language">HTML</abbr></del> <ins>Tag-Soup</ins> Extensions</a>, in that the Safari team should <em>hang their heads in shame</em> over these extensions.  However, if they were semantic extensions that actually contributed to the structure of the widget, then I might not be so against them, it&#8217;s just that they&#8217;re clearly presentational, and thus should not be included in a semantic language.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Justin Makeig</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-412</link>
		<dc:creator>Justin Makeig</dc:creator>
		<pubDate>Sat, 10 Jul 2004 01:06:25 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-412</guid>
		<description>The notion that &lt;acronym title=&quot;eXtensible Markup Language&quot;&gt;XML&lt;/acronym&gt; namespaces are too difficult for the average &lt;acronym title=&quot;Hyper-Text Markup Language&quot;&gt;HTML&lt;/acronym&gt; coder is hyperbole, if you ask me. Namespaces are vital in any language/environment that allows for reuse and extension (think: Java packages). 
However, given that any conceivable implementation will most likely be built using a &lt;acronym title=&quot;Document Type Definition&quot;&gt;DTD&lt;/acronym&gt;, there is little utility in using namespaces. &lt;acronym title=&quot;Document Type Definition&quot;&gt;DTD&lt;/acronym&gt;s are namespace-agnostic by design. Pseudo-namespaces can be fudged by creating elements with semi-colons in their names.
My advice would be to move toward an &lt;acronym title=&quot;&quot;&gt;XML&lt;/acronym&gt; Schema to define gadgets. A custom schema would allow Apple engineers to create a lean and mean &lt;acronym title=&quot;Hyper-Text Markup Language&quot;&gt;HTML&lt;/acronym&gt;-like vocabulary, without the vagaries of any current &lt;acronym title=&quot;eXtensible Hyper-Text Markup Language&quot;&gt;X&lt;/acronym&gt;/&lt;acronym title=&quot;Hyper-Text Markup Language&quot;&gt;HTML&lt;/acronym&gt; implementations. The rendering engine that would consume these &lt;acronym title=&quot;eXtensible Markup Language&quot;&gt;XML&lt;/acronym&gt; instances could be significantly simplified from the current </description>
		<content:encoded><![CDATA[<p>The notion that <acronym title="eXtensible Markup Language">XML</acronym> namespaces are too difficult for the average <acronym title="Hyper-Text Markup Language">HTML</acronym> coder is hyperbole, if you ask me. Namespaces are vital in any language/environment that allows for reuse and extension (think: Java packages).<br />
However, given that any conceivable implementation will most likely be built using a <acronym title="Document Type Definition">DTD</acronym>, there is little utility in using namespaces. <acronym title="Document Type Definition">DTD</acronym>s are namespace-agnostic by design. Pseudo-namespaces can be fudged by creating elements with semi-colons in their names.<br />
My advice would be to move toward an <acronym title="">XML</acronym> Schema to define gadgets. A custom schema would allow Apple engineers to create a lean and mean <acronym title="Hyper-Text Markup Language">HTML</acronym>-like vocabulary, without the vagaries of any current <acronym title="eXtensible Hyper-Text Markup Language">X</acronym>/<acronym title="Hyper-Text Markup Language">HTML</acronym> implementations. The rendering engine that would consume these <acronym title="eXtensible Markup Language">XML</acronym> instances could be significantly simplified from the current</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: ken</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-411</link>
		<dc:creator>ken</dc:creator>
		<pubDate>Fri, 09 Jul 2004 23:00:27 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-411</guid>
		<description>This is a possible suggestion for Dave - there&#039;s no version number in his proposed identifier.  Maybe it&#039;d be safer to have one.</description>
		<content:encoded><![CDATA[<p>This is a possible suggestion for Dave &#8211; there&#8217;s no version number in his proposed identifier.  Maybe it&#8217;d be safer to have one.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Hixie's Natural Log: Extending HTML</title>
		<link>http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-433</link>
		<dc:creator>Hixie's Natural Log: Extending HTML</dc:creator>
		<pubDate>Wed, 30 Nov -0001 00:00:00 +0000</pubDate>
		<guid isPermaLink="false">http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comment-433</guid>
		<description>[...] There are other problems with DOCTYPEs. Eric unintentionally reminded me of one when he &lt;a href=&quot;http://www.meyerweb.com/eric/thoughts/2004/07/09/extended-dash/&quot;&gt;said&lt;/a&gt;:  IBM already does something like this, having created an &quot;IBM XHTML 1.1 [...]</description>
		<content:encoded><![CDATA[<p>[...] There are other problems with DOCTYPEs. Eric unintentionally<br />
 reminded me of one when he <a href="http://www.meyerweb.com/eric/thoughts/2004/07/09/extended-dash/">said</a>:</p>
<p> IBM<br />
 already does something like this, having created an &#8220;IBM XHTML 1.1 [...]</p>
]]></content:encoded>
	</item>
</channel>
</rss>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head profile="http://gmpg.org/xfn/1">
<title>meyerweb.com</title>
<link rel="openid.server" href="http://www.myopenid.com/server">
<link rel="openid.delegate" href="http://emeyer.myopenid.com/">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"><link rel="shortcut icon" href="/favicon.ico"><link rel="home" href="http://meyerweb.com/" title="Home" ><link rel="stylesheet" href="http://meyerweb.com/ui/meyerweb.css" type="text/css" media="screen, projection"><link rel="stylesheet" href="http://meyerweb.com/ui/theme.css" type="text/css" media="screen, projection" id="themeLink"><link rel="stylesheet" href="http://meyerweb.com/ui/print.css" type="text/css" media="print"><script src="http://meyerweb.com/ui/addresses.js" type="text/javascript"></script><link rel="stylesheet" href="/ui/wordpress.css" type="text/css" media="screen">
<link rel="stylesheet" href="/ui/tfe.css" type="text/css" media="screen">
<link rel="stylesheet" href="/ui/home.css" type="text/css" media="screen">
<link rel="alternate" type="application/rss+xml" title="Thoughts From Eric" href="/eric/thoughts/rss2/full" />
<link rel="alternate" type="application/rss+xml" title="Thoughts From Eric (only technical posts)" href="/eric/thoughts/category/tech/rss2/full" />
<link rel="alternate" type="application/rss+xml" title="Thoughts From Eric (only personal posts)" href="/eric/thoughts/category/personal/rss2/full" />
<link rel="alternate" type="application/rss+xml" title="Distractions" href="/eric/thoughts/recent-links/rss2" />
<link rel="alternate" type="application/rss+xml" title="Excuse of the Day" href="/feeds/excuse/rss20.xml" />
</head>
<body id="www-meyerweb-com" class="hpg">

<div id="sitemast"><h1><a href="/"><span>meyerweb</span>.com</a></h1></div><div id="search"><h4>Exploration</h4><!-- SiteSearch Google --><form method="get" action="http://www.google.com/custom" target="_top"><div><input type="hidden" name="domains" value="meyerweb.com"></input><label for="sbb" style="display: none">Submit search form</label><input type="submit" name="sa" value="Google Search" id="sbb"></input><label for="sbi" style="display: none">Enter your search terms</label><input type="text" name="q" size="31" maxlength="255" value="" id="sbi"></input><p><input type="radio" name="sitesearch" value="meyerweb.com" checked id="ss1"></input><label for="ss1" title="Search meyerweb.com">meyerweb.com</label><input type="radio" name="sitesearch" value="" id="ss0"></input><label for="ss0" title="Search the Web">Web</label></p><input type="hidden" name="client" value="pub-3772084027748653"></input><input type="hidden" name="forid" value="1"></input><input type="hidden" name="ie" value="ISO-8859-1"></input><input type="hidden" name="oe" value="ISO-8859-1"></input><input type="hidden" name="safe" value="active"></input><input type="hidden" name="cof" value="GALT:#008000;GL:1;DIV:#336699;VLC:663399;AH:center;BGC:FFFFFF;LBGC:336699;ALC:0000FF;LC:0000FF;T:000000;GFNT:0000FF;GIMP:0000FF;FORID:1"></input><input type="hidden" name="hl" value="en"></input></div></form><!-- SiteSearch Google --><!-- <form method="get" action="http://www.google.com/custom"><div><input type="submit" name="sa" value="Search"><input type="text" name="q" size="20" maxlength="255" value=""><input type="hidden" name="sitesearch" value="meyerweb.com"></div></form><small><a href="http://www.google.com/search">Powered by Google</a></small> --></div><div id="main"><div class="skipper">Skip to: <a href="#extra">site navigation/presentation</a></div><div class="skipper">Skip to: <a href="#thoughts">Thoughts From Eric</a></div>
<div id="thoughts">


<div class="entry">
<h3><a href="http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/" rel="bookmark" title="Permanent Link: Extended Dash">Extended Dash</a></h3>
<ul class="meta">
<li class="date">Fri 9 Jul 2004</li>
<li class="time">1819</li>
<li class="cat"><a href="http://meyerweb.com/eric/thoughts/category/tech/browsers/" title="View all posts in Browsers" rel="category tag">Browsers</a><br> <a href="http://meyerweb.com/eric/thoughts/category/tech/mac/" title="View all posts in Mac" rel="category tag">Mac</a><br> <a href="http://meyerweb.com/eric/thoughts/category/tech/standards/" title="View all posts in Standards" rel="category tag">Standards</a></li>
<li class="cmt"><a href="http://meyerweb.com/eric/thoughts/2004/07/09/extended-dash/#comments">10 responses</a></li>
<li></li><li></li></ul>

<div class="text">
<p>
It&#8217;s been interesting to see the back-and-forth over <a href="http://www.apple.com/macosx/tiger/dashboard.html">Dashboard</a> the past few days.  <a href="http://weblogs.mozillazine.org/hyatt/" title="Surfin' Safari" rel="colleague met">Dave</a>&#8217;s posts have been greatly illuminating, and I belatedly discovered <a href="http://www.tbray.org/ongoing/" rel="met">Tim Bray</a>&#8217;s <a href="http://www.tbray.org/ongoing/When/200x/2004/07/05/SafariExt" title="Party Like It's 1996!">initial reaction</a> and <a href="http://www.tbray.org/ongoing/When/200x/2004/07/08/SafariHTML" title="How To Grow HTML">further thoughts</a> on the topic.  Dave has now <a href="http://weblogs.mozillazine.org/hyatt/archives/2004_07.html#005951" title="mplementation of HTML Extensions Proposal">done a test implementation</a> of adding a default namespace for Dashboard widgets, using the namespace URI <code>http://www.apple.com/2004/xhtml-extended/</code>.  That doesn&#8217;t (yet?) point to an actual document, but that&#8217;s okay; URIs don&#8217;t have to refer to a specific resource.  They just have to be unique.  This is in contrast to URLs, which in theory have to point to something that actually exists.  Although clearly reality has a long way to go before it catches up with <em>that</em> theory.
</p>
<p>
As Dave points out, his approach not only makes it possible for HTML to be extended without breaking with existing standards, it also provides a handy &#8220;pay attention to the Dashboard stuff&#8221; trigger <em>and</em> it opens a clear path toward supporting XML-based widgets in the future.  This is all kinds of cool, and I can&#8217;t see any real drawbacks.  If you do, let Dave know, or comment on this post; I&#8217;ll collect them (since Dave doesn&#8217;t presently have commenting on his site) for his review.
</p>
<p>
Despite it being Dave&#8217;s second choice, the &#8220;create a new DOCTYPE&#8221; idea is something I want to discuss in a little more detail, if only to illustrate how it can work.  Here&#8217;s a markup example of an amazingly stupid and useless widget using a hypothetical DashboardML DTD.
</p>
<pre>
&lt;!DOCTYPE html SYSTEM
  "http://www.apple.com/dtd/2004/dashboardml-10.dtd"&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;myWidget&lt;/title&gt;
&lt;style type="text/css"&gt;
body {background: aquamarine;}
&lt;/style&gt;
&lt;script type="text/javascript"&gt;
function startup() {
  alert('Happy!  Joy!');
}
&lt;/script&gt;
&lt;/head&gt;
&lt;body onload="startup();"&gt;
&lt;canvas blah="foo" yadda="baz"&gt;
&lt;h1&gt;Widget!&lt;/h1&gt;
&lt;div class="main"&gt;
&lt;p&gt;So cool.&lt;/p&gt;
&lt;p&gt;So fine.&lt;/p&gt;
&lt;/div&gt;
&lt;img src="yar.gif" composite="punchout" alt="Yar!"&gt;
&lt;p id="footer"&gt;copyleft nobody&lt;/p&gt;
&lt;/body&gt;
&lt;/html&gt;
</pre>

<p>
By referring to a DTD defining a language that looks just like HTML except for the <code>canvas</code> element and <code>composite</code> attribute, along with any other additions, the markup stays free of explicit namespacing and works the way authors already expect.  It really is that simple.  <a href="http://www.ibm.com/">IBM</a> already does something like this, having created an <a href="http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd">&#8220;IBM XHTML 1.1 Transitional&#8221; DTD</a> that&#8217;s used throughout their Web presence.  The comments at the top of the DTD file explain how it&#8217;s different than regular old XHTML, but the executive summary is that it permits some old table-and-spacer-era markup hacks in an XHTML environment.  If you run an IBM-XHTML compliant document through a validator that loads and uses IBM&#8217;s DTD to check over the document&#8217;s markup, then <em>the document will validate</em>.  The same thing could be done for Dashboard&mdash;or for any other project, really.  That&#8217;s the beauty of it.  We aren&#8217;t constrained to HTML any more, nor even to XHTML.  We&#8217;re only constrained by what clients will support&#8230; as always.
</p>
<p>
(It was pointed out to me via e-mail that XHTML is perfect for this, because it&#8217;s already modularized so all you have to do is tack on another module.  That would be quite true, except for <a href="http://weblogs.mozillazine.org/hyatt/archives/2004_07.html#005928" title="On Extending HTML">Dave&#8217;s statement</a> that the Dashboard widgets won&#8217;t be using XHTML.)
</p>
<p>
The other potential problem with my suggestion, according to Dave, is that the DOCTYPE is used to pick a rendering mode in current browsers.  Dave says he doesn&#8217;t want to restrict widget authors to one mode or the other.  Now, I&#8217;d personally have no problem forcing all widgets to be rendered in standards mode, but that&#8217;s probably just my inner purist talking.  If it were important to allow quirks mode, then create a transitional DashboardML DOCTYPE that triggers it; use the default (above) for triggering standards mode.  This would be consistent with current DOCTYPE switching schemes.
</p>
<p>
Regardless, at this point, I think we&#8217;re pretty well assured that things are headed in the right direction.  That&#8217;s very much thanks to Dave&#8217;s openness and genuine interest in doing the right thing, not to mention his swift response times.  Where things go from here, we&#8217;ll see, both at <a href="http://weblogs.mozillazine.org/hyatt/" title="Surfin' Safari" rel="colleague met">Surfin&#8217; Safari</a> and (I expect) by way of submissions to and work by the <a href="http://www.whatwg.org/" title="Web Hypertext Application Technology Working Group">WHAT WG</a>&mdash;which itself will be the subject of a post in the near future.
</p></div>

</div>

</div>
<p style="font-size: 90%; text-align: right; margin-top: 0.5em; padding-top: 0;">(If you care, there's even an <a href="/eric/thoughts/page/2/">archive of previous thoughts</a>...)</p>

</div><div id="extra"><div class="panel" id="archipelago"><h4>Identity Archipelago</h4><ul><li><a href="http://flickr.com/photos/meyerweb/" rel="me">Flickr</a></li><li><a href="http://twitter.com/meyerweb/" rel="me">Twitter</a></li><li><a href="http://dopplr.com/traveller/meyerweb">Dopplr</a></li><li><a href="http://www.linkedin.com/in/meyerweb" rel="me">LinkedIn</a></li><li><a href="http://technorati.com/profile/emeyer" rel="me">Technorati</a></li></ul></div><div class="panel" id="pointers"><h4>Projects Elsewhere</h4><ul><li><a href="http://aneventapart.com/">An Event Apart</a></li><li><a href="http://complexspiral.com/">Complex Spiral Consulting</a></li><li><a href="http://www.webassist.com/go/css/emeyer/">CSS Sculptor</a></li><li><a href="http://css-discuss.org/">css-discuss</a></li><li><a href="http://microformats.org/">Microformats</a></li><li><a href="http://s5project.org/">S5</a></li></ul></div><div class="panel" id="tour"><ul><li><a href="http://fray.com/issue3/"><img src="http://fray.com/images/i3c.gif" alt="Fray Contributor (Issue 3: Sex &amp; Death)" /></a></li><!-- <li><a href="http://www.webassist.com/go/css/emeyer/"><img src="/pix/CS_ad_180x109.jpg" alt="CSS Sculptor for Dreamweaver" style="max-width: 100%;" /></a></li> --></ul></div><div class="panel">
<h4>Recently Tweeted</h4>
<p class="more"><a href="http://twitter.com/meyerweb">see more</a></p>
<p>Sad to see <a href="http://twitter.com/continental">@continental</a> moving to a food-for-fee model in economy.  A big step toward attaining the awfulness of other airlines. <small>&#8211;tweeted 3 hours, 45 minutes ago</small></p>
</div><div id="sideblog" class="panel">
<h4>Distractions</h4>
<p class="more">
<a href="/eric/thoughts/recent-links/">archive</a>
</p>
<ul>
<li><a href="http://www.youtube.com/watch?v=nFicqklGuB0&amp;feature=player_embedded" title="March 12 | Wry comment expressing my appreciation of the creative derivativeness of this video and its uncanny accuracy in mocking common tropes.">Academy Award Winning Movie Trailer</a></li>
<li><a href="http://www.youtube.com/watch?v=414TmP12WAU" title="March 9 | &#8220;Apple juice&#8230; for half price!&#8221;  More like twice PRICELESS.  (Note: If you&#8217;re at work, don your headphones.)">Happy in Paraguay</a> <small>[via <a href="http://unstoppablerobotninja.com/">Ethan</a>]</small></li>
<li><a href="http://www.youtube.com/watch?v=9V5ubAOeOBk&amp;feature=player_embedded" title="February 10 | This is approximately the best thing ever.">U900 -Walk Don&#8217;t Run (Isogabamaware)</a></li>
<li><a href="http://www.456bereastreet.com/archive/201002/sifr_default_css_hides_content_from_at_least_one_screen_reader/?utm_source=feedburner&amp;utm_medium=feed&amp;utm_campaign=Feed%3A 456bereastreet %28456 Berea Street%29" title="February 8 | -9999px comes through again, but I really wish we were beyond that kind of thing.">sIFR default CSS hides content from at least one screen reader</a></li>
<li><a href="http://www.macosxhints.com/article.php?story=20100117064356428" title="February 8 | Storing this for future use.">Take a picture with the iSight camera when a folder is opened</a></li>
<li><a href="http://mingle2.com/blog/view/web-developer-mind" title="February 4 | Mostly valid.  (SEE WHAT I DID THERE?)">The Mind of a Web Developer: An Illustrated Diagram</a></li>
<li><a href="http://www.theonion.com/content/news/science_channel_refuses_to_dumb" title="January 28 | &#8220;Punkin Chunkin, for Christ&#8217;s sake&#8230; What more do you people want?&#8221;">Science Channel Refuses To Dumb Down Science Any Further</a></li>
<li><a href="http://www.mailchimp.com/blog/project-omnivore-declassified/" title="January 27 | Sounds like quite a feat.  But I wonder how we&#8217;d feel if Microsoft or Google announced the same kind of thing on their e-mail services.">MailChimp&#8217;s Project Omnivore: Declassified</a></li>
<li><a href="http://www.politifact.com/truth-o-meter/statements/2010/jan/25/carolyn-maloney/congresswoman-says-democratic-presidents-create-mo/" title="January 26 | &#8220;Obviously, luck matters a lot, but when there is a consistent pattern over more than 60 years, it starts to look like more than just luck.&#8221;">Congresswoman says Democratic presidents create more private-sector jobs</a></li>
<li><a href="http://www.ted.com/talks/taylor_mali_what_teachers_make.html" title="January 25 | Truth.">Taylor Mali: What teachers make</a></li>
<li><a href="http://notebook.johnmartz.com/how-websites-work?c=1" title="January 22 | At last, the truth is out and I can stop pretending:  beatific monkeys are what makes it all go.">How websites work</a></li>
<li><a href="http://morsecode.scphillips.com/jtranslator.html" title="January 22 | &#8211; &#8230;. .. &#8230; / .. &#8230; / .- .&#8211; . &#8230; &#8212; &#8212; . / -. &#8212; / &#8230; . .-. .. &#8212; ..- &#8230; .-.. -.&#8211;">Morse Code Translator</a></li>
<li><a href="http://bengoldacre.posterous.com/did-aliens-play-a-role-in-woolworths" title="January 19 | I think the answer is clear to any who have the courage to see it.">Did aliens play a role in Woolworths?</a></li>
</ul>
</div>
<div class="panel" id="advisory">
<div class="guarded">
<a href="http://blogadvisorysystem.com/"><img src="/pix/bas/guarded.png" alt="Blog Advisory System Alert Level: Guarded"></a>
</div>
</div>

<div class="panel" id="excuse">
<h4>The <a href="/feeds/excuse/">excuse of the day</a> is</h4>
<p>dark matter anomalies</p>
</div>

<div class="panel" id="extras">
<h4>Extras</h4>
<ul>
<li><a href="/feeds/">Feeds</a> &#8226;</li>
<li><a href="/eric/faq.html">FAQ</a> &#8226;</li>
<li><a href="/family.html">Family</a></li>
</ul>
</div>

</div>

<div id="navigate">
<h4>Navigation</h4>
<ul id="navlinks">
<li id="archLink"><a href="/eric/thoughts/">Archives</a></li>
<li id="cssLink"><a href="/eric/css/">CSS</a></li>
<li id="toolsLink"><a href="/eric/tools/">Toolbox</a></li>
<li id="writeLink"><a href="/eric/writing.html">Writing</a></li>
<li id="speakLink"><a href="/eric/talks/">Speaking</a></li>
<li id="otherLink"><a href="/other/">Leftovers</a></li>
<li id="aboutsite"><a href="/ui/about.html">About this site</a></li>
</ul>
</div>

<div id="footer">
<p class="sosumi">All contents of this site, unless otherwise noted, are &copy;1995-2008 <strong>Eric A. and Kathryn S. Meyer</strong>.  All Rights Reserved.</p>
<p>"<a href="/eric/thoughts/">Thoughts From Eric</a>" is powered by the &uuml;bercool <a href="http://wordpress.org/">WordPress</a></p>
</div>
</body>
</html>
