xfolk-fr

(Difference between revisions)

Jump to: navigation, search
(http://indronrol.is-the-boss.com/wsawfev.html)
m (Reverted edits by AceloLotre (Talk) to last version by RaccgEtroc)
Line 1: Line 1:
-
[http://indronrol.is-the-boss.com/wsawfev.html mortal kombat annihilation soundtrack torrent] [http://spfortne.qsh.eu/20081231-sum-41-video.html sum 41 video download] [http://sakonze.qsh.eu/tazell-1915.html sport bike stunt video] [http://dronoubr.0lx.net/starsky-and.html starsky and hutch movie reviews] [http://lifokdron.0lx.net/731.html silent tears movie]
 
trcnanoc4
trcnanoc4
<h1> xFolk (RC1) </h1>
<h1> xFolk (RC1) </h1>
-
'''xFolk''' est un format simple et ouvert pour publier des collections de signets. Il permet aux services de mieux améliorer l'expérience utilisateur et de partager des données dans un logiciel de signet basé sur le web. xFolk peut être embarqué dans (X)HTML, Atom, RSS et du XML arbitraire. C'est l'un des nombreux [[microformats-fr|microformats]] standards ouverts.
+
'''xFolk''' est un format simple et ouvert pour publier des collections de signets. Il permet aux services de mieux améliorer l'expérience utilisateur et de partager des données dans un logiciel de signet basé sur le web. xFolk peut être embarqué dans (X)HTML, Atom, RSS et du XML arbitraire. C'est l'un des nombreux [[microformats-fr|microformats]] standards ouverts.
__TOC__
__TOC__
-
== Spécification Brouillon ==
+
== Spécification Brouillon ==
=== Editeur/Auteur ===
=== Editeur/Auteur ===
Line 21: Line 20:
=== Inspiration et Reconnaissances ===
=== Inspiration et Reconnaissances ===
-
Merci à : [http://www.cnbc.cmu.edu/~plaut/ David Plaut] qui m'a présenté l'idée que les items peuvent appartenir partiellement à beaucoup de catégories en une fois. Plus récemment, merci à : [http://tantek.com/ Tantek Çelik], [http://epeus.blogspot.com/ Kevin Marks], [http://steve.osdir.com/ Steve Mallet], [http://hybernaut.com/ Brian DelVecchio] et [http://blogmarks.net François Hodierne] qui ont contribué au développement de xFolk avec des critiques sensées et des implémentations.
+
Merci à : [http://www.cnbc.cmu.edu/~plaut/ David Plaut] qui m'a présenté l'idée que les items peuvent appartenir partiellement à beaucoup de catégories en une fois. Plus récemment, merci à : [http://tantek.com/ Tantek Çelik], [http://epeus.blogspot.com/ Kevin Marks], [http://steve.osdir.com/ Steve Mallet], [http://hybernaut.com/ Brian DelVecchio] et [http://blogmarks.net François Hodierne] qui ont contribué au développement de xFolk avec des critiques sensées et des implémentations.
== Introduction ==
== Introduction ==
-
Les services de signets sociaux laissent les utilisateurs sauvegarder et taguer leurs signets pour les partager avec d'autres utilisateurs. Durant la dernière année, le nombre de ces services a poussé comme des champignons (plus de [http://en.wikipedia.org/wiki/Social_bookmarking 20], avec des exemples comprenant : [http://del.icio.us del.icio.us], [http://furl.net furl], [http://de.lirio.us de.lirio.us], [http://jots.com jots] et [http://blogmarks.net blogmarks].   
+
Les services de signets sociaux laissent les utilisateurs sauvegarder et taguer leurs signets pour les partager avec d'autres utilisateurs. Durant la dernière année, le nombre de ces services a poussé comme des champignons (plus de [http://en.wikipedia.org/wiki/Social_bookmarking 20], avec des exemples comprenant : [http://del.icio.us del.icio.us], [http://furl.net furl], [http://de.lirio.us de.lirio.us], [http://jots.com jots] et [http://blogmarks.net blogmarks].   
-
Le manque d'un standard ouvert et interopérable de données est une problématique majeure à utiliser les services de signets sociaux. Un standard ouvert ferait qu'il soit possible de collecter facilement des données signets et de les remixer pour inventer de nouveaux services le long de la ligne du moteur expérimental de recherche de signets [http://gataga.com gataga]. Un standard ouvert ferait qu'il serait aussi possible d'écrire des javascripts qui fonctionnent transversalement sur les services  [http://johnvey.com/features/deliciousdirector/ comme le font certains actuellement pour del.icio.us], permettant des améliorations en expérience utilisateur.
+
Le manque d'un standard ouvert et interopérable de données est une problématique majeure à utiliser les services de signets sociaux. Un standard ouvert ferait qu'il soit possible de collecter facilement des données signets et de les remixer pour inventer de nouveaux services le long de la ligne du moteur expérimental de recherche de signets [http://gataga.com gataga]. Un standard ouvert ferait qu'il serait aussi possible d'écrire des javascripts qui fonctionnent transversalement sur les services  [http://johnvey.com/features/deliciousdirector/ comme le font certains actuellement pour del.icio.us], permettant des améliorations en expérience utilisateur.
-
xFolk est un standard ouvert de signet social qui a pour but de parvenir à tous ces avantages. Les services de signets sociaux qui adoptent xFolk continueront à se différencier eux-mêmes des services de données. Mais, la donnée elle-même sera facile à manipuler par des scripts tiers et sera facile à partager. En tant que résultat, les services de signets pourront offrir à leurs utilisateurs un ensemble plus large d'options à un moindre coût et se concentrer sur ce qui les différencie vraiment. Les individus ou les groupes opérant seul des répertoires de signets auront accès à un plus large ensemble de fonctionnalités que celles qu'ils pourraient produire seuls.
+
xFolk est un standard ouvert de signet social qui a pour but de parvenir à tous ces avantages. Les services de signets sociaux qui adoptent xFolk continueront à se différencier eux-mêmes des services de données. Mais, la donnée elle-même sera facile à manipuler par des scripts tiers et sera facile à partager. En tant que résultat, les services de signets pourront offrir à leurs utilisateurs un ensemble plus large d'options à un moindre coût et se concentrer sur ce qui les différencie vraiment. Les individus ou les groupes opérant seul des répertoires de signets auront accès à un plus large ensemble de fonctionnalités que celles qu'ils pourraient produire seuls.
-
== Principes de Design XHTML Sémantique ==
+
== Principes de Design XHTML Sémantique ==
{{semantic-xhtml-design-principles-fr}}
{{semantic-xhtml-design-principles-fr}}
== Format ==
== Format ==
-
Une analyse extensive des services de signets sociaux et des linkblogs, déposée [http://thecommunityengine.com/home/archives/xfolk ailleurs], révèle que les données publiées par tous les services de signets et '''beaucoup''' de linkblogs différents sont décrites par le schéma implicite suivant :  
+
Une analyse extensive des services de signets sociaux et des linkblogs, déposée [http://thecommunityengine.com/home/archives/xfolk ailleurs], révèle que les données publiées par tous les services de signets et '''beaucoup''' de linkblogs différents sont décrites par le schéma implicite suivant :  
-
* Un lien bookmarké ou tagué.
+
* Un lien bookmarké ou tagué.
-
* Un titre pour l'entrée.
+
* Un titre pour l'entrée.
* Les tags pour le lien.
* Les tags pour le lien.
-
* Une description étendue ou un résumé du lien.
+
* Une description étendue ou un résumé du lien.
-
Comme démontré dans les premières itérations du standard xFolk, ce schéma général peut être traduit en balisage par :  
+
Comme démontré dans les premières itérations du standard xFolk, ce schéma général peut être traduit en balisage par :  
-
# créer un élément conteneur pour chaque entrée de la classe <code>xfolkentry</code>,  
+
# créer un élément conteneur pour chaque entrée de la classe <code>xfolkentry</code>,  
-
# utiliser un élément <a> pour le lien bookmarké ou tagué de la classe <code>taggedlink</code>,  
+
# utiliser un élément <a> pour le lien bookmarké ou tagué de la classe <code>taggedlink</code>,  
-
# utiliser l'attribut title pour l'élément lien tagué <a>, s'il existe, comme l'entrée title, autrement utiliser la valeur de l'élément,
+
# utiliser l'attribut title pour l'élément lien tagué <a>, s'il existe, comme l'entrée title, autrement utiliser la valeur de l'élément,
# utiliser [[rel-tag-fr|RelTag]] pour les tags, et  
# utiliser [[rel-tag-fr|RelTag]] pour les tags, et  
-
# utiliser un élément conteneur de classe <code>description</code>, tel que &lt;p>, pour toute autre description étendue ou résumé.
+
# utiliser un élément conteneur de classe <code>description</code>, tel que &lt;p>, pour toute autre description étendue ou résumé.
-
Une entrée donnée xFolk contiendra toujours un lien tagué comprenant un 'title' avec d'autres éléments optionnels. Les entrées peuvent avoir plus d'un tag tout comme plus d'un élément de classe <code>description</code>.  Plusieurs éléments de classe <code>description</code> sont triés par l'ordre du document par défaut. Les éléments sémantiques dans les entrées xFolk peuvent être imbriqués à des profondeurs abritraires.
+
Une entrée donnée xFolk contiendra toujours un lien tagué comprenant un 'title' avec d'autres éléments optionnels. Les entrées peuvent avoir plus d'un tag tout comme plus d'un élément de classe <code>description</code>.  Plusieurs éléments de classe <code>description</code> sont triés par l'ordre du document par défaut. Les éléments sémantiques dans les entrées xFolk peuvent être imbriqués à des profondeurs abritraires.
-
Beaucoup de systèmes de signets sociaux existent, chacun d'eux avec se propres conventions de balisage. En outre, beaucoup de personnes publient déjà des blogs de liens. xFolk est conçu en priorité pour faciliter l'adoption de ces pratiques actuelles. Par conséquent, peu d'hypothèses ont été produites comme les types exacts des éléments utilisés pour une entrée xFolk. Le travail de définir la sémantique est entièrement laissé à la casse et aux valeurs d'attribut rel (dans le cas de [[rel-tag-fr|reltag]]).
+
Beaucoup de systèmes de signets sociaux existent, chacun d'eux avec se propres conventions de balisage. En outre, beaucoup de personnes publient déjà des blogs de liens. xFolk est conçu en priorité pour faciliter l'adoption de ces pratiques actuelles. Par conséquent, peu d'hypothèses ont été produites comme les types exacts des éléments utilisés pour une entrée xFolk. Le travail de définir la sémantique est entièrement laissé à la casse et aux valeurs d'attribut rel (dans le cas de [[rel-tag-fr|reltag]]).
-
Il est attendu que les développeurs utiliseront [http://www.w3.org/TR/xpath XPath] ou une syntaxe équivalente en accédant à des éléments d'entrée xFolk. Une exigence pour xPath est que le document (X)HTML soit bien formé mais pas nécessairement valide. Par conséquent, bien que non désirable, il est possible d'utiliser xFolk dans un document (X)HTML qui ne valide pas.
+
Il est attendu que les développeurs utiliseront [http://www.w3.org/TR/xpath XPath] ou une syntaxe équivalente en accédant à des éléments d'entrée xFolk. Une exigence pour xPath est que le document (X)HTML soit bien formé mais pas nécessairement valide. Par conséquent, bien que non désirable, il est possible d'utiliser xFolk dans un document (X)HTML qui ne valide pas.
=== XMDP Profile ===
=== XMDP Profile ===
Line 59: Line 58:
== Exemple ==
== Exemple ==
-
Voilà un signet échantillon comme affiché dans la syntaxe standard de [http://del.icio.us del.icio.us].  Les lignes où les attributs de classe d'éléments doivent changer pour se conformer à xFolk sont marquées avec un commentaire à la fin.
+
Voilà un signet échantillon comme affiché dans la syntaxe standard de [http://del.icio.us del.icio.us].  Les lignes où les attributs de classe d'éléments doivent changer pour se conformer à xFolk sont marquées avec un commentaire à la fin.
<pre>&lt;div class="post"&gt; <!--changera-->
<pre>&lt;div class="post"&gt; <!--changera-->
   &lt;div&gt;
   &lt;div&gt;
Line 83: Line 82:
&lt;/div&gt;</pre>
&lt;/div&gt;</pre>
-
L'équivalent dans xFolk se fait comme suit. Les commentaires sont placés à la fin des lines où les modifiations d'attribut de classe sont requises
+
L'équivalent dans xFolk se fait comme suit. Les commentaires sont placés à la fin des lines où les modifiations d'attribut de classe sont requises
<pre><nowiki>
<pre><nowiki>
-
&lt;div class="xfolkentry"&gt; <!-- changé -->
+
&lt;div class="xfolkentry"&gt; <!-- changé -->
   &lt;div&gt;
   &lt;div&gt;
-
     &lt;a class="taggedlink" href="http://www.sifry.com/alerts/archives/000306.html"&gt; <!-- changé -->
+
     &lt;a class="taggedlink" href="http://www.sifry.com/alerts/archives/000306.html"&gt; <!-- changé -->
       Sifry's Alerts: Technorati launches Related Tags
       Sifry's Alerts: Technorati launches Related Tags
     &lt;/a&gt;  
     &lt;/a&gt;  
Line 99: Line 98:
   &lt;div class="meta"&gt;
   &lt;div class="meta"&gt;
     to
     to
-
     &lt;a rel="tag" href="/fpgibson/folksonomy"&gt;folksonomy&lt;/a&gt; <!-- changé -->
+
     &lt;a rel="tag" href="/fpgibson/folksonomy"&gt;folksonomy&lt;/a&gt; <!-- changé -->
-
     &lt;a rel="tag" href="/fpgibson/technorati"&gt;technorati&lt;/a&gt; <!-- changé -->
+
     &lt;a rel="tag" href="/fpgibson/technorati"&gt;technorati&lt;/a&gt; <!-- changé -->
     ... &lt;a class="delNav" href="/url/cbcabf7de070fdb46598ee679367be49"&gt;
     ... &lt;a class="delNav" href="/url/cbcabf7de070fdb46598ee679367be49"&gt;
     and 1 other person
     and 1 other person
Line 109: Line 108:
</nowiki></pre>
</nowiki></pre>
-
Un autre exemple simple, basé sur un balisage de listes non-ordonnées :
+
Un autre exemple simple, basé sur un balisage de listes non-ordonnées :
<pre>
<pre>
<nowiki>
<nowiki>
-
<ul><!--xfolk est un microformat pour des *collections* de liens à partager-->
+
<ul><!--xfolk est un microformat pour des *collections* de liens à partager-->
   <li>
   <li>
     <ul class="xfolkentry">  
     <ul class="xfolkentry">  
       <li><a class="taggedlink" href="http://microformats.org/wiki/Main_Page-fr">Le wiki du projet microformats</a></li>
       <li><a class="taggedlink" href="http://microformats.org/wiki/Main_Page-fr">Le wiki du projet microformats</a></li>
-
       <li class="description">Un bon lieu de départ pour découvrir et jouer avec les microformats</li>
+
       <li class="description">Un bon lieu de départ pour découvrir et jouer avec les microformats</li>
       <li class="description">Site wiki communautaire</li>
       <li class="description">Site wiki communautaire</li>
       <li class="meta">
       <li class="meta">
Line 135: Line 134:
</pre>
</pre>
-
Convertir le balisage pour être conforme à xFolk est presque toujours aussi facile. L'avantage de xFolk est que cela fournit un ensemble d'attributs de classe qui peuvent être réutilisés sur tous les services et blogs de liens, presque toujours sans aucune perte de granularité. La prochaine section présentera plusieurs autres exemples pour illustrer ce point.
+
Convertir le balisage pour être conforme à xFolk est presque toujours aussi facile. L'avantage de xFolk est que cela fournit un ensemble d'attributs de classe qui peuvent être réutilisés sur tous les services et blogs de liens, presque toujours sans aucune perte de granularité. La prochaine section présentera plusieurs autres exemples pour illustrer ce point.
== Beaucoup plus d'exemples ==
== Beaucoup plus d'exemples ==
-
Nous avons de nombreux exemples pour aider les développeurs à incorporer xFolk dans leurs sites.
+
Nous avons de nombreux exemples pour aider les développeurs à incorporer xFolk dans leurs sites.
=== Dans la jungle ===
=== Dans la jungle ===
-
Ce sont de vrais exemples de systèmes qui fonctionnent et qui publient les signets dans xFolk. Ceci est une endroit idéal pour commencer à regarder des exemples "dans la jungle" pour essayer de parser, indexer, organiser, etc. Si vous publiez en utilisant xFolk, sentez-vous à l'aise pour ajouter en haut de cette liste. Une fois que la liste sera trop grosse, nous ferons une page wiki séparée.
+
Ce sont de vrais exemples de systèmes qui fonctionnent et qui publient les signets dans xFolk. Ceci est une endroit idéal pour commencer à regarder des exemples "dans la jungle" pour essayer de parser, indexer, organiser, etc. Si vous publiez en utilisant xFolk, sentez-vous à l'aise pour ajouter en haut de cette liste. Une fois que la liste sera trop grosse, nous ferons une page wiki séparée.
* [http://waferbaby.com/hussy waferbaby's Hussy] publie actuellement les liens en utilisant xFolk.
* [http://waferbaby.com/hussy waferbaby's Hussy] publie actuellement les liens en utilisant xFolk.
-
* [http://unalog.com unalog] publie actuellement tous les liens partagés (y compris les résultats de recherche) en utilisant xFolk.
+
* [http://unalog.com unalog] publie actuellement tous les liens partagés (y compris les résultats de recherche) en utilisant xFolk.
-
* [http://smarking.com/ Smarking] publie actuellement tous les liens partagés (y compris les résultats de recherche) en utilisant xFolk.
+
* [http://smarking.com/ Smarking] publie actuellement tous les liens partagés (y compris les résultats de recherche) en utilisant xFolk.
-
* [http://de.lirio.us de.lirio.us] publie actuellement ses signets en utilisant xFolk (avec l'attribut de classe déprécié <code>extended</code> a lieu de <code>description</code>, voir [[xfolk-profile-fr| le XMDP]]).
+
* [http://de.lirio.us de.lirio.us] publie actuellement ses signets en utilisant xFolk (avec l'attribut de classe déprécié <code>extended</code> a lieu de <code>description</code>, voir [[xfolk-profile-fr| le XMDP]]).
-
* [http://dev.blogmarks.net/wiki/BlogSync blogmarks] exporte actuellement les signets vers les blogs en xFolk (défilez plus bas pour voir l'exemple d'export sur la page ; l'attribut de classe déprécié <code>extended</code> est utilisé au lieu de <code>description</code>, voir [[xfolk-profile-fr| le XMDP]]).
+
* [http://dev.blogmarks.net/wiki/BlogSync blogmarks] exporte actuellement les signets vers les blogs en xFolk (défilez plus bas pour voir l'exemple d'export sur la page ; l'attribut de classe déprécié <code>extended</code> est utilisé au lieu de <code>description</code>, voir [[xfolk-profile-fr| le XMDP]]).
-
* [http://thecommunityengine.com The Community Engine] utilise xFolk (avec l'attribut de classe déprécié <code>extended</code> utilisé au lieu de <code>description</code>, voir [[xfolk-profile-fr| le XMDP]]) pour ses [http://thecommunityengine.com/home entrées principales] et pour ses [http://thecommunityengine.com/webcites signets republiés].
+
* [http://thecommunityengine.com The Community Engine] utilise xFolk (avec l'attribut de classe déprécié <code>extended</code> utilisé au lieu de <code>description</code>, voir [[xfolk-profile-fr| le XMDP]]) pour ses [http://thecommunityengine.com/home entrées principales] et pour ses [http://thecommunityengine.com/webcites signets republiés].
-
* [http://groovymother.com/links/ Groovy Links] est un blog de liens qui est balisé avec xFolk.
+
* [http://groovymother.com/links/ Groovy Links] est un blog de liens qui est balisé avec xFolk.
-
=== Services de signets sociaux supplémentaires ===
+
=== Services de signets sociaux supplémentaires ===
-
Cet exemple illustre comment xFolk peut être appliqué à un service additionnel :  
+
Cet exemple illustre comment xFolk peut être appliqué à un service additionnel :  
* [[xfolk-scuttle-fr| scuttle]]
* [[xfolk-scuttle-fr| scuttle]]
Line 160: Line 159:
=== Blogs de liens ===
=== Blogs de liens ===
-
Les services de signets sociaux sont seulement les exemples les plus récents de personnes publiant des liens. Les blogs de liens ont presque toujours existé depuis le début du blogging. Ils représentent en quelque sorte plus qu'un défi pour xFolk parce que leurs balisages tendent à être moins sémantiques qu'au début. Les exemples suivants illustrent quelques défis particuliers et comment ils peuvent être surmontés.
+
Les services de signets sociaux sont seulement les exemples les plus récents de personnes publiant des liens. Les blogs de liens ont presque toujours existé depuis le début du blogging. Ils représentent en quelque sorte plus qu'un défi pour xFolk parce que leurs balisages tendent à être moins sémantiques qu'au début. Les exemples suivants illustrent quelques défis particuliers et comment ils peuvent être surmontés.
* [[xfolk-kottke | kottke]]
* [[xfolk-kottke | kottke]]
Line 168: Line 167:
=== Spam ===  
=== Spam ===  
-
Quelques spammers sont en train d'ajouter des tags xFolk à leurs fermes à liens. (C'est probablement une mauvaise idée de lier vers ces sites). Par exemple :  
+
Quelques spammers sont en train d'ajouter des tags xFolk à leurs fermes à liens. (C'est probablement une mauvaise idée de lier vers ces sites). Par exemple :  
* phontron.info
* phontron.info
-
== Implémentations ==
+
== Implémentations ==
-
Les implémentations suivantes ont été développées et elles génèrent ou utilisent xFolk. Si vous avez une implémentation xFolk, sentez-vous à l'aise pour l'ajouter en haut de cette liste. Une fois que la liste sera trop grosse, nous ferons une page wiki séparée.
+
Les implémentations suivantes ont été développées et elles génèrent ou utilisent xFolk. Si vous avez une implémentation xFolk, sentez-vous à l'aise pour l'ajouter en haut de cette liste. Une fois que la liste sera trop grosse, nous ferons une page wiki séparée.
* [http://buzka.com Buzka], un service de signet social supporte maintenant xFolk
* [http://buzka.com Buzka], un service de signet social supporte maintenant xFolk
-
* [http://blip.tv Blip.tv], un site d'hébergement vidéo [http://blog.blip.tv/blog/2006/08/19/blip-supports-xfolk/ supporte maintenant xFolk].
+
* [http://blip.tv Blip.tv], un site d'hébergement vidéo [http://blog.blip.tv/blog/2006/08/19/blip-supports-xfolk/ supporte maintenant xFolk].
-
* [http://www.s9y.org/ Serendipity], une application de Blogging/CMS motorisée par PHP a maintenant un [http://www.numblog.de/archives/241-Social-Bookmarks-Plugin-for-Serendipity.html plugin de signets sociaux] qui supporte xFolk.
+
* [http://www.s9y.org/ Serendipity], une application de Blogging/CMS motorisée par PHP a maintenant un [http://www.numblog.de/archives/241-Social-Bookmarks-Plugin-for-Serendipity.html plugin de signets sociaux] qui supporte xFolk.
-
* [http://claimid.com claimID] a implémenté xFolk pour les liens vers les personnes.
+
* [http://claimid.com claimID] a implémenté xFolk pour les liens vers les personnes.
* [http://ma.gnolia.com ma.gnolia] supporte maintenant xFolk.
* [http://ma.gnolia.com ma.gnolia] supporte maintenant xFolk.
-
* [http://smarking.com/ Smarking.com] (un service de signet social) balise ses liens tagués avec xFolk ! truc : [http://3spots.blogspot.com/2006/05/social-bookmarking-smarking.html 3spots: Social + bookMARKING = Smarking] qui lui-même est un [[hreview-fr|hReview]].
+
* [http://smarking.com/ Smarking.com] (un service de signet social) balise ses liens tagués avec xFolk ! truc : [http://3spots.blogspot.com/2006/05/social-bookmarking-smarking.html 3spots: Social + bookMARKING = Smarking] qui lui-même est un [[hreview-fr|hReview]].
-
* [http://blog.codeeg.com/2006/03/20/flock-tails-flocktails/ Flocktails] - port de l'extension Tails pour Flock 0.5.12 qui cherche les hCards, hCalendar, xFolk et hReview et les porte dans une barre supérieure à portée de main.
+
* [http://blog.codeeg.com/2006/03/20/flock-tails-flocktails/ Flocktails] - port de l'extension Tails pour Flock 0.5.12 qui cherche les hCards, hCalendar, xFolk et hReview et les porte dans une barre supérieure à portée de main.
-
* [http://blog.codeeg.com/tails-firefox-extension/ Tails est une Extension Firefox] qui affiche la présence de microformats ([[hcard-fr|hCard]], [[hcalendar-fr|hCalendar]], [[hreview-fr|hReview]], [[xfolk-fr|xFolk]]) sur une page web.
+
* [http://blog.codeeg.com/tails-firefox-extension/ Tails est une Extension Firefox] qui affiche la présence de microformats ([[hcard-fr|hCard]], [[hcalendar-fr|hCalendar]], [[hreview-fr|hReview]], [[xfolk-fr|xFolk]]) sur une page web.
-
* Bud Gibson et Mike Migurski [http://thecommunityengine.com/home/archives/2005/09/vegomatic_an_al.html ont écrit] [http://thecommunityengine.com/veg-o-matic veg-o-matic], un outil et service xFolk de reblogging.
+
* Bud Gibson et Mike Migurski [http://thecommunityengine.com/home/archives/2005/09/vegomatic_an_al.html ont écrit] [http://thecommunityengine.com/veg-o-matic veg-o-matic], un outil et service xFolk de reblogging.
-
* [http://inside.glnetworks.de/ Martin Rehfeld] a mis à jour le travail de [http://blogmatrix.blogmatrix.com/ David Janes] et produit un [http://inside.glnetworks.de/2006/06/05/microformats-have-arrived-in-firefox-15-greasemonkey-06/ script] [[Greasemonkey-fr|GreaseMonkey]] qui trouve beaucoup d'éléments microformats, y compris xFolk et [http://blog.davidjanes.com/mtarchives/2005_08.html#003379 fournit un menu en popup d'actions]. ''Ceci fonctionnera maintenant avec FireFox 1.5+/GreaseMonkey 0.6.4+.''
+
* [http://inside.glnetworks.de/ Martin Rehfeld] a mis à jour le travail de [http://blogmatrix.blogmatrix.com/ David Janes] et produit un [http://inside.glnetworks.de/2006/06/05/microformats-have-arrived-in-firefox-15-greasemonkey-06/ script] [[Greasemonkey-fr|GreaseMonkey]] qui trouve beaucoup d'éléments microformats, y compris xFolk et [http://blog.davidjanes.com/mtarchives/2005_08.html#003379 fournit un menu en popup d'actions]. ''Ceci fonctionnera maintenant avec FireFox 1.5+/GreaseMonkey 0.6.4+.''
-
* [http://www.midgard-project.org/midcom-permalink-6416db7e1f0e297b4cf3dcc285702a8d net.nemein.bookmarks], le gestionnaire de signets dans [http://www.midgard-project.org/ Midgard CMS] utilise xFolk comme le format natif de production, avec un ajout <code>abbr class=posted</code> pour la date de publication et <code>abbr class=poster</code> pour l'utilisateur qui a ajouté le signet. Vor l'[http://bergie.iki.fi/links/ exemple]
+
* [http://www.midgard-project.org/midcom-permalink-6416db7e1f0e297b4cf3dcc285702a8d net.nemein.bookmarks], le gestionnaire de signets dans [http://www.midgard-project.org/ Midgard CMS] utilise xFolk comme le format natif de production, avec un ajout <code>abbr class=posted</code> pour la date de publication et <code>abbr class=poster</code> pour l'utilisateur qui a ajouté le signet. Vor l'[http://bergie.iki.fi/links/ exemple]
-
* [http://de.lirio.us de.lirio.us] publie actuellement ses signets en utilisant xFolk 0.4 (l'attribut de classe <code>extended</code> est utilisé au lieu de <code>description</code>).
+
* [http://de.lirio.us de.lirio.us] publie actuellement ses signets en utilisant xFolk 0.4 (l'attribut de classe <code>extended</code> est utilisé au lieu de <code>description</code>).
-
* [http://dev.blogmarks.net/wiki/BlogSync blogmarks] exporte actuellement les signets vers les blogs en xFolk 0.4 (scrollez vers le bas pour voir l'exemple d'exportation sur la page ; l'attribut de classe <code>extended</code> est utilisé au lieu de <code>description</code>).
+
* [http://dev.blogmarks.net/wiki/BlogSync blogmarks] exporte actuellement les signets vers les blogs en xFolk 0.4 (scrollez vers le bas pour voir l'exemple d'exportation sur la page ; l'attribut de classe <code>extended</code> est utilisé au lieu de <code>description</code>).
-
* [http://pokkari.com/microformat/javadoc/ Sivitols] est une librairie Java pour les microformats. Actuellement seul le standard xFolk RC1 est implémenté mais le support microformat additionnel est planifié. (adapté à partir de [http://blog.blip.tv/blog/microformats/])
+
* [http://pokkari.com/microformat/javadoc/ Sivitols] est une librairie Java pour les microformats. Actuellement seul le standard xFolk RC1 est implémenté mais le support microformat additionnel est planifié. (adapté à partir de [http://blog.blip.tv/blog/microformats/])
-
== Références ==
+
== Références ==
-
=== Références Normatives ===
+
=== Références Normatives ===
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]
* [http://www.w3.org/TR/2002/REC-xhtml1-20020801/ XHTML 1.0 SE]
* [[rel-tag-fr|rel-tag]]
* [[rel-tag-fr|rel-tag]]
-
=== Références Informatives  ===
+
=== Références Informatives  ===
* [http://thecommunityengine.com/home/archives/xfolk articles about xFolk]
* [http://thecommunityengine.com/home/archives/xfolk articles about xFolk]
* [http://thecommunityengine.com/home/archives/tags/microformats articles about the business value of microformats]
* [http://thecommunityengine.com/home/archives/tags/microformats articles about the business value of microformats]
Line 205: Line 204:
== Chantier en cours ==
== Chantier en cours ==
-
Bien que cette spécification ait récemment commencé à se stabiliser comme indiqué par la version RC1, c'est encore un chantier en cours. Si garantie, je suis prêt à aller vers plusieurs versions candidates pour parvenir à l'objectif de produire des entrées de signets plus généralement accessibles avec un format aussi léger que possible. Tous les changements depuis la dernière itération ont été motivés par l'expérience d'implémentations des développeurs tentant de parvenir à cet objectif. Des changements plus en profondeur seront aussi probablement motivés par les problèmes d'implémentation. Voir "directions futures" ci-dessous pour des possibilités supplémetaires de microformat.
+
Bien que cette spécification ait récemment commencé à se stabiliser comme indiqué par la version RC1, c'est encore un chantier en cours. Si garantie, je suis prêt à aller vers plusieurs versions candidates pour parvenir à l'objectif de produire des entrées de signets plus généralement accessibles avec un format aussi léger que possible. Tous les changements depuis la dernière itération ont été motivés par l'expérience d'implémentations des développeurs tentant de parvenir à cet objectif. Des changements plus en profondeur seront aussi probablement motivés par les problèmes d'implémentation. Voir "directions futures" ci-dessous pour des possibilités supplémetaires de microformat.
=== Changements depuis xFolk 0.4 ===
=== Changements depuis xFolk 0.4 ===
-
La valeur de l'attribut de classe <code>extended</code> a été dépréciée en faveur de <code>description</code> pour mieux se conformer à d'autres usages de microformats et quelques requêtes durant l'implémentation. L'autre changement a été de permettre l'utilisation de plusieurs éléments de classe <code>extended</code> basés sur quelque cas d'utilisation découverts dans l'implémentation.
+
La valeur de l'attribut de classe <code>extended</code> a été dépréciée en faveur de <code>description</code> pour mieux se conformer à d'autres usages de microformats et quelques requêtes durant l'implémentation. L'autre changement a été de permettre l'utilisation de plusieurs éléments de classe <code>extended</code> basés sur quelque cas d'utilisation découverts dans l'implémentation.
=== Directions futures ===
=== Directions futures ===
-
Il y a plusieurs extenstion qu'on pourrait imaginer pour xFolk.  Fréquemment, ces extensions sont mieux abouties en combinant xFolk avec un autre microformat. Par exemple, on pourrait vouloir indiquer son évaluation de l'item mis en signet. Ceci pourrait être réalisé en utilisant [[vote-links-fr| Vote Links]] ou [[hreview-fr | hReview]] avec xFolk.
+
Il y a plusieurs extenstion qu'on pourrait imaginer pour xFolk.  Fréquemment, ces extensions sont mieux abouties en combinant xFolk avec un autre microformat. Par exemple, on pourrait vouloir indiquer son évaluation de l'item mis en signet. Ceci pourrait être réalisé en utilisant [[vote-links-fr| Vote Links]] ou [[hreview-fr | hReview]] avec xFolk.
-
On peut aussi imaginer d'étendre xFolk pour fournir des données conformes avec plusieurs APIs de services de signets sociaux, par exemple pour fournir tous les signets par tag. Ces APIs sont actuellement trop fluides pour la spécification de quelque type de standard. Les APIs et la fonctionnalité qu'elles fournissent représentent un moyen dont les services de signets sociaux et les méta-services peuvent eux-mêmes se différencier.
+
On peut aussi imaginer d'étendre xFolk pour fournir des données conformes avec plusieurs APIs de services de signets sociaux, par exemple pour fournir tous les signets par tag. Ces APIs sont actuellement trop fluides pour la spécification de quelque type de standard. Les APIs et la fonctionnalité qu'elles fournissent représentent un moyen dont les services de signets sociaux et les méta-services peuvent eux-mêmes se différencier.
-
Un format compagnon appelé "xFolk definition" est en développement.  "xFolk definition" fournira un moyen de définir explicitement les tags utilisés dans les signets sociaux.
+
Un format compagnon appelé "xFolk definition" est en développement.  "xFolk definition" fournira un moyen de définir explicitement les tags utilisés dans les signets sociaux.
=== Brainstorming ===
=== Brainstorming ===
Line 223: Line 222:
=== Q&R ===
=== Q&R ===
-
* Si vous avez quelque question à propos d'xFolk, regardez les [[xfolk-faq-fr|FAQ xFolk]], et si vous ne trouvez pas de réponses, ajoutez vos questions !
+
* Si vous avez quelque question à propos d'xFolk, regardez les [[xfolk-faq-fr|FAQ xFolk]], et si vous ne trouvez pas de réponses, ajoutez vos questions !
-
=== Problématiques ===
+
=== Problématiques ===
-
* SVP, ajoutez toute problématique avec la spécification au document séparé [[xfolk-issues-fr| xFolk issues]].
+
* SVP, ajoutez toute problématique avec la spécification au document séparé [[xfolk-issues-fr| xFolk issues]].
-
==Pages apparentées==  
+
==Pages apparentées==  
{{template:xfolk-related-pages-fr}}
{{template:xfolk-related-pages-fr}}

Revision as of 20:05, 8 January 2009

trcnanoc4

xFolk (RC1)

xFolk est un format simple et ouvert pour publier des collections de signets. Il permet aux services de mieux améliorer l'expérience utilisateur et de partager des données dans un logiciel de signet basé sur le web. xFolk peut être embarqué dans (X)HTML, Atom, RSS et du XML arbitraire. C'est l'un des nombreux microformats standards ouverts.

Contents


Spécification Brouillon

Editeur/Auteur

Bud Gibson, The Community Engine

(traduction Christophe Ducamp)

Copyright

Cette spécification est (C) 2005-2017 par les auteurs. Néanmoins, les auteurs ont pour but de soumettre cette spécification à un corps de standards avec une politique libérale de copyright/licence telle que GMPG, IETF, et/ou W3C. Quiconque souhaite contribuer devrait lire avant de contribuer leurs principes de copyright, politiques et licences (par ex. les Principes GMPG) et être d'accord avec eux, y compris le fait de licencier toutes les contributions sous les licences nécessaires (par ex. CC-by 1.0 et suivantes).

Brevets

Cette spécification est sujette à une politique de brevets libres de droits, par ex. pour la Politique de Brevet du W3C, IETF RFC3667 et RFC3668.

Inspiration et Reconnaissances

Merci à : David Plaut qui m'a présenté l'idée que les items peuvent appartenir partiellement à beaucoup de catégories en une fois. Plus récemment, merci à : Tantek Çelik, Kevin Marks, Steve Mallet, Brian DelVecchio et François Hodierne qui ont contribué au développement de xFolk avec des critiques sensées et des implémentations.

Introduction

Les services de signets sociaux laissent les utilisateurs sauvegarder et taguer leurs signets pour les partager avec d'autres utilisateurs. Durant la dernière année, le nombre de ces services a poussé comme des champignons (plus de 20, avec des exemples comprenant : del.icio.us, furl, de.lirio.us, jots et blogmarks.

Le manque d'un standard ouvert et interopérable de données est une problématique majeure à utiliser les services de signets sociaux. Un standard ouvert ferait qu'il soit possible de collecter facilement des données signets et de les remixer pour inventer de nouveaux services le long de la ligne du moteur expérimental de recherche de signets gataga. Un standard ouvert ferait qu'il serait aussi possible d'écrire des javascripts qui fonctionnent transversalement sur les services comme le font certains actuellement pour del.icio.us, permettant des améliorations en expérience utilisateur.

xFolk est un standard ouvert de signet social qui a pour but de parvenir à tous ces avantages. Les services de signets sociaux qui adoptent xFolk continueront à se différencier eux-mêmes des services de données. Mais, la donnée elle-même sera facile à manipuler par des scripts tiers et sera facile à partager. En tant que résultat, les services de signets pourront offrir à leurs utilisateurs un ensemble plus large d'options à un moindre coût et se concentrer sur ce qui les différencie vraiment. Les individus ou les groupes opérant seul des répertoires de signets auront accès à un plus large ensemble de fonctionnalités que celles qu'ils pourraient produire seuls.

Principes de Design XHTML Sémantique

Note : les Principes de Design XHTML Sémantique ont été écrits initialement dans le contexte de développement de hCard et hCalendar, par conséquent il peut être plus facile de comprendre ces principes dans le contexte de la méthodologie de design hCard (ce qui veut dire, lisez ça d'abord). Tantek

XHTML est construit sur du XML, et par conséquent les formats fondés sur XHTML peuvent être utilisés non seulement pour une présentation d'affichage pratique, mais aussi à des fins d'échanges de données. A bien des façons, les formats fondés sur XHTML illustrent le meilleur des mondes tant du HTML que du XML. Néanmoins au moment de construire des formats basés sur XHTML, cela aide d'avoir un ensemble de principes directeurs.

  1. Réutilisez autant que possible le schéma (noms, objets, propriétés, valeurs, types, hiérarchies, contraintes) à partir des standards de référence établis et bien supportés. Evitez de redéclarer les contraintes exprimées dans le standard source. Des mentions à titre d'information peuvent passer.
    1. Pour les types avec plusieurs composants, utilisez des éléments imbriqués avec des noms de classe équivalents aux noms des composants.
    2. Les composants pluriels sont produits au singulier, et par conséquent plusieurs éléments imbriqués sont utilisés pour représenter plusieurs valeurs de texte qui sont délimitées par des virgules.
  2. Utilisez la sémantique XHTML la plus précise pour construire des blocs pour chaque objet, etc.
  3. Autrement utilisez un élément générique structurel (par ex. <span> ou <div>), ou l'élément contextuel approprié (par ex. un <li> dans un <ul> ou <ol>).
  4. Utilisez des noms de classes basés sur des noms extraits du schéma original, à moins que le XHTML sémantique de construction de bloc ne représente précisément cette partie du schéma original. Si les noms dans le schéma original ne sont pas sensibles la casse, alors mettez tout dans un équivalent en bas de casse. Les noms de composants implicites en prose (plutôt qu'explicites dans le schéma défini) devraient aussi utiliser les équivalents bas de casse pour une facilité d'utilisation. Les espaces dans les noms des composants deviennent des caractères tiret '-'.
  5. Pour finir, si le format de la donnée selon le schéma original est trop long et/ou non amical sur le plan humain, utilisez <abbr> au lieu d'un élément générique structurel, et placez les données littérales dans l'attribut 'title' (là où vont les expansions abbr), et l'équivalent le plus bref et le plus lisible humainement dans l'élément lui-même. De plus amples explications de cet usage de <abbr> : Human vs. ISO8601 dates problem solved

Format

Une analyse extensive des services de signets sociaux et des linkblogs, déposée ailleurs, révèle que les données publiées par tous les services de signets et beaucoup de linkblogs différents sont décrites par le schéma implicite suivant :

Comme démontré dans les premières itérations du standard xFolk, ce schéma général peut être traduit en balisage par :

  1. créer un élément conteneur pour chaque entrée de la classe xfolkentry,
  2. utiliser un élément <a> pour le lien bookmarké ou tagué de la classe taggedlink,
  3. utiliser l'attribut title pour l'élément lien tagué <a>, s'il existe, comme l'entrée title, autrement utiliser la valeur de l'élément,
  4. utiliser RelTag pour les tags, et
  5. utiliser un élément conteneur de classe description, tel que <p>, pour toute autre description étendue ou résumé.

Une entrée donnée xFolk contiendra toujours un lien tagué comprenant un 'title' avec d'autres éléments optionnels. Les entrées peuvent avoir plus d'un tag tout comme plus d'un élément de classe description. Plusieurs éléments de classe description sont triés par l'ordre du document par défaut. Les éléments sémantiques dans les entrées xFolk peuvent être imbriqués à des profondeurs abritraires.

Beaucoup de systèmes de signets sociaux existent, chacun d'eux avec se propres conventions de balisage. En outre, beaucoup de personnes publient déjà des blogs de liens. xFolk est conçu en priorité pour faciliter l'adoption de ces pratiques actuelles. Par conséquent, peu d'hypothèses ont été produites comme les types exacts des éléments utilisés pour une entrée xFolk. Le travail de définir la sémantique est entièrement laissé à la casse et aux valeurs d'attribut rel (dans le cas de reltag).

Il est attendu que les développeurs utiliseront XPath ou une syntaxe équivalente en accédant à des éléments d'entrée xFolk. Une exigence pour xPath est que le document (X)HTML soit bien formé mais pas nécessairement valide. Par conséquent, bien que non désirable, il est possible d'utiliser xFolk dans un document (X)HTML qui ne valide pas.

XMDP Profile

Voir le xFolk profile pour le profil XMDP de xFolk.

Exemple

Voilà un signet échantillon comme affiché dans la syntaxe standard de del.icio.us. Les lignes où les attributs de classe d'éléments doivent changer pour se conformer à xFolk sont marquées avec un commentaire à la fin.

<div class="post"> <!--changera-->
  <div>
    <a class="delLink" href="http://www.sifry.com/alerts/archives/000306.html"> <!--changera-->
      Sifry's Alerts: Technorati launches Related Tags
    </a> 
  </div>
  <div class="extended"> <!--will change-->
    Ever wanted to see what posts are related to other posts, what tags 
    are related to others? Now you can! Just check under the Tag 
    description on most tag pages, like this one, or this one, and you'll
    see the patterns. Can you smell the emergence?
  </div>
  <div class="meta">
    to
    <a class="delNav" href="/fpgibson/folksonomy">folksonomy</a> <!--changera-->
    <a class="delNav" href="/fpgibson/technorati">technorati</a> <!--changera-->
    ... <a class="delNav" href="/url/cbcabf7de070fdb46598ee679367be49">
    and 1 other person
    </a>
    ... on 2005-04-09
  </div>
</div>

L'équivalent dans xFolk se fait comme suit. Les commentaires sont placés à la fin des lines où les modifiations d'attribut de classe sont requises

<div class="xfolkentry"> <!-- changé -->
  <div>
    <a class="taggedlink" href="http://www.sifry.com/alerts/archives/000306.html"> <!-- changé -->
      Sifry's Alerts: Technorati launches Related Tags
    </a> 
  </div>
  <div class="description"> <!-- changed -->
    Ever wanted to see what posts are related to other posts, what tags 
    are related to others? Now you can! Just check under the Tag 
    description on most tag pages, like this one, or this one, and you'll
    see the patterns. Can you smell the emergence?
  </div>
  <div class="meta">
    to
    <a rel="tag" href="/fpgibson/folksonomy">folksonomy</a> <!-- changé -->
    <a rel="tag" href="/fpgibson/technorati">technorati</a> <!-- changé -->
    ... <a class="delNav" href="/url/cbcabf7de070fdb46598ee679367be49">
    and 1 other person
    </a>
    ... on 2005-04-09
  </div>
</div>

Un autre exemple simple, basé sur un balisage de listes non-ordonnées :


<ul><!--xfolk est un microformat pour des *collections* de liens à partager-->
  <li>
    <ul class="xfolkentry"> 
      <li><a class="taggedlink" href="http://microformats.org/wiki/Main_Page-fr">Le wiki du projet microformats</a></li>
      <li class="description">Un bon lieu de départ pour découvrir et jouer avec les microformats</li>
      <li class="description">Site wiki communautaire</li>
      <li class="meta">
	Tags :
	<a rel="tag" href="http://del.icio.us/tag/microformats">microformats</a>
	<a rel="tag" href="http://del.icio.us/tag/websocial">websocial</a>
	<a rel="tag" href="http://del.icio.us/tag/semantique">semantique</a>
      </li>
    </ul>
  </li>
	
  <li>
   <!--Un autre lien Xfolk comme au dessus, et ainsi de suite...-->
  </li>

</ul>

Convertir le balisage pour être conforme à xFolk est presque toujours aussi facile. L'avantage de xFolk est que cela fournit un ensemble d'attributs de classe qui peuvent être réutilisés sur tous les services et blogs de liens, presque toujours sans aucune perte de granularité. La prochaine section présentera plusieurs autres exemples pour illustrer ce point.

Beaucoup plus d'exemples

Nous avons de nombreux exemples pour aider les développeurs à incorporer xFolk dans leurs sites.

Dans la jungle

Ce sont de vrais exemples de systèmes qui fonctionnent et qui publient les signets dans xFolk. Ceci est une endroit idéal pour commencer à regarder des exemples "dans la jungle" pour essayer de parser, indexer, organiser, etc. Si vous publiez en utilisant xFolk, sentez-vous à l'aise pour ajouter en haut de cette liste. Une fois que la liste sera trop grosse, nous ferons une page wiki séparée.

Services de signets sociaux supplémentaires

Cet exemple illustre comment xFolk peut être appliqué à un service additionnel :

Blogs de liens

Les services de signets sociaux sont seulement les exemples les plus récents de personnes publiant des liens. Les blogs de liens ont presque toujours existé depuis le début du blogging. Ils représentent en quelque sorte plus qu'un défi pour xFolk parce que leurs balisages tendent à être moins sémantiques qu'au début. Les exemples suivants illustrent quelques défis particuliers et comment ils peuvent être surmontés.

Spam

Quelques spammers sont en train d'ajouter des tags xFolk à leurs fermes à liens. (C'est probablement une mauvaise idée de lier vers ces sites). Par exemple :

Implémentations

Les implémentations suivantes ont été développées et elles génèrent ou utilisent xFolk. Si vous avez une implémentation xFolk, sentez-vous à l'aise pour l'ajouter en haut de cette liste. Une fois que la liste sera trop grosse, nous ferons une page wiki séparée.

Références

Références Normatives

Références Informatives

Travaux similaires

Chantier en cours

Bien que cette spécification ait récemment commencé à se stabiliser comme indiqué par la version RC1, c'est encore un chantier en cours. Si garantie, je suis prêt à aller vers plusieurs versions candidates pour parvenir à l'objectif de produire des entrées de signets plus généralement accessibles avec un format aussi léger que possible. Tous les changements depuis la dernière itération ont été motivés par l'expérience d'implémentations des développeurs tentant de parvenir à cet objectif. Des changements plus en profondeur seront aussi probablement motivés par les problèmes d'implémentation. Voir "directions futures" ci-dessous pour des possibilités supplémetaires de microformat.

Changements depuis xFolk 0.4

La valeur de l'attribut de classe extended a été dépréciée en faveur de description pour mieux se conformer à d'autres usages de microformats et quelques requêtes durant l'implémentation. L'autre changement a été de permettre l'utilisation de plusieurs éléments de classe extended basés sur quelque cas d'utilisation découverts dans l'implémentation.

Directions futures

Il y a plusieurs extenstion qu'on pourrait imaginer pour xFolk. Fréquemment, ces extensions sont mieux abouties en combinant xFolk avec un autre microformat. Par exemple, on pourrait vouloir indiquer son évaluation de l'item mis en signet. Ceci pourrait être réalisé en utilisant Vote Links ou hReview avec xFolk.

On peut aussi imaginer d'étendre xFolk pour fournir des données conformes avec plusieurs APIs de services de signets sociaux, par exemple pour fournir tous les signets par tag. Ces APIs sont actuellement trop fluides pour la spécification de quelque type de standard. Les APIs et la fonctionnalité qu'elles fournissent représentent un moyen dont les services de signets sociaux et les méta-services peuvent eux-mêmes se différencier.

Un format compagnon appelé "xFolk definition" est en développement. "xFolk definition" fournira un moyen de définir explicitement les tags utilisés dans les signets sociaux.

Brainstorming

Discussions

Q&R

Problématiques

Pages apparentées

xfolk-fr was last modified: Wednesday, December 31st, 1969

Views