<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://microformats.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TrbasLitrd</id>
	<title>Microformats Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://microformats.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=TrbasLitrd"/>
	<link rel="alternate" type="text/html" href="https://microformats.org/wiki/Special:Contributions/TrbasLitrd"/>
	<updated>2026-04-21T10:03:24Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=parsing-microformats-fr&amp;diff=36866</id>
		<title>parsing-microformats-fr</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=parsing-microformats-fr&amp;diff=36866"/>
		<updated>2009-01-03T13:36:42Z</updated>

		<summary type="html">&lt;p&gt;TrbasLitrd: acacel&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;delmon&lt;br /&gt;
= Parser les Microformats  =&lt;br /&gt;
&lt;br /&gt;
Le mÃ©canisme de parsage des microformats qui dÃ©pend de documents ayant mÃªme des propriÃ©tÃ©s xml minimales comme celles bien formÃ©es peut Ã©chouer au moment de consommer un contenu non-bien-formÃ©. [http://tidy.sourceforge.net/ Tidy] ou mÃªme mieux [http://people.apache.org/~andyc/neko/doc/html/ CyberNeko] peut Ãªtre un travail utile Ã  regarder.&lt;br /&gt;
En particulier,  [http://suda.co.uk/projects/X2V/ X2V la dÃ©couverte et les prototypes de transformation frÃ©quemment citÃ©es de hCard et hCalendar par le X2V de Brian Suda] utilisent XSLT, et &amp;quot;nettoient&amp;quot; toute entrÃ©e non bien formÃ©e avant de la traiter.&lt;br /&gt;
&lt;br /&gt;
La plupart des microformats tendent Ã  Ãªtre agnostiques sur des choses comme le type d'Ã©lÃ©ment exact Ã  utiliser.&lt;br /&gt;
&lt;br /&gt;
Les dÃ©veloppeurs peuvent utiliser des outils comme XPATH qui supposent du &amp;quot;bien-formÃ©&amp;quot; sur un contenu bien-formÃ© (Ã  partir du web ou par l'utilisation de tidy). L'exemple du [http://sourceforge.net/projects/feedparser/ parseur universel de fil] de Mark Pilgrim suggÃ¨re qu'il peut Ãªtre possible de nettoyer le html utilisateur jusqu'Ã  un stade oÃ¹ il est adaptable pour un traitement ultÃ©rieur comme le xml.&lt;br /&gt;
&lt;br /&gt;
== Parser les valeurs de classe ==&lt;br /&gt;
&lt;br /&gt;
Au moment de parser les valeurs de classe, une attention doit Ãªtre portÃ©e : &lt;br /&gt;
# les attributs Class peuvent contenir plusieurs noms de classe, par ex : &amp;lt;code&amp;gt;class=&amp;quot;foo vcard bar&amp;quot;&amp;lt;/code&amp;gt;&lt;br /&gt;
# les attributs Class peuvent contenir plusieurs noms de classe qui contiennent le nom de classe utilisÃ© par un microformat, par ex : &amp;lt;code&amp;gt;class=&amp;quot;foo&amp;lt;strong&amp;gt;vcard&amp;lt;/strong&amp;gt;bar&amp;quot;&amp;lt;/code&amp;gt; &amp;lt;code&amp;gt;class=&amp;quot;foo&amp;lt;strong&amp;gt;vcard&amp;lt;/strong&amp;gt;&amp;quot;&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;class=&amp;quot;&amp;lt;strong&amp;gt;vcard&amp;lt;/strong&amp;gt;bar&amp;quot;&amp;lt;/code&amp;gt;.&lt;br /&gt;
# Plusieurs noms de classe sont sÃ©parÃ©s pr un ou plusieurs caractÃ¨res espace blanc.&lt;br /&gt;
# Les noms de classes sont sensibles Ã  la casse.&lt;br /&gt;
 &lt;br /&gt;
Voir http://www.la-grange.net/w3c/html4.01/struct/global.html#h-7.5.2&lt;br /&gt;
&lt;br /&gt;
=== Exemple JavaScript ===&lt;br /&gt;
&lt;br /&gt;
La fonction JavaScript [http://www.robertnyman.com/2005/11/07/the-ultimate-getelementsbyclassname/ Ultimate getElementsByClassName] peut Ãªtre utile. Alors vous pouvez faire&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
var adrs = document.getElementsByClassName(document, &amp;quot;*&amp;quot;, &amp;quot;adr&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
ou mÃªme : &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
var cities = document.getElementsByClassName(document, &amp;quot;*&amp;quot;, &amp;quot;locality&amp;quot;);&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Exemple XSLT ===&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
 &amp;amp;lt;xsl:if test=&amp;quot;contains(&lt;br /&gt;
    concat (&lt;br /&gt;
        ' ',&lt;br /&gt;
        concat(normalize-whitespace(@class),' ')&lt;br /&gt;
    ),&lt;br /&gt;
    ' &amp;lt;strong&amp;gt;vcard&amp;lt;/strong&amp;gt; '&lt;br /&gt;
  )&amp;quot; &amp;amp;gt; ...&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[http://balloon.hobix.com/xpath-generator xpath generator], pour vous aider Ã  gÃ©nÃ©rer ces longues et laides requÃªtes xpath. (lien mort en date du 10/08/2006)&lt;br /&gt;
&lt;br /&gt;
== Parser les valeurs rel/rev  ==&lt;br /&gt;
&lt;br /&gt;
Parser les valeurs rel et rev est similaire au parsage de valeurs de classe exception faite pour les diffÃ©rences suivantes : &lt;br /&gt;
&lt;br /&gt;
# les valeurs rel et rev devraient Ãªtre sÃ©parÃ©es par un espace.&lt;br /&gt;
# les valeurs rel et rev ne sont pas sensibles Ã  la casse.&lt;br /&gt;
&lt;br /&gt;
Voir http://www.la-grange.net/w3c/html4.01/types.html#h-6.12.&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
&lt;br /&gt;
* [[xmdp-brainstorming-fr|xmdp-brainstorming]]&lt;/div&gt;</summary>
		<author><name>TrbasLitrd</name></author>
	</entry>
</feed>