<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://xhtml.britoweb.info/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>HTML / XHTML - Britoweb - XHTML</title>
  <link>http://xhtml.britoweb.info/</link>
  <atom:link href="http://xhtml.britoweb.info/feed/category/xhtml/rss2" rel="self" type="application/rss+xml"/>
  <description>Le Web à la sauce standard</description>
  <language>fr</language>
  <pubDate>Sun, 29 Jan 2012 14:14:47 +0100</pubDate>
  <copyright></copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>XHTML en tant que HTML ou en tant que XML : que choisir ?</title>
    <link>http://xhtml.britoweb.info/post/XHTML-en-tant-que-HTML-ou-en-tant-que-XML-que-choisir</link>
    <guid isPermaLink="false">urn:md5:7720faed26c50487f84a4f172da9a17b</guid>
    <pubDate>Sun, 29 Nov 2009 18:21:00 +0100</pubDate>
    <dc:creator>Victor Brito</dc:creator>
        <category>XHTML</category>
            
    <description>&lt;p&gt;Le XHTML peut être servi aux navigateurs et autres agents utilisateurs susceptibles de l'interpréter de deux manières&amp;nbsp;: en tant que HTML et en tant que XML. Puisque le XHTML est une reformulation du HTML en XML, faut-il le servir en tant que XML ou peut-on se contenter de le servir en tant que HTML&amp;nbsp;?&lt;/p&gt;    &lt;h3&gt;Le XHTML servi en tant que HTML&lt;/h3&gt;
&lt;p&gt;La plupart du temps, le XHTML est servi en tant que HTML, avec le type &lt;acronym title=&quot;Multipurpose Internet Mail Extensions&quot; xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;&lt;span xml:lang=&quot;fr&quot; lang=&quot;fr&quot;&gt;MIME&lt;/span&gt;&lt;/acronym&gt; &lt;code xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;text/html&lt;/code&gt;, qui est reconnu sans difficulté par les navigateurs.&lt;/p&gt;
&lt;h3&gt;Le XHTML servi en tant que XML&lt;/h3&gt;
&lt;p&gt;Pour que le XHTML soit servi en tant que XML, il faut utiliser le type MIME &lt;code xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;application/xhtml+xml&lt;/code&gt;, en le déclarant dans le code XHTML. De plus, le XHTML servi en tant que XML oblige à l'utilisation du prologue XML et proscrit l'attribut HTML &lt;code&gt;lang&lt;/code&gt; au profit de son équivalent en XML &lt;code&gt;xml:lang&lt;/code&gt; (l'interdiction de l'attribut &lt;code&gt;lang&lt;/code&gt; concerne surtout le XHTML 1.1). Cela donne le code suivant&amp;nbsp;:&lt;/p&gt;
&lt;pre xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;utf-8&quot;?&amp;gt;
&amp;lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.1//EN&quot; &quot;http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd&quot;&amp;gt;
&amp;lt;html xmlns=&quot;http://www.w3.org/1999/xhtml&quot; xml:lang=&quot;fr&quot;&amp;gt;
&amp;lt;head&amp;gt;
&amp;lt;title&amp;gt;&lt;span xml:lang=&quot;fr&quot; lang=&quot;fr&quot;&gt;Titre du document&lt;/span&gt;&amp;lt;/title&amp;gt;
&amp;lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;application/xhtml+xml;charset=UTF-8&quot; /&amp;gt;
&amp;lt;meta name=&quot;robots&quot; content=&quot;none&quot; /&amp;gt;
&amp;lt;/head&amp;gt;
&amp;lt;body&amp;gt;
&amp;lt;p&amp;gt;&lt;span xml:lang=&quot;fr&quot; lang=&quot;fr&quot;&gt;Contenu du document&lt;/span&gt;&amp;lt;/p&amp;gt;
&amp;lt;/body&amp;gt;
&amp;lt;/html&amp;gt;&lt;/pre&gt;
&lt;p&gt;Indiquer le type MIME dans &lt;code xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;meta http-equiv=&quot;Content-Type&quot;&lt;/code&gt; ne suffit pas&amp;nbsp;: il faut aussi s'assurer que le serveur soit correctement configuré, de façon à ce qu'il puisse envoyer le bon type MIME comme valeur de l'en-tête &lt;span xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;Content-Type&lt;/span&gt;.&lt;/p&gt;
&lt;p&gt;Un document XHTML servi en tant que XML sera affiché avec succès sous Firefox, Opera, Safari, Google Chrome et Konqueror. En revanche, Internet Explorer, y compris dans sa version 8, l'ignorera purement et simplement, le traitant comme un fichier en téléchargement (sauf si le serveur hébergeant le document XHTML en question retourne un en-tête &lt;code xml:lang=&quot;en&quot; lang=&quot;en&quot;&gt;Content-Type: text/html&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;Autre souci&amp;nbsp;: la plupart des lecteurs d'écran, &lt;acronym xml:lang=&quot;en&quot; lang=&quot;en&quot; title=&quot;Job Access With Speech&quot;&gt;Jaws&lt;/acronym&gt; en tête, ne prennent pas en charge l'attribut &lt;code&gt;xml:lang&lt;/code&gt;, surtout en cas de changement de langue au cours du document XHTML.&lt;/p&gt;
&lt;h3&gt;Conclusion&lt;/h3&gt;
&lt;p&gt;À moins que vous ne maîtrisiez le parc informatique des utilisateurs finaux (cas, par exemple, d'un Intranet consultable depuis des postes utilisant par défaut un navigateur récent et très respectueux des standards du Web, comme Firefox), &lt;strong&gt;servez les documents XHTML uniquement en tant que HTML&lt;/strong&gt; afin de garantir leur accès au plus grand nombre d'utilisateurs, ce qui veut dire aussi qu'il faut, pour signaler tout changement de langue, utiliser l'attribut &lt;code&gt;lang&lt;/code&gt; (accompagné ou non de &lt;code&gt;xml:lang&lt;/code&gt;), et se contenter du XHTML 1.0.&lt;/p&gt;
&lt;h3&gt;Pages de test&lt;/h3&gt;
&lt;p&gt;Vous pouvez consulter la &lt;a href=&quot;http://xhtml.britoweb.info/public/xhtml-servi-en-tant-que-xml/xhtml-10.xhtml&quot; type=&quot;application/xhtml+xml&quot; rel=&quot;nofollow&quot;&gt;page de test d'une page XHTML servie en tant que XML (XHTML 1.0 Strict)&lt;/a&gt; et la &lt;a href=&quot;http://xhtml.britoweb.info/public/xhtml-servi-en-tant-que-xml/xhtml-11.xhtml&quot; type=&quot;application/xhtml+xml&quot; rel=&quot;nofollow&quot;&gt;page de test d'une page XHTML servie en tant que XML (XHTML 1.1)&lt;/a&gt; pour avoir un aperçu du résultat sous votre navigateur.&lt;/p&gt;</description>
    
    
    
      </item>
    
</channel>
</rss>
