<?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=Leikam</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=Leikam"/>
	<link rel="alternate" type="text/html" href="https://microformats.org/wiki/Special:Contributions/Leikam"/>
	<updated>2026-04-03T21:06:05Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.38.4</generator>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=hcalendar-issues&amp;diff=13675</id>
		<title>hcalendar-issues</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=hcalendar-issues&amp;diff=13675"/>
		<updated>2007-01-29T17:07:17Z</updated>

		<summary type="html">&lt;p&gt;Leikam: /* Issues */  + link to hcal cheatsheet&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCalendar Issues =&lt;br /&gt;
&lt;br /&gt;
These are externally raised issues about [[hcalendar|hCalendar]] with broadly varying degrees of merit.  Thus some issues are REJECTED for a number of obvious reasons (but still documented here in case they are re-raised), and others contain longer discussions.  Some issues may be ACCEPTED and perhaps cause changes or improved explanations in the spec.  Submitted issues may (and probably will) be edited and rewritten for better terseness, clarity, calmness, rationality, and as neutral a point of view as possible. Write your issues well. — [http://tantek.com/log/ Tantek]&lt;br /&gt;
&lt;br /&gt;
See related [[hcard-issues]].&lt;br /&gt;
&lt;br /&gt;
== Issues ==&lt;br /&gt;
&lt;br /&gt;
Please use this format:&lt;br /&gt;
* &amp;lt;nowiki&amp;gt;{{OpenIssue}}&amp;lt;/nowiki&amp;gt; YYYY-MM-DD raised by AUTHORNAME&lt;br /&gt;
*# ''Issue 1: Here is the first issue I have.''&lt;br /&gt;
*# ''Issue 2: Here is the second issue I have.''&lt;br /&gt;
&lt;br /&gt;
And add new issues to the top of the list:&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2007-01-20 raised by [[User:AndyMabbett|Andy Mabbett]]&lt;br /&gt;
*# Where &amp;lt;code&amp;gt;DTEND&amp;lt;/code&amp;gt; is a date, and not a date-time, it is required to be the day after the end of the event, thus: &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;2007-04-30&amp;quot;&amp;gt;29 April 2007&amp;lt;/abbr&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;. However, &amp;quot;29 April 2007&amp;quot; is '''''not''''' an abbreviation of 2007-04-30; it is an abbreviation of 2007-04-29. The markup as shown is semantically incorrect and likely to cause problems for users and user-agents which read the title attribute, and not the text value, of the &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; element.&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2007-01-07 raised by [[User:Webf|Webf]]&lt;br /&gt;
*# Looking for a mechanism for specifying a dtstart without using &amp;lt;nowiki&amp;gt;&amp;lt;abbr&amp;gt;&amp;lt;/nowiki&amp;gt;. Would be used where there are a number of events (as in the [http://www.webfeet.org/events.html Webfeet events lists]) where you do not want to have the visible date repeated&lt;br /&gt;
*#* &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; is the correct - and only - element to use, unless you wish to display the raw ISO-formatted date-time to the user. Use it with the [[include-pattern]], thus:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&lt;br /&gt;
	&amp;lt;dt id=&amp;quot;D20070120&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20070120&amp;quot;&amp;gt;&lt;br /&gt;
		Saturday, 20 January 2007&lt;br /&gt;
		&amp;lt;/abbr&amp;gt;&lt;br /&gt;
	&amp;lt;/dt&amp;gt;&lt;br /&gt;
	&amp;lt;dd&amp;gt;&lt;br /&gt;
		&amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;object class=&amp;quot;include&amp;quot; data=&amp;quot;#D20070120&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&lt;br /&gt;
		[Details of first event]&lt;br /&gt;
		&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
		&amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
		&amp;lt;object class=&amp;quot;include&amp;quot; data=&amp;quot;#D20070120&amp;quot;&amp;gt;&amp;lt;/object&amp;gt;&lt;br /&gt;
		[Details of second event]&lt;br /&gt;
		&amp;lt;/span&amp;gt;&lt;br /&gt;
	&amp;lt;/dd&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:but please note that you should validate your HTML - it has over 3,000 errors! The high number of hCalendar microformats (&amp;gt;500) is causing parsers such as Firefox's Tails and Operator to respond very slowly. You should use CSS, not non-breaking spaces and multiple line-breaks, to layout your page - this will reduce it's size and enable parsers to work more quickly. You will need to style &amp;lt;code&amp;gt;object .include&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;display:none&amp;lt;/code&amp;gt; [[User:AndyMabbett|Andy Mabbett]] 04:10, 16 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
:Thanks Andy!&lt;br /&gt;
:* This use of &amp;lt;code&amp;gt;object&amp;lt;/code&amp;gt; is a proposal at this stage? It does not seem to be mentioned in the [[hCalendar|hCalendar]] page and only marked 'under consideration' in [[include-pattern#Specifications_Using|Include Pattern]]&lt;br /&gt;
:* Re: '&amp;gt;500 entries', I would think that User Agents ''should'' be able to deal with this. The linked page displays a collection of events (not all pages will have so many :-) however I would expect a User Agent to worry mainly about the events visible on the screen (really, a ''small'' part of the whole page). &lt;br /&gt;
:** Brainstorming a little, I would hope that the UA could track an event I've inserted ino my calendar and notice any changes, such as the event being postponed/cancelled, pick up this info and update my calendar. Worth thinking what implications this might bring to the markup.&lt;br /&gt;
:** I'm thinking though that the primary effort with a UA would be making sure the 99.99% pages which ''do not'' include hCalendar markup are not slowed down!&lt;br /&gt;
:* Re: &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; as the ''only'' way, I can see &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; used within the [[hCalendar|hCalendar]] page and, yes, it looks a exceptionally neat way of rolling up some markup but I don't see it defined as a mandatory for marking up an event.&lt;br /&gt;
:** Am I missing some rationale? Why is &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; the ''only'' option?&lt;br /&gt;
:** Should the spec be written up more formally? should hCalendar be more relaxed? My take is that &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; is OK but it would be wrong for it to be mandatory. Think that screen readers may be reading the expanded content (as with &amp;lt;code&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;abbr title=&amp;quot;Web Accessibility Initiative&amp;quot;&amp;gt;WAI&amp;lt;/abbr&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/code&amp;gt;). The underlying issue is that [[hCalendar|hCalendar]] seems to want &amp;lt;code&amp;gt;abbr&amp;lt;/code&amp;gt; to &amp;lt;em&amp;gt;disambiguate&amp;lt;/em&amp;gt; a displayed date and this is not really the same as an abbreviation. UA's should be liberal when looking for a &amp;lt;code&amp;gt;class=&amp;quot;dtstart&amp;quot;&amp;lt;/code&amp;gt;, after all they &amp;lt;em&amp;gt;do&amp;lt;/em&amp;gt; know that they are within an event markup as they have met the &amp;lt;code&amp;gt;class=&amp;quot;vevent&amp;quot;&amp;lt;/code&amp;gt;....&lt;br /&gt;
:*Feel free to move the above thoughts to a brainstorming area. I might come back to the other points later - but maybe better in a talk page. :-) [[User:Webf|Webf]] 13:23, 21 Jan 2007 (PST)&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2006-10-21 raised by [[User:AndyMabbett|AndyMabbett]]&lt;br /&gt;
*# there should be some way to say that the URL of an hCard or hCalendar event is the URL of the page itself, without having to include a redundant, and accessibility-damaging link to that page, on &lt;br /&gt;
the page itself.&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2006-09-22 raised by [[User:AndyMabbett|AndyMabbett]]&lt;br /&gt;
*# How are Julian dates to be displayed? So far as I am aware, ISO8601 has no facility for marking up Julian dates, so should the form &amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;[Gregorian date]&amp;quot;&amp;gt;[Julian date]&amp;lt;/abbr&amp;gt; &amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt; be used? If so, that should be indicated, via an example.&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2006-08-14 raised by [[User:Elias|Elias Sinderson]]&lt;br /&gt;
*# ''Issue 1: Although ISO 8601 allows both basic (sans delimiters) and extended formats, the extended format (where hyphens and colons are explicitly added) is broadly preferred for the web. While RFC 2445 specifies that the basic form be used in in iCalendar date / time fields, the W3C has published a technical [http://www.w3.org/TR/NOTE-datetime note] (submitted by Reuters), which recommends that the extended (delimited) format be used, and the [http://www.w3.org/TR/html401/types.html#h-6.11 HTML 4.0 spec] uses the extended format. Further, RFC 3339 defines a ISO 8601 profile for dates and time representations on the internet that future specs SHOULD use; recommending a fully delimited representation (see sec. 5.6). Lastly, it should be noted that the [http://www.w3.org/TR/xmlschema-2/#date xsd:date] and [http://www.w3.org/TR/xmlschema-2/#dateTime xsd:dateTime] types are specified as being the ISO 8601 extended format. So, given that hCalendar is based on iCalendar, it is understandable that it allows both formats, however this is clearly a case in which it would be very reasonable to require users to upconvert the format into the least ambiguous and most easily parsed / validated representation. Think of the children.&lt;br /&gt;
&lt;br /&gt;
* {{OpenIssue}} 2006-03-07 raised by [[User:Ragdoll|Justin McDowell]]&lt;br /&gt;
*# ''Issue 1: I'd love to see a Property List, similar to what is seen in the hCard spec, that lists all the available properties and sub-properties in a nice, compact list. This saves a lot of time and is really useful for quickly and easily getting aquainted with the possibilities of vCalendar.''&lt;br /&gt;
*#* See [[hcalendar-cheatsheet]] . [[User:Leikam|Michael Leikam]] 2007-01-29&lt;br /&gt;
&lt;br /&gt;
* 2006-02-17 raised by [[User:Mark Mansour|Mark Mansour]] - notes are summarized [[hcalendar-irc-meetup-20060225|here]]&lt;br /&gt;
*# Should vcalendar be a class?  Section 4.4 of RFC2445 says: &amp;quot;The Calendaring and Scheduling Core Object is a collection of calendaring and scheduling information. Typically, this information will consist of a single iCalendar object. However, multiple iCalendar objects can be sequentially grouped together.&amp;quot;  Also the vcalendar class would allow properties on the calendar itself such as METHOD and CALSCALE (I don't think VERSION and PRODID are particularly relevant).&lt;br /&gt;
*#* ACCEPTED SPECUPDATE/FAQ.  Is this a case of fixing something that isn't broken?  Note that &amp;quot;iCalendar object&amp;quot; != &amp;quot;vcalendar&amp;quot;.  This is a bit confusing so read RFC 2445 carefully in that regard.  In addition, the [[hcalendar|hCalendar]] spec should say *precisely* how to generate VCALENDAR properties in their absence.&lt;br /&gt;
*# How are axis and headers going to be handled?&lt;br /&gt;
*#* ACCEPTED.  This is documented in [[hcalendar-brainstorming]] but MUST be moved to [[hcalendar|hCalendar]] proper as the editors and implementers have all agreed on it (months ago). Add this as a [[to-do]] for Tantek.&lt;br /&gt;
*# There has been talk that table axis and headers should be used to capture calendar information in a more compact format, but no example are available.  Does anyone have examples or should we try to invent some?&lt;br /&gt;
*#* REJECTED. Please RTFM.  Searching the [[hcalendar|hCalendar]] spec for *either* &amp;quot;axis&amp;quot; or &amp;quot;headers&amp;quot; would have found the following example in the wild:  [http://we05.com/ Web Essentials 05] has marked up their [http://we05.com/program.cfm program schedule table with hCalendar], using the 'axis' and 'headers' attributes.&lt;br /&gt;
*# Should embeded components be allowed?  [[RyanKing]] has already noted that vJournal overlaps blog-posts (although not yet accepted), but should the components to-do, free/busy, timezone, alarms be allowed?  They all considered as just as relevant by the ical spec as events are (my interpretation).&lt;br /&gt;
*#* ACCEPTED SPECUPDATE/FAQ. Another [[to-do]] for Tantek.  Explicitly specify which additional iCalendar objects (in addition to VEVENT) are permitted in hCalendar.  Current additional candidates: VTODO (many examples of this info on the web), VFREEBUSY (already at least one site publishing this info), VALARM (maybe, seems harmless enough, but without a compelling real world use case we should probably omit it).  Currently dropping: VTIMEZONE (terrible construct), VJOURNAL (obsoleted by [[hatom|hAtom]]).&lt;br /&gt;
*# Validation of the hCalendar tests.  The hCalendar tests have been available for a while now, but only Brian Suda and I have made contributions to their content.  Does anyone else have thoughts and should we try to make these the beginning of 'official' hCalendar tests?&lt;br /&gt;
*#* ACCEPT PARTIAL.  We probably need an hCalendar ''validator'' before we can declare any set of tests to be official.&lt;br /&gt;
*# The use of fragments is unclear.  Fragment interpretation seems to be agent dependant.  Fragments usually denote a heading or marker, like a goto statement for HTML.  Unfortunately it may jump in the middle of elements (rather to the beginning of an element).  How should this be handled.  i.e. &lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;a name=&amp;quot;myfrag&amp;quot;&amp;gt;heading&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;div class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;div class=&amp;quot;description&amp;quot;&amp;gt;A nice event&amp;lt;/div&amp;gt;&lt;br /&gt;
  &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;2005-10-05&amp;quot;&amp;gt;October 5&amp;lt;/abbr&amp;gt;&lt;br /&gt;
&amp;lt;/div&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
*#* ACCEPTED. We should clarify to converters how to interpret a fragement id.  The interpretations are all consistent.  It points to the element that is to be converted.  If that element is empty then so is the conversion.  There is no issue here other than a need for more documentation.&lt;br /&gt;
* 2006-02-01 raised by [[RyanKing]]&lt;br /&gt;
*# ''Issue 1: Given that now, or soon will have hAtom, should we disallow vJournal, so that we don't have 2 blog-post formats?''&lt;br /&gt;
*#* ACCEPTED.  Yes, we should expliclty DROP &amp;quot;vjournal&amp;quot; from [[hcalendar|hCalendar]].&lt;br /&gt;
* 2006-01-04 raised by [[User:CGranade|CGranade]]&lt;br /&gt;
*# ''Interactions with strong namespacing. So far, it seems that hCalendar cannot be embedded into non-XHTML schemas that are also strongly namespaced (e.g.: RDF, Atom) without a resultant validation error, as the &amp;lt;code&amp;gt;class&amp;lt;/code&amp;gt; attribute is ''not'' portable across schemas.''&lt;br /&gt;
*#* REJECTED.  The class attribute is used on XHTML elements, which are XML, which can be embedded in any other XML.  The issue as raised doesn't make sense.&lt;br /&gt;
*# ''All examples in XHTML. XHTML should not be the only host to microformats, and thus it should not be the only example host language. Rather, examples in Atom, RSS, RDF, etc. should also be provided.''&lt;br /&gt;
*#* ACCEPTED.  This is definitely something to be added to *-examples pages for each microformat.&lt;br /&gt;
* 2005-10-14 raised by [[User:MarkoMrdjenovic|MarkoMrdjenovic]]&lt;br /&gt;
*# ''UID has to be present in iCal events if they want to be used in Microsoft Outlook. [Suggestion:] it should probably be added to the vevent tag as html attribute id. There is also the problem of converters - x2v has UID commented out. [http://www.ietf.org/rfc/rfc2445.txt RFC] recommends use of addr format for uids which is problematic in html id (does not validate). [[User:HenriBergius|HenriBergius]] pointed out some calendaring software crashes when @ is in the UID, so some other form of identification should be used - along the lines of dtstart-dtend-hash(title,summary)-sample-org''.&lt;br /&gt;
*#* ACCEPTED-PARTIAL.  Yes, it appears RFC2445 requires UID.  However, typical mentions of events by web authors do not provide anything equivalent to a UID, nor should we require authors to do so.  Thus we must come up with an algorithm for implied UID, similar to some of the other properties.  We REJECT the use of the html 'id' attributre as a substitute for UID as they are of different scopes and thus such a translation will likely be problematic.  As part of this algorithm, we MUST disallow &amp;quot;@&amp;quot; signs since the issue points out that such UIDs crash some calendaring software.&lt;br /&gt;
*# ''DTSTAMP also has to be present in iCal event for Microsoft Outlook. I think DTSTAMP should be user visible information so implementation with class=&amp;quot;dtstamp&amp;quot; is fine. x2v already supports it so it should just be added to the standard and examples. The converters might also think of a way to force (create) dtstamp if it's not present.'' [Suggestion:] why not set DTSTAMP to DTSTART if not explicitly defined? -- [[DimitriGlazkov]]&lt;br /&gt;
*#* ACCEPTED.  We should come up with a way to encourage/synthesize/imply DTSTAMP property values.&lt;br /&gt;
*# ''Here is an example from Midgard CMS (which will be easy to change according to bergie on irc):''&lt;br /&gt;
*#* For more discussion of this, please see [http://microformats.org/wiki/hcalendar-brainstorming#UID_handling hCalendar brainstorming: UID handling]&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
  &amp;lt;li class=&amp;quot;vevent&amp;quot; id=&amp;quot;2678c3f94af4a49f9ccbb69b92a82aba-midgardGuid&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;2005-10-20T14:34:45Z&amp;quot;&amp;gt;Torstai 20. Lokakuu 17:34&amp;lt;/abbr&amp;gt; -&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;2005-10-20T15:33:56Z&amp;quot;&amp;gt;18:33&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;/bergie/another-calendar/82457028ba83407451edd8aaeaa40622.html&amp;quot;&amp;gt;&lt;br /&gt;
        &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;From the other cal&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;/a&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstamp&amp;quot; title=&amp;quot;2005-10-14T12:16:45Z&amp;quot;&amp;gt;Torstai 14. Lokakuu 12:16&amp;lt;/abbr&amp;gt;&lt;br /&gt;
  &amp;lt;/li&amp;gt;&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
* 2005-09-29 raised by RyanKing&lt;br /&gt;
*# ''How does one use ATTENDEE?''&lt;br /&gt;
*#* ACCEPTED.  Another [[to-do]] for Tantek - document how to use ATTENDEE with [[hcard|hCard]].&lt;br /&gt;
* 2005-07-27 raised by Paolo Massa&lt;br /&gt;
*# ''I tried to add a hcalendar event in my blog but it rendered orribly. The problem was I already have a 'class=&amp;quot;summary' in my normal HTML (it is the title of the posts) and my CSS displays it bigger and bold. In this way the summary of the event was as big as the titles of the posts, destroying readability. The problem is Overloading of class attributes, it might be the case that a blogger already use, for example, class=&amp;quot;summary&amp;quot; for different purposes. What can be a solution? Providing in every microformat wiki page a CSS file that users can download and insert in their blog as additional CSS. This CSS file will &amp;quot;shield&amp;quot; attribute &amp;quot;inside&amp;quot; microformats from being interpreted as &amp;quot;normal&amp;quot; attributes. For example for the hCalendar microformats the relative CSS could be something like:&lt;br /&gt;
&lt;br /&gt;
.vevent .summary {&lt;br /&gt;
&lt;br /&gt;
//remove all the previously set properties, for example:&lt;br /&gt;
&lt;br /&gt;
text-decoration: none;&lt;br /&gt;
&lt;br /&gt;
font-size: 100%;&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
Since the hCalendar microformat is the following,&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;http://www.web2con.com/&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Web 2.0 Conference&amp;lt;/span&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
...&lt;br /&gt;
&lt;br /&gt;
I hope to have been clear but I'm not so sure ;-)''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* 2005-07-21 raised by Neil Jensen &lt;br /&gt;
*# ''should we create a vfreebusy class for HTML representations of freebusy data? Discussion [http://microformats.org/wiki/hcalendar-brainstorming#Free.2FBusy_information on hCalendar brainstorming].  Additional background: [http://www.ifreebusy.com/cyclical/blog/calendar/3.html here].''&lt;br /&gt;
&lt;br /&gt;
* 2005-07-11 raised by Kragen&lt;br /&gt;
*# ''The specification of class=&amp;quot;url&amp;quot; as &amp;amp;lt;a href=&amp;quot;...&amp;quot;&amp;gt; should be a &amp;quot;should&amp;quot;, not a &amp;quot;must&amp;quot;.  Other ways of referencing the event URL, such as &amp;amp;lt;iframe src=&amp;quot;...&amp;quot;&amp;gt; and &amp;amp;lt;embed src=&amp;quot;...&amp;quot;&amp;gt;, shoul be mentioned.  At present X2V doesn't appear to handle them.  This came up in a discussion about [[xfolk|xFolk]].''&lt;br /&gt;
*#* REJECTED. Lack of use case.  We should not add additional &amp;quot;ways of referencing the event URL&amp;quot; unless you can show a concrete real world example on the Web which requires it.&lt;br /&gt;
&lt;br /&gt;
* 2005-06-21 raised by Hixie&lt;br /&gt;
*# ''Issue H-1: This specification is lacking a user agent conformance section. There's basically nothing that says how hCalendars must be parsed, how to handle errors, and so forth. Is it defined in terms of the DOM? Is it defined in terms of a serialisation? How do you handle unexpected content or missing content?&lt;br /&gt;
*#* ACCEPTED. Another [[to-do]] for Tantek, write-up [[hcalendar-parsing]] that documents precisely how user agents are to parse [[hcalendar|hCalendar]] markup.&lt;br /&gt;
* 2005-02-22 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003124.html on the whatwg list]:&lt;br /&gt;
*# ''There is no copyright statement and no patent statement.''&lt;br /&gt;
*#* ACCEPTED. I have updated [[hcalendar]] (and [[hcard]], and all other MicroFormats) with a standard copyright statement and patent statement.&lt;br /&gt;
&lt;br /&gt;
* 2005-02-18 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003116.html on the whatwg list]:&lt;br /&gt;
*# ''There is no way for some reading the markup to tell if a class name is the name of an attribute or simply the name of a class used for styling.''&lt;br /&gt;
*#* REJECTED (strawman, poor assumption).  There is no need to differentiate in the general case.  In the specific case, a vocabulary is defined within a context.&lt;br /&gt;
*# ''As a result of the above, user agents would not be able to reliably allow users to access extension properties such as &amp;quot;x-mozilla-alarm-default-length&amp;quot; (which is an actual extension used in Sunbird).''&lt;br /&gt;
*#* REJECTED (out of scope).  Extension properties are outside the current scope of hCalendar.&lt;br /&gt;
*# ''The use of &amp;lt;abbr&amp;gt; for dates is incorrect. &amp;quot;August 5th, 2004&amp;quot; is not the abbreviation of 2004-09-05. In fact, the opposite is closer to the truth.''&lt;br /&gt;
*#* REJECTED (false statement).  This is simply a false statement.  See this article for an explanation of this use of &amp;lt;abbr&amp;gt;: [http://tantek.com/log/2005/01.html#d26t0100 Human vs. ISO8601 dates problem solved]&lt;br /&gt;
*# ''You have to create a complex set of rules for all possible uses of legacy markup within &amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt; which can easily be implemented incorrectly.''&lt;br /&gt;
*#* REJECTED (false statements, strawman). There is no legacy markup. There is no need to create rules for all possible uses of legacy markup.  There is no need to create a complex set of rules.&lt;br /&gt;
*# ''There are styling and tooltip issues that are unresolved.''&lt;br /&gt;
*#* REJECTED (empty statements).  See the [[hcalendar-faq|hCalendar FAQ]] for answers to specific styling and tooltip questions.  Otherwise, please raise specific issues here with clear valid examples.&lt;br /&gt;
*# ''hCalendar/hCard is more complicated for webmasters to read and understand and more complicated for developers to implement.''&lt;br /&gt;
*#* REJECTED (empty statements, invalid comparator).  Please state specific examples which show the perceived complexity.  The comparison &amp;quot;more complicated&amp;quot; requires two items, no second item was provided.&lt;br /&gt;
*#  ''I dislike the entire system of using class names as markup.  Class names should be reserved for user-defined semantics.''&lt;br /&gt;
*#* ACCEPT-PARTIAL.  When specific elements are available, they should be used instead of class names, but even then class names work well to &amp;quot;subclass&amp;quot; specific elements.  This is thoroughly discussed in the essay [http://tantek.com/log/2002/12.html#L20021216 A Touch of Class].  And yes, class names can and should be used for user-defined semantics. [[hcalendar|hCalendar]] is one such user, and it is reasonable for users to use each others class names.&lt;br /&gt;
*#* ''Would it be more in the spirit of HTML to define these classes in a [http://www.w3.org/TR/html401/struct/global.html#h-7.4.4.3 metadata profile], so that &amp;quot;User agents may... perform some activity based on known conventions for that profile&amp;quot;?  Should this be a part of [[microformats]] specifications in general?  (If not, why not?)''&lt;br /&gt;
*#** ACCEPTED.  Yes, all [[microformats]] that introduce new classnames SHOULD include an [http://gmpg.org/xmdp/ XMDP] profile (which itself is a microformat for defining HTML metadata profiles) that defines those classnames.&lt;br /&gt;
*#*** ''Ok, but in order to refer to a profile, it needs a URI. Tantek writes in [http://microformats.org/discuss/mail/microformats-discuss/2005-July/000407.html a message of Jul 21] &amp;quot;This is precisely the reason that GMPG was founded and created, to provide permanent URLs/homes for microformat profiles.&amp;quot; How does one cause GMPG to issue a profile URL?''&lt;br /&gt;
*#**** ACCEPTED. See [[profile-uris]]; this is moving from Tantek's [[to-do]] list, to both provide profiles and URLs (probably at gmpg.org) for those profiles for hCalendar etc.&lt;br /&gt;
* {{OpenIssue}} 2006-04-10 raised by [[User:ScottReynen|Scott Reynen]].&lt;br /&gt;
*# ''When someone looks at the [[hcalendar]] pages, one sees no collection of real-world publishing of event data nor discussion of the properties implied by such examples, I think it's far too easy to infer that microformats come from other formats more than actual behavior.  There's nothing on the [[process]] nor the hcalendar pages explaining this discrepancy.  I would argue that there should be an explanation, probably in both places.''&lt;br /&gt;
* {{OpenIssue}} 2006-04-13 raised by Tantek&lt;br /&gt;
*# ''Need to add a section on &amp;quot;Property Exceptions&amp;quot; like that in [[hcard|hCard]] to document how to publish / handle the '''METHOD''' property and potentially others.  I.e. typically publishers may omit the METHOD property, however, converters whose function is to convert [[hcalendar|hCalendar]] to iCalendar for consumption/subscription by a calendar aggregator, should probably insert a default '''METHOD:PUBLISH''' on the '''VCALENDAR''' object in the resultant .ics stream.''&lt;br /&gt;
&lt;br /&gt;
== Related Pages ==&lt;br /&gt;
{{hcalendar-related-pages}}&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12945</id>
		<title>events/2007-01-la-get-together</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12945"/>
		<updated>2007-01-27T00:28:24Z</updated>

		<summary type="html">&lt;p&gt;Leikam: when at uwink?&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Los Angeles January 2007 Microformats Get Together Planning =&lt;br /&gt;
&lt;br /&gt;
One of several microformats [[events]].&lt;br /&gt;
&lt;br /&gt;
Tantek will be in LA from Thursday January 25th, through Monday January 29th so let's shoot for that date range&lt;br /&gt;
&lt;br /&gt;
If you have an idea, suggest a time and location.  If you like what somebody's proposed, vote in favor of it.  A place with food, noise levels low enough to have good conversation, and wifi to check/update things on the fly would be nice.&lt;br /&gt;
&lt;br /&gt;
Note: A list of free wifi spots in the state, including LA, is [http://www.wififreespot.com/ca.html here] - in case that could help someone who knows LA find a good spot...&lt;br /&gt;
&lt;br /&gt;
'''Proposals:''' (When and Where)&lt;br /&gt;
* Saturday 1/27 noon @ [http://www.thecatandfiddle.com Cat and Fiddle] - english restaurant &amp;amp; pub - 6530 W Sunset Blvd, Los Angeles, CA 90028 on ''Saturday, Jan 27'' starting at noon and going from there. &lt;br /&gt;
** +1 Luke Dorny (or Sunday)&lt;br /&gt;
** ...&lt;br /&gt;
* Sunday  1/28 @ Cat and Fiddle on Sunday instead.&lt;br /&gt;
** +1 Leikam&lt;br /&gt;
** +1 Luke Dorny (or Saturday)&lt;br /&gt;
** ...&lt;br /&gt;
* Friday 1/26 6:30pmish @ [http://www.earthlink.net EarthLink Pasadena office] - 460 Sierra Madre Villa, Pasadena, CA 91107 on Friday, Jan 26 starting around 6:30 - 7:00.  It can move to somewhere with food and drink afterwards. &lt;br /&gt;
** -1, prefer Saturday: Michael McCracken&lt;br /&gt;
** ...&lt;br /&gt;
* Saturday 1/27 evening '''when?''' @ [http://www.uwink.com/ uWink] - &amp;quot;It's a hike up to the Valley, but you haven't truly lived until you've taken on some 11 yr old and his mom at Octapong.&amp;quot; This place seems quite nerdtastic.  &lt;br /&gt;
** +1 Tantek&lt;br /&gt;
** +1 McCracken&lt;br /&gt;
** +1 Leikam @ 8pm+&lt;br /&gt;
** +1 Luke Dorny (or Sunday)&lt;br /&gt;
** ...&lt;br /&gt;
* Saturday 1/27 afternoon @ limerickspub. biz Limericks Bar in Long Beach — Wonderful fried Snickers and buffalo patatoes and uh, no wifi!&lt;br /&gt;
** +1 Luke Dorny (or Sunday)&lt;br /&gt;
** ...&lt;br /&gt;
* Saturday 1/27 afternoon @ [http://www.thekingshead.com King's Head Pub and Restaurant in Santa Monica] Darts, pints, and uh, no wifi!&lt;br /&gt;
** +1 Luke Dorny (or Sunday)&lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
'''Who's Interested''' (food prefs)&lt;br /&gt;
* Michael Leikam (vegetarian)&lt;br /&gt;
* Josh Lucas (anything)&lt;br /&gt;
* Tantek Çelik (pescatarian)&lt;br /&gt;
* Michael McCracken (anything)&lt;br /&gt;
* [http://lukedorny.com Luke Dorny] ([http://flickr.com/photos/luxuryluke luxuryluke]) (anything)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12926</id>
		<title>events/2007-01-la-get-together</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12926"/>
		<updated>2007-01-26T16:27:55Z</updated>

		<summary type="html">&lt;p&gt;Leikam: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Los Angeles January 2007 Microformats Get Together Planning =&lt;br /&gt;
&lt;br /&gt;
One of several microformats [[events]].&lt;br /&gt;
&lt;br /&gt;
Tantek will be in LA from Thursday January 25th, through Monday January 29th so let's shoot for that date range&lt;br /&gt;
&lt;br /&gt;
If you have an idea, suggest a time and location.  If you like what somebody's proposed, vote in favor of it.  A place with food, noise levels low enough to have good conversation, and wifi to check/update things on the fly would be nice.&lt;br /&gt;
&lt;br /&gt;
Note: A list of free wifi spots in the state, including LA, is [http://www.wififreespot.com/ca.html here] - in case that could help someone who knows LA find a good spot...&lt;br /&gt;
&lt;br /&gt;
'''Proposals:''' (Where and When)&lt;br /&gt;
* Saturday 1/27 noon @ [http://www.thecatandfiddle.com Cat and Fiddle] - english restaurant &amp;amp; pub - 6530 W Sunset Blvd, Los Angeles, CA 90028 on ''Saturday, Jan 27'' starting at noon and going from there. &lt;br /&gt;
** ...&lt;br /&gt;
* Sunday @ Cat and Fiddle on Sunday instead.&lt;br /&gt;
** +1 Leikam&lt;br /&gt;
** ...&lt;br /&gt;
* Friday 1/26 6:30pmish @ [http://www.earthlink.net EarthLink Pasadena office] - 460 Sierra Madre Villa, Pasadena, CA 91107 on Friday, Jan 26 starting around 6:30 - 7:00.  It can move to somewhere with food and drink afterwards. &lt;br /&gt;
** -1, prefer Saturday: Michael McCracken&lt;br /&gt;
** ...&lt;br /&gt;
* Saturday 1/27 evening @ [http://www.uwink.com/ uWink] - &amp;quot;It's a hike up to the Valley, but you haven't truly lived until you've taken on some 11 yr old and his mom at Octapong.&amp;quot; This place seems quite nerdtastic.&lt;br /&gt;
** +1 Tantek&lt;br /&gt;
** +1 McCracken&lt;br /&gt;
** +1 Leikam (who must be home by midnight)&lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
'''Who's Interested''' (food prefs)&lt;br /&gt;
* Michael Leikam (vegetarian)&lt;br /&gt;
* Josh Lucas (anything)&lt;br /&gt;
* Tantek Çelik (pescatarian)&lt;br /&gt;
* Michael McCracken (anything)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12884</id>
		<title>events/2007-01-la-get-together</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12884"/>
		<updated>2007-01-25T20:47:05Z</updated>

		<summary type="html">&lt;p&gt;Leikam: removed vote for saturday&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Los Angeles January 2007 Microformats Get Together Planning =&lt;br /&gt;
&lt;br /&gt;
One of several microformats [[events]].&lt;br /&gt;
&lt;br /&gt;
Tantek will be in LA from Thursday January 25th, through Monday January 29th so let's shoot for that date range&lt;br /&gt;
&lt;br /&gt;
If you have an idea, suggest a time and location.  If you like what somebody's proposed, vote in favor of it.  A place with food, noise levels low enough to have good conversation, and wifi to check/update things on the fly would be nice.&lt;br /&gt;
&lt;br /&gt;
Note: A list of free wifi spots in the state, including LA, is [http://www.wififreespot.com/ca.html here] - in case that could help someone who knows LA find a good spot...&lt;br /&gt;
&lt;br /&gt;
'''Proposals:''' (Where and When)&lt;br /&gt;
* [http://www.thecatandfiddle.com Cat and Fiddle] - english restaurant &amp;amp; pub - 6530 W Sunset Blvd, Los Angeles, CA 90028 on ''Saturday, Jan 27'' starting at noon and going from there. &lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
* Cat and Fiddle on Sunday instead.&lt;br /&gt;
** +1 Leikam (Sat or Sun is fine by me)&lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
* [http://www.earthlink.net EarthLink Pasadena office] - 460 Sierra Madre Villa, Pasadena, CA 91107 on Friday, Jan 26 starting around 6:30 - 7:00.  It can move to somewhere with food and drink afterwards. &lt;br /&gt;
** -1, prefer Saturday: Michael McCracken&lt;br /&gt;
** ...&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
'''Who's Interested''' (food prefs)&lt;br /&gt;
* Michael Leikam (vegetarian)&lt;br /&gt;
* Josh Lucas (anything)&lt;br /&gt;
* Tantek Çelik (pescatarian)&lt;br /&gt;
* Michael McCracken (anything)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12879</id>
		<title>events/2007-01-la-get-together</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12879"/>
		<updated>2007-01-19T02:59:21Z</updated>

		<summary type="html">&lt;p&gt;Leikam: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Los Angeles January 2007 Microformats Get Together Planning =&lt;br /&gt;
&lt;br /&gt;
One of several microformats [[events]].&lt;br /&gt;
&lt;br /&gt;
Tantek will be in LA from Thursday January 25th, through Monday January 29th so let's shoot for that date range&lt;br /&gt;
&lt;br /&gt;
If you have an idea, suggest a time and location.  If you like what somebody's proposed, vote in favor of it.  A place with food, noise levels low enough to have good conversation, and wifi to check/update things on the fly would be nice.&lt;br /&gt;
&lt;br /&gt;
Note: A list of free wifi spots in the state, including LA, is [http://www.wififreespot.com/ca.html here] - in case that could help someone who knows LA find a good spot...&lt;br /&gt;
&lt;br /&gt;
'''Proposals:''' (Where and When)&lt;br /&gt;
* [http://www.thecatandfiddle.com Cat and Fiddle] - english restaurant &amp;amp; pub - 6530 W Sunset Blvd, Los Angeles, CA 90028 on ''Saturday, Jan 27'' starting at noon and going from there. &lt;br /&gt;
** +1 Leikam&lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
* Cat and Fiddle on Sunday instead.&lt;br /&gt;
** +1 Leikam (Sat or Sun is fine by me)&lt;br /&gt;
** ...&lt;br /&gt;
&lt;br /&gt;
* [http://www.earthlink.net EarthLink Pasadena office] - 460 Sierra Madre Villa, Pasadena, CA 91107 on Friday, Jan 26 starting around 6:30 - 7:00.  It can move to somewhere with food and drink afterwards. &lt;br /&gt;
** -1, prefer Saturday: Michael McCracken&lt;br /&gt;
** ...&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
'''Who's Interested''' (food prefs)&lt;br /&gt;
* Michael Leikam (vegetarian)&lt;br /&gt;
* Josh Lucas (anything)&lt;br /&gt;
* Tantek Çelik (pescatarian)&lt;br /&gt;
* Michael McCracken (anything)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12626</id>
		<title>events/2007-01-la-get-together</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=events/2007-01-la-get-together&amp;diff=12626"/>
		<updated>2007-01-17T18:35:45Z</updated>

		<summary type="html">&lt;p&gt;Leikam: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Los Angeles January 2007 Microformats Get Together Planning =&lt;br /&gt;
&lt;br /&gt;
One of several microformats [[events]].&lt;br /&gt;
&lt;br /&gt;
Tantek will be in LA from Thursday January 25th, through Monday January 29th so let's shoot for that date range&lt;br /&gt;
&lt;br /&gt;
If you have an idea, suggest a time and location.  If you like what somebody's proposed, vote in favor of it.&lt;br /&gt;
&lt;br /&gt;
'''Proposals:''' (Where and When)&lt;br /&gt;
* [http://www.thecatandfiddle.com Cat and Fiddle] - english restaurant &amp;amp; pub - 6530 W Sunset Blvd, Los Angeles, CA 90028 on Saturday, Jan 27 starting at noon and going from there. (1 vote)&lt;br /&gt;
* ??&lt;br /&gt;
&lt;br /&gt;
'''Who's Interested''' (food prefs)&lt;br /&gt;
* Michael Leikam (vegetarian)&lt;br /&gt;
* ...&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=events&amp;diff=12635</id>
		<title>events</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=events&amp;diff=12635"/>
		<updated>2007-01-17T18:12:08Z</updated>

		<summary type="html">&lt;p&gt;Leikam: /* Upcoming */ 2007-01 LA Get Together&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt; Microformats related events &amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please add any microformats related events (specifically, events where there will be talks on microformats) you find here, and we'll add them to the [[hcalendar|hCalendar]] on the [http://microformats.org home page]. Please also create a page for each specific event, where you can list URLs for the event, event details, create an &amp;quot;Attending&amp;quot; section, link to photos afterwards, etc. (See [[events/2006-03-01-w3c-plenary-microformats|Microformats panel at W3C Plenary Day]] for a decent example to mimic / copy-paste).  Thanks! -[http://tantek.com/ Tantek]&lt;br /&gt;
&lt;br /&gt;
If you can (or can ask the organisers to kindly-) use microformats (especially [[hCalendar]] and [[hCard]]) on the event's web pages, so much the better!&lt;br /&gt;
&lt;br /&gt;
For presentations in particular, there's [[presentations|a separate wiki page]].&lt;br /&gt;
&lt;br /&gt;
Patterns:&lt;br /&gt;
* YYYY-MM-DD: &amp;lt;nowiki&amp;gt;[[events/YYYY-MM-DD-event-session-title|Event Session Title]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
* YYYY-MM-DD - YYYY-MM-DD: &amp;lt;nowiki&amp;gt;[[events/YYYY-MM-DD-event-session-title|Event Session Title]]&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Upcoming ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- Please try to keep to neutral tense (e.g &amp;quot;Bill Smith on microformats&amp;quot; not &amp;quot;Bill Smith will talk about Microformats&amp;quot;), where possible, for convenience when moving to the historical section of this page.  Please also include as many details about the event as possible, including precise start end times, room number, etc.  Ideally details should be moved to the (events/..) wiki page for the event itself, but at least include the information here to start with. Thank you. --&amp;gt;&lt;br /&gt;
* 2007-01: [[events/2007-01-la-microformats-gettogether-planning|Los Angeles Microformats Get Together Planning]]&lt;br /&gt;
* 2007-01-18: [[events/2007-01-18-sf-microformats-dinner|San Francisco Microformats Dinner]] 6pm-? probably somewhere in the SOMA/SouthPark area. Details inside.&lt;br /&gt;
* 2007-02-07: [[events/2007-02-07-web-directions-north|Microformats - more than just promise]] - Session 4: 1:45pm-3:45pm: [http://north.webdirections.org/schedule/ Web Directions North]   with John Allsopp, Dan Cederholm, Tantek Çelik.&lt;br /&gt;
* 2007-03-12: [[events/2006-03-12-sxsw-growth-evolution-of|The Growth and Evolution of Microformats]] at [http://2007.sxsw.com/interactive South by Southwest Interactive Festival] 2007 3/10-13. See also [http://2007.sxsw.com/interactive/programming/panels/ confirmed SXSWi 2007 panels].&lt;br /&gt;
* 2007-03-26 - 2007-03-29 : [http://conferences.oreillynet.com/et2007/ O'Reilly Emerging  Technology 2007] [[events/2007-03-27-ETech07Proposal|proposal]]&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== Recent ==&lt;br /&gt;
&amp;lt;!-- Please change to past tense when moving events to this section. Thank you.--&amp;gt;&lt;br /&gt;
* 2007-01-03: [http://eventful.com/events/E0-001-002386631-6 Lancement du projet 'Cette Semaine en MicroFormats'] in Paris, France.&lt;br /&gt;
&lt;br /&gt;
==2006==&lt;br /&gt;
* 2006-11-17 Jeremy Keith presented [http://refresh06.com/schedule/topics/fri_jeremy.html Getting Microformats ] at [http://refresh06.com/ Refresh Web Standards Conference] in Orlando, Florida.&lt;br /&gt;
* 2006-11-11 : Microformats talk / workshop at [http://barcamp.org/BarCampParis7 Barcamp Paris 7], Frédéric de Villamil&lt;br /&gt;
* 2006-10-25 : [http://www.open-standards.com/tutorials.html Microformats half day workshop with John Allsopp at Open Standards, Sydney]&lt;br /&gt;
* 2006-10-26 : [http://www.open-standards.com/agenda.html Microformats presentation - John Allsopp at Open Standards, Sydney]&lt;br /&gt;
* 2006-10-19: [[events/2006-10-19-wsg-microformats-meetup|Web Standards Group London Meetup, Microformats Special]]&lt;br /&gt;
* 2006-10-11: 2pm-3pm &amp;quot;[http://www.socialtext.net/office20/index.cgi?industry_standards_for_office_2_0 Industry Standards for Office 2.0]&amp;quot;, [http://www.office20con.com/ Office 2.0 conference], Conservatory Room, 4th Floor, [http://www.starwoodhotels.com/stregis/property/overview/index.html?propertyID=1511 St. Regis Hotel, 125 3rd St., San Francisco, CA 94103]. Panel moderated by Tantek Çelik. Narenda of 83degrees/30boxes discussed importance and support of [[hcalendar|hCalendar]].&lt;br /&gt;
* 2006-10-07: 3:30pm-4pm [http://upcoming.org/event/114735 Microformats 101 session at Silicon Valley Code Camp] at Foothill College room 4221, Los Altos Hills, CA, USA&lt;br /&gt;
** presentation: http://tantek.com/presentations/2006/10/microformats-101&lt;br /&gt;
* 2006-10-05, [http://molly.com/about.php Molly E. Holzschlag] and [http://www.malarkey.co.uk/The_Stuff_and_Nonsense_team.html#clarke Andy Clarke] present [http://www.fundamentosweb.org/2006/programa/index.html.en Workshop: Designing for Web 2.0] at [http://www.fundamentosweb.org/2006/ Fundamentos Web 2006] in Oviedo, Spain&lt;br /&gt;
* 2006-10-04, [http://molly.com/about.php Molly E. Holzschlag] presents [http://www.fundamentosweb.org/2006/programa/index.html.en The True Value of Microformats] at [http://www.fundamentosweb.org/2006/ Fundamentos Web 2006] in Oviedo, Spain&lt;br /&gt;
* 2006-09-30, 8:00PM-late [[events/2006-09-30-london-microformats-vevent|London Microformats vEvent]] social.&lt;br /&gt;
* 2006-09-30 and 2006-10-01, 10am 09-30 to 5pm 10-01 [[events/2006-09-30-barcampmilwaukee|BarCampMilwaukee]].&lt;br /&gt;
* 2006-09-29, 2:45-3:30PM John Allsopp spoke on Microformats at [http://www.webdirections.org Web Directions] in Sydney, Australia&lt;br /&gt;
** photos: [http://flickr.com/photos/tags/wd06microformats wd06microformats on Flickr]&lt;br /&gt;
* 2006-09-23 10:00 [http://drupalcon.org/node/36 Microformats and Drupal] at drupalcon in Brussels&lt;br /&gt;
* 2006-09-19, 10:00-10:40AM Brian Suda presents [http://conferences.oreillynet.com/cs/euos2006/view/e_sess/9508 Microformats: Web of Data] at at [[events/2006-09-19-eurooscon|EuroOSCon06]]&lt;br /&gt;
* 2006-09-16 : [http://barcamp.org/BarCampParis4 BarCampParis4]. [http://fredericdevillamil.com/ Frédéric de Villamil].&lt;br /&gt;
* 2006-09-13: [[events/2006-09-13-future-of-web-apps-microformats|The Future of Web Apps: Best practice with microformats]]&lt;br /&gt;
* 2006-09-08 [[events/2006-09-08-brighton-microformats-picnic|Brighton Microformats Picnic]] during the lunch break of d.Construct.&lt;br /&gt;
* 2006-09-02 - 2006-09-03: [http://barcamp.org/BarCampLondon BarCampLondon] proposed microformats sessions.&lt;br /&gt;
* 2006-08-25 - 2006-08-27: [http://barcamp.org/BarCampEarth BarCampEarth], in particular [http://barcamp.org/BarCampTexas BarCampTexas], proposed microformats sessions.&lt;br /&gt;
* 2006-08-26 : [http://barcamp.org/BarCampParis3 BarCampParis3]. [http://fredericdevillamil.com/articles/2006/08/24/barcamp-earth-et-barcamp-paris-les-26-et-27-ao%C3%BBt-2006#comments Frédéric de Villamil].&lt;br /&gt;
* 2006-08-22 : [http://www.darowski.com/tracesofinspiration/2006/08/24/webvisions-2006-recap-my-presentation/ WebVisions 2006 Recap] with section on Microformats (beginning with slide 26) by Adam Darowski at [http://aptima.com Aptima] in Woburn, MA &amp;amp; Washington, DC&lt;br /&gt;
* 2006-08-17, 7:00-8:30PM: [[events/2006-08-17-refresh-dc-microformats|M. Jackson Wilkinson speaking on Microformats]] at [http://www.refresh-dc.org Refresh DC] in Washington, DC&lt;br /&gt;
* 2006-08-17, noon @ Ming's, Palo Alto. [http://events.commerce.net/?p=81 Microformats @ Bay Area Caltech Alumni Association]&lt;br /&gt;
* 2006-08-05 5-6pm: Microformats at [http://wordcamp.org/ WordCamp], second room, Swedish American Hall, San Francisco, CA.  Discussion led by Tantek Çelik, demos by Bill Humphries (Kubrick theme with [[hatom|hAtom]]) and Erica Douglass (Countdown Plugin with [[hcalendar|hCalendar]]).&lt;br /&gt;
* 2006-08-03 4-5:30PM: [http://events.commerce.net/?p=77 Server-side Microformats Parsing and MFML] at CommerceNet in Palo Alto&lt;br /&gt;
* 2006-07-27 8-9PM [[events/2006-07-27-oscon-microformats-bof|microformats BOF at O'Reilly OSCON]], Location: Room D137-138 in the OCC.&lt;br /&gt;
* 2006-07-13: ICWE panel: &amp;quot;Web 2.0&amp;quot; Engineering with Tantek Çelik&lt;br /&gt;
* 2006-07-11: [[events/2006-07-11-an-event-apart-microformats|An Event Apart: Microformats]]&lt;br /&gt;
* 2006-07-10: 9am-12:30pm [http://www.icwe2006.org/tutorials.htm#tutorial1 ICWE Tutorial on Microformats] by Ryan King @ &amp;lt;abbr title=&amp;quot;Stanford Linear Accelerator Center&amp;quot;&amp;gt;SLAC&amp;lt;/abbr&amp;gt;&lt;br /&gt;
* 2006-06-21: [[events/2006-06-21-supernova-decentralizing-data|Supernova 2006 Decentralizing Data workshop]]&lt;br /&gt;
* 2006-06-20: Microformats.org [[events/anniversary/1|one year anniversary!]] &lt;br /&gt;
* 2006-06-16: @media conference - Hot Topics Panel (some microformats discussions). [http://www.vivabit.com/atmedia2006/blog/index.php/hot-topics-panel-videocast/ videocast].&lt;br /&gt;
* 2006-06-16: [[events/2006-06-16-atmedia-microformats|@media conference - microformats session]]&lt;br /&gt;
* 2006-06-13: [[events/2006-06-13-where-2-bof|Where 2.0 Microformats BOF II]] - developing a [[directions-examples|directions]] microformat.&lt;br /&gt;
* 2006-06-10: [http://barcamp.org/BarCampParisSiliconSentier BarCampParis]&lt;br /&gt;
* 2006-06-08 [http://glazkov.com/resources/presentations/2006-06-08-microformats/ Microformats]. [[DimitriGlazkov|Dimitri Glazkov]] talked about microformats at [http://ipsaonline.com/ IPSA] monthly meeting.&lt;br /&gt;
* 2006-05-23 - 2006-05-26: [http://www2006.org/ www2006] &lt;br /&gt;
** 2006-05-23: [http://www.blogpulse.com/www2006-workshop/ WWE 2006 | 3rd Annual Workshop on the Weblogging Ecosystem] - call for papers explicitly included &amp;quot;microformats&amp;quot;.&lt;br /&gt;
** 2006-05-24: &lt;br /&gt;
*** All day: &amp;quot;Microformats: a Pragmatic Path to the Semantic Web&amp;quot; poster (Poster ID 116, by Rohit Khare and Tantek Çelik) presentation at Strathblane Hall.&lt;br /&gt;
*** 14:00-15:30: Brian Suda presented a microformats demo ([http://www2006.org/programme/item.php?id=d7 Microformats, converting XHTML to vCards and vCalendars]) in the NextWave developer track session. More information about the presentation is available at [[events/www2006]].&lt;br /&gt;
** 2006-05-25 10:30-13:30: Molly E. Holzschlag presented a half-day &amp;quot;Practical Microformats&amp;quot; developer tutorial.&lt;br /&gt;
* 2006-05-22: [http://refreshedinburgh.org/talks/introducing-microformats-your-web-site/ Refresh Edinburgh] Introducing microformats into your website, May 22nd 8pm-9pm.&lt;br /&gt;
* 2006-05-16 - 2006-05-19: [http://xtech.org/ XTech 2006 Conference]&lt;br /&gt;
** 2006-05-16 09:00-12:30: Half-day tutorial: [http://xtech06.usefulinc.com/content/tutorials#microformats Microformats from the Ground Up] at Volmer 3. [http://theryanking.com/presentations/2006/xtech/tutorial/ presentation slides].&lt;br /&gt;
** 2006-05-18 [http://xtech06.usefulinc.com/schedule#s2006-05-18-14:00 14:00-14:45]: [http://xtech06.usefulinc.com/schedule/detail/148 The Intelligent Design of Microformats]&lt;br /&gt;
* 2006-04-23 - 2006-04-24 [http://cmprofessionals.org/events/summit/#06spring CM Pros Summit] [http://www.nateaune.com Nate Aune] presented a talk &amp;quot;Microformats and the Future of Syndication&amp;quot; from 16:30-17:30 at the Sheraton Palace Hotel in San Francisco.&lt;br /&gt;
* 2006-03-22: [[events/2006-03-22-mix06-microformats|Mix06 Microformats session discussions]]&lt;br /&gt;
* 2006-03-21: [[events/2006-03-21-mix06-microformats|Mix06 Microformats session discussions]]&lt;br /&gt;
* 2006-03-20: [[events/2006-03-20-mix06-microformats|Mix06 Keynote with Tim O'Reilly and Bill Gates discussing microformats]]&lt;br /&gt;
* 2006-03-14: [[events/2006-03-14-sxsw-modulet|Convincing Your Company to Embrace Web Standards at SxSW Interactive]]&lt;br /&gt;
* 2006-03-13: [[events/2006-03-13-sxsw-microformats|Microformats at SXSW Interactive]]&lt;br /&gt;
* 2006-03-07: [[events/2006-03-07-etech-microformats|Microformats at O'Reilly ETech]]&lt;br /&gt;
* 2006-03-02: [http://esw.w3.org/topic/SwigAtTp2006 Semantic Web Interest Group meeting at W3C Technical Plenary], specifically, 1.30-3.30pm Dan Connolly on using &amp;quot;GRDDL&amp;quot; to parse microformats&lt;br /&gt;
* 2006-03-01: [[events/2006-03-01-w3c-plenary-microformats|Microformats panel at W3C Plenary Day]]&lt;br /&gt;
&lt;br /&gt;
== Quicktime Broadcaster Notes ==&lt;br /&gt;
&lt;br /&gt;
For setting up a mac laptop with an iSight and QT Broadcaster in order to publish live audio/video from events.&lt;br /&gt;
&lt;br /&gt;
# Make sure you have the necessary equipment and software installed&lt;br /&gt;
#* A Macintosh running OSX 10.3.9 or later&lt;br /&gt;
#* Quicktime 7 - get it from http://www.apple.com/quicktime/&lt;br /&gt;
#* Quicktime Broadcaster - get it from http://www.apple.com/quicktime/broadcaster/&lt;br /&gt;
#* An iSight or digital video camera with firewire connection&lt;br /&gt;
# Get a broadcast template document from someone (see KevinMarks for example)&lt;br /&gt;
# Open that, then change the info in the 'Network' pane that has his name etc in it.&lt;br /&gt;
# Check the video and audio panes are using your iSight&lt;br /&gt;
# Another tip is that the standalone thingy for the iSight can be more useful than the screen-top one if you have a desk, as that way it picks up less typing noise and wobbles&lt;br /&gt;
# I find plugging in headphones is a good idea, as you can then monitor and not get howlround&lt;br /&gt;
&lt;br /&gt;
http://microformats.org/media/broadcast.mov&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=hcalendar-implementations&amp;diff=11660</id>
		<title>hcalendar-implementations</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=hcalendar-implementations&amp;diff=11660"/>
		<updated>2006-12-18T21:21:59Z</updated>

		<summary type="html">&lt;p&gt;Leikam: /* Libraries */ Ruby:uformats link was broken&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt;hCalendar Implementations&amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This page is '''informative'''.&lt;br /&gt;
&lt;br /&gt;
The following implementations have been developed which either generate or parse hCalendars. If you have an [[hcalendar|hCalendar]] implementation, feel free to add it to the New Implementations section.&lt;br /&gt;
&lt;br /&gt;
==New Implementations==&lt;br /&gt;
Add new implementations here:&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
==Authoring==&lt;br /&gt;
Implementations you can use to author, create, and publish hCalendar events.&lt;br /&gt;
&lt;br /&gt;
===Blogging and CMS tools===&lt;br /&gt;
;Midgard CMS : [http://www.midgard-project.org/documentation/net-nemein-calendar/ Midgard CMS - net.nemein.calendar] - as [http://bergie.iki.fi/blog/new-event-calendar-for-midcom.html blogged by Henri Bergius] &lt;br /&gt;
&lt;br /&gt;
;Drupal module : [http://hybernaut.com/upcoming-hcal Drupal Upcoming.org syndication module emits hCalendar]&lt;br /&gt;
;MovableType and WordPress plug-ins : [http://structuredblogging.org/formats.php StructuredBlogging] is a set of plugins  [http://structuredblogging.org/structuredblogging-wp-latest.zip for  WordPress] and [http://structuredblogging.org/structuredblogging-wp-latest.zip for MovableType] that supports embedding hCalendar and other microformats in templates and blog posts.&lt;br /&gt;
;Textpattern plug-in : [http://placenamehere.com/TXP/pnh_mf/ pnh_mf] is a plugin for [http://textpattern.com/ Textpattern] that supports embedding hCalendar and other microformats in templates and blog posts. Written by [http://placenamehere.com/ Chris Casciano].&lt;br /&gt;
&lt;br /&gt;
===Browser scripts and plug-ins===&lt;br /&gt;
Browser plugins that work with existing authoring tools:&lt;br /&gt;
; Any browser with javascript and a little bit of CSS : [http://microformats.org/code/hcalendar/creator microformats.org hCalendar creator]  (see also original: [http://theryanking.com/ Ryan King] has an [http://theryanking.com/microformats/hcalendar-creator.html hCalendar creator]).&lt;br /&gt;
; Firefox Greasemonkey user script hCalendar creator : [http://www.decafbad.com/blog/2005/06/08/greasemonkey_magic magic_hcalendar Greasemonkey user script by Les Orchard] - allows easy form entry of an event into any textarea, e.g. into a blog post text area.&lt;br /&gt;
; Firefox Greasemonkey user script hCalendar to Google Calendar: [http://torrez.us Elias Torres] has created a [http://torrez.us/archives/2006/04/13/431/ simple script] that will parse hCalendar entries and create a link to add event to [http://www.google.com/calendar/ Google Calendar's] service. Based on [http://virtuelvis.com/archives/2005/11/learn-to-love-microformats George's] and [http://virtuelvis.com/archives/2005/11/learn-to-love-microformats Arve's] work.&lt;br /&gt;
&lt;br /&gt;
===Desktop Authoring Tools===&lt;br /&gt;
;Dreamweaver Extension : [http://www.webstandards.org/action/dwtf/microformats/ Extension suite] for Dreamweaver 8 from the [http://webstandards.org/ Web Standards Project].&lt;br /&gt;
;xfy : &lt;br /&gt;
In [https://www.xfytec.com/community/ xfy Community], there are some hCalendar implementations.&lt;br /&gt;
&lt;br /&gt;
* [https://www.xfytec.com/community/modules/mydownloads/singlefile.php?cid=15&amp;amp;lid=25 hCalendar via RSS] parses an RSS feed, retrieves XHTML documents linked from that feed, and syndicates hCalendars into a calendar view.&lt;br /&gt;
* [https://www.xfytec.com/community/modules/mydownloads/singlefile.php?cid=19&amp;amp;lid=23 hCalendar Marker XVCD] helps to mark up an event information in XHTML document with hCalendar. &lt;br /&gt;
* [https://www.xfytec.com/community/modules/mydownloads/singlefile.php?cid=15&amp;amp;lid=17 Simple RDF Calendar XVCD] is a schedule tool which uses RDF Calendar format. It also converts RDF Calendar format to iCalendar and hCalendar format.&lt;br /&gt;
&lt;br /&gt;
==Search and Discovery==&lt;br /&gt;
&lt;br /&gt;
* [http://kitchen.technorati.com/search Technorati Microformats Search] indexes [[hcard|hCard]], [[hcalendar|hCalendar]], and [[hreview|hReview]] as [http://tantek.com/log/2006/05.html#d31t1802 announced by Tantek]. &lt;br /&gt;
* [http://leftlogic.com/info/articles/microformats_bookmarklet Microformats Bookmarklet] is a bookmarklet designed for Safari (works in Firefox and Camino) that overlays on the current page to allow users to import individual [[hcard|hCards]] or [[hcalendar|hCalendars]]. Written by [http://leftlogic.com Remy Sharp].&lt;br /&gt;
&lt;br /&gt;
==Conversion and Import==&lt;br /&gt;
Implementations you can use to importing into a Calendar Application, typically by converting hCalendar to iCalendar/vCalendar.&lt;br /&gt;
&lt;br /&gt;
===Web Services===&lt;br /&gt;
These return iCalendar (.ics) and other calendar formats for easy importing into typical calendar programs or other processing.&lt;br /&gt;
* [http://feeds.technorati.com/events Technorati Events Feed service] uses X2V library to parse hCalendar and return iCalendar (.ics).  Note friendly URL, e.g. http://feeds.technorati.com/events/http%3A//microformats.org&lt;br /&gt;
* [http://suda.co.uk/projects/X2V/ X2V] parses hCalendar and produces a .ics (iCalendar) stream.  Note: needs to be updated to track changes in the specification as they occur.&lt;br /&gt;
* [http://lifelint.net/ Life Lint Parser] parses hCalendar and produces .ics, .rdf and debugging information and attempts to be more fully compliant to the iCal standard than previous implementations.  It can be used in the same manner as X2V.  Can output iCal (w optional Outlook 2002 compat), and RDF.&lt;br /&gt;
* [http://spanningsalesforce.com/ Spanning Salesforce] produces hCalendar-enabled RSS feeds and .ics calendars from Salesforce.com.&lt;br /&gt;
* [http://makedatamakesense.com/myspace/event/ MySpace Events RSS Creator] creates RSS feeds of MySpace events with hCalendar markup.&lt;br /&gt;
&lt;br /&gt;
===Firefox Greasemonkey Plugins===&lt;br /&gt;
* [http://george.hotelling.net/90percent/ George] has built a [http://george.hotelling.net/90percent/geekery/greasemonkey_and_microformats.php Greasemonkey user script that detects hCalendar events and allows users to easily add them to their calendar application(s)].&lt;br /&gt;
* [http://inside.glnetworks.de/ Martin Rehfeld] has updated the work of [http://blogmatrix.blogmatrix.com/ David Janes] and produced a [[Greasemonkey]] [http://inside.glnetworks.de/2006/06/05/microformats-have-arrived-in-firefox-15-greasemonkey-06/ script] that finds many microformat elements, including hCalendar events, and [http://blog.davidjanes.com/mtarchives/2005_08.html#003379 provides a popup menu of actions]. The hCalendar to vCalendar conversion is done internally within the script. ''This will work with FireFox 1.5+/GreaseMonkey 0.6.4+ now.''&lt;br /&gt;
&lt;br /&gt;
===Aggregators===&lt;br /&gt;
* [http://placenamehere.com/mf/nnwextract/ Extract Microformats] is a script for NetNewsWire that supports extracting hCard and hCalendar data in blog posts (via technorati service). Written by [[User:ChrisCasciano|Chris Casciano]]&lt;br /&gt;
* [http://kula.jp/software/endo/screenshots/ Endo], an OS X aggregator, supports discovering hCal and adding those events to iCal. Look at the last screenshot at the bottom of the page.&lt;br /&gt;
&lt;br /&gt;
==Browsing==&lt;br /&gt;
Implementations that detect, display and otherwise highlight hCalendar events in pages.&lt;br /&gt;
&lt;br /&gt;
* In [http://www.xfytec.com/community/ xfy Community], there are some hCalendar implementations. &amp;quot;hCalendar via RSS&amp;quot; parses an RSS feed, retrieves XHTML documents linked from that feed, and syndicates hCalendars into a calendar view.&lt;br /&gt;
* [http://web.mit.edu/glasser/www/JSCalendar/ JSCalendar] parses hCalendar and produces a displayable HTML table/CSS-based calendar.&lt;br /&gt;
&lt;br /&gt;
===Firefox extension===&lt;br /&gt;
*[http://blog.codeeg.com/tails-firefox-extension/ Tails is a Firefox Extension] that will display the presence of microformats ([[hcard|hCard]], [[hcalendar|hCalendar]], [[hreview|hReview]], [[xfolk|xFolk]]) on a webpage.&lt;br /&gt;
&lt;br /&gt;
====Pending====&lt;br /&gt;
*[http://reminderfox.mozdev.org/ ReminderFox] have hCalendar import on their &amp;quot;to do &amp;quot; list. &lt;br /&gt;
&lt;br /&gt;
===Flock extension===&lt;br /&gt;
*[http://blog.codeeg.com/2006/03/20/flock-tails-flocktails/ Flocktails] - port of Tails extension for Flock 0.5.12 that looks for hCards, hCalendar, xFolk and hReview and tosses them into a handy topbar&lt;br /&gt;
&lt;br /&gt;
==Libraries==&lt;br /&gt;
Open source libraries of hCalendar parsers and other related code for building hCalendar implementations.&lt;br /&gt;
; Javascript : [http://virtuelvis.com/archives/2005/11/learn-to-love-microformats simple hCalendar parser] by [http://virtuelvis.com/ Arve Bersvendsen]&lt;br /&gt;
; PHP : &lt;br /&gt;
*[http://randomchaos.com/microformats/base/ Microformat Base] is an open-source PHP microformat aggregation crawler, currently recognizing hreview, hcalendar, and hcard (Source code no longer available as of 6 Dec 06).&lt;br /&gt;
*[http://enarion.net/phpmicroformats/ phpMicroformats] is a PHP class library that generates microformats for calendar events (hCalendar) and vcards (hCard).&lt;br /&gt;
* [http://fresh.t-systems-sfr.com/unix/src/www/WebCalendar-devel-1.1.1.tar.gz:a/WebCalendar-1.1.1/includes/classes/hKit/hcal.profile.php hCalendar profile] for the [http://allinthehead.com/hkit/ hKit] parser.&lt;br /&gt;
; Ruby : uformats is a ruby library that can parse [[hCalendar]], [[hCard]], [[hReview]] and [[rel-tag]]&lt;br /&gt;
; XSLT :&lt;br /&gt;
* X2V is available as an XSLT library&lt;br /&gt;
* [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent] by [[User:DanC]] includes  toICal.xsl and test materials; it works much like xhtml2vcal.xsl in X2V. See also: [http://www.w3.org/2002/12/cal/ RDF Calendar workspace] with icalendar test materials.&lt;br /&gt;
&lt;br /&gt;
==Potential implementations==&lt;br /&gt;
&lt;br /&gt;
These are open source projects that could be potentially enhanced to support hCalendar.&lt;br /&gt;
&lt;br /&gt;
* [http://www.k5n.us/webcalendar.php?topic=About WebCalendar]&lt;br /&gt;
* [http://phpicalendar.net/documentation/index.php?title=Main_Page PHP iCalendar]&lt;br /&gt;
* [http://www.vcalendar.org VCalendar]&lt;br /&gt;
* Investigation: [http://wiki.mozilla.org/Calendar_Talk:Lightning#hCalendar_publish_and_subscribe_support Mozilla Calendar / Lightning / Sunbird hCalendar support discussion]&lt;br /&gt;
&lt;br /&gt;
== Related Pages ==&lt;br /&gt;
{{hcalendar-related-pages}}&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=transit-table-examples&amp;diff=17807</id>
		<title>transit-table-examples</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=transit-table-examples&amp;diff=17807"/>
		<updated>2006-07-28T20:40:47Z</updated>

		<summary type="html">&lt;p&gt;Leikam: /* Acknowledgment */ +link to discussion thread&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Transit Table Examples =&lt;br /&gt;
&lt;br /&gt;
== Authors ==&lt;br /&gt;
&lt;br /&gt;
* Tantek Çelik&lt;br /&gt;
&lt;br /&gt;
== Acknowledgment ==&lt;br /&gt;
&lt;br /&gt;
Thanks to Kevin Marks for suggesting this need for a microformat on the microformats-discuss list and providing the Caltrain example.&lt;br /&gt;
&lt;br /&gt;
http://microformats.org/discuss/mail/microformats-discuss/2005-October/001595.html&lt;br /&gt;
&lt;br /&gt;
== Problem Statement ==&lt;br /&gt;
&lt;br /&gt;
Problem: how to markup transit tables for trains / light-rail etc. in such a way that aggregation and navigation of schedules across varying transit systems becomes possible.&lt;br /&gt;
&lt;br /&gt;
== Examples ==&lt;br /&gt;
&lt;br /&gt;
=== Caltrain ===&lt;br /&gt;
&lt;br /&gt;
http://caltrain.com/timetable_effective_10_10_05.html&lt;br /&gt;
&lt;br /&gt;
=== TTC (Subways, Buses, Light and Electric Rail) ===&lt;br /&gt;
&lt;br /&gt;
Interface:&lt;br /&gt;
http://www.toronto.ca/ttc/schedules/index.htm&lt;br /&gt;
&lt;br /&gt;
Note the horrifying frame and pulldown based interface.&lt;br /&gt;
&lt;br /&gt;
Schedule page:&lt;br /&gt;
http://www.toronto.ca/ttc/schedules/61S.htm#AVENUE%20RD.%20at%20WILSON&lt;br /&gt;
&lt;br /&gt;
=== Air Canada (Airline) ===&lt;br /&gt;
&lt;br /&gt;
http://www.aircanada.com/aco/flights.do&lt;br /&gt;
&lt;br /&gt;
This is fairly typical of many airlines -- a form-based query is needed to get to the interesting stuff.&lt;br /&gt;
&lt;br /&gt;
=== Go Transit (Trains and Buses) ===&lt;br /&gt;
&lt;br /&gt;
Interface:&lt;br /&gt;
http://www.gotransit.com/PUBLICROOT/NewVersion/lstNser.asp&lt;br /&gt;
&lt;br /&gt;
Schedule page:&lt;br /&gt;
http://www.gotransit.com/PUBLICROOT/NewVersion/pubnsch.asp?table=01&amp;amp;direction=0&amp;amp;day=1&amp;amp;page=1&lt;br /&gt;
&lt;br /&gt;
=== New Jersey Transit ===&lt;br /&gt;
&lt;br /&gt;
Rail Schedule Interface (results include transfer info + rates):&lt;br /&gt;
http://www.njtransit.com/sf_tr_schedules.shtml&lt;br /&gt;
&lt;br /&gt;
Bus Schedules:&lt;br /&gt;
http://www.njtransit.com/sf_bu_town2town.jsp?Center=Town&lt;br /&gt;
&lt;br /&gt;
=== MTA (NYC) subways, trains, buses ===&lt;br /&gt;
http://www.mta.nyc.ny.us/&lt;br /&gt;
&lt;br /&gt;
LIRR Train Interface:&lt;br /&gt;
http://lirr42.mta.info/index.asp&lt;br /&gt;
&lt;br /&gt;
Metro North Train Interface (includes peak/offpeak info, travel durations)&lt;br /&gt;
http://as0.mta.info/mnr/schedules/sched_form.cfm&lt;br /&gt;
&lt;br /&gt;
== Future Thoughts ==&lt;br /&gt;
&lt;br /&gt;
This probably belongs more in a transit-table-brainstorming page, but until more examples are fleshed out and previous formats are researched, we're sticking future thoughts here.&lt;br /&gt;
&lt;br /&gt;
=== Tufte Transit Graph ===&lt;br /&gt;
&lt;br /&gt;
An application that read a standard transit-table microformat and produced a Tuftesque timeline grid would be very nice for transit users.&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=User:Leikam&amp;diff=19804</id>
		<title>User:Leikam</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=User:Leikam&amp;diff=19804"/>
		<updated>2006-06-02T22:53:35Z</updated>

		<summary type="html">&lt;p&gt;Leikam: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[http://www.leikam.com/michael Michael Leikam]&lt;br /&gt;
&lt;br /&gt;
leikam at yahoo.com&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=hcalendar-brainstorming&amp;diff=11759</id>
		<title>hcalendar-brainstorming</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=hcalendar-brainstorming&amp;diff=11759"/>
		<updated>2006-06-02T22:37:09Z</updated>

		<summary type="html">&lt;p&gt;Leikam: /* Including More of iCalendar */  added alternate reading of organizer reference&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;h1&amp;gt; hCalendar Brainstorming &amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[to-do]]: this page could use just a bit more clean-up and reorganization. - Tantek&lt;br /&gt;
&lt;br /&gt;
This page is for trying out and documenting ways of using hCalendar which may involve more details than currently in the specification.&lt;br /&gt;
&lt;br /&gt;
If you have a question, please check the [[hcalendar-faq|hCalendar FAQ]], and ask new questions on the [http://microformats.org/discuss/ mailing lists] first.&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
== Authors ==&lt;br /&gt;
&lt;br /&gt;
* [http://suda.co.uk/ Brian Suda]&lt;br /&gt;
* [http://tantek.com/log/ Tantek Çelik]&lt;br /&gt;
&lt;br /&gt;
== hCalendar authoring best practices ==&lt;br /&gt;
&lt;br /&gt;
=== Tabular event calendars ===&lt;br /&gt;
&lt;br /&gt;
Many calendars are posted in tabular form, where the headings on the columns and rows have property values that apply to the cells which themselves are events.  E.g. many conferences have multiple tracks and post names of rooms (LOCATION) as column headers, and time slots (DTSTART, DTEND) as row headers.&lt;br /&gt;
&lt;br /&gt;
Here is a description of how to parse such markup into an iCalendar stream.  This has been implemented in X2V and deployed.  &lt;br /&gt;
&lt;br /&gt;
'''TO DO: document a &amp;quot;How To&amp;quot; for publishers looking to mark up tabular event listings.'''&lt;br /&gt;
&lt;br /&gt;
To enable mark these up with [[hcalendar|hCalendar]], we must parse additional semantic attributes from HTML4.&lt;br /&gt;
&lt;br /&gt;
When parsing, in addition to the special case rules documented in [[hcard-parsing]]:&lt;br /&gt;
&lt;br /&gt;
* If the element is a table data cell &amp;lt;code&amp;gt;&amp;amp;lt;td&amp;amp;gt;&amp;lt;/code&amp;gt;, then:&lt;br /&gt;
*# parse its &amp;quot;headers&amp;quot; attribute as a space separated set of local IDs&lt;br /&gt;
*# find the &amp;lt;code&amp;gt;&amp;amp;lt;td&amp;amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;&amp;amp;lt;th&amp;amp;gt;&amp;lt;/code&amp;gt; elements referenced by those IDs (call them header cells) and consider them part of the element being parsed as follows:&lt;br /&gt;
*## Treat the header cells as children of the element, ordered by the order of ids in its &amp;quot;headers&amp;quot; attribute, immediately following the last child node (text or element) or the element.  (The basic idea is that the content from those header cells is used to construct the VEVENT, but secondary to  (AFTER) the content in the data cell itself, so that the data cell can customize/override part of the data in the header, e.g. if the header cell included both start time and location, and the event was being held at a different location).&lt;br /&gt;
*## Parse the &amp;quot;axis&amp;quot; attribute of a header cell as a comma-separated list of categories.  These categories must be used in addition to (and before) any class names on that header cell for determining whether it is a property of the VEVENT.&lt;br /&gt;
&lt;br /&gt;
Real world example in the wild of a tabular event calendar marked up in this fashion: [http://we05.com/program.cfm Web Essentials 05 Session program].&lt;br /&gt;
&lt;br /&gt;
'''Note: We have gained sufficient experience with this that we should formalize this in both [[hcard-parsing]] and [[hcalendar-parsing]] since the table cell headers and axis attributes technique is generic to all class name microformats.  The specific use case of how to author a tabular display of events should be documented in [[hcalendar-authoring]]. Tantek'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== hCard locations ===&lt;br /&gt;
&lt;br /&gt;
In iCalendar (and thus hCalendar), the LOCATION property is just a text string.  In practice however, much event content contains some amount of structure for the location, often a specific venue with name, address etc.  Venues are often organizations and are thus conducive to being marked up as [[hcard|hCards]].&lt;br /&gt;
&lt;br /&gt;
Taking the example from the [[hcalendar|hCalendar]] spec:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;http://www.web2con.com/&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Web 2.0 Conference&amp;lt;/span&amp;gt;: &lt;br /&gt;
  &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;2005-10-05&amp;quot;&amp;gt;October 5&amp;lt;/abbr&amp;gt;-&lt;br /&gt;
  &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;2005-10-08&amp;quot;&amp;gt;7&amp;lt;/abbr&amp;gt;,&lt;br /&gt;
 at the &amp;lt;span class=&amp;quot;location&amp;quot;&amp;gt;Argent Hotel, San Francisco, CA&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Clearly the &amp;quot;Argent Hotel&amp;quot; is a venue, and thus could be marked up as an [[hcard|hCard]] itself:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;location vcard&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;fn org&amp;quot;&amp;gt;Argent Hotel&amp;lt;/span&amp;gt;, &lt;br /&gt;
  &amp;lt;span class=&amp;quot;adr&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;locality&amp;quot;&amp;gt;San Francisco&amp;lt;/span&amp;gt;, &amp;lt;span class=&amp;quot;region&amp;quot;&amp;gt;CA&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Thus in the context of the entire vevent this example would become:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
 &amp;lt;a class=&amp;quot;url&amp;quot; href=&amp;quot;http://www.web2con.com/&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Web 2.0 Conference&amp;lt;/span&amp;gt;: &lt;br /&gt;
  &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;2005-10-05&amp;quot;&amp;gt;October 5&amp;lt;/abbr&amp;gt;-&lt;br /&gt;
  &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;2005-10-08&amp;quot;&amp;gt;7&amp;lt;/abbr&amp;gt;,&lt;br /&gt;
 at the &amp;lt;span class=&amp;quot;location vcard&amp;quot;&amp;gt;&lt;br /&gt;
   &amp;lt;span class=&amp;quot;fn org&amp;quot;&amp;gt;Argent Hotel&amp;lt;/span&amp;gt;, &lt;br /&gt;
   &amp;lt;span class=&amp;quot;adr&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;locality&amp;quot;&amp;gt;San Francisco&amp;lt;/span&amp;gt;, &amp;lt;span class=&amp;quot;region&amp;quot;&amp;gt;CA&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
  &amp;lt;/span&amp;gt;&lt;br /&gt;
 &amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The advantage of marking up the location with explicit [[hcard|hCard]] semantics is that it enables much better identification and pivoting of locations of events.&lt;br /&gt;
&lt;br /&gt;
For a real world example of this in practice see Jeremy Keith's excellent SXSW 2006 event page: http://austin.adactio.com/ where all the events contain locations marked up as hCards with [[geo]] properties as well which then aid in locating the precise locations on a map.&lt;br /&gt;
&lt;br /&gt;
'''Note: We have gained sufficient experience with this that we should formalize this in   [[hcalendar-authoring]]. Tantek'''&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== iCalendar generation best practices ==&lt;br /&gt;
&lt;br /&gt;
Along with the four base properties, you can define addtional properties through the use of the x-prop property. For best-practices for hCal to iCal transformers, it would be helpful if the transforming application added the following x-* properties:&lt;br /&gt;
&lt;br /&gt;
=== X-FROM-URL ===&lt;br /&gt;
&lt;br /&gt;
* X-FROM-URL. The value of this property would be the URL of the page where the iCal representation was generated.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
X-FROM-URL:http://example.com/page-containing-hCal-encoding.html&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note: We have gained sufficient experience with this that we should formalize this in [[hcalendar-parsing]]. Tantek'''&lt;br /&gt;
&lt;br /&gt;
=== X-WR-CALNAME ===&lt;br /&gt;
&lt;br /&gt;
* X-WR-CALNAME.  iCal.app recognizes this property as the &amp;quot;calendar name&amp;quot; for subscribed calendars.  Thus transforming applications *should* take the &amp;lt;code&amp;gt;&amp;amp;lt;title&amp;amp;gt;...&amp;amp;lt;/title&amp;amp;gt;&amp;lt;/code&amp;gt; from the page being parsed, optionally append &amp;quot; events&amp;quot;, and use that value for the X-WR-CALNAME property in the resulting feed. E.g. if the page had &amp;lt;code&amp;gt;&amp;amp;lt;title&amp;amp;gt;Example Home Page&amp;amp;lt;/title&amp;amp;gt;&amp;lt;/code&amp;gt; then the .ics output should have as part of the vcalendar object:&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
X-WR-CALNAME:Example Home Page&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Note: We have gained sufficient experience with this that we should formalize this in [[hcalendar-parsing]]. Tantek'''&lt;br /&gt;
&lt;br /&gt;
== iCalendar examples in hCalendar ==&lt;br /&gt;
&lt;br /&gt;
This is a growing example case written in iCal format and transformed to the corresponding XHTML. These conversions are open to community input.  See [[hcalendar-examples]] for current work.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VEVENT&lt;br /&gt;
CATEGORIES:foo,bar&lt;br /&gt;
SUMMARY: Short Title&lt;br /&gt;
DESCRIPTION: Full Description&lt;br /&gt;
DTSTART;VALUE=DATE:20040101&lt;br /&gt;
DTEND:20040101T235959Z&lt;br /&gt;
RRULE:FREQ=YEARLY;UNTIL=20080102T000000Z&lt;br /&gt;
URL;WORK:http://example.com&lt;br /&gt;
ATTENDEE;ROLE=CHAIR:MAILTO:JohnDoe@example.com&lt;br /&gt;
GEO:37.386013;-122.082932&lt;br /&gt;
END:VEVENT&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;p class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;!-- @@ how to deal with Whitespace issues in lists 'foo, bar' --&amp;gt;&lt;br /&gt;
Categories:&lt;br /&gt;
&amp;lt;ul class=&amp;quot;categories&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;foo&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;bar&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ul&amp;gt;&lt;br /&gt;
&amp;lt;a href=&amp;quot;http://example.com&amp;quot; class=&amp;quot;summary&amp;quot;&amp;gt;Short Title&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;description&amp;quot;&amp;gt;description&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;geo&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;Lat&amp;quot;&amp;gt;37.386013&amp;lt;/span&amp;gt; &amp;lt;span class=&amp;quot;Lon&amp;quot;&amp;gt;-122.082932&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- This currently does not take into consideration the VALUE=DATE --&amp;gt;&lt;br /&gt;
&amp;lt;!-- The transforming application could attempt to detect the proper format and add params as needed? --&amp;gt;&lt;br /&gt;
Date: &amp;lt;em class=&amp;quot;dtstart&amp;quot;&amp;gt;20040101&amp;lt;/em&amp;gt; - &amp;lt;em class=&amp;quot;dtend&amp;quot;&amp;gt;20040101T235959Z&amp;lt;/em&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- any thoughts to better encode attendee --&amp;gt;&lt;br /&gt;
&amp;lt;!-- the ROLE must be of a known type, but one of type is x-name (user-specified) --&amp;gt;&lt;br /&gt;
&amp;lt;!-- therefore there is no solid way to know &amp;quot;chair&amp;quot; refers to a ROLE parameter --&amp;gt;&lt;br /&gt;
&amp;lt;a class=&amp;quot;attendee chair&amp;quot; href=&amp;quot;mailto:JohnDoe@example.com&amp;quot;&amp;gt;John Doe&amp;lt;/a&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- this messy, but works. Is there a better way? --&amp;gt;&lt;br /&gt;
&amp;lt;p class=&amp;quot;rrule&amp;quot;&amp;gt;The event will be held &amp;lt;span class=&amp;quot;freq&amp;quot;&amp;gt;yearly&amp;lt;/span&amp;gt; until &amp;lt;span class=&amp;quot;&amp;quot;until&amp;quot;&amp;gt;20080102T000000Z&amp;lt;/span&amp;gt;.&amp;lt;/p&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
@@-need to look at nested tag examples&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
XHTML&lt;br /&gt;
&amp;lt;span class=&amp;quot;description&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Short Title&amp;lt;/span&amp;gt; to a longer article&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
vCal&lt;br /&gt;
SUMMARY:Short Title&lt;br /&gt;
DESCRIPTION:Short Title to a longer article&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Examples from RFC 2445 ===&lt;br /&gt;
&lt;br /&gt;
* These examples are now all available on [[hcalendar-examples]].&lt;br /&gt;
&lt;br /&gt;
With the abbr's title attribute being used rather than the node value, the actual data could vary and still represent the same vcalendar.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCALENDAR&lt;br /&gt;
VERSION:2.0&lt;br /&gt;
PRODID:-//hacksw/handcal//NONSGML v1.0//EN&lt;br /&gt;
BEGIN:VEVENT&lt;br /&gt;
DTSTART:19970714T170000Z&lt;br /&gt;
DTEND:19970715T035959Z&lt;br /&gt;
SUMMARY:Bastille Day Party&lt;br /&gt;
END:VEVENT&lt;br /&gt;
END:VCALENDAR&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;19970714T170000Z&amp;quot;&amp;gt;July 14th&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;19970715T035959Z&amp;quot;&amp;gt;&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Bastille Day Party&amp;lt;/span&amp;gt;&lt;br /&gt;
  &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== UID handling ====&lt;br /&gt;
&lt;br /&gt;
The UID in iCal is represented in HTML as the id attribute in these examples. Any valid id in HTML is a valid UID in iCal, but not the contrapositive, a valid UID is NOT a valid HTML id. HTML ids can only start with a letter, not a number.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VEVENT&lt;br /&gt;
UID:19970901T130000Z-123401@host.com&lt;br /&gt;
DTSTAMP:19970901T1300Z&lt;br /&gt;
DTSTART:19970903T163000Z&lt;br /&gt;
DTEND:19970903T190000Z&lt;br /&gt;
SUMMARY:Annual Employee Review&lt;br /&gt;
CLASS:PRIVATE&lt;br /&gt;
CATEGORIES:BUSINESS,HUMAN RESOURCES&lt;br /&gt;
END:VEVENT&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;vevent&amp;quot; id=&amp;quot;19970901T130000Z-123402@host.com&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstamp&amp;quot; title=&amp;quot;19970901T1300Z&amp;quot;&amp;gt;&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;19970903T163000Z&amp;quot;&amp;gt;September 3rd, 4:30pm&amp;lt;/abbr&amp;gt;-&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;19970903T190000Z&amp;quot;&amp;gt;7:00pm&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Annual Employee Review&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;class&amp;quot;&amp;gt;private&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;ul class=&amp;quot;categories&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;BUSINESS&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;HUMAN RESOURCES&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
  &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VCALENDAR&lt;br /&gt;
BEGIN:VEVENT&lt;br /&gt;
UID:19970901T130000Z-123402@host.com&lt;br /&gt;
DTSTAMP:19970901T1300Z&lt;br /&gt;
DTSTART:19970401T163000Z&lt;br /&gt;
DTEND:19970402T010000Z&lt;br /&gt;
SUMMARY:Laurel is in sensitivity awareness class.&lt;br /&gt;
CLASS:PUBLIC&lt;br /&gt;
CATEGORIES:BUSINESS,HUMAN RESOURCES&lt;br /&gt;
TRANSP:TRANSPARENT&lt;br /&gt;
END:VEVENT&lt;br /&gt;
END:VCALENDAR&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;vevent&amp;quot; id=&amp;quot;19970901T130000Z-123402@host.com&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstamp&amp;quot; title=&amp;quot;19970901T1300Z&amp;quot;&amp;gt;&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;19970401T163000Z&amp;quot;&amp;gt;April 1st 4:30pm&amp;lt;/abbr&amp;gt;-&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;19970402T010000Z&amp;quot;&amp;gt;1:00am&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Laurel is in sensitivity awareness class.&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;class&amp;quot;&amp;gt;PUBLIC&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;ul class=&amp;quot;categories&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;BUSINESS&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;HUMAN RESOURCES&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;transp&amp;quot;&amp;gt;Transparent&amp;lt;/span&amp;gt;&lt;br /&gt;
  &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== RRULE handling ====&lt;br /&gt;
&lt;br /&gt;
The way RRULE is encoded should be discussed.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
BEGIN:VEVENT&lt;br /&gt;
UID:19970901T130000Z-123403@host.com&lt;br /&gt;
DTSTAMP:19970901T1300Z&lt;br /&gt;
DTSTART:19971102&lt;br /&gt;
SUMMARY:Our Blissful Anniversary&lt;br /&gt;
CLASS:CONFIDENTIAL&lt;br /&gt;
CATEGORIES:ANNIVERSARY,PERSONAL,SPECIAL OCCASION&lt;br /&gt;
RRULE:FREQ=YEARLY&lt;br /&gt;
END:VEVENT&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt;&lt;br /&gt;
  &amp;lt;span class=&amp;quot;vevent&amp;quot; id=&amp;quot;19970901T130000Z-123403@host.com&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;19970901T1300Z&amp;quot;&amp;gt;&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;19971102&amp;quot;&amp;gt;November 2nd&amp;lt;/abbr&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;summary&amp;quot;&amp;gt;Our Blissful Anniversary&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;class&amp;quot;&amp;gt;CONFIDENTIAL&amp;lt;/span&amp;gt;&lt;br /&gt;
    &amp;lt;ul class=&amp;quot;categories&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;ANNIVERSARY&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;PERSONAL&amp;lt;/li&amp;gt;&lt;br /&gt;
      &amp;lt;li&amp;gt;SPECIAL OCCASION&amp;lt;/li&amp;gt;&lt;br /&gt;
    &amp;lt;/ul&amp;gt;&lt;br /&gt;
    &amp;lt;span class=&amp;quot;rrule&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;freq&amp;quot;&amp;gt;YEARLY&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
  &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Examples from real world event sites ==&lt;br /&gt;
&lt;br /&gt;
=== W3C Meetings ===&lt;br /&gt;
&lt;br /&gt;
I just got email announcing the dates of another W3C meeting.  I don't think it's marked up with hCalendar. I could mark it up myself, like I did for [http://www.w3.org/2005/12/allgroupoverview.html the TP day/week schedule], but it might not stick. Somehow I got [http://www.w3.org/2000/08/w3c-synd/ our syndicated news markup] (precursor to [[hAtom]]) to stick, i.e. to become part of the norm in the W3C comm team. I wonder if I could pull that off for calendars.&lt;br /&gt;
&lt;br /&gt;
My first thought is authoring tools, but I don't think I can wait that long.&lt;br /&gt;
Next thought is instant-feedback checking tools...&lt;br /&gt;
X2V is really handy, but can't be used for confidential pages (and many/most calendars I use are not public).&lt;br /&gt;
So.. how about some in-browser javascript &amp;quot;yes, you got it right!&amp;quot; or &amp;quot;hmm... that looks like a date; is there an event you didn't mark up?&amp;quot; feedback? I think I saw something like that in hCalendar implementations.&lt;br /&gt;
&lt;br /&gt;
[[User:DanC|DanC]] 09:00, 3 Feb 2006 (PST)&lt;br /&gt;
&lt;br /&gt;
=== Laughing Squid ===&lt;br /&gt;
&lt;br /&gt;
Laughing Squid had the following [http://laughingsquid.com/squidlist/calendar/9584/2005/4/7 multiple occurence event example]:&lt;br /&gt;
&lt;br /&gt;
 Thu, Apr 7 : Tu/Wed: 12-4pm Th/Fr/Sat 12-7pm Sun 12-6pm &lt;br /&gt;
&lt;br /&gt;
In addition, later on in the description, it says:&lt;br /&gt;
&lt;br /&gt;
 April 7-21, 2005&lt;br /&gt;
&lt;br /&gt;
This is actually quite a non-trivial example, because the event lasts for different durations on different days (4 hours, 7 hours, 6 hours).&lt;br /&gt;
&lt;br /&gt;
Because of the differing durations, the specification requires that *each* instance of this recurring event be explicitly specified.  &lt;br /&gt;
&lt;br /&gt;
But first we markup the starting date and time explicitly:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050407T1200-0700&amp;quot;&amp;gt;Thu, Apr 7&amp;lt;/abbr&amp;gt; : &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Then we put in the quite lengthy explicit specification of every other time the event occurs, marked up around the human readable description.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;abbr class=&amp;quot;rdate&amp;quot; title=&amp;quot;20050407T1200-0700/PT7H, 20050408T1200-0700/PT7H, &lt;br /&gt;
20050409T1200-0700/PT7H, 20050410T1200-0700/PT6H, 20050412T1200-0700/PT4H, &lt;br /&gt;
20050413T1200-0700/PT4H, 200504014T1200-0700/PT7H, 20050415T1200-0700/PT7H, &lt;br /&gt;
20050416T1200-0700/PT7H, 20050417T1200-0700/PT6H, 20050419T1200-0700/PT4H, &lt;br /&gt;
20050420T1200-0700/PT4H, 20050421T1200-0700/PT7H&amp;quot; &amp;gt;&lt;br /&gt;
Tu/Wed: 12-4pm Th/Fr/Sat 12-7pm Sun 12-6pm&lt;br /&gt;
&amp;lt;/abbr&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The RDATE &amp;quot;PERIOD&amp;quot; format is fairly straightforward.  You simply list *each* occurrence of the event, separated by commas.   Each occurrence consists of the ISO8601 datetime of the start of the event, followed by a slash &amp;quot;/&amp;quot;, followed by *either* the duration of the event (e.g. 7 hours = PT7H), *or* a complete ISO8601 datetime of the end of the event.  I chose to use the duration of the event for this example for reason of brevity.&lt;br /&gt;
&lt;br /&gt;
Note that &amp;quot;value=period:&amp;quot; is unnecessary in the rdate value since the parser can infer &amp;quot;value=period:&amp;quot; from the presence of a &amp;quot;/&amp;quot; in the title attribute value.&lt;br /&gt;
&lt;br /&gt;
With simpler repeating events, or perhaps events which only repeat a day or two, their hCalendar markup may be more illustrative of how to do this in a general way.&lt;br /&gt;
&lt;br /&gt;
== CSS Styles ==&lt;br /&gt;
&lt;br /&gt;
Since the hCal properties are added in as HTML class names, you can style them with CSS class selectors along with other HTML class names. You are free to style these properties in any fashion you want (see specific notes), but here are a few examples that you can use.&lt;br /&gt;
&lt;br /&gt;
=== Preserving White-space ===&lt;br /&gt;
If you are encoding data that requires tabs, returns, or other white-space to be perserved you can use the following CSS property to do so in HTML.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;white-space: pre&amp;quot;&amp;gt;&lt;br /&gt;
This white-space&lt;br /&gt;
will be&lt;br /&gt;
preserved&lt;br /&gt;
&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
white-space can take one of three different parameters; normal, pre, and no-wrap.&lt;br /&gt;
&lt;br /&gt;
=== Not recommended ===&lt;br /&gt;
&lt;br /&gt;
The following CSS styling techniques are not recommended:&lt;br /&gt;
&lt;br /&gt;
==== Hiding Data ====&lt;br /&gt;
It is possible to encode additional data without it being displayed in the HTML, by using the CSS style property 'display'.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;span style=&amp;quot;display:none&amp;quot;&amp;gt;Hidden Data&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
This data will be found by any transforming application and will be properly encoded into an iCal file.&lt;br /&gt;
&lt;br /&gt;
'''You SHOULD NOT do this because it violates the visibility priniciple.'''&lt;br /&gt;
&lt;br /&gt;
== hCalendar for timelines ==&lt;br /&gt;
&lt;br /&gt;
There have been some interesting discussions about how to use [[hcalendar|hCalendar]] for marking up timelines.  Here are some pointers:&lt;br /&gt;
&lt;br /&gt;
* [http://chnm.gmu.edu/staff/scheinfeldt/foundhistory/archives/calendars_as_timelines.html Calendars as Timelines]&lt;br /&gt;
* [http://heml.org/heml-cocoon/ The Historical Event Markup and Linking (HEML) Project]&lt;br /&gt;
* [http://clioweb.org/archive/2006/05/04/css-based-timelines/ CSS-Based Timelines]&lt;br /&gt;
&lt;br /&gt;
== Open Questions ==&lt;br /&gt;
=== Undecided Encodings of Certain Property Attributes ===&lt;br /&gt;
There are several attributes that still need to be discussed about how to property encode them into HTML.&lt;br /&gt;
&lt;br /&gt;
For example the RSVP and ROLE attrbutes:&lt;br /&gt;
ATTENDEE;RSVP=TRUE;ROLE=REQ-PARTICIPANT:MAILTO:jsmith@host.com&lt;br /&gt;
or&lt;br /&gt;
ATTENDEE:CUTYPE=GROUP:MAILTO:john@host.com&lt;br /&gt;
&lt;br /&gt;
Other attributes include:&lt;br /&gt;
* Delegate-To&lt;br /&gt;
* Delegate-from&lt;br /&gt;
* Sent-By&lt;br /&gt;
* Member&lt;br /&gt;
* Partstat&lt;br /&gt;
* CN&lt;br /&gt;
* DIR&lt;br /&gt;
&lt;br /&gt;
Then all the enumerated possible values for each of these&lt;br /&gt;
&lt;br /&gt;
=== General Questions ===&lt;br /&gt;
Q: Should Transforming applications purely extract the information and ignore validity? or should there be some checking, or should this be left to the importing application? (i.e. DTSTART;VALUE=DATE: This-Is-Not-a-proper-date)&lt;br /&gt;
&lt;br /&gt;
A: The simpler the better.  Other than checking for perhaps X(HT)ML validity, it should be a simple translator, because presumably the receiving iCalendar application has to have malformed .ics handling already.  Let's avoid duplicating that.  -- [http://tantek.com/ Tantek Çelik]&lt;br /&gt;
&lt;br /&gt;
Q: What about multiple of the instances same vCal entity? (two instances of DTSTART) Is this left up to the importing application, or should the XSLT transformation fail?&lt;br /&gt;
&lt;br /&gt;
A: Same as previous.  Leave it up to the importing application to interpret it per the iCalendar spec, e.g. what does RFC2445 say about two instances of DTSTART?  -- [http://tantek.com/ Tantek Çelik]&lt;br /&gt;
&lt;br /&gt;
From RFC2445:&lt;br /&gt;
4.1.2 Multiple Values&lt;br /&gt;
Some properties defined in the iCalendar object can have multiple values. The general rule for encoding multi-valued items is to simply create a new content line for each value, including the property name. However, it should be noted that some properties support   encoding multiple values in a single property by separating the values with a COMMA character (US-ASCII decimal 44). Individual property definitions should be consulted for determining whether a specific property allows multiple values and in which of these two forms.&lt;br /&gt;
&lt;br /&gt;
Other than that, it does not mention what to do ABOUT invalid data, or which of the multiple entries takes precedence. The only mention of duplicate instances is in the RRULE and EXDATE rules where events exclusions/inclusions overlap. Then duplicate instances are ignore. If it is explicitly written for those items, but NOT for things like DTSTART, then it is difficult to assume duplicate instances are ignored for them as well.&lt;br /&gt;
&lt;br /&gt;
Each of the Components (VEVENT, ...) define which properties can exisit and in what quantity. So multiple DTSTART properties are NOT allowed.&lt;br /&gt;
-- [http://suda.co.uk Brian Suda]&lt;br /&gt;
&lt;br /&gt;
Q: Should vCal entitles be represented in XHTML in classes ONLY on block-level element? or should some like VEVENT be block-level and others be of any? does this impact the semantics at all?&lt;br /&gt;
&lt;br /&gt;
A: I don't think the (X)HTML notion of &amp;quot;block-level&amp;quot; should have any bearing whatsoever on vCal entities.  You should be able to say &amp;lt;span class=&amp;quot;vevent&amp;quot;&amp;gt; or &amp;lt;div class=&amp;quot;vevent&amp;quot;&amp;gt; and either should work.&lt;br /&gt;
&lt;br /&gt;
Q: Should the transforming application add any additional information to the iCalendar representation other than what was encoded in the HTML? (i.e. UID, the unique identifier might not be present in the HTML code, but could be generated by the transforming application and added to the iCal file. Should this be allowed? or should the transforming app ONLY be allowed to add X-PROPERTY properties?) IF it was not explicitly encoded in the HTML should it be left out? What about default values?&lt;br /&gt;
&lt;br /&gt;
Q: If we are looking at the most semantic way to encoding iCalendar data in HTML then several other attributes should be considered besides just 'class'. There are two other candidated, ID and REL. The ID tag MUST be unique within the XHTML file (this could be used for the UID property). The REL attribute can ONLY be applied to 'a' and 'link' tags, but might be helpful. Are namespac&amp;lt;ETH&amp;gt;H �n option? xml:lang, xml:base, are there any others that might be more semantically correct to encode this data?&lt;br /&gt;
&lt;br /&gt;
Q: To help distinguish xparam values from other actual CSS styles, should we assume/mandate that all values in a class attribute within an encoded iCal component class attribute (&amp;lt;x class=&amp;quot;vevent|vtodo|...&amp;quot;&amp;gt;) be considered an xparam?&lt;br /&gt;
&lt;br /&gt;
A: If you are using other CSS styles (e.g. &amp;quot;center&amp;quot;, &amp;quot;bluebox&amp;quot;, &amp;quot;greenline&amp;quot;, etc.) nested within an iCal component, those should be avoided and the styles applied to the list of iCal properties instead/also?&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
.center, .vevent { text-align: center; }&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Q: What about cases where the words &amp;quot;yesterday&amp;quot;, &amp;quot;last year&amp;quot;, or &amp;quot;last week&amp;quot; was used? How should we represent this? Is this overkill or not appropriate for hcard ? - [[User:B.K._DeLong]]&lt;br /&gt;
&lt;br /&gt;
A: I took a stab at &amp;quot;yesterday&amp;quot; and just added a dtstart of the previous day. Not sure how to represent a single year or whole week - [[User:B.K._DeLong]]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050114&amp;quot;&amp;gt;Yesterday's&amp;lt;/abbr&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Recurring Events ===&lt;br /&gt;
&lt;br /&gt;
Recurring events are tricky. First, there's the question of whether to follow ''For types with multiple components, use nested elements with class names equivalent to the names of the components'' a la&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;div class=&amp;quot;rrule&amp;quot;&amp;gt;every &amp;lt;em class=&amp;quot;interval&amp;quot;&amp;gt;1&amp;lt;/em&amp;gt;&lt;br /&gt;
&amp;lt;em class=&amp;quot;freq&amp;quot;&amp;gt;WEEKLY&amp;lt;/em&amp;gt; on &amp;lt;em class=&amp;quot;byday&amp;quot;&amp;gt;TU&amp;lt;/em&amp;gt;&lt;br /&gt;
until &amp;lt;em class=&amp;quot;until&amp;quot;&amp;gt;2004-11-01&amp;lt;/em&amp;gt;&amp;lt;/div&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
... or ...&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;lt;nowiki&amp;gt;&amp;lt;abbr class=&amp;quot;rrule&amp;quot; title=&amp;quot;FREQ=WEEKLY;COUNT=17;INTERVAL=2;BYDAY=TH&amp;quot;&amp;gt; every other&lt;br /&gt;
Thursday for 34 weeks&amp;lt;/abbr&amp;gt;&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
... as in [http://microformats.org/discuss/mail/microformats-discuss/2005-August/000516.html Tantek's 1 Aug msg].&lt;br /&gt;
&lt;br /&gt;
[http://www.w3.org/People/Connolly/ DanC] has been experimenting with representing his PDA calendar in hCalendar:&lt;br /&gt;
&lt;br /&gt;
* in [http://dev.w3.org/cvsweb/2001/palmagent/ palmagent], there's dangerSync.py which uses the XMLRPC interface and spits out RDF data. Then asHCal.xsl converts that to hCalendar&lt;br /&gt;
* then in [http://www.w3.org/2002/12/cal/ the RDF Calendar workspace], there's [http://www.w3.org/2002/12/cal/glean-hcal.xsl glean-hcal.xsl] that turns hCalendar into RDF Calendar, and finally,&lt;br /&gt;
* in [http://www.w3.org/2000/10/swap/ SWAP] there's [http://www.w3.org/2000/10/swap/pim/toIcal.py toIcal.py] that turns RDF Calendar to .ics format.&lt;br /&gt;
&lt;br /&gt;
So I can go from my sidekick to .ics with one Makefile.&lt;br /&gt;
&lt;br /&gt;
[http://dev.w3.org/cvsweb/2001/palmagent/event-test.html events-test.html] is a test file that has all the constructs from my PDA data, in hCalendar. In particular, it uses the nested element representation of recurring events. glean-hcal.xsl would be much less fun to write if it had to parse &amp;lt;nowiki&amp;gt;title=&amp;quot;FREQ=WEEKLY;COUNT=17;INTERVAL=2;BYDAY=TH&amp;quot;&amp;lt;/nowiki&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Then there's the question of &amp;quot;every tuesday afternoon at 2pm Chicago time&amp;quot;. This isn't expressible using [[datetime-design-pattern]]. There are some good reasons for that, but it leaves a rather large and uncomfortable gap in hCalendar.&lt;br /&gt;
&lt;br /&gt;
=== Encoding Questions ===&lt;br /&gt;
The way dates are encoded is not always the most user friendly. If i want to encode january 1st, 2005, that is &amp;lt;code&amp;gt;&amp;lt;span class=&amp;quot;dtstart&amp;quot;&amp;gt;20050101&amp;lt;/span&amp;gt;&amp;lt;/code&amp;gt;, which is displayed as 20050101. If we are marking-up comma seperated values, like FN, with each sub-element inside their own tag, then the date should be allowed the same.&lt;br /&gt;
&lt;br /&gt;
(However, FN is in the RFC2426 spec and vCard schema, these individual date terms are not, therefore the reasoning in the last sentence is incorrect. -[http://tantek.com/log/ Tantek])&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
20050101&lt;br /&gt;
&amp;lt;span class=&amp;quot;dtstart&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;Year&amp;quot;&amp;gt;2005&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;Month&amp;quot;&amp;gt;01&amp;lt;/span&amp;gt;&amp;lt;span class=&amp;quot;Day&amp;quot;&amp;gt;01&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
With this encoding, then YYYYMMDD schema can be rearranged for different cultures, DD-MM-YYYY for UK, MM-DD-YYYY for US, etc.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
02-01-2005&lt;br /&gt;
&amp;lt;span class=&amp;quot;dtstart&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;Month&amp;quot;&amp;gt;02&amp;lt;/span&amp;gt;-&amp;lt;span class=&amp;quot;Day&amp;quot;&amp;gt;01&amp;lt;/span&amp;gt;-&amp;lt;span class=&amp;quot;Year&amp;quot;&amp;gt;2005&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
01-02-2005&lt;br /&gt;
&amp;lt;span class=&amp;quot;dtstart&amp;quot;&amp;gt;&amp;lt;span class=&amp;quot;Day&amp;quot; title=&amp;quot;first&amp;quot;&amp;gt;01&amp;lt;/span&amp;gt;-&amp;lt;span class=&amp;quot;Month&amp;quot; title=&amp;quot;Feb&amp;quot;&amp;gt;02&amp;lt;/span&amp;gt;-&amp;lt;span class=&amp;quot;Year&amp;quot;&amp;gt;2005&amp;lt;/span&amp;gt;&amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
Both of the above encodings are equal, the '-' seperator is ignored by the transforming application. -- [http://suda.co.uk Brian Suda]&lt;br /&gt;
&lt;br /&gt;
Agreed that the way dates are encoded is not always the most user friendly, but there is an easier solution to this, once you think of what is actually going on in the difference between ISO8601 dates, and dates the way humans use them.  Humans typically use an abbrevation or shorthand for a date, like &amp;quot;tomorrow&amp;quot;, or &amp;quot;Tuesday&amp;quot;, or &amp;quot;the 4th&amp;quot;, or perhaps &amp;quot;July 4th&amp;quot;.  Thus it makes sense to permit this in hCalendar, using the &amp;lt;code&amp;gt;&amp;amp;lt;abbr&amp;amp;gt;&amp;lt;/code&amp;gt; tag which provides the ability to markup the human-familiar short form of some data or language, while preserving the long form in the 'title' attribute.&lt;br /&gt;
&lt;br /&gt;
E.g. for the above example of a start date of January 1st, 2005, you could use this markup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
&amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050101&amp;quot;&amp;gt;January 1st, 2005&amp;lt;/abbr&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Which would display as &amp;lt;code&amp;gt;January 1st, 2005&amp;lt;/code&amp;gt; but would provide the respective ISO8601 date in the title attribute. - [http://tantek.com/log Tantek]&lt;br /&gt;
&lt;br /&gt;
== TO DO ==&lt;br /&gt;
=== XMDP Profile ===&lt;br /&gt;
* hCalendar XMDP profile ([[hcalendar-profile]]) needs to be created.&lt;br /&gt;
&lt;br /&gt;
=== Applications ===&lt;br /&gt;
A simple implementation of transforming/extracting vCal data from an XHTML file is available  for testing. A bookmarklet is also available. The code will be updated as the spec is finalised.&lt;br /&gt;
http://suda.co.uk/projects/X2V/ .  You may also use http://feeds.technorati.com/events/ for parsing hCalendar events and returning an iCalendar stream.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Parsing ===&lt;br /&gt;
&lt;br /&gt;
Need to write up an [[hcalendar-parsing]] document, similar to [[hcard-parsing]].&lt;br /&gt;
&lt;br /&gt;
== Relationships with other microformats ==&lt;br /&gt;
&lt;br /&gt;
In a [http://www.technologyreview.com/articles/04/10/frauenfelder1004.asp Technology Review interview], TBL said &amp;quot;It would have the relationships between the event and the various people chairing it.&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
We should have examples of how hCalendar events can indicate such relationships, both in the format and in the presentation.&lt;br /&gt;
&lt;br /&gt;
E.g.:&lt;br /&gt;
 * Would it just link to URLs for the various people?  (e.g. to their homepages/blogs etc.)&lt;br /&gt;
 * Would it include hCards for the various people?  &lt;br /&gt;
 * Would it link to hCards for various people?&lt;br /&gt;
 * Perhaps allow all the above?&lt;br /&gt;
 &lt;br /&gt;
== Mime-Type ==&lt;br /&gt;
&lt;br /&gt;
According to RFC2445, the proposed media type value is 'text/calendar'.&lt;br /&gt;
&lt;br /&gt;
A standard vCalendar file has an extension of .vcs and MIME type of text/x-vCalendar. If you use iCalendar, the MIME type is &amp;quot;text/Calendar&amp;quot; and the extension is .ics.&lt;br /&gt;
&lt;br /&gt;
Text/X-vCalendar Content Type&lt;br /&gt;
&lt;br /&gt;
The vCalendar object can also be passed as a non-standard MIME media type. This would be useful in order to clearly identify the vCalendar object in an electronic mail message body part. A non-standard, vCalendar object should be identified as the MIME type/subtype &amp;quot;text/x-vCalendar&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
@@ - i have to do some more investigation, but (i think) vCalendar is a subset of iCalendar, so many of the same encodings will work for both, but this document is dealing with iCalendar RFC2445 representation!&lt;br /&gt;
&lt;br /&gt;
== Button ==&lt;br /&gt;
&lt;br /&gt;
We need to come up with a nice &amp;lt;code&amp;gt;[ hCal | friendly ]&amp;lt;/code&amp;gt; button to indicate that event info on a page/site is using hCalendar. - [http://tantek.com/log/ Tantek].&lt;br /&gt;
&lt;br /&gt;
Possibilities:&lt;br /&gt;
* &amp;lt;code&amp;gt;[ hCal | friendly ]&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;[ hCal | aware ]&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;[ hCal | inside ]&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;[ Valid | hCalendar ]&amp;lt;/code&amp;gt; - though that would require writing an hCalendar validator which people could link to.&lt;br /&gt;
* &amp;lt;code&amp;gt;[ &amp;lt;icon&amp;gt; | hCalendar ]&amp;lt;/code&amp;gt; where &amp;lt;icon&amp;gt; could be some generic calendar looking thing, or it could be a PHP generated image with the actual date in the icon, kind of like how the Apple iCal icon updates in the dock automatically.&lt;br /&gt;
&lt;br /&gt;
And then we have to pick colors and all that stuff - [http://tantek.com/log/ Tantek].&lt;br /&gt;
&lt;br /&gt;
Other ideas:&lt;br /&gt;
* &amp;lt;code&amp;gt;[ hCal | enabled ]&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;[ hCal | available ]&amp;lt;/code&amp;gt; - kind of an off-hand reference to being available for meetings, etc.&lt;br /&gt;
&lt;br /&gt;
- [http://meyerweb.com/ Eric]&lt;br /&gt;
&lt;br /&gt;
== Including More of iCalendar ==&lt;br /&gt;
&lt;br /&gt;
=== Free/Busy information ===&lt;br /&gt;
&lt;br /&gt;
See [http://www.ifreebusy.com/cyclical/blog/ Neil Jensen]'s [http://www.ifreebusy.com/cyclical/blog/calendar/3 analysis of how to represent the iCalendar VFREEBUSY object in hCalendar].&lt;br /&gt;
&lt;br /&gt;
In order to show free/busy information, we could either use the existing vevent class (with empty location, summary, etc. properties) or create a new vfreebusy class. We should create a new vfreebusy class because it is consistent with the XHTML design principles, particularly point #4, &amp;quot;Use class names based on names from the original schema...&amp;quot;. &lt;br /&gt;
&lt;br /&gt;
In the iCalendar standard, the vfreebusy calendar component frequently has more than one freebusy property, and also may have a number of other properties such as organizer. For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 BEGIN:VFREEBUSY &lt;br /&gt;
 ORGANIZER:jsmith@host.com &lt;br /&gt;
 DTSTART:19980313T141711Z &lt;br /&gt;
 DTEND:19980410T141711Z &lt;br /&gt;
 FREEBUSY:19980314T233000Z/19980315T003000Z &lt;br /&gt;
 FREEBUSY:19980316T153000Z/19980316T163000Z &lt;br /&gt;
 FREEBUSY:19980318T030000Z/19980318T040000Z &lt;br /&gt;
 URL:http://www.host.com/calendar/busytime/jsmith.ifb &lt;br /&gt;
 END:VFREEBUSY&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
So, our hCalendar representation should include separate elements for the vfreebusy calendar component (defined once) and the freebusy property (possibly defined many times):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;vfreebusy&amp;quot;&amp;gt; &lt;br /&gt;
 &amp;lt;span class=&amp;quot;freebusy&amp;quot;&amp;gt; &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050721T1000-0800&amp;quot;&amp;gt; &lt;br /&gt;
 July 21, 2005 - 10:00 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; - &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;20050721T1100-0800&amp;quot;&amp;gt; &lt;br /&gt;
 11:00 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt; &lt;br /&gt;
 &amp;lt;span class=&amp;quot;freebusy&amp;quot;&amp;gt; &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050722T1000-0800&amp;quot;&amp;gt; &lt;br /&gt;
 July 22, 2005 - 10:00 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; - &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;20050722T1100-0800&amp;quot;&amp;gt; &lt;br /&gt;
 11:00 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
According to RFC2445 section 4.8.4.3, &amp;quot;When publishing a &amp;quot;VFREEBUSY&amp;quot; calendar component, the &amp;lt;nowiki&amp;gt;[ORGANIZER]&amp;lt;/nowiki&amp;gt; property is used to specify the calendar that the published busy time came from.&amp;quot; The organizer property type is CAL-ADDRESS, and can include &amp;quot;non-standard, language, common name and directory entry reference&amp;quot; property parameters. CAL-ADDRESS is &amp;quot;...a URI as defined by [RFC 1738] or any other IANA registered form...&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
From what I've seen, Microsoft Outlook typically populates this property with the email address of the calendar owner, which initially made me think of using hCard to specify the organizer. However, given that the property refers to the calendar and not necessarily the person who owns or has published it, I think we should use a new organizer element, as shown below: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 BEGIN:VFREEBUSY &lt;br /&gt;
 ORGANIZER:jsmith@host.com &lt;br /&gt;
 FREEBUSY:20050314T133000Z/20050314T163000Z &lt;br /&gt;
 END:VFREEBUSY&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
becomes&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;vfreebusy&amp;quot;&amp;gt; &lt;br /&gt;
 organizer: &amp;lt;span class=&amp;quot;organizer&amp;quot;&amp;gt;jsmith@host.com&amp;lt;/span&amp;gt; &lt;br /&gt;
 &amp;lt;span class=&amp;quot;freebusy&amp;quot;&amp;gt; &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050314T133000Z&amp;quot;&amp;gt; &lt;br /&gt;
 March 14, 2005 - 13:30 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; - &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;20050314T163000Z&amp;quot;&amp;gt; &lt;br /&gt;
 16:30 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt;&amp;lt;br/&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt; &lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hmmm, this looks a little funny when the organizer is so obviously an email address, but at least it is semantically correct. The other problem that I can now see occurring is when the organizer property has parameters, for example (from the iCalendar spec):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 ORGANIZER;CN=JohnSmith;DIR=&amp;quot;ldap://host.com:6666/o=3DDC%20Associ &lt;br /&gt;
  ates,c=3DUS??(cn=3DJohn%20Smith)&amp;quot;:MAILTO:jsmith@host1.com&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Perhaps it's best to use the same approach described in &amp;quot;Human vs. ISO8601 dates problem solved&amp;quot;; use the abbr element like so:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 &amp;lt;span class=&amp;quot;vfreebusy&amp;quot;&amp;gt; &lt;br /&gt;
 &amp;lt;span class=&amp;quot;freebusy&amp;quot;&amp;gt; &lt;br /&gt;
 organizer: &amp;lt;abbr class=&amp;quot;organizer&amp;quot; title=&amp;quot;CN=JohnSmith;DIR=ldap://host.com:6666/o=3DDC%20Associ &lt;br /&gt;
 ates,c=3DUS??(cn=3DJohn%20Smith):MAILTO:jsmith@host1.com&amp;quot;&amp;gt;jsmith@host1.com&amp;lt;/abbr&amp;gt; &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtstart&amp;quot; title=&amp;quot;20050314T133000Z&amp;quot;&amp;gt; &lt;br /&gt;
 March 14, 2005 - 13:30 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; - &lt;br /&gt;
 &amp;lt;abbr class=&amp;quot;dtend&amp;quot; title=&amp;quot;20050314T163000Z&amp;quot;&amp;gt; &lt;br /&gt;
 16:30 &lt;br /&gt;
 &amp;lt;/abbr&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt; &lt;br /&gt;
 &amp;lt;/span&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A different reading, particularly of section 4.6.4 &amp;quot;Free/Busy Component&amp;quot;, is that the organizer property refers to a calendar user, not the calendar itself.  In that section we find this: &amp;quot;When used to publish busy time, the &amp;quot;ORGANIZER&amp;quot; property specifies the calendar user associated with the published busy time&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Under this reading, an hCard might be appropriate.  But if for some reason a simpler representation is wanted, using an &amp;amp;lt;a&amp;amp;gt; tag instead of &amp;amp;lt;span&amp;amp;gt; or &amp;amp;lt;abbr&amp;amp;gt; is closer semantically, more consistent with expected web presentation of uri-type data, and easily handles the ORGANIZER examples in the RFC.  For example:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
     ORGANIZER;CN=&amp;quot;John Smith&amp;quot;:MAILTO:jsmith@host.com&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
becomes&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
     &amp;lt;a class=&amp;quot;organizer&amp;quot; href=&amp;quot;mailto:jsmith@host.com&amp;quot;&amp;gt;John Smith&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
and&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
 ORGANIZER;CN=JohnSmith;DIR=&amp;quot;ldap://host.com:6666/o=3DDC%20Associ &lt;br /&gt;
  ates,c=3DUS??(cn=3DJohn%20Smith)&amp;quot;:MAILTO:jsmith@host1.com&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
becomes&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;lt;nowiki&amp;gt;&lt;br /&gt;
     &amp;lt;a class=&amp;quot;organizer&amp;quot; href=&amp;quot;mailto:jsmith@host.com&amp;quot; &lt;br /&gt;
title=&amp;quot;DIR=ldap://host.com:6666/o=3DDC%20Associates,c=3DUS??(cn=3DJohn%20Smith)&amp;quot;&amp;gt;John Smith&amp;lt;/a&amp;gt;&lt;br /&gt;
&amp;lt;/nowiki&amp;gt;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== To-Do information ===&lt;br /&gt;
&lt;br /&gt;
The [http://www.policyawareweb.org/2005/ftf2/paw-mtg Policy Aware Web (PAW) Project Meeting - 23 Aug 2005] uses class=&amp;quot;vtodo&amp;quot; to capture action items.  Clearly recording action items from a meeting and publishing them as minutes is a good practical example use of the VTODO object on the web. &lt;br /&gt;
&lt;br /&gt;
What's the scenario for usage though?&lt;br /&gt;
&lt;br /&gt;
What kind of indexer/aggregator application would find these VTODO items and what would it do with them?  &lt;br /&gt;
&lt;br /&gt;
Perhaps with some way of figuring out who the to-do item is assigned to (&amp;quot;ATTENDEE&amp;quot;), who assigned it (&amp;quot;DELEGATED-FROM&amp;quot;), and a whitelisting of who, perhaps the &amp;quot;ORGANIZER&amp;quot; property,  (and their domains/URLs) that a user would accept assignments from, a user could aggregate to-do items assigned from other folks.  Then question remains how to update the status (&amp;quot;STATUS&amp;quot;) (RFC 2445 4.8.1.11 Status) on that to-do item when it is (a) completed (&amp;quot;COMPLETED&amp;quot;), (b) abandoned/cut/rejected (&amp;quot;CANCELLED&amp;quot;), (c) some progress is made (&amp;quot;IN-PROCESS&amp;quot;) etc.  There certainly seems to be sufficient expressiveness in VTODO and its properties to do a decentralized to-do list / task distribution system.  Could be very interesting for helping open source projects and other distributed teams do project management using the Web.&lt;br /&gt;
&lt;br /&gt;
== References ==&lt;br /&gt;
=== Normative References ===&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2445.txt RFC 2445]&lt;br /&gt;
* [http://gmpg.org/xmdp/ XMDP]&lt;br /&gt;
&lt;br /&gt;
=== Informative References ===&lt;br /&gt;
* [http://wiki.oreillynet.com/foocamp04/index.cgi?HTMLForCalendars HTMLForCalendars (FOO camp)] - presented just a few days before this, hopefully these efforts can be combine&lt;br /&gt;
&lt;br /&gt;
* [http://www.imc.org/pdi/ Personal Data Interchange (PDI) at the Internet Mail Consortium]&lt;br /&gt;
* [http://tantek.com/log/2004/07.html#d27t1049 Markup language design notes]&lt;br /&gt;
* [http://tantek.com/log/2002/12.html#L20021216t2238 A Touch of Class]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2446.txt iTIP RFC2446]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc2447.txt iMIP RFC2447]&lt;br /&gt;
* [http://www.ietf.org/rfc/rfc3283.txt Guide to Internet Calendaring RFC3283]&lt;br /&gt;
&lt;br /&gt;
== Other Implementations/Ideas ==&lt;br /&gt;
* [http://www.nehmer.net/~bergie/openpsa-calendar-horizontal.jpg OpenPSA calendar screenshot]&lt;br /&gt;
* [http://www.w3.org/2002/12/cal/ RDF Calendar Workspace] - some older work done with RDF, not really applicable to the simple XHTML case, but perhaps worthy of analysis for when and why they may have diverged from established iCalendar schemas.&lt;br /&gt;
* [http://planb.nicecupoftea.org/archives/000072.html 2003 RDF icalendar work, xCal references]&lt;br /&gt;
&lt;br /&gt;
== Blogs About Calendaring ==&lt;br /&gt;
* http://staff.washington.edu/oren/weblog2/&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
	<entry>
		<id>https://microformats.org/wiki/index.php?title=hcalendar-faq&amp;diff=8116</id>
		<title>hcalendar-faq</title>
		<link rel="alternate" type="text/html" href="https://microformats.org/wiki/index.php?title=hcalendar-faq&amp;diff=8116"/>
		<updated>2006-06-02T16:28:12Z</updated>

		<summary type="html">&lt;p&gt;Leikam: /* Q&amp;amp;A */ escaped tag in  #7, edited link to IETF draft - old one 404s&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= hCalendar FAQ =&lt;br /&gt;
&lt;br /&gt;
This page is for documenting Q&amp;amp;A about [[hcalendar|hCalendar]].  If you have a new question to ask, Please consider first asking your question on the [http://microformats.org/mailman/listinfo/microformats-discuss/ microformats-discuss] list.&lt;br /&gt;
&lt;br /&gt;
== Q&amp;amp;A ==&lt;br /&gt;
&lt;br /&gt;
# ''How do I use a class inside &amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt; when I don't want the element I use it on to be a property of the calendar?''&lt;br /&gt;
#*Use a class name that isn't a defined iCalendar property name.&lt;br /&gt;
# ''What happens if the class is used both inside and outside &amp;lt;span class=&amp;quot;vcalendar&amp;quot;&amp;gt;?''&lt;br /&gt;
#* That works fine.&lt;br /&gt;
# ''What do I do if I want to add styling to a group of calendar events, especially if the calendar contains dynamic content? ''&lt;br /&gt;
#* You can write style rules that incorporate both the context of said group (say it is in an ordered list with class name &amp;quot;group&amp;quot; for example) and the events, e.g.:&amp;lt;code&amp;gt;ol.group .vevent { /* insert common styling here */ } &amp;lt;/code&amp;gt;&lt;br /&gt;
# ''What do you do if you don't want the calendar or card to be displayed?''&lt;br /&gt;
#* If you don't want the calendar or card to be displayed, why are you publishing it on the Web?&lt;br /&gt;
# ''What if you don't want specific properties to show up?''&lt;br /&gt;
#* You can trivially use CSS to hide (or otherwise alter the display) of certain properties.  E.g. if you want to hide the &amp;quot;location&amp;quot; from all your VEVENTs you would write a rule like this: &amp;lt;code&amp;gt; .vevent .location { display:none } &amp;lt;/code&amp;gt;. This won't, however, keep the properties from being read in the HTML source.&lt;br /&gt;
# ''If we use &amp;amp;lt;abbr&amp;amp;gt; title for the ISODate, how do we specify a different tooltip?''&lt;br /&gt;
#* For reasons of metadata transparency and visibility, it is recommended that you DO NOT specify a different tooltip.  However, if in your particular content or application you must, you can do so with a nested span e.g. &amp;lt;code&amp;gt; &amp;lt;abbr title=&amp;quot;20050221&amp;quot;&amp;gt;&amp;lt;span title=&amp;quot;tooltip text&amp;quot;&amp;gt;Feb. 21st&amp;lt;/span&amp;gt;&amp;lt;/abbr&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
# ''Would the use of &amp;amp;lt;acronym&amp;amp;gt; for DTSTART be just as good as &amp;amp;lt;abbr&amp;amp;gt;?''&lt;br /&gt;
#* It could be, but there is no need.  The &amp;amp;lt;abbr&amp;amp;gt;  element is also preferred as it is better defined.  The &amp;amp;lt;acronym&amp;amp;gt; element, and in particular, the term &amp;quot;acronym&amp;quot; means different things to different people, and thus we are not using it in [[hcalendar|hCalendar]].&lt;br /&gt;
# ''What happens if a browser doesn't support &amp;amp;lt;abbr&amp;amp;gt;?''&lt;br /&gt;
#* Then the human readable contents inside the element are displayed, which is the desirable behavior.&lt;br /&gt;
# ''How is [[hcalendar|hCalendar]] different from xCalendar, i.e. iCalendar XML guidelines submitted as an [http://www.ietf.org/ID.html IETF Internet-Draft]?''&lt;br /&gt;
#* hCalendar and xCalendar are actually very similar in that they are both based on iCalendar standard, RFC2445. However, xCalendar is a way of representing iCalendar files using non-standard XML element names and attributes.  This is inadequate and unwieldly for serving on web pages. xCalendar is still a separate, encapsulated document in the context of the web, that requires yet another namespace. Nobody would ever look at an xCalendar XML file in the context of their ordinary browsing, unless it's XSLTed into something else, e.g. hCalendar. On the other hand, [[hcalendar|hCalendar]] is easily embeddable into normal XHTML web pages, easily stylable with CSS, cleanly separates human presentable date information vs. machine parsable ISO-8601 dates, etc. With hCalendar, calendar and events content appears both to the human user *and* to hCalendar-aware machine implementations, parsers, indexers, etc., on *today's* web.&lt;br /&gt;
# ''Can you provide more precise location data for an hCalendar event such as latitude and longitude?''&lt;br /&gt;
#* Yes, it is possible, by overlaying an [[hcard|hCard]] with the location markup (see [[hcalendar-brainstorming#hCard_locations|the brainstorming on hCard locations]]), e.g. using your lat long example (taking the values as given, someone feel free to fix these to be the real values). The code example(s) are presumed to be inside an element with a class name of &amp;quot;vevent&amp;quot;.  See the [[hcalendar-location-hcard-example]] page for details.  For more discussions of location data, geographic data, and research into current and potential future formats, see the [[location-formats|location formats]] page.&lt;br /&gt;
# ''When transforming an hCalendar to a .ics file, do I have to convert the time to UTC?''&lt;br /&gt;
#* Yes. The iCalendar format does not permit the time to be published with an offset. hCalendars can be published with offsets, because this promotes accuracy, as it can more easily be verified (timezone math is hard), but tools which transform hCalendar to iCalendar must transformat times to UTC.&lt;br /&gt;
# ''How are recurring events represented?''&lt;br /&gt;
#* If you take a look at [http://microformats.org/wiki/hcalendar-examples#Example_3 Example 3], there is a proposed means using an &amp;lt;em&amp;gt;RRULE&amp;lt;/em&amp;gt; property along with a &amp;lt;em&amp;gt;freq&amp;lt;/em&amp;gt; sub-property. It's a start - more brainstorming at [http://microformats.org/wiki/hcalendar-brainstorming#Recurring_Events hcalendar-brainstorming].&lt;br /&gt;
# ''How does one markup just the year as opposed to an entire date? e.g. to represent age, or discussing &amp;quot;the past year&amp;quot; ?&lt;br /&gt;
#* Depends on the context.  If by &amp;quot;the past year&amp;quot;, you mean the past *calendar* year, then mark it up as January 1st through December 31st.  If you mean the past 365 days, then mark it up according to whatever date it is relative to.  Etc.&lt;br /&gt;
# ''Are there any programs of services that convert from iCalendar to hCalender?''&lt;br /&gt;
#*At the moment there are no plans to create a program. There are several issues when converting, mainly HOW the information is represented in HTML. Since you can use just about any element which could the converter choose. This is not to say a converter shouldn't be built, but it is out of the scope of microformats.&lt;br /&gt;
# ''Is the list of possible types for an ADR and TEL case sensitive?''&lt;br /&gt;
#* No, enumerated values are case-INsensitive, therefore Home, home, HOME, etc are all equivalent&lt;br /&gt;
# ''Why won't Outlook import my ics file''&lt;br /&gt;
#* Outlook is picky about some properties. With outlook, UID, DTSTAMP and METHOD are mandatory. Be sure you have marked-up your hCalendar with a class=&amp;quot;uid&amp;quot; and a class=&amp;quot;dtstamp&amp;quot; in a class=&amp;quot;vevent&amp;quot;&lt;br /&gt;
# ''Can I use YYYY-MM-DDThh:mm:ss dates or do I have to use the YYYYMMDDThhmmss format?''&lt;br /&gt;
#* hCalendar specifies [http://en.wikipedia.org/wiki/ISO8601 ISO8601 datetime format], and both examples are valid, you can use with or without hyphens/colons/spaces.&lt;br /&gt;
# ''Do I have to specify detailed time and timezone information?''&lt;br /&gt;
#* Include as much information as necessary, minimally include YYYY-MM-DD&lt;br /&gt;
# ''Why do I have to use a 'T' between the date and time in ISO Dates?''&lt;br /&gt;
#* You can NOT use a white-space character, the 'T' is mandatory to separate the date from the time.&lt;br /&gt;
# ''Why are the root class names &amp;quot;vcalendar&amp;quot; and &amp;quot;vevent&amp;quot; and not &amp;quot;hcalendar&amp;quot;?''&lt;br /&gt;
#* [[hcalendar|hCalendar]] is based on the iCalendar spec (RFC 2445), which itself is based on vCalendar.  The names of objects have remained consistent throughout and are based on the original names from vCalendar.&lt;br /&gt;
# ''How do I mark-up a date-time with the proper timezone?''&lt;br /&gt;
#* There are two ways to do this. First, you can add your timezone offset to the end of your date-time like this: 2006-01-01T12:00:00-0600.  [[http://aa.usno.navy.mil/faq/docs/world_tzones.html See a world timezone offset map here]]. Also, be sure to adjust offset to account for [[http://en.wikipedia.org/wiki/Daylight_saving_time Daylight Saving Time]] for events within applicable dates and locations. The other option is to convert your date-time with a timezone into a UTC date-time. iCalendar requires that times be in UTC, but hCalendar also allows for encoding your date-times as proper ISO date-times with timezone offsets.&lt;br /&gt;
# ''Why does my event end a day earlier than I want?''&lt;br /&gt;
#* DTEND is not inclusive. If you want an event to end on January 2nd, then you will need to set DTEND to 2006-01-03, one day later. This is because the event will END the first second of the date provided, so if you specify 2006-01-02, then that says that the end of the event is at midnight between the 1st and 2nd.&lt;br /&gt;
# ''How do I represent a repeating event in hCalendar?''&lt;br /&gt;
#* See [[hcalendar-brainstorming#Recurring_Events|hCalendar brainstorming: Recurring Events]]&lt;br /&gt;
# ''What is the best way to represent a full address in the Location?''&lt;br /&gt;
#* See [[hcalendar-brainstorming#hCard_locations|hCalendar brainstorming: hCard locations]]&lt;/div&gt;</summary>
		<author><name>Leikam</name></author>
	</entry>
</feed>