hcalendar-fr: Difference between revisions

From Microformats Wiki
Jump to navigation Jump to search
(Ajout reminderfox et Microformats bookmarklet)
(→‎Exemples dans la jungle: moved to hcalendar-examples-in-wild-fr)
Line 172: Line 172:
Note 6 : L'endroit (Location) dans cet exemple contient une structure implicite (nom du lieu de l'événement, ville, état) qui devrait être balisée explicitement sous une [[hcard-fr|hCard]].  Voir [http://microformats.org/wiki/hcalendar-brainstorming#hCard_locations hCalendar brainstorming: hCard locations] pour une explication sur la façon de faire ça.
Note 6 : L'endroit (Location) dans cet exemple contient une structure implicite (nom du lieu de l'événement, ville, état) qui devrait être balisée explicitement sous une [[hcard-fr|hCard]].  Voir [http://microformats.org/wiki/hcalendar-brainstorming#hCard_locations hCalendar brainstorming: hCard locations] pour une explication sur la façon de faire ça.


Voir [[hcalendar-examples-fr|exemples hcalendar]] pour plus d'exemples hCalendar.
Voir [[hcalendar-examples-fr|exemples hCalendar]] pour plus d'exemples hCalendar.
 
Voir [[hcalendar-examples-in-wild-fr|exemples hCalendar dans la jungle]] pour des exemples dans la jungle
== Exemples dans la jungle ==
Cette section est '''pour information'''.
 
Les sites suivants ont implémenté le hCalendar, et sont par conséquent un endroit génial pour tous afin de commencer à regarder des exemples "dans la jungle" et essayer de parser, d'indexer, d'organiser, etc.
Si les événements sur vos pages sont balisés avec hCalendar, sentez-vous à l'aise pour les ajouter en haut de cette liste.
Une fois que la liste sera trop grande, nous produirons une page wiki distincte.
 
=== Nouveaux Exemples ===
SVP, ajoutez de nouveaux exemples à cette section.
 
* [http://www.theatrestudies.llc.ed.ac.uk/ Theatre Studies: European Theatre] à l'Université d'Edinburgh utilise hCalendar pour baliser les actualités et événements sur la page index.
* [http://www.crosbyheritage.co.uk/events/ Colin Crosby Heritage Tours] utilise hCalendar pour baliser les événéments.
* [http://www.facebook.com Facebook] utilise hCalendar pour baliser les événments.
* [http://www.newbury-college.ac.uk/ Newbury College UK] utilise une poignée de hCalendar et hCard.
* [http://07.pagesd.info/ardeche/agenda.aspx 07.pagesd.info] utilise hCalendar et hCard pour publier l'agenda des évènements ardéchois.
* [http://climbtothestars.org Stephanie Booth] a annoncé [http://climbtothestars.org/archives/2006/09/14/microformats-et-bloggy-friday-doctobre/ un Bloggy Friday qui parlera de microformats pour octobre 2006] en utilisant hCalendar.
* [http://www.parisweb2006.org/ La conférence Paris Web 2006] utilise hCalendar sur sa page d'accueil et sur la [http://www.parisweb2006.org/planning.php page de planning] des deux journées.
* [http://webdirections.org/program/ La Conférence Web Directions (Sydney Australie)] utilise hCalendar pour son programe. Elle utilise l'axe et les titres pour les événements dans un tableau et démontre comme c'est facile de faire tout l'ensemble soit téléchargeable en utilisant X2V.
* [http://www.thestreet.org.au/ The Street Theatre (Canberra, Australie)] utilise maintenant hCalendar pour les pièces sur sa page [http://www.thestreet.org.au/whats_on.htm What's On].
* Le [http://www.westmidlandbirdclub.com/ West Midland Bird Club] en Grande Bretagne utilise hCal sur son  [http://www.westmidlandbirdclub.com/diary/ annuaire d'événements].
* [http://www.clacksweb.org.uk Clackmannanshire Council] utilise hCalendar sur sa  [http://www.clacksweb.org.uk/community/events/ page de listes d'événements] et les pages événements individuelles.
* [http://www.markthisdate.com/ le portail de calendrier MarkThisDate.com] utilise maintenant hCalendar pour tous les calendriers. Sur notre site web, les visiteurs peuvent ajouter des calendriers et télécharger des calendriers vers Outlook, Lotus Notes, iCal, Netvibes, 30Boxes, Google Calendar et bien d'autres. Plus de 600 calendriers ont déjà été téléchargés.
* [http://mogue.jp/ mogue] utilise hCalendar sur les pages [http://mogue.jp/event/1000/ de détail d'événement].
* [http://www.gustavus.edu/events/nobelconference/2006/schedule.cfm 2006 Nobel Conference] utilise hCalendar pour le programme de la conférence
* [http://www.geekinthepark.co.uk Geek in the Park] utilise hCalendar pour l'information événement. -- par [[User:Trovster|trovster]]
* [http://www.besancon.fr/ Le site officiel de Besançon (France)] pour ses événements
* [http://2006.dconstruct.org/schedule/ le programme de la conférence d.Construct 2006] est publié en utilisant hCalendar.
* [http://local.yahoo.com Yahoo Local] supporte maintenant hCalendar
* Nous avons utilisé hCalendar pour le [http://www.fuckparade.org/flyer/2006/ flyer F’parade 2006], une contre démonstration de la Love Parade à Berlin, et une problématique se sont posées : '''l'extention tails de Firefox''' n'obtient pas un résumé quand c'est un texte-alt dans une image.
* [http://www.thesession.org/events/ The Session events] utilise hCalendar pour baliser les concerts, festivals et atelier en rapport avec la musique Irlandaise traditionnelle.
* [http://rubyandrails.org/usergroups/newcastle ncl.rb] utilise hCalendar pour baliser les nouvelles réunions.
* [http://www.worldcupkickoff.com/ World Cup KickOff] où vous pouvez télécharger et garder toutes les "fixtures" qui vous intéresse afin que vous ne ratiez pas un seul match de la Coupe du Monde de football 2006 !
** Ce lien était sur le [http://www.lifehacker.com/software/sports/world-cup-start-times-for-ical-etc-175393.php site Lifehackers] et a fait son chemin vers les site de news yahoo :
 
Lundi 22 mai, 4:00 PM ET
La Coupe du Monde, l'un des événements sportifs les plus regardés dans le monde est presque parmi nous. Si vous avez déjà essayé de suivre votre équipe favorité à travers la Coupe, vous savez que ce peut être parfois difficile de savoir quand ils jouent. World Cup Kickoff peut aider.
 
World Cup KickOff est tout ce dont vous avez besoin pour connaître les détails des matches à venir pour la Coupe du Monde 2006. Que vous utilisiez votre téléphone mobile, MS outlook, Apple iCal ou le calendrier Mozilla vous pouvez télécharger et conserver toutes les rencontres qui vous intéresse de façon à ce que vous ne ratiez pas une seule partie !
 
PUBLICITE
Prochain truc ? Nous vous montrerons comme vous lever à 2 heures du matin pour regarder vos matches. ;0) Merci à Tom pour le truc !
 
* [http://gross.org.za/calendar GROSSUG Calendar] - Utilise hCalendar pour baliser les réunions et autres événements.
* [http://www.socaltech.com socalTECH] est un site d'actualités et d'information. Son listing d'événements en page d'accueil est marqué avec hCalendar.
* [http://www.webanalyticsassociation.org/en/calendarevents/search.asp  Web Analytics Association] - le microformat hCalendar est en place sur tous les sites Tendenci sur les pages de recherche d'événements calendrier et la page de liste consolidée.
* [http://www.tendenci.com/en/calendarevents/search.asp Tendenci Calendar Events] avec hCalendar
* [http://www.argolon.com/2006/04/17/web20-conference-in-dublin/ Web2.0 Conference à Dublin] événement hCalendar
* [http://www.meetup.com/ Meetup.com] a balisé les [http://nightlife.meetup.com/cities/fr/paris/ calendriers d'événements des villes], [http://photo.meetup.com/100/events/ les listes des événements de groupe] et les [http://www.meetup.com/ pages personnelles enregistrées] avec hCalendar.
* [http://ukwindsurfing.com/ ukwindsurfing.com] a balisé les événements à venir avec hCalendar et la [http://ukwindsurfing.com/events/ page événements] dans une table.
* [http://ocono.com/ ocono.com] a balisé sa liste des "Upcoming Events" avec hCalendar.
* [http://www.austinbloggers.org/ Austin Bloggers] a balisé sa boîte des "Upcoming Events" avec hCalendar ([http://www.austinbloggers.org/blog/a/001123.html announcement]).
* L'application cloneable Group de Ning a une syntaxe [[hcalendar-fr|hCalendar]] sur son [http://group.ning.com/index.php?controller=event&action=list calendrier d'événéments] et [http://group.ning.com/index.php?controller=event&action=view&id=727220 ses pages de détails d'événéments].
* [http://tantek.com/microformats/2006/03-01-TechPlenAgenda.html Agenda: W3C Technical Plenary Day, March 1 2006] a une syntaxe [[hcard-fr|hCard]] et [[hcalendar-fr|hCalendar]]. ([http://www.w3.org/2006/03/01-TechPlenAgenda.html original ici]).
* The National Arbor Day Foundation a commencé à utiliser les hCalendars pour leurs [http://arborday.org/programs/conferences/communityforestry/index.cfm prochaines] [http://arborday.org/programs/conferences/hazardtrees-treeplanting/ conférences].
* [http://www.multipack.co.uk The Multipack] affiche un vevent pour l'information sur la prochaine réunion.
* [http://www.stateofflux.com/ State of Flux street art site] a commencé à ajouter des événements en format hCalendar.
* La [http://barcamp.org/#BarCamps page d'accueil du BarCamp liste les BarCamp à venir avec une syntaxe hCalendar] et a même un lien "Subscribe...".
* [http://www.w3.org/2005/12/allgroupoverview.html 2006 W3C Technical Plenary Week] has marked up the schedule and events for the week with hCalendar.
* [http://www.code4lib.org/2006/schedule code4lib Conference 2006 Schedule] est balisé avec hCalendar comme [http://www.code4lib.org/node/65 annoncé sur son blog].
* [http://grouper.ieee.org/groups/754 IEEE 754 Working Group] - essaye le hCalendar pour les réunions à venir.
* [http://www.pehuen.org/node/494  Elecciones 2005 Chile] - le premier hcalendar espagnol trouvé dans le wild.
* [http://www.codewitch.org/it/2005/11/17/no-creative-commons-no-party/ Giocolando » No Creative Commons? No Party!] est marqué avec hcalendar
* [http://www.cmprofessionals.org/events/calendar.html CM Pros Events Calendar] de Bob Doyle
* [http://www.midgard-project.org/community/events/ Midgard CMS Event calendar] - comme [http://bergie.iki.fi/blog/new-event-calendar-for-midcom.html blogué par Henri Bergius]
* [http://www.iowamilitaryveteransband.com/schedule/ Iowa Military Veterans Band Schedule] - balisage hCalendar [http://weblog.randomchaos.com/archive/2005/10/24/Microformats/ ajouté par Scott Reynen]
* [http://www.funfairgames.net/weblog/posts/00000011.html événements à venir sur Jason A.R. Moody Amusements Weblog] posté par Jason Moody le 15 Oct 2005. [http://www.funfairgames.net/weblog/index.html Son weblog] en général a des événements hCalendar postés à l'intérieur des billets de blog.
* [http://tantek.com/microformats/2005/syndicate/tracks-sessions-schedule.html Syndicate - Tracks & Sessions]
* [http://tantek.com/microformats/2005/web2/program.html Web 2.0 Conference schedule page marked up with hCalendar]
* [http://www.thisiscmon.com/ C'MON] est un groupe de rock du Canada, et ses [http://www.thisiscmon.com/shows/ dates de concerts] ont été marquées par [http://www.d2digitalmedia.com/ Ray Dickman] avec hCalendar.
* [http://ifreebusy.com/ ifreebusy.com] will affichera l'information "freebusy" en utilisant hCalendar. Voir cet [http://ifreebusy.com/neiljensen/freebusy/ exemple].
* [http://we05.com/ Web Essentials 05] a marqué son [http://we05.com/program.cfm tableau de programmes avec hCalendar], en utilisant les attributs 'axis' et 'headers'.
* [http://www.asdvbonaparte.nl/ ASDV Bonaparte] est une société littéraire Hollandaise. Son calendrier d'événements est marqué avec les conventions hCalendar.
* [http://chocnvodka.blogware.com/blog Suw Charman] a marqué [http://suw.org.uk/archives/category/events/ ses événements] avec hCalendar.
* [http://www.blogbusinesssummit.com/ Blog Business Summit] a publié ses [http://www.blogbusinesssummit.com/details.htm détails d'événements] avec une syntaxe hCalendar.
* [http://eventful.com Eventful.com] publie tous les événements avec hCalendar et les particpants avec [[hcard-fr|hCard]].  Cela leur a pris seulement 15 minutes pour implémenter les deux ! Son fil Atom contient aussi les hCalendar/hCard.
* [http://upcoming.org Upcoming.org] publie tous les événements et les listes d'événements avec hCalendar. Cela leur a pris seulement une heure pour ajouter le support hCalendar au site.
* The [http://laughingsquid.com/squidlist/calendar/ Laughing Squid Calendar] events, [http://laughingsquid.com/squidlist/calendar/9949/2005/5/9 e.g. this party], supporte maintenant hCalendar.
* Le site de [http://paulschreiber.com/ Paul] Schreiber, [http://concerts.shrub.ca/ Sunnyvale House Concerts] publie l'information des événements pour les concerts à venir en hcalendar.  En outre la page des [http://concerts.shrub.ca/shows Past Shows] contient les événements hCalendar pour tous les concerts passés.
* Le site de [http://paulschreiber.com/ Paul] Schreiber  [http://iceoasis.shrub.ca/ unofficial schedule site] publie une information hcalendar pour les jeux de hockey à venir sur [http://www.iceoasis.com/ Ice Oasis]
* [http://www.complexspiral.com/ Complex Spiral Consulting], à la fois dans la boîte "Events" sur le côté gauche, et la page séparée [http://www.complexspiral.com/events/ Events].
* [http://tantek.com/log Tantek's Thoughts], tout spécialement le roll "Events" dans la colonne la plus à droite.
* [http://suda.co.uk/projects/holidays/ Lesser Known Holidays], liste de vacances sur [http://suda.co.uk suda.co.uk] qui peut être importée via iCal et hCal de façon à ce que vous puissiez voir la transformation versus l'objectif.
* [http://norman.walsh.name/2005/itinerary/ Norm Walsh's travel schedule] utilise hCalendar tout comme GRDDL.
* [http://www.policyawareweb.org/2005/ftf2/paw-mtg Policy Aware Web (PAW) Project Meeting] utilise hCalendar pour enregistrer les décisions par date et utilise un microformat vtodo pour enregistrer les items d'actions.
* [http://www.kiez-ev.de/ Kiez] est un petit cinéma et a publié son [http://www.kiez-ev.de/programm.htm programme] marqué avec hCalendar.
* Le [http://lufgi4.informatik.rwth-aachen.de Laboratory for Dependable Distributed Systems] publie sa [http://lufgi4.informatik.rwth-aachen.de/cfps 'list of notable CfPs on dependability and security'] avec des éléments hCalendar-todo.
* La [http://laughingsquid.com/laughing-squid-10th-anniversary-party/ Laughing Squid 10th Anniversary Party] a une page hcalendar.
* SPRACI a des versions hcalendar de ses listes de nightlife/clubbing/gigs/festivals pour beaucoup de villes dans le monde - par ex. : [http://www.spraci.com/listhcalendar.php?parea=sydney&category=all Events in Sydney] (regardez les [http://www.spraci.com/api/ API] pages dans la section faq de [http://www.spraci.com/ SPRACI] pour plus d'informations à propos des mots clés de la ville et les tags de catégories à utiliser pour obtenir des données pour votre ville/catégories.
* WWF-Australia events calendars: [http://wwf.org.au/act/events/ What's on], [http://wwf.org.au/act/volunteer/ Volunteer]
* [http://rubyholic.com rubyholic] utilise hCalendar pour publier des calendriersp pour les groupes ruby.
* [http://www.bath.ac.uk/whats-on/ University of Bath What's On] utilise hCalendar sur les pages événements individuelles.


=== Exemples avec quelques problèmes ===
=== Exemples avec quelques problèmes ===

Revision as of 17:48, 18 December 2006

hCalendar

hCalendar est un format simple, ouvert, distribué pour le calendrier et les événements, fondé sur le standard iCalendar (RFC2445), adaptable pour l'embarquement dans (X)HTML, Atom, RSS et le XML arbitraire. hCalendar est l'un des nombreux standards ouverts microformat.

Vous voulez démarrer par écrire un événement hCalendar ? Utilisez le hCalendar creator pour écrire un événement et le publier, ou suivez les trucs de publication hCalendar pour ajouter de la syntaxe hCalendar à votre page d'événements à venir ou des événements que vous mentionnez dans vos billets de blogs, wikis, etc.


Spécification

Editeur
Tantek Çelik (Technorati, Inc)
Auteurs
Tantek Çelik, Technorati, Inc
Brian Suda

(traduction Christophe Ducamp)

Copyright

Cette spécification est (C) 2004-2024 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 Remerciements

Merci à :


Introduction

Le standard iCalendar (RFC2445), a été très largement mis en oeuvre avec interopérabilité (par exemple l'application "iCal" d'Apple intégrée dans MacOSX).

En outre, les blogueurs discutent souvent d'événements sur leurs blogs -- événements à venir, compte-rendus des événements passés, etc. Avec simplement une tout petit peu de structure, les blogueurs peuvent discuter d'événements dans leurs blogs d'une manière telle que les spiders et autres agrégateurs puissent retrouver de tels événements, les convertir automatiquement vers iCalendar, et les utiliser dans n'importe quel service ou application iCalendar.

Cette spécification présente le format hCalendar, qui est une représentation 1:1 du standard iCalendar précité en XHTML sémantique. Les Blogueurs peuvent embarquer à la fois les événements hCalendar directement dans leurs pages web, et les styler avec CSS pour les faire apparaître comme désiré. En outre, hCalendar permet aux applications de retrouver l'information sur de tels événements à partir de pages web sans avoir à référencer un fichier distinct.

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

En Général

Le standard iCalendar (RFC2445) constitue la base de hCalendar.

Note : l'éditeur et les auteurs de cette spécification sont en train de suivre l'effort "iCal-Basic" et ont l'intention de fonder le profil noyau du hcalendar sur iCal-Basic. Voir les références pour un lien vers le brouillon en cours.

Le format basique de hCalendar est d'utiliser les noms d'objet/propriété en bas de casse pour les noms de classes, et de mapper l'encapsulage des objets iCalendar directement à l'intérieur du XHTML imbriqué.

Plus d'Equivalents Sémantiques

Néanmoins, pour quelques propriétés il existe un équivalent plus sémantique, et par conséquent elles ont un traitement spécifique, c'est à dire :

  • URL dans iCalendar devient <a class="url" href="...">...</a> à l'intérieur de l'élément avec class="vevent" dans le hCalendar.
  • ATTENDEE, CONTACT, et ORGANIZER dans le iCalendar peuvent être représentés par une hCard dans le hCalendar .
  • Un lieu nommé LOCATION (potentiellement avec une adresse et/ou geo) dans iCalendar peut être représenté par une hCard imbriquée dans le hCalendar. De la même façon, une adresse LOCATION peut être représentée par un adr et un geo (latitude et longitude) LOCATION peut être représenté par un geo.
  • UID dans le iCalendar devient simplement une autre sémantique appliquée à un URL spécifique pour un événement hCalendar.

Propriétés Singulier vs Pluriel

Pour les propriétés qui sont singulières (par ex. "N" et "FN" extrait de vCard), le premier élément descendant avec cette classe-là devrait prendre effet, tous les autres étant ignorés.

Pour les propriétés qui peuvent être plurielles (par ex. "TEL" extrait de la vCard), chaque instance de classe devrait créer une instance de cette propriété. Les propriétés plurielles avec des sous-types (par ex. TEL avec WORK, HOME, CELL extrait de la vCard) peuvent être optimisées pour partager un élément commun pour la propriété elle-même, avec chaque instance de sous-type étant un descendant proprement classé de l'élément propriété.

Plusieurs Propriétés Singularisées

Parce que les noms de propriétés plurielles deviennent leurs équivalents singuliers, même si la propriété plurielle originale n'a permis seulement qu'une valeur unique avec plusieurs composants, ces composants-là multiples sont représentés chacun avec leurs propres singularités nommées propriété et la propriété a en fait plusieurs valeurs et est sujette au traitement ci-dessus des propriétés à plusieurs valeurs.

Lisible par des Humains vs Machines

Si un élément <abbr> est utilisé pour une propriété, alors l'attribut 'title' de l'élément <abbr> est la valeur de la propriété, au lieu des contenus de l'élément, qui fournit à la place uen version humaine présentable de la valeur. Cette spécification recommande que de tels éléments <abbr> soient utilisés pour les propriétés suivantes iCalendar :

  • DTSTART, DTEND, DURATION, RDATE, RRULE

Exemple

Voilà un événement échantillon dans un iCalendar :

BEGIN:VCALENDAR
PRODID:-//XYZproduct//EN
VERSION:2.0
BEGIN:VEVENT
URL:http://www.web2con.com/
DTSTART:20051005
DTEND:20051008
SUMMARY:Web 2.0 Conference
LOCATION:Argent Hotel\, San Francisco\, CA
END:VEVENT
END:VCALENDAR

et un équivalent en format hCalendar avec différents éléments optimisés de façon appropriée. Voir étapes-hcalendar-exemple 1 pour l'origine.

<span class="vevent">
 <a class="url" href="http://www.web2con.com/">
  <span class="summary">Web 2.0 Conference</span> : 
  <abbr class="dtstart" title="2005-10-05">5</abbr>-
  <abbr class="dtend" title="2005-10-08">7</abbr> 
  octobre à l'<span class="location">Hôtel Argent, San Francisco, CA</span>
 </a>
</span>

qui pourrait être affiché comme :

Web 2.0 Conference : 5-7 octobre, à l'Hôtel Argent, San Francisco, CA


L'exemple suivant spécifie un rendez-vous programmé qui commence le 12 mars 1998 à 08:30 EST et se termine à 09:30 EST le 12 mars 1998.

     BEGIN:VCALENDAR
     BEGIN:VEVENT
     UID:guid-1.host1.com
     DTSTAMP:19980309T231000Z
     DESCRIPTION:XYZ Réunion Bilan
     SUMMARY:Projet XYZ Réunion Bilan
     DTSTART:19980312T133000Z
     DTEND:19980312T143000Z
     LOCATION:1CP Salle de Conférence 4350
     END:VEVENT
     END:VCALENDAR

L'équivalent en hCalendar :

<div class="vevent">
<h3 class="summary">XYZ Réunion Bilan</h3>
<p class="description">Projet XYZ Réunion Bilan</p>
<p>programmé le <abbr class="dtstart" title="1998-03-12T08:30:00-05:00">12 mars 1998 à partir de 08:30 EST</abbr> 
jusqu'à <abbr class="dtend" title="1998-03-12T09:30:00-05:00">09:30 EST</abbr></p>
<p>Lieu : <span class="location">1CP Salle de Conférence 4350</span></p>
<small>Réservé par : <span class="uid">guid-1.host1.com</span> le <abbr class="dtstamp" title="19980309T231000Z">9 mars 1998 18:00</abbr></small>
</div>

Ceci pourrait s'afficher comme


XYZ Réunion Bilan

Projet XYZ Réunion Bilan

programmé le 12 mars 1998 à partir de 08:30 EST jusqu'à 09:30 EST

Lieu : 1CP Salle de Conférence 4350

Réservé par : guid-1.host1.com le

9 mars 1998 18:00

Note 1 : L'information produit n'est pas nécessaire parce que le hCalendar est un format interchangeable. Quand hCalendar est transformé en iCalendar, le moteur transformant devrait ajouter sa propre ID produit.

Note 2 : Un élément entourant le <span class="vcalendar"> est optionnel et laissé comme ceci. Il est optionnel parce que le contexte d'un vcalendar est implicite quand un vevent est rencontré. Le contexte/étendue implicite est celui du document. Les auteurs peuvent explicitement utiliser des éléments avec class="vcalendar" pour emballer les ensembles de vevents qui appartiennent tous au même calendrier, par exemple au moment de publier plusieurs calendriers sur la même page.

Note 3 : L'information de version n'est pas nécessaire directement dans la syntaxe hCalendar parce que la version sera définie par le profil de qui est utilisé/référencé dans l'attribut 'profile' de l'élément <head>.

Note 4 : Les dates ISO8601 (requises par iCalendar) ne sont pas très humaines. En outre, l'année est souvent comprise implicitement par les humains à partir du contexte. Par conséquent les éléments <abbr> sont utilisés pour fournir simultanément une date humaine et/ou une heure dans les contenus visibles de l'élément, tout en plaçant respectivement l'heuredate ISO8601 parsable par les machines dans l'attribut 'title'. La notation YYYY-MM-DD devrait être utilisée pour une meileure lisibilité.

Note 5 : La différence entre la date DTEND ISO8601 (2005-10-08) et la date lisible par un humain (7) n'est PAS une erreur. DTEND est exclusif, voulant dire que l'événement finit simplement avant le DTEND. De ce fait pour les événements qui démarrent sur un jour et finissent sur un autre jour, la date DTEND doit être spécifiée comme le jour après le jour qu'un humain dirait que c'est le dernier jour de l'événement.

Note 6 : L'endroit (Location) dans cet exemple contient une structure implicite (nom du lieu de l'événement, ville, état) qui devrait être balisée explicitement sous une hCard. Voir hCalendar brainstorming: hCard locations pour une explication sur la façon de faire ça.

Voir exemples hCalendar pour plus d'exemples hCalendar. Voir exemples hCalendar dans la jungle pour des exemples dans la jungle

Exemples avec quelques problèmes

  • s'Bokle est un pub allemand de musique. Son calendrier d'événements a été marqué avec hCalendar.
    • usage impropre de rrule --RyanKing 16:04, 6 Jan 2006 (PST)

Implémentations

Cette section est pour information.

Les implémentations suivantes ont été développées qui soit génère ou parse les hCalendars. Si vous avez une implémentation hCalendar, sentez-vous libre de l'ajouter en haut de cette liste. Une fois que la liste sera devenue trop grosse, nous produirons une page séparée.

Publier

Les implémentations que vous pouvez utiliser pour rédiger, créer et publier des événements hCalendar.

Outils de Blog et CMS

Midgard CMS
Midgard CMS - net.nemein.calendar - comme c'est blogué par Henri Bergius
Drupal module
Drupal Upcoming.org syndication module emits hCalendar
MovableType et WordPress plug-ins
StructuredBlogging est un ensemble de plugins pour WordPress et pour MovableType qui supporte l'embarquement de hCalendar et d'autre microformats dans les gabarits et les billets de blog.
Textpattern plug-in
pnh_mf est un plugin pour Textpattern qui supporte l'embarquement de hCalendar et d'autres microformats dans les gabarits et billets de blog. Ecrit par Chris Casciano.

Scripts et plugins pour Navigateurs

Plugins navigateurs qui fonctionnent avec les outils de publication existants :

Tout navigateur avec javascript et un petit morceau de CSS
microformats.org hCalendar creator (vor aussi l'original : Ryan King a un hCalendar creator).
Firefox Greasemonkey user script hCalendar creator
magic_hcalendar Greasemonkey user script par Les Orchard - permet une saisie facile par formulaire d'un événement dans n'importe quelle aire de texte, par ex. à l'intérieur d'une aire de texte pour billet de blog.
Firefox Greasemonkey user script hCalendar vers Google Calendar
Elias Torres a créé un script simple qui parsera les entrées hCalendar et créera un lien pour ajouter un événement vers le service de Google Calendar. Basé sur le travail de George et de Arve.

Outil de Publication de Bureau

Dreamweaver Extension
Extension suite pour Dreamweaver 8 tirée du Web Standards Project.
xfy

dans la Communauté xfy, il existe quelques implémentatons hCalendar.

  • hCalendar via RSS parse un fil RSS, retrouve les documents XHTML liés à partir de ce fil et syndique les hCalendars à l'intérieur d'une vue calendrier.
  • hCalendar Marker XVCD aide à marquer une information événement en document XHTML avec hCalendar.
  • Simple RDF Calendar XVCD est un outil de programmation qui utilise le format RDF Calendar. Il convertir aussi le format RDF Calendar vers les formats iCalendar et hCalendar.

Recherche et Découverte

Conversion et Importation

Les implémentations que vous pouvez utiliser pour l'importation dans une application calendrier, généralement en convertissant hCalendar vers iCalendar/vCalendar.

Web Services

Ceux-ci renvoient des formats iCalendar (.ics) et d'autres foramts de calendrier à l'intérieur de programmes typiques de calendriers ou autre traitement.

  • Technorati Events Feed service utilise la librairie X2V pour parser hCalendar et renvoyer iCalendar (.ics). Notez l'URL facile à retenir, par ex. http://feeds.technorati.com/events/http%3A//microformats.org
  • X2V parse hCalendar et produit un flux .ics (iCalendar). Note : a besoin d'être mis à jour pour garder une trace des modifications dans la spécification au fur et à mesure qu'elle arrive.
  • Life Lint Parser parse hCalendar et produit des informations .ics, .rdf et de débuggage et essaye d'être complètement conforme au standard iCal par rapport aux implémentations précédentes. Il peut être utilisé de la même manière que X2V. Peut produire une sorte en iCal (w optional Outlook 2002 compat), et RDF.
  • Spanning Salesforce produit des fils RSS hCalendar et des calendriers .ics extraits de Salesforce.com.
  • MySpace Events RSS Creator crée des fils RSS des événements MySpace avec une syntaxe hCalendar.

Firefox Greasemonkey Plugins

La conversion hCalendar en vCalendar est faite en interne dans le script. Ceci fonctionnera désormais bien dans FireFox 1.5+/GreaseMonkey 0.6.4+.

Agrégateurs

  • Endo, un agrégateur OS X supporte de découvrir les hCal et ajoute ces événements dans iCal.

Regardez la photo d'écran en bas de la page.

Browsing

Les implémentations qui détectent, affichent et autrement soulignent les événements hCalendar dans les pages.

  • Dans la xfy Community, il existe quelques implémentations hCalendar. "hCalendar via RSS" parse un fil RSS, retrouve les documents XHTML liés à partir de ce fil,

et syndique les hCalendars à l'intérieur d'une vue calendrier.

  • JSCalendar parse hCalendar et produit un calendrier basé su du HTML table/CSS.

Extension Firefox

Tails est une extension Firefox qui affichera la présence de microformats (hCard, hCalendar, hReview, xFolk) sur une page web.

Imminent
  • ReminderFox a un import de hCalenar sur sa "to do liste".

Extension Flock

Flocktails - porte l'extension Tails pour Flock 0.5.12 qui cherche les hCards, hCalendar, xFolk et hReview et les secoue dans une barre supérieure bien commode.

Librairies

Les librairies open source des parsers hCalendar et autres codes aparentés pour construire des implémentations hCalendar.

Javascript
parseur simple hCalendar par Arve Bersvendsen
PHP
Ruby
uformats est une librairie ruby qui peut parser hCalendar, hCard, hReview et rel-tag
XSLT
  • X2V est disponible en tant que librairie XSLT
  • palmagent de User:DanC comprend toICal.xsl et des contenus de tests ;

elle fonctionne beaucoup comme xhtml2vcal.xsl dans X2V. Voir aussi : RDF Calendar workspace avec les contenus de test icalendar.

Implémentations potentielles

Ce sont des projets open source qui pourraient être améliorés potentiellement pour supporter hCalendar :

Références

Références Normatives

Références Informatives

Travail similaire


Pages Apparentées

  • hCalendar creator (feedback) - créez vos propres événements hCalendar.
  • hCalendar authoring - apprenez comment ajouter du balisage hCalendar à vos événements existants.
  • hcalendar-intro brouillon en langage clair introduction (pour utilisation en Evangélisme)
  • hCalendar FAQ - Si vous avez quelque question à propos du hCalendar, regardez cette page, et si vous ne trouvez pas de réponses, ajoutez vos questions !
  • parsage hCalendar - Détails normatifs sur la manière de parser hCalendar.
  • problématiques hcalendar - SVP ajoutez tous les problèmes que vous avez avec les spécifications sur le document problématiques
  • hCalendar profile - Le profil XMDP pour hCalendar

Cette spécification est un chantier en cours. Au fur et à mesure que des aspects supplémentaires sont discutés, compris et écrits, ils seront ajoutés. Ces pensées, problématiques et questions sont maintenues dans des pages séparées.


Pour aller plus loin

"A cette heure, les gens font cela en publiant des fichiers .ics, mais ce n'est pas trivial de faire ainsi, et c'est du travail de la part des autres personnes pour les regarder. If it's not HTML hanging off our friend's home page that can be viewed in any browser on a public terminal in a library, the bar to entry is too high and it's useless."