<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
		>
<channel>
	<title>Comments on: .aspx considered harmful</title>
	<atom:link href="http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/</link>
	<description>Strategies for Internet citizens</description>
	<lastBuildDate>Thu, 18 Mar 2010 03:25:17 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: J. Boye &#187; Blog Archive &#187; Smart practitioners have harmless URLs</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-126151</link>
		<dc:creator>J. Boye &#187; Blog Archive &#187; Smart practitioners have harmless URLs</dc:creator>
		<pubDate>Mon, 15 Dec 2008 22:56:38 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-126151</guid>
		<description>[...] to go away. Microsoft&#8217;s very own Jon Udell started 2008 with a very nicely written comment on .aspx considered harmful, but still .aspx is the standard and difficult to change default used in most SharePoint [...]</description>
		<content:encoded><![CDATA[<p>[...] to go away. Microsoft&#8217;s very own Jon Udell started 2008 with a very nicely written comment on .aspx considered harmful, but still .aspx is the standard and difficult to change default used in most SharePoint [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: andyskipper.com - freelance web developer in london</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122473</link>
		<dc:creator>andyskipper.com - freelance web developer in london</dc:creator>
		<pubDate>Thu, 07 Feb 2008 22:26:15 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122473</guid>
		<description>[...] .aspx considered harmful « Jon Udell (tags: asp.net url) [...]</description>
		<content:encoded><![CDATA[<p>[...] .aspx considered harmful « Jon Udell (tags: asp.net url) [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stu Smith</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122447</link>
		<dc:creator>Stu Smith</dc:creator>
		<pubDate>Wed, 06 Feb 2008 15:46:57 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122447</guid>
		<description>If anyone&#039;s interested, I have code that lets you do this easily in &quot;standard&quot; ASP.NET (i.e. no MVC needed). It supports postbacks nicely too, and allows remapping to parameters, for example:

Foo/*/Edit -&gt; Foo/Edit.aspx?f={0}

I&#039;ve been thinking for a while about packaging it all up (for example, I also have code that lets you use UserControls from separate assemblies in ASP.NET, something that isn&#039;t supported &#039;out of the box&#039;), so if anyone fancies testing it in return for essentially a free licence, drop me an email (stu &#039;at&#039; feedghost &#039;dot&#039; com).</description>
		<content:encoded><![CDATA[<p>If anyone&#8217;s interested, I have code that lets you do this easily in &#8220;standard&#8221; ASP.NET (i.e. no MVC needed). It supports postbacks nicely too, and allows remapping to parameters, for example:</p>
<p>Foo/*/Edit -&gt; Foo/Edit.aspx?f={0}</p>
<p>I&#8217;ve been thinking for a while about packaging it all up (for example, I also have code that lets you use UserControls from separate assemblies in ASP.NET, something that isn&#8217;t supported &#8216;out of the box&#8217;), so if anyone fancies testing it in return for essentially a free licence, drop me an email (stu &#8216;at&#8217; feedghost &#8216;dot&#8217; com).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Attempting some permalink magic &#124; Dave Bost</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122350</link>
		<dc:creator>Attempting some permalink magic &#124; Dave Bost</dc:creator>
		<pubDate>Tue, 29 Jan 2008 04:28:57 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122350</guid>
		<description>[...] This was in response to a blog post Tim came across that caught his attention entitled &#8216;.aspx considered harmful&#8217;. The point in contention is how file types, as part of a blog posting&#8217;s url, is a bad thing [...]</description>
		<content:encoded><![CDATA[<p>[...] This was in response to a blog post Tim came across that caught his attention entitled &#8216;.aspx considered harmful&#8217;. The point in contention is how file types, as part of a blog posting&#8217;s url, is a bad thing [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Doc Searls: It&#8217;s too hard to find and share the coolness of Live Maps &#171; Jon Udell</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122311</link>
		<dc:creator>Doc Searls: It&#8217;s too hard to find and share the coolness of Live Maps &#171; Jon Udell</dc:creator>
		<pubDate>Fri, 25 Jan 2008 16:16:09 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122311</guid>
		<description>[...] turns out that you don&#8217;t need the default.aspx, and it seems that the minimal working version of that URL [...]</description>
		<content:encoded><![CDATA[<p>[...] turns out that you don&#8217;t need the default.aspx, and it seems that the minimal working version of that URL [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Frederick Townes</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122267</link>
		<dc:creator>Frederick Townes</dc:creator>
		<pubDate>Tue, 22 Jan 2008 14:50:53 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122267</guid>
		<description>A bit of an aside, though relevant in one regard. I feel that open standards for presentation (CSS) and markup (HTML) still need more standarization and popularity for that matter. Once the above are coupled with complete functionalality seperation, the extension of documents would certainly be less relevant. I think what I describe is exactly what was intended rather than diversification of document types of which only the web server itself needs to be aware.</description>
		<content:encoded><![CDATA[<p>A bit of an aside, though relevant in one regard. I feel that open standards for presentation (CSS) and markup (HTML) still need more standarization and popularity for that matter. Once the above are coupled with complete functionalality seperation, the extension of documents would certainly be less relevant. I think what I describe is exactly what was intended rather than diversification of document types of which only the web server itself needs to be aware.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Udell</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122264</link>
		<dc:creator>Jon Udell</dc:creator>
		<pubDate>Tue, 22 Jan 2008 13:48:39 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122264</guid>
		<description>&quot;You yourself wrote about contextual problems:
http://jonudell.net/bytecols/2001-05-30.html&quot;

Wow. :-)

&quot;Skip the generic.&quot;

Hmm. Today&#039;s entry suggests one way that can work. 

http://blog.jonudell.net/2008/01/22/bloggers-talk-to-bloggers-scientists-talk-to-scientists/

Whether or not bloggers cite generic DOIs or PubMed URLs, those forms could be discovered by the citation engines and used to thread conversation together much better than happens now.</description>
		<content:encoded><![CDATA[<p>&#8220;You yourself wrote about contextual problems:<br />
<a href="http://jonudell.net/bytecols/2001-05-30.html" rel="nofollow">http://jonudell.net/bytecols/2001-05-30.html</a>&#8221;</p>
<p>Wow. :-)</p>
<p>&#8220;Skip the generic.&#8221;</p>
<p>Hmm. Today&#8217;s entry suggests one way that can work. </p>
<p><a href="http://blog.jonudell.net/2008/01/22/bloggers-talk-to-bloggers-scientists-talk-to-scientists/" rel="nofollow">http://blog.jonudell.net/2008/01/22/bloggers-talk-to-bloggers-scientists-talk-to-scientists/</a></p>
<p>Whether or not bloggers cite generic DOIs or PubMed URLs, those forms could be discovered by the citation engines and used to thread conversation together much better than happens now.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Richard Morton</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122262</link>
		<dc:creator>Richard Morton</dc:creator>
		<pubDate>Tue, 22 Jan 2008 13:31:19 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122262</guid>
		<description>I don&#039;t think that the extension is that important, providing it doesn&#039;t have query strings etc. It is a slight distraction, and can make life more difficult if taking a URL over the phone, or trying to remember a URL and having to use some guesswork for the extension. 

I can see the elegance of URLs like http://example.com/item but the disadvantage to my mind is that it doesn&#039;t pass the Steve Krug &quot;Don&#039;t make me think&quot; test. In other words if I am typing in a URL like that it is probably 50/50 that I might assume that item is the name of a folder and thus type http://example.com/item/</description>
		<content:encoded><![CDATA[<p>I don&#8217;t think that the extension is that important, providing it doesn&#8217;t have query strings etc. It is a slight distraction, and can make life more difficult if taking a URL over the phone, or trying to remember a URL and having to use some guesswork for the extension. </p>
<p>I can see the elegance of URLs like <a href="http://example.com/item" rel="nofollow">http://example.com/item</a> but the disadvantage to my mind is that it doesn&#8217;t pass the Steve Krug &#8220;Don&#8217;t make me think&#8221; test. In other words if I am typing in a URL like that it is probably 50/50 that I might assume that item is the name of a folder and thus type <a href="http://example.com/item/" rel="nofollow">http://example.com/item/</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Max Design - standards based web design, development and training &#187; Some links for light reading (22/1/08)</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122261</link>
		<dc:creator>Max Design - standards based web design, development and training &#187; Some links for light reading (22/1/08)</dc:creator>
		<pubDate>Tue, 22 Jan 2008 12:18:42 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122261</guid>
		<description>[...] .aspx considered harmful [...]</description>
		<content:encoded><![CDATA[<p>[...] .aspx considered harmful [...]</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gumnos (Tim Chase)</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122256</link>
		<dc:creator>Gumnos (Tim Chase)</dc:creator>
		<pubDate>Mon, 21 Jan 2008 21:59:51 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122256</guid>
		<description>[quote]
Right. We send Accept as you say, but we don’t send Prefer, even though I almost always prefer, say, HTML (if available) to PDF.
[/quote]

Preference also requires a context.  We may  &quot;almost always prefer HTML&quot;, but I&#039;d rather http://example.com/styx/come-sail-away come back as MP3 or OGG than as HTML or PDF.  And heaven help us if it came back as XLS...

You yourself wrote about contextual problems:
http://jonudell.net/bytecols/2001-05-30.html
only at the time, you were addressing file-systems, not the web.  But in a way the web is just a glorified file-system, so I&#039;d say it still holds, and you can claim prognostication bragging rights. :)

[quote]
&quot;The question then becomes &#039;How does one standardize the representation of a 300 response so that it can be processed using a known vocabulary?&#039;&quot;

That’s a really good question! 
[/quote]

My answer:  Skip the generic.  It becomes a mostly useless (read &quot;underdefined) way of redirecting to alternate formats.  Instead, just reference a particular (such as http://jonudell.net/phd-thesis.html ) and then within that (a known ontology), link to other formats.  This is done all the time with HTML links.  The MP3 version of your thesis may have you speaking the reference &quot;This presentation of my thesis is available online at http://jonudell.net/phd-thesis.pdf and the slides are available at http://jonudell.net/phd-thesis.ppt&quot;.  The PDF version may have a link to http://jonudell.net/phd-thesis.avi for the video of your presentation.

-Tim</description>
		<content:encoded><![CDATA[<p>[quote]<br />
Right. We send Accept as you say, but we don’t send Prefer, even though I almost always prefer, say, HTML (if available) to PDF.<br />
[/quote]</p>
<p>Preference also requires a context.  We may  &#8220;almost always prefer HTML&#8221;, but I&#8217;d rather <a href="http://example.com/styx/come-sail-away" rel="nofollow">http://example.com/styx/come-sail-away</a> come back as MP3 or OGG than as HTML or PDF.  And heaven help us if it came back as XLS&#8230;</p>
<p>You yourself wrote about contextual problems:<br />
<a href="http://jonudell.net/bytecols/2001-05-30.html" rel="nofollow">http://jonudell.net/bytecols/2001-05-30.html</a><br />
only at the time, you were addressing file-systems, not the web.  But in a way the web is just a glorified file-system, so I&#8217;d say it still holds, and you can claim prognostication bragging rights. :)</p>
<p>[quote]<br />
&#8220;The question then becomes &#8216;How does one standardize the representation of a 300 response so that it can be processed using a known vocabulary?&#8217;&#8221;</p>
<p>That’s a really good question!<br />
[/quote]</p>
<p>My answer:  Skip the generic.  It becomes a mostly useless (read &#8220;underdefined) way of redirecting to alternate formats.  Instead, just reference a particular (such as <a href="http://jonudell.net/phd-thesis.html" rel="nofollow">http://jonudell.net/phd-thesis.html</a> ) and then within that (a known ontology), link to other formats.  This is done all the time with HTML links.  The MP3 version of your thesis may have you speaking the reference &#8220;This presentation of my thesis is available online at <a href="http://jonudell.net/phd-thesis.pdf" rel="nofollow">http://jonudell.net/phd-thesis.pdf</a> and the slides are available at <a href="http://jonudell.net/phd-thesis.ppt" rel="nofollow">http://jonudell.net/phd-thesis.ppt</a>&#8220;.  The PDF version may have a link to <a href="http://jonudell.net/phd-thesis.avi" rel="nofollow">http://jonudell.net/phd-thesis.avi</a> for the video of your presentation.</p>
<p>-Tim</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Udell</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122254</link>
		<dc:creator>Jon Udell</dc:creator>
		<pubDate>Mon, 21 Jan 2008 18:18:43 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122254</guid>
		<description>&quot;The question then becomes “How does one standardize the representation of a 300 response so that it can be processed using a known vocabulary?”.&quot;

That&#039;s a really good question! 

&quot;There is no web browser designed to let us choose which representation we want&quot;

Right. We send Accept as you say, but we don&#039;t send Prefer, even though I almost always prefer, say, HTML (if available) to PDF.</description>
		<content:encoded><![CDATA[<p>&#8220;The question then becomes “How does one standardize the representation of a 300 response so that it can be processed using a known vocabulary?”.&#8221;</p>
<p>That&#8217;s a really good question! </p>
<p>&#8220;There is no web browser designed to let us choose which representation we want&#8221;</p>
<p>Right. We send Accept as you say, but we don&#8217;t send Prefer, even though I almost always prefer, say, HTML (if available) to PDF.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gumnos (Tim Chase)</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122253</link>
		<dc:creator>Gumnos (Tim Chase)</dc:creator>
		<pubDate>Mon, 21 Jan 2008 15:16:40 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122253</guid>
		<description>[quote]
From this point of view there’s just no point in try to make URLs more DOI-like. With a DOI, you wind up in the same place as you propose: You’re always going to get redirected.
[/quote]

So yes, DOI&#039;s are helpful for referencing something in the generic, but to obtain a usable representation, you have to request it in the specific.  For your example, that means http://example.com/judell/phd-thesis may be what I cite, but when I fetch it, do I want the PDF version?  the HTML version? the plain-text version?  or perhaps an XML version?  Maybe I want your spoken variant, in which case do I want it in MP3, OGG, Flac, Speex, WAV, WMA, or any of a bajillion other formats.  Perhaps I want a video of you reading your thesis and defending it so I can see your slides in the background, so I request the .MOV or .AVI version.

The question then becomes &quot;How does one standardize the representation of a 300 response so that it can be processed using a known vocabulary?&quot;.  There are an arbitrary number of facets to explore with a variety of metadata to attach, making XML (or YAML) a good candidate for representation of a 300&#039;s content.

Using the example of a PhD thesis, you may want to convey in your 300 response an arbitrary number of facets:  Rendering integrity, data/meta-data integrity, quality, size, copyright licensing, etc.  The possibilities are fairly limitless:

====================
Rendering integrity:  PDF or PS may be photo-exact and resolution independent; GIF/JPG/PNG may be photo-exact, but resolution dependent;  HTML may be close in presentation and resolution independent; TXT may be a mere skeleton of the printed version.

Data/meta-data integrity:  rendering your thesis as GIF/JPG/PNG loses a lot of information; rendering as PDF/PS/TXT loses some information but the content may still be searchable; rendering as HTML keeps some of the structural information in addition to the content; and XML may offer the strongest structuring for representation of internal structure and meta-data.

Quality (related to rendering integrity) and Size: rendering your thesis as MP3/OGG vs. FLAC vs. Speex, there&#039;s a matter of audio quality vs. size.  Speex works great for the spoken word, but if your thesis is about (and includes) music or performance

Copyright licensing:  you may license the textual variants under a liberal CC license, while licensing the audio or video variants under a stricter license.

====================

Yet you can still put a default format in your Location header to transparently redirect a browser to, say, the preferred PDF or HTML version.

Just a few more thoughts on generic vs. specific content, and ill-defined 300 response content... :)

-Tim Chase</description>
		<content:encoded><![CDATA[<p>[quote]<br />
From this point of view there’s just no point in try to make URLs more DOI-like. With a DOI, you wind up in the same place as you propose: You’re always going to get redirected.<br />
[/quote]</p>
<p>So yes, DOI&#8217;s are helpful for referencing something in the generic, but to obtain a usable representation, you have to request it in the specific.  For your example, that means <a href="http://example.com/judell/phd-thesis" rel="nofollow">http://example.com/judell/phd-thesis</a> may be what I cite, but when I fetch it, do I want the PDF version?  the HTML version? the plain-text version?  or perhaps an XML version?  Maybe I want your spoken variant, in which case do I want it in MP3, OGG, Flac, Speex, WAV, WMA, or any of a bajillion other formats.  Perhaps I want a video of you reading your thesis and defending it so I can see your slides in the background, so I request the .MOV or .AVI version.</p>
<p>The question then becomes &#8220;How does one standardize the representation of a 300 response so that it can be processed using a known vocabulary?&#8221;.  There are an arbitrary number of facets to explore with a variety of metadata to attach, making XML (or YAML) a good candidate for representation of a 300&#8217;s content.</p>
<p>Using the example of a PhD thesis, you may want to convey in your 300 response an arbitrary number of facets:  Rendering integrity, data/meta-data integrity, quality, size, copyright licensing, etc.  The possibilities are fairly limitless:</p>
<p>====================<br />
Rendering integrity:  PDF or PS may be photo-exact and resolution independent; GIF/JPG/PNG may be photo-exact, but resolution dependent;  HTML may be close in presentation and resolution independent; TXT may be a mere skeleton of the printed version.</p>
<p>Data/meta-data integrity:  rendering your thesis as GIF/JPG/PNG loses a lot of information; rendering as PDF/PS/TXT loses some information but the content may still be searchable; rendering as HTML keeps some of the structural information in addition to the content; and XML may offer the strongest structuring for representation of internal structure and meta-data.</p>
<p>Quality (related to rendering integrity) and Size: rendering your thesis as MP3/OGG vs. FLAC vs. Speex, there&#8217;s a matter of audio quality vs. size.  Speex works great for the spoken word, but if your thesis is about (and includes) music or performance</p>
<p>Copyright licensing:  you may license the textual variants under a liberal CC license, while licensing the audio or video variants under a stricter license.</p>
<p>====================</p>
<p>Yet you can still put a default format in your Location header to transparently redirect a browser to, say, the preferred PDF or HTML version.</p>
<p>Just a few more thoughts on generic vs. specific content, and ill-defined 300 response content&#8230; :)</p>
<p>-Tim Chase</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: roberthahn</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122252</link>
		<dc:creator>roberthahn</dc:creator>
		<pubDate>Mon, 21 Jan 2008 15:05:38 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122252</guid>
		<description>Gumnos makes a lot of great points about interpreting file extensions as content type. There&#039;s still something else that should be taken into account: There is no web browser designed to let us choose which representation we want - instead, it sends a pre-formatted Accept: header with values biased for filetypes we historically were interested in (eg: HTML, then popular image formats).

So the only way for people with browsers to request files of a certain type is to specify the file extension in the URI.</description>
		<content:encoded><![CDATA[<p>Gumnos makes a lot of great points about interpreting file extensions as content type. There&#8217;s still something else that should be taken into account: There is no web browser designed to let us choose which representation we want &#8211; instead, it sends a pre-formatted Accept: header with values biased for filetypes we historically were interested in (eg: HTML, then popular image formats).</p>
<p>So the only way for people with browsers to request files of a certain type is to specify the file extension in the URI.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Jon Udell</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122251</link>
		<dc:creator>Jon Udell</dc:creator>
		<pubDate>Mon, 21 Jan 2008 12:53:03 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122251</guid>
		<description>&quot;I would proffer that any URL without an extension should *always* return a 300 response code&quot;

Really interesting point. Clearly I hadn&#039;t thought this through :-)

From this point of view there&#039;s just no point in try to make URLs more DOI-like. With a DOI, you wind up in the same place as you propose: You&#039;re always going to get redirected.</description>
		<content:encoded><![CDATA[<p>&#8220;I would proffer that any URL without an extension should *always* return a 300 response code&#8221;</p>
<p>Really interesting point. Clearly I hadn&#8217;t thought this through :-)</p>
<p>From this point of view there&#8217;s just no point in try to make URLs more DOI-like. With a DOI, you wind up in the same place as you propose: You&#8217;re always going to get redirected.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Gumnos</title>
		<link>http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122236</link>
		<dc:creator>Gumnos</dc:creator>
		<pubDate>Sat, 19 Jan 2008 22:40:33 +0000</pubDate>
		<guid isPermaLink="false">http://blog.jonudell.net/2008/01/17/aspx-considered-harmful/#comment-122236</guid>
		<description>[quote]

&quot;reflect the *content* type, not the *production method*.&quot;
Of course there are other ways to do that, e.g.:

http://del.icio.us/rss/judell/servicemanagement
[/quote]

I just re-read through your three articles linked from there, and (assuming you gave the right link) I&#039;m not sure I follow how the articles apply to the matter of file extensions being used to convey the file-type.

[quote src=&quot;Tim BL essay]
Consider a scientific paper that published, as many are, in .HTML and .PDF. If names were generic and content negotiation worked like it could, you get a canonical URL that would consolidate references to any of the types. Bookmarks, blog items, and other references would cluster together much better than they can when they have to hardcode differing type extensions. Connectivity and coherence would improve.
[/quote]

By offering extensions, you avail the option to refer to an object both in the generic and in the specific.  If I provide a link to http://example.com/item you (or your programatic proxy) need to negociate on the terms.  My GET request comes in, how does your server return a representation of that object?  Either your server needs to make an assumption about my desires, or it needs to indicate that there are multiple possibilities for representing this object.  HTTP does provide the &quot;300 Multiple Choices&quot; response code (http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.1 for the gritty details).  My end then needs to decide which representation it wants and then round-trip a second request to a distinguished entity...say one with an extension.  So for a particular representation of an object, you need to convey that, and extensions make an ideal and well recognized way of doing that.  It logically follows that something without an extension (a representation of an entity) is a generic.  I would proffer that any URL without an extension should *always* return a 300 response code because
1) it&#039;s the right thing to do and
2) since the user hasn&#039;t specified the format, you shouldn&#039;t guess.  The 300 code allows for a &quot;Location:&quot; header to offer a suggested location.

Unfortunately, the W3 specification doesn&#039;t define the format for offering multiple file-types in a 300 response, but only specifies that the Content-Type header should be used to encode the format the list of representations are shown in.  This vacuum leaves us back where we started...plain-text?  XML (and with what schema)?  JSON?  HTML?  XHTML?

Anyways, Django (and likely other high-quality frameworks) makes this very easy to do as I can just sniff the extension and then send the resulting view&#039;s context through a corresponding template if it exists.  Or, if no extension exists, I can return a 300 with a Location: and Content-Type header to provide my suggested format (usually HTML) and a list of alternate formats (also usually in HTML, via a UL of links).</description>
		<content:encoded><![CDATA[<p>[quote]</p>
<p>&#8220;reflect the *content* type, not the *production method*.&#8221;<br />
Of course there are other ways to do that, e.g.:</p>
<p><a href="http://del.icio.us/rss/judell/servicemanagement" rel="nofollow">http://del.icio.us/rss/judell/servicemanagement</a><br />
[/quote]</p>
<p>I just re-read through your three articles linked from there, and (assuming you gave the right link) I&#8217;m not sure I follow how the articles apply to the matter of file extensions being used to convey the file-type.</p>
<p>[quote src="Tim BL essay]<br />
Consider a scientific paper that published, as many are, in .HTML and .PDF. If names were generic and content negotiation worked like it could, you get a canonical URL that would consolidate references to any of the types. Bookmarks, blog items, and other references would cluster together much better than they can when they have to hardcode differing type extensions. Connectivity and coherence would improve.<br />
[/quote]</p>
<p>By offering extensions, you avail the option to refer to an object both in the generic and in the specific.  If I provide a link to <a href="http://example.com/item" rel="nofollow">http://example.com/item</a> you (or your programatic proxy) need to negociate on the terms.  My GET request comes in, how does your server return a representation of that object?  Either your server needs to make an assumption about my desires, or it needs to indicate that there are multiple possibilities for representing this object.  HTTP does provide the &#8220;300 Multiple Choices&#8221; response code (<a href="http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.1" rel="nofollow">http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.3.1</a> for the gritty details).  My end then needs to decide which representation it wants and then round-trip a second request to a distinguished entity&#8230;say one with an extension.  So for a particular representation of an object, you need to convey that, and extensions make an ideal and well recognized way of doing that.  It logically follows that something without an extension (a representation of an entity) is a generic.  I would proffer that any URL without an extension should *always* return a 300 response code because<br />
1) it&#8217;s the right thing to do and<br />
2) since the user hasn&#8217;t specified the format, you shouldn&#8217;t guess.  The 300 code allows for a &#8220;Location:&#8221; header to offer a suggested location.</p>
<p>Unfortunately, the W3 specification doesn&#8217;t define the format for offering multiple file-types in a 300 response, but only specifies that the Content-Type header should be used to encode the format the list of representations are shown in.  This vacuum leaves us back where we started&#8230;plain-text?  XML (and with what schema)?  JSON?  HTML?  XHTML?</p>
<p>Anyways, Django (and likely other high-quality frameworks) makes this very easy to do as I can just sniff the extension and then send the resulting view&#8217;s context through a corresponding template if it exists.  Or, if no extension exists, I can return a 300 with a Location: and Content-Type header to provide my suggested format (usually HTML) and a list of alternate formats (also usually in HTML, via a UL of links).</p>
]]></content:encoded>
	</item>
</channel>
</rss>
