<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Undercrank &#187; XHTML</title>
	<atom:link href="http://undercrank.com/posts/tagged/xhtml/feed/" rel="self" type="application/rss+xml" />
	<link>http://undercrank.com</link>
	<description></description>
	<lastBuildDate>Tue, 06 Jul 2010 18:05:29 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Google Maps for the UK</title>
		<link>http://undercrank.com/posts/2005/04/google-maps-for-the-uk/</link>
		<comments>http://undercrank.com/posts/2005/04/google-maps-for-the-uk/#comments</comments>
		<pubDate>Tue, 19 Apr 2005 16:17:25 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Web]]></category>
		<category><![CDATA[AJAX]]></category>
		<category><![CDATA[DHTML]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[local search]]></category>
		<category><![CDATA[mapping]]></category>
		<category><![CDATA[maps]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[XMLHTTP]]></category>

		<guid isPermaLink="false">http://undercrank.com/?p=94</guid>
		<description><![CDATA[It seems that Google has quietly launched a beta of its Maps and Local services for the UK and Ireland.
 <a href="http://undercrank.com/posts/2005/04/google-maps-for-the-uk/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p><img src="http://undercrank.com/illustrations/google-maps-uk.jpg" width="280" height="243" class="thumb" alt="Google Maps UK" longdesc="Screenshot showing the location of Waterloo Station in London on the Google Maps UK service." /></p>
<p><a href="http://www.google.co.uk" title="Google UK"><cite>Google</cite></a> appeared to have quietly launched a beta of their groundbreaking maps service <a href="http://maps.google.co.uk" title="Google Maps UK">for the UK</a>, with most of the features of it&#8217;s US counterpart intact (with the notable exception of detailed satellite maps).</p>
<p>So now, you can find your way to your <a href="http://maps.google.co.uk/maps?q=Jack+Goodchild+Way,+Kingston&#038;hl=en" title="Location of AFC Wimbledon">favourite football team</a>, check out <a href="http://maps.google.co.uk/maps?q=Pub+near+Knaphill&#038;hl=en" title="Show pubs near Knaphill, Surrey">local pubs</a> and of course, most importantly discover how to make your way <a href="http://maps.google.co.uk/maps?saddr=Land's+End&#038;daddr=John+O'+Groats&#038;hl=en" title="Directions from Land's End to John O' Groats">from one end of the country to another</a>.</p>
<p>To coincide, with this, it appears that the UK native version of Google&#8217;s <a href="http://local.google.co.uk" title="Google Local Search Beta for the UK">Local</a> search has also arrived in beta form with results provided by <a href="http://www.yell.com" title="Yellow Pages supplied by Yell.com">Yell.com</a>.</p>
<p><strong>Update:</strong> Looks like <a href="http://mygmaps.com/mygmaps.cgi/">myGMaps.com</a> works perfectly well with the UK version too for creating your own custom maps.  Neat.</p>
]]></content:encoded>
			<wfw:commentRss>http://undercrank.com/posts/2005/04/google-maps-for-the-uk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP, RSS and del.icio.us</title>
		<link>http://undercrank.com/posts/2004/02/php-rss-and-delicious/</link>
		<comments>http://undercrank.com/posts/2004/02/php-rss-and-delicious/#comments</comments>
		<pubDate>Mon, 16 Feb 2004 16:08:44 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[Scripting]]></category>
		<category><![CDATA[del.icio.us]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[URL]]></category>
		<category><![CDATA[UTF-8]]></category>
		<category><![CDATA[XHTML]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://undercrank.com/?p=49</guid>
		<description><![CDATA[Things to remember when doing dumb things like moving your site to PHP just to get a cool RSS feed.
 <a href="http://undercrank.com/posts/2004/02/php-rss-and-delicious/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Things to remember when doing dumb things like moving your site to <acronym title="PHP: Hypertext Preprocessor">PHP</acronym> just to get a cool <acronym title="Really Simple Syndication">RSS</acronym> feed:</p>
<dl>
<dt><acronym title="eXtensible Markup Language">XML</acronym> declarations in <acronym title="eXtensible HyperText Markup Language">XHTML</acronym> 1.1</dt>
<dd>
<p>Loons like me who set up with an XHTML 1.1 DOCTYPE declaration also need an appropriate XML declaration at the start of the document too:</p>
<p><code>&lt;?xml version="1.0" charset="UTF-8"?&gt;</code></p>
<p>Putting this into a PHP file causes the server to blindly assume that that must be PHP code and (duh) falls over at the first hurdle.  There seems to be a multitude of <a href="http://www.the-emperor.org/wiki/xml_declaration_and_php/">ways around this</a>, but the one that worked for me was the simplest:</p>
<p><code>&lt;?php <samp>echo</samp> "&lt;?xml version=\"1.0\" charset=\"UTF-8\"?&gt;</code></p>
</dd>
<dt>Fixing broken URL&#8217;s for extinct .html pages</dt>
<dd>
<p>At first, I toyed with the idea of some rules in the <code><var>httpd.conf</var></code> file but frankly I couldn&#8217;t be arsed.</p>
<p>In the event, I wrote a custom 404 ErrorDocument that looks at the <code><var>REQUEST_URI</var></code>, has a look to see if it&#8217;s got the word &#8220;archives&#8221; in it, and if so, do a quick search and replace job on it.  Something like:</p>
<p>
<code><br />
if (<samp>strstr</samp>(<var>$REQUEST_URI</var>, archives)) {<br />
&nbsp;&nbsp;<var>$oldpage</var> = <var>$REQUEST_URI</var>;<br />
&nbsp;&nbsp;<var>$newpage</var> = <samp>ereg_replace</samp>(".html", ".php", <var>$oldpage</var>);<br />
}<br />
</code>
</p>
<p>If I were I being a good person, I&rsquo;d check the local file system for the presence of the document, but in this instance, I know the documents are there for sure and so I don&#8217;t really care too much.</p>
</dd>
<dt>Escaping URL&#8217;s from del.icio.us feeds</dt>
<dd>
<p>And just as you think it&#8217;s all wrapped up&#8230; the <acronym title="World Wide Web Consortium">W3C</acronym> Validator decided to have a jolly good moan about the occasional <acronym title="Uniform Resource Locator">URL</acronym> I was pulling in from the <a href="http://del.icio.us/rss/undercrank" title="Undercrank links RSS feed powered by del.icio.us">del.icio.us RSS feed</a> that had unescaped ampersands in it.  Again, PHP and <abbr title="Regular Expression">regex</abbr> functions sorted that one out (I&#8217;m using the excellent<br />
<a href="http://magpierss.sourceforge.net" title="Magpie RSS">Magpie RSS</a> to take care of parsing the feeds otherwise):</p>
<p>
<code><var>$href</var> = <samp>ereg_replace</samp>("&amp;", "&amp;amp;", <var>$item['link']</var>);</code>
</p>
</dd>
</dl>
]]></content:encoded>
			<wfw:commentRss>http://undercrank.com/posts/2004/02/php-rss-and-delicious/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A List Apart issue 160</title>
		<link>http://undercrank.com/posts/2003/10/a-list-apart-issue-160/</link>
		<comments>http://undercrank.com/posts/2003/10/a-list-apart-issue-160/#comments</comments>
		<pubDate>Wed, 22 Oct 2003 11:07:04 +0000</pubDate>
		<dc:creator>Mark</dc:creator>
				<category><![CDATA[CSS]]></category>
		<category><![CDATA[Scripting]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[A List Apart]]></category>
		<category><![CDATA[Douglas Bowman]]></category>
		<category><![CDATA[Jeffrey Zeldman]]></category>
		<category><![CDATA[standards]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[XHTML]]></category>

		<guid isPermaLink="false">http://undercrank.com/?p=15</guid>
		<description><![CDATA[A List Apart returns with new features and new looks.
 <a href="http://undercrank.com/posts/2003/10/a-list-apart-issue-160/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>One of the more useful online publications, <a href="http://www.alistapart.com/">A List Apart</a>, has returned after its hiatus with a spiffy new design and some good informative articles (as always).</p>
]]></content:encoded>
			<wfw:commentRss>http://undercrank.com/posts/2003/10/a-list-apart-issue-160/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
