<?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: To XHTML or not to XHTML?</title>
	<atom:link href="http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/feed/" rel="self" type="application/rss+xml" />
	<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/</link>
	<description></description>
	<lastBuildDate>Tue, 16 Feb 2010 16:00:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: dom</title>
		<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/comment-page-1/#comment-1230</link>
		<dc:creator>dom</dc:creator>
		<pubDate>Thu, 24 Sep 2009 13:30:45 +0000</pubDate>
		<guid isPermaLink="false">http://happygiraffe.net/blog/?p=1556#comment-1230</guid>
		<description>&lt;a href=&quot;#comment-1228&quot; rel=&quot;nofollow&quot;&gt;@Mark&lt;/a&gt; Actually, I wasn&#039;t talking about the header.  I was talking about serving XHTML served up as text/html.  This is what caused so many problems I switched to serving up HTML 4 instead.</description>
		<content:encoded><![CDATA[<p><a href="#comment-1228" rel="nofollow">@Mark</a> Actually, I wasn&#8217;t talking about the header.  I was talking about serving XHTML served up as text/html.  This is what caused so many problems I switched to serving up HTML 4 instead.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dom</title>
		<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/comment-page-1/#comment-1229</link>
		<dc:creator>dom</dc:creator>
		<pubDate>Thu, 24 Sep 2009 10:32:46 +0000</pubDate>
		<guid isPermaLink="false">http://happygiraffe.net/blog/?p=1556#comment-1229</guid>
		<description>&lt;a href=&quot;#comment-1228&quot; rel=&quot;nofollow&quot;&gt;@Mark&lt;/a&gt; The actual switch is worth documenting actually.  This was on a &lt;a href=&quot;http://cocoon.apache.org/2.1/&quot; rel=&quot;nofollow&quot;&gt;Cocoon&lt;/a&gt; site and we found that simply switching the serializer from xhtml to html wasn&#039;t enough.  We also had to add the following XSLT transform into the pipeline in order to strip out the XHTML namespace before serialization.  I never did get to the bottom of why this was necessary.

&lt;pre lang=&quot;xml&quot;&gt;
&lt;xsl:stylesheet xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot; version=&quot;1.0&quot;&gt;

  &lt;xsl:template match=&quot;*&quot;&gt;
    &lt;xsl:element name=&quot;{local-name()}&quot;&gt;
      &lt;xsl:apply-templates select=&quot;@*&#124;node()&quot; /&gt;
    &lt;/xsl:element&gt;
  &lt;/xsl:template&gt;

  &lt;xsl:template match=&quot;@*&quot;&gt;
    &lt;xsl:attribute name=&quot;{local-name()}&quot;&gt;
      &lt;xsl:value-of select=&quot;.&quot; /&gt;
    &lt;/xsl:attribute&gt;
  &lt;/xsl:template&gt;

  &lt;xsl:template match=&quot;processing-instruction()&#124;comment()&quot;&gt;
    &lt;xsl:copy&gt;
      &lt;xsl:apply-templates select=&quot;node()&quot; /&gt;
    &lt;/xsl:copy&gt;
  &lt;/xsl:template&gt;
&lt;/xsl:stylesheet&gt;
&lt;/pre&gt;</description>
		<content:encoded><![CDATA[<p><a href="#comment-1228" rel="nofollow">@Mark</a> The actual switch is worth documenting actually.  This was on a <a href="http://cocoon.apache.org/2.1/" rel="nofollow">Cocoon</a> site and we found that simply switching the serializer from xhtml to html wasn&#8217;t enough.  We also had to add the following XSLT transform into the pipeline in order to strip out the XHTML namespace before serialization.  I never did get to the bottom of why this was necessary.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:stylesheet</span> <span style="color: #000066;">xmlns:xsl</span>=<span style="color: #ff0000;">&quot;http://www.w3.org/1999/XSL/Transform&quot;</span> <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:template</span> <span style="color: #000066;">match</span>=<span style="color: #ff0000;">&quot;*&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:element</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;{local-name()}&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:apply-templates</span> <span style="color: #000066;">select</span>=<span style="color: #ff0000;">&quot;@*|node()&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:element<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:template<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:template</span> <span style="color: #000066;">match</span>=<span style="color: #ff0000;">&quot;@*&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:attribute</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;{local-name()}&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:value-of</span> <span style="color: #000066;">select</span>=<span style="color: #ff0000;">&quot;.&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:attribute<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:template<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:template</span> <span style="color: #000066;">match</span>=<span style="color: #ff0000;">&quot;processing-instruction()|comment()&quot;</span><span style="color: #000000; font-weight: bold;">&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:copy<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
      <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xsl:apply-templates</span> <span style="color: #000066;">select</span>=<span style="color: #ff0000;">&quot;node()&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
    <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:copy<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:template<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xsl:stylesheet<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

]]></content:encoded>
	</item>
	<item>
		<title>By: Mark</title>
		<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/comment-page-1/#comment-1228</link>
		<dc:creator>Mark</dc:creator>
		<pubDate>Wed, 23 Sep 2009 22:59:35 +0000</pubDate>
		<guid isPermaLink="false">http://happygiraffe.net/blog/?p=1556#comment-1228</guid>
		<description>You might talk about the config and/or code changes you made to switch between XHTML and HTML 4.  The header has already been covered (text/html vs. application/xhtml+xml, but presumably you changed other things, like perhaps a dialect choice in XSLT, etc.

Great blog BTW, I seem to keep running across entries when I&#039;m doing Google searches, always a good read.</description>
		<content:encoded><![CDATA[<p>You might talk about the config and/or code changes you made to switch between XHTML and HTML 4.  The header has already been covered (text/html vs. application/xhtml+xml, but presumably you changed other things, like perhaps a dialect choice in XSLT, etc.</p>
<p>Great blog BTW, I seem to keep running across entries when I&#8217;m doing Google searches, always a good read.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aristotle Pagaltzis</title>
		<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/comment-page-1/#comment-1092</link>
		<dc:creator>Aristotle Pagaltzis</dc:creator>
		<pubDate>Thu, 16 Jul 2009 19:22:31 +0000</pubDate>
		<guid isPermaLink="false">http://happygiraffe.net/blog/?p=1556#comment-1092</guid>
		<description>No, it’s not vague at all. If you serve it as &lt;code&gt;text/html&lt;/code&gt;, then browsers parse it as &lt;code&gt;text/html&lt;/code&gt;, no matter what doctype and syntax you may have used.</description>
		<content:encoded><![CDATA[<p>No, it’s not vague at all. If you serve it as <code>text/html</code>, then browsers parse it as <code>text/html</code>, no matter what doctype and syntax you may have used.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: dom</title>
		<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/comment-page-1/#comment-1091</link>
		<dc:creator>dom</dc:creator>
		<pubDate>Thu, 16 Jul 2009 10:44:01 +0000</pubDate>
		<guid isPermaLink="false">http://happygiraffe.net/blog/?p=1556#comment-1091</guid>
		<description>&lt;a href=&quot;#comment-1089&quot; rel=&quot;nofollow&quot;&gt;@Aristotle Pagaltzis&lt;/a&gt; It&#039;s kind of vague for XHTML 1.0, IIRC.  This is just an example of why it&#039;s a &lt;em&gt;really bad idea&lt;/em&gt;.</description>
		<content:encoded><![CDATA[<p><a href="#comment-1089" rel="nofollow">@Aristotle Pagaltzis</a> It&#8217;s kind of vague for XHTML 1.0, IIRC.  This is just an example of why it&#8217;s a <em>really bad idea</em>.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Aristotle Pagaltzis</title>
		<link>http://happygiraffe.net/blog/2009/07/15/to-xhtml-or-not-to-xhtml/comment-page-1/#comment-1089</link>
		<dc:creator>Aristotle Pagaltzis</dc:creator>
		<pubDate>Wed, 15 Jul 2009 20:44:16 +0000</pubDate>
		<guid isPermaLink="false">http://happygiraffe.net/blog/?p=1556#comment-1089</guid>
		<description>You can’t serve XHTML as &lt;code&gt;text/html&lt;/code&gt;. Whatever you serve as &lt;code&gt;text/html&lt;/code&gt; is HTML – malformed HTML that happens to look like XHTML, maybe, but it’s HTML nonetheless. The only way to serve &lt;strong&gt;X&lt;/strong&gt;HTML is to serve it as &lt;code&gt;application/xhtml+xml&lt;/code&gt;.</description>
		<content:encoded><![CDATA[<p>You can’t serve XHTML as <code>text/html</code>. Whatever you serve as <code>text/html</code> is HTML – malformed HTML that happens to look like XHTML, maybe, but it’s HTML nonetheless. The only way to serve <strong>X</strong>HTML is to serve it as <code>application/xhtml+xml</code>.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
