|
|
(22 intermediate revisions by 6 users not shown) |
Line 1: |
Line 1: |
| <h1>hCalendar issues</h1>
| | {{DISPLAYTITLE:hCalendar issues}} |
| {{TOC-right}}
| | __TOC__ |
| 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. | | 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. |
|
| |
|
| '''IMPORTANT''': Please read the [[hcalendar-faq|hCalendar FAQ]] ''before'' giving any feedback or raising any issues as your feedback/issues may already be resolved/answered. | | '''IMPORTANT''': Please read the [[hcalendar-faq|hCalendar FAQ]] and the [[hcalendar-issues-resolved|hCalendar resolved issues]] ''before'' giving any feedback or raising any issues as your feedback/issues may already be resolved/answered. |
|
| |
|
| 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/ Tantek] | | 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. — [[User:Tantek|Tantek]] |
| | |
| | For matters relating to the iCalendar specification itself, see [[icalendar-errata]] and [[icalendar-suggestions]]. |
|
| |
|
| See related [[hcard-issues]]. | | See related [[hcard-issues]]. |
|
| |
|
| == Closed Issues == | | == closed issues == |
| Resolved issues that have no further actions to take. These will likely be moved to a separate page like [[hcalendar-issues-closed]].
| | See: [[hcalendar-issues-closed]]. |
| === 2006 closed ===
| |
| * 2006-01-04 raised by [[User:CGranade|CGranade]]
| |
| *# ''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 <code>class</code> attribute is ''not'' portable across schemas.''
| |
| *#* 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.
| |
| === 2005 closed ===
| |
| * 2005-02-18 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003116.html on the whatwg list]:
| |
| *# ''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.''
| |
| *#* 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.
| |
| *# ''As a result of the above, user agents would not be able to reliably allow users to access extension properties such as "x-mozilla-alarm-default-length" (which is an actual extension used in Sunbird).''
| |
| *#* REJECTED (out of scope). Extension properties are outside the current scope of hCalendar.
| |
| *# ''The use of <code><nowiki><abbr></nowiki></code> for dates is incorrect. "August 5th, 2004" is not the abbreviation of 2004-09-05. In fact, the opposite is closer to the truth.''
| |
| *#* REJECTED (false statement). This is simply a false statement. See this article for an explanation of this use of <code><nowiki><abbr></nowiki></code> [http://tantek.com/log/2005/01.html#d26t0100 Human vs. ISO8601 dates problem solved]
| |
| *# ''You have to create a complex set of rules for all possible uses of legacy markup within <span class="vcalendar"> which can easily be implemented incorrectly.''
| |
| *#* 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.
| |
| *# ''There are styling and tooltip issues that are unresolved.''
| |
| *#* 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.
| |
| *# ''hCalendar/hCard is more complicated for webmasters to read and understand and more complicated for developers to implement.''
| |
| *#* REJECTED (empty statements, invalid comparator). Please state specific examples which show the perceived complexity. The comparison "more complicated" requires two items, no second item was provided.
| |
| | |
| | |
| == Resolved Issues ==
| |
| Issues that are resolved but may have outstanding [[to-do]] items.
| |
| === 2007 resolved ===
| |
| | |
| <div class="vevent">
| |
| * <span class="summary vcard"><span class="dtstart">2007-01-20</span> raised by <span class="fn">[[User:AndyMabbett|Andy Mabbett]]</span></span>
| |
| *# <div class="description"><span id="dtend-date-plus1">Where <code>DTEND</code> is a date</span>, and not a date-time, it is required to be the day after the end of the event, thus: <code><nowiki><abbr class="dtend" title="2007-04-30">29 April 2007</abbr></nowiki></code>. However, "29 April 2007" 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 <code>abbr</code> element.
| |
| *#*The ISO date 2007-04-30 is directly equivalent to 2007-04-30 00:00:00, which is why it's used as the end time of an event occuring on 2007-04-29. In this fuller context then you can view it as an abbreviation of 'the end of 29 April 2007'. Authors uncomfortable with this could use <nowiki><abbr class="dtend" title="2007-04-29 23:59:59">29 April 2007</abbr></nowiki>, or be more specific with their times. - [[User:CiaranMc|Ciaran McNulty]] 09:21, 12 May 2007 [GMT]
| |
| *#**The ISO standard has 2007-04-29 24:00:00 expressly to mark the end of the day 2007-04-29 rather than the start of the day 2007-04-30. This seems far preferable to 23:59:59. [[User:Matthew|Matthew]] 15:22, 17 Jul 2007 (PDT)
| |
| *#* This certainly risks confusion. The abbr title includes different information than the content; different when read by a 'normal' user who does not know about the exclusive-end-date.
| |
| *#** The trouble is going to be with dates (rather than date-times). User expectation is different if you are talking about "3 o'clock", which really is a point-in-time, and "29th April", something lasting 24 hours. No problem saying an end time is 'exclusive', but an end-date can be either and is typically inclusive.
| |
| *#** Using a more precise <code>dtend</code> is just a workround, you might not really want to say to the second when an event ends (as in 2007-04-29 23:59:59). You might easily want to say it runs from the Wednesday to Friday without committing to precise times - or that the event is sometime on that Friday but you don't know when.
| |
| *#* Possible options could be:
| |
| *#** Include a note in the standard that contradictory markup such as <code><nowiki><abbr class="dtend" title="2007-04-30">29 April 2007</abbr></nowiki></code> is bad practice and should be avoided
| |
| *#** Make a break with the ical usage that end dates are exclusive.
| |
| *#** Make the meaning clear: <div><code><nowiki><abbr class="dtend" title="value=date:value=inclusive:2007-04-29">29 April 2007</abbr></nowiki></code></div> <div><code><nowiki><abbr class="dtend" title="value=exclusive:2007-04-30">29 April 2007</abbr></nowiki></code></div> <div>or maybe</div> <div><code><nowiki><abbr class="dtend;value=date:value=inclusive" title="2007-04-29">29 April 2007</abbr></nowiki></code> [[User:Webf2|Webf2]] 00:25, 13 May 2007 (PDT)</div>
| |
| *#* ACCEPTED BRAINSTORM SPECUPDATE. In practice (e.g. http://barcamp.org ) it appears all too often (thus easy) to make the mistake of assuming a dtend value is inclusive, and thus the last day of many events is truncated by a day. I am proposing a solution on [[hcalendar-brainstorming]] in an attempt to help this move forward. In short, introduce the syntactic sugar "[[hcalendar-brainstorming#dtlast|dtlast]]", which treats date values as *inclusive* for the last day of an event. Semantically "dtlast" is merely an override for any "dtend" property setting on that hCalendar event, with the aforementioned slight difference in handling. More details on [[hcalendar-brainstorming#dtlast|hCalendar brainstorming: dtlast]]. [[User:Tantek|Tantek]] 07:48, 1 Sep 2008 (PDT)
| |
| </div>
| |
| </div>
| |
| | |
| === 2006 resolved ===
| |
| * 2006-02-17 raised by [[User:Mark Mansour|Mark Mansour]] - notes are summarized [[hcalendar-irc-meetup-20060225|here]]
| |
| *# Should vcalendar be a class? Section 4.4 of RFC2445 says: "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." 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).
| |
| *#* ACCEPTED SPECUPDATE/FAQ. Is this a case of fixing something that isn't broken? Note that "iCalendar object" != "vcalendar". 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.
| |
| *# How are axis and headers going to be handled?
| |
| *#* 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.
| |
| *# 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?
| |
| *#* REJECTED. Please RTFM. Searching the [[hcalendar|hCalendar]] spec for *either* "axis" or "headers" 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.
| |
| *# 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).
| |
| *#* 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]]).
| |
| *# 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?
| |
| *#* ACCEPT PARTIAL. We probably need an hCalendar ''validator'' before we can declare any set of tests to be official.
| |
| *# 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.
| |
| <pre>
| |
| <a name="myfrag">heading</a>
| |
| <div class="vevent">
| |
| <div class="description">A nice event</div>
| |
| <abbr class="dtstart" title="2005-10-05">October 5</abbr>
| |
| </div>
| |
| </pre>
| |
| *#* 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.
| |
| * 2006-02-01 raised by [[RyanKing]]
| |
| *# ''Issue 1: Given that now, or soon will have hAtom, should we disallow vJournal, so that we don't have 2 blog-post formats?''
| |
| *#* ACCEPTED. Yes, we should expliclty DROP "vjournal" from [[hcalendar|hCalendar]].
| |
| * 2006-01-04 raised by [[User:CGranade|CGranade]]
| |
| *# ''...''
| |
| *# ''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.''
| |
| *#* ACCEPTED. This is definitely something to be added to *-examples pages for each microformat.
| |
| | |
| === 2005 resolved ===
| |
| * 2005-10-14 raised by [[User:MarkoMrdjenovic|MarkoMrdjenovic]]
| |
| *# ''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''.
| |
| *#* 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 "@" signs since the issue points out that such UIDs crash some calendaring software.
| |
| *# ''DTSTAMP also has to be present in iCal event for Microsoft Outlook. I think DTSTAMP should be user visible information so implementation with class="dtstamp" 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]]
| |
| *#* ACCEPTED. We should come up with a way to encourage/synthesize/imply DTSTAMP property values.
| |
| *# ''Here is an example from Midgard CMS (which will be easy to change according to bergie on irc):''
| |
| *#* For more discussion of this, please see [http://microformats.org/wiki/hcalendar-brainstorming#UID_handling hCalendar brainstorming: UID handling]
| |
| <pre><nowiki>
| |
| <li class="vevent" id="2678c3f94af4a49f9ccbb69b92a82aba-midgardGuid">
| |
| <abbr class="dtstart" title="2005-10-20T14:34:45Z">Torstai 20. Lokakuu 17:34</abbr> -
| |
| <abbr class="dtend" title="2005-10-20T15:33:56Z">18:33</abbr>
| |
| <a class="url" href="/bergie/another-calendar/82457028ba83407451edd8aaeaa40622.html">
| |
| <span class="summary">From the other cal</span>
| |
| </a>
| |
| <abbr class="dtstamp" title="2005-10-14T12:16:45Z">Torstai 14. Lokakuu 12:16</abbr>
| |
| </li></nowiki></pre>
| |
| * 2005-09-29 raised by RyanKing
| |
| *# ''How does one use ATTENDEE?''
| |
| *#* ACCEPTED. Another [[to-do]] for Tantek - document how to use ATTENDEE with [[hcard|hCard]].
| |
| | |
| * 2005-06-21 raised by Hixie
| |
| *# ''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?
| |
| *#* ACCEPTED. Another [[to-do]] for Tantek, write-up [[hcalendar-parsing]] that documents precisely how user agents are to parse [[hcalendar|hCalendar]] markup.
| |
| * 2005-02-22 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003124.html on the whatwg list]:
| |
| *# ''There is no copyright statement and no patent statement.''
| |
| *#* ACCEPTED. I have updated [[hcalendar]] (and [[hcard]], and all other MicroFormats) with a standard copyright statement and patent statement.
| |
|
| |
|
| * 2005-02-18 raised by Matt Raymond [http://listserver.dreamhost.com/pipermail/whatwg-whatwg.org/2005-February/003116.html on the whatwg list]:
| | == resolved issues == |
| *# ''...''
| | Issues that are <span id="Resolved_Issues">resolved</span> but may have outstanding [[to-do]] items. See: [[hcalendar-issues-resolved]]. |
| *# ''...''
| |
| *# ''...''
| |
| *# ''...''
| |
| *# ''...''
| |
| *# ''...''
| |
| *# ''I dislike the entire system of using class names as markup. Class names should be reserved for user-defined semantics.''
| |
| *#* ACCEPT-PARTIAL. When specific elements are available, they should be used instead of class names, but even then class names work well to "subclass" 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.
| |
| *#* ''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 "User agents may... perform some activity based on known conventions for that profile"? Should this be a part of [[microformats]] specifications in general? (If not, why not?)''
| |
| *#** 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.
| |
| *#*** ''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] "This is precisely the reason that GMPG was founded and created, to provide permanent URLs/homes for microformat profiles." How does one cause GMPG to issue a profile URL?''
| |
| *#**** 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.
| |
|
| |
|
| == Issues == | | == Issues == |
| Please add new issues to the '''bottom''' of the list. Please follow-up to resolved/rejected issues with new information rather than resubmitting such issues. Duplicate issue additions will be reverted. | | Please add new issues to the '''bottom''' of the list. Please follow-up to resolved/rejected issues with new information rather than resubmitting such issues. Duplicate issue additions will be reverted. |
|
| |
|
| === 2005 === | | === issues 20010 === |
| * 2005-07-11 raised by Kragen
| | <div class="hentry"> |
| *# ''The specification of class="url" as <a href="..."> should be a "should", not a "must". Other ways of referencing the event URL, such as <iframe src="..."> and <embed src="...">, shoul be mentioned. At present X2V doesn't appear to handle them. This came up in a discussion about [[xfolk|xFolk]].''
| | {{OpenIssue}} |
| *#* REJECTED. Lack of use case. We should not add additional "ways of referencing the event URL" unless you can show a concrete real world example on the Web which requires it. | | <span class="entry-summary author vcard"> |
| | <span class="published">2010-MM-DD</span> |
| | raised by <span class="fn">[[User:Toby|Toby]]</span> |
| | </span> |
| | <div class="entry-content discussion issues"> |
| | * <strong class="entry-title">non-ending events</strong>. How to deal with events that do not end, or even as such occur, just "applied" to a person. Such as in hResume, an award, under experience, would use hCalendar. it does not have an end nor does it continue, I am awarded a certain status and now have that status or recognition of ability. It is awarded on a certain date but it does not end, I do not lose ability, but nor does the awarding continue, I am not re-awarded every single day, so the solution of "to present" for an ongoing event etc, is not really suitable. |
|
| |
|
| * 2005-07-21 raised by Neil Jensen
| | Some new way to do this could be added to hCal that is not linked to vCal so that online extractors of hCal (and not vCal) would not automatically represent events with no end date as ending "present" (as with madgex hres to word) unless otherwise specified that this is intended. |
| *# ''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].''
| |
| | |
| * 2005-07-27 raised by Paolo Massa
| |
| *# ''I tried to add a hcalendar event in my blog but it rendered orribly. The problem was I already have a 'class="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="summary" 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 "shield" attribute "inside" microformats from being interpreted as "normal" attributes. For example for the hCalendar microformats the relative CSS could be something like:
| |
| | |
| .vevent .summary {
| |
| | |
| //remove all the previously set properties, for example:
| |
| | |
| text-decoration: none;
| |
| | |
| font-size: 100%;
| |
| | |
| ...
| |
| | |
| }
| |
| | |
| Since the hCalendar microformat is the following,
| |
| | |
| <span class="vevent">
| |
| | |
| <a class="url" href="http://www.web2con.com/">
| |
| | |
| <span class="summary">Web 2.0 Conference</span>:
| |
| | |
| ...
| |
| | |
| I hope to have been clear but I'm not so sure ;-)''
| |
| | |
| | |
| | |
| === 2006 ===
| |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2006-03-07</span> raised by <span class="fn">[[User:Ragdoll|Justin McDowell]]</span></span>
| |
| <div class="description">
| |
| *# 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 acquainted with the possibilities of vCalendar.
| |
| *#* See [[hcalendar-cheatsheet]] . [[User:Leikam|Michael Leikam]] 2007-01-29
| |
| </div>
| |
| </div>
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2006-04-10</span> raised by <span class="fn">[[User:ScottReynen|Scott Reynen]]</span></span>
| |
| <div class="description">
| |
| *# When someone looks at the [[hcalendar|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.
| |
| </div>
| |
| </div>
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2006-04-13</span> raised by <span class="fn">Tantek</span></span>
| |
| <div class="description">
| |
| *# Need to add a section on "Property Exceptions" 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.
| |
| </div>
| |
| </div>
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2006-08-14</span> raised by <span class="fn">[[User:Elias|Elias Sinderson]]</span></span>
| |
| <div class="description">
| |
| *# 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.
| |
| </div>
| |
| </div>
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2006-09-22</span> raised by <span class="fn">[[User:AndyMabbett|Andy Mabbett]]</span></span>
| |
| <div class="description">
| |
| *# 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 <pre><nowiki><abbr class="dtstart" title="[Gregorian date]">[Julian date]</abbr> </nowiki></pre> be used? If so, that should be indicated, via an example.
| |
| </div>
| |
| </div>
| |
| | |
| === 2007 ===
| |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2007-01-07</span> raised by <span class="fn">[[User:Webf|Webf]]</span></span>
| |
| <div class="description">
| |
| *# ''Looking for a mechanism for specifying a dtstart without using <code><nowiki><abbr></nowiki></code>. 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''
| |
| *#* <code>abbr</code> 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:
| |
| | |
| <code>
| |
| <pre>
| |
| <nowiki>
| |
| <dt id="D20070120">
| |
| <abbr class="dtstart" title="20070120">
| |
| Saturday, 20 January 2007
| |
| </abbr>
| |
| </dt>
| |
| <dd>
| |
| <span class="vevent">
| |
| <object class="include" data="#D20070120"></object>
| |
| [Details of first event]
| |
| </span>
| |
| | |
| <span class="vevent">
| |
| <object class="include" data="#D20070120"></object>
| |
| [Details of second event]
| |
| </span>
| |
| </dd>
| |
| </nowiki>
| |
| </pre>
| |
| </code>
| |
| | |
| :but please note that you should validate your HTML - it has over 3,000 errors! The high number of hCalendar microformats (>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 <code>object .include</code> to <code>display:none</code> [[User:AndyMabbett|Andy Mabbett]] 04:10, 16 Jan 2007 (PST)
| |
| | |
| :Thanks Andy!
| |
| :* This use of <code>object</code> 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]]
| |
| :* Re: '>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).
| |
| :** 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.
| |
| :** 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!
| |
| :* Re: <code>abbr</code> as the ''only'' way, I can see <code>abbr</code> 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.
| |
| :** Am I missing some rationale? Why is <code>abbr</code> the ''only'' option?
| |
| :** Should the spec be written up more formally? should hCalendar be more relaxed? My take is that <code>abbr</code> is OK but it would be wrong for it to be mandatory. Think that screen readers may be reading the expanded content (as with <code><nowiki><abbr title="Web Accessibility Initiative">WAI</abbr></nowiki></code>). The underlying issue is that [[hCalendar|hCalendar]] seems to want <code>abbr</code> to <em>disambiguate</em> a displayed date and this is not really the same as an abbreviation. UA's should be liberal when looking for a <code>class="dtstart"</code>, after all they <em>do</em> know that they are within an event markup as they have met the <code>class="vevent"</code>....
| |
| :*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)
| |
| </div>
| |
| </div>
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2007-05-12</span> raised by <span class="fn">Anon</span></span>
| |
| <div class="description">
| |
| *# A pertinent point from the [http://microformats.org/wiki?title=hcalendar-issues&oldid=16115 22 Feb 2007 version] of hcalendar issues. Worth keeping and addressing.
| |
| </div>
| |
| </div>
| |
| | |
| === 2008 ===
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2008-01-16</span> raised by <span class="fn">[[User:AndyMabbett|Andy Mabbett]]</span></span>
| |
| <div class="description">
| |
| *# Lack of method for marking up vague dates and eras; see [[history-examples#The_Problem|vague-date examples]].
| |
| </div>
| |
| </div>
| |
| | |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2008-01-17</span> raised by <span class="fn">[[User:Guillaume Lebleu|Guillaume]]</span></span>
| |
| <div class="description">
| |
| *# In some instances, see [http://biz.yahoo.com/c/e.html Yahoo Economic Calendar], the content in dtstart is split into two td (same issue for summary), which requires to either tag the date as dtstart or the time as dstart. The reason is that due to the structure of HTML tables, it is not possible to mark up each part of the dtstart as value and wrap them all in an element of class dstart.
| |
| *#* The [[include-pattern]] could solve this, but the solution isn't pretty. [[User:TobyInk|TobyInk]] 03:33, 1 Mar 2008 (PST)
| |
| <pre>
| |
| <tr>
| |
| <td id="mydate006">2007-01-02</td>
| |
| <td class="dtstart">
| |
| <a href="#mydate006" class="include" style="display:none"></a>
| |
| <abbr title="T" style="display:none">time </abbr>13:00:00
| |
| </td>
| |
| </tr>
| |
| </pre>
| |
| An alternative would be to use hidden metadata, although that goes against uF principles. [[User:TobyInk|TobyInk]] 03:33, 1 Mar 2008 (PST)
| |
| <pre>
| |
| <tr>
| |
| <td class="dtstart">2007-01-02<abbr style="display:none" title="T13:00:00"></abbr></td>
| |
| <td>13:00:00</td>
| |
| </tr>
| |
| </pre>
| |
| </div>
| |
| </div>
| |
| | |
| | |
| <div class="vevent" id="html5-time-element">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2008-06-25</span> raised by <span class="fn">[[User:TobyInk|TobyInk]]</span></span>
| |
| <div class="description">
| |
| HTML 5 introduces a <code><[http://www.w3.org/html/wg/html5/#the-time time]></code> element. Without wishing to push people into using HTML 5 prematurely, we could define a parsing procedure for dealing with these elements when they are encountered in microformats.
| |
| | |
| * Bleeding-edge publishers who are already using HTML 5 could then choose to use this new semantic element with microformats. Publishers with accessbility concerns over the current datetime design pattern would be given some alternative ways of resolving their issue. (i.e. continue using HTML 4, but use the <code><time></code> element invalidly; create a custom DTD based on HTML 4, but including <code><time></code>; or switch fully to HTML 5.) — [[User:TobyInk|TobyInk]]
| |
| ** Whilst providing an alternative to publishers concerned about accessibility is one way to solve this issue, it doesn't solve the issue for publishers who mandate (or are mandated) to use existing doctypes, or who operate on such a scale that sticking to existing specifications is an important part of ensuring their sites remain reliable in existing browsers. — BenWard
| |
| ** The BBC can't use HTML5. It won't validate, it doesn't adhere to their standards and guidelines or their browser support levels. It simply isn't an option for them (and many other companies). — Phae
| |
| *** If they are willing to consider amending their guidelines to allow RDFa, which is also invalid HTML 4.01/XHTML 1.0/XHTML 1.1, surely they *could* choose to amend their own guidelines to allow <time>. — Henri Sivonen
| |
| *** Adopting <code><time></code> does not require fully switching to HTML 5. Validation can be achieved through using a custom DTD. In terms of browser support, I think I'm yet to encounter a browser that doesn't treat unknown tags as effectively being the same as <code><span></code>. — [[User:TobyInk|TobyInk]]
| |
| ****I guess it depends on what the purpose of validating markup is. That may validate to an SGML DTD, but it's not conforming HTML 4.01 (it's not valid HTML 4.01) and for what it's worth the HTML 4.01 specification specifically warns against extending text/html in this manner: http://www.w3.org/TR/REC-html40/appendix/notes.html#h-B.1 — Benjamin Hawkes-Lewis
| |
| **** We are specifically advised by the W3C QA Group that custom DTDs are a bad idea. http://www.alistapart.com/articles/customdtds2/ — Paul Wilkins
| |
| **** One of the W3C's clearest explanations of the reasons not to use custom DTDs is from their [http://www.w3.org/Style/customdtd Style] activity. The gist is that although DTDs can define the ''syntax'' for new elements and attributes, the ''meaning'' of the new elements and attributes has to be defined by standards and consensus, and they must be ''supported'' by browsers. This is not particularly applicable in this case, because the meaning of <code><time></code> ''has'' been defined (albeit only in draft form so far) by the [http://www.w3.org/html/wg/ W3C HTML working group] and they ''are supported'' by current browsers (right now the "support" is just that they ignore the unknown element and display its contents, but true support is probably around the corner). [[User:TobyInk|TobyInk]] 15:15, 17 Jul 2008 (PDT)
| |
| ** A core principle of microformats is that they should work with the technologies available and in use *now* (HTML5 isn't widely supported and isn't even a w3c recommendation yet). — Phae
| |
| ** I'd be wary of using a hybrid of HTML 4.01, RDFa, and HTML5 when neither RDFa nor HTML5 have been finalized yet, and when HTML5 is going to determine how browsers actually parse all text/html. What if HTML5 ends up specifying something in a way that is incompatible with the hybrid? — Benjamin Hawkes-Lewis
| |
| * There is no way to define BC (before Christ) dates, is there? There should be! [[User:Thamis|Thamis]] 03:58, 30 Sep 2008 (PDT)
| |
| </div>
| |
| </div>
| |
| | |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2008-12-22</span> raised by <span class="fn">Ploc</span></span>
| |
| <div class="description">
| |
| *# What if the event started few weeks ago, and has still not finished but has no known end date ? Writing only a dtstart would not be the reality as we do not know when this will end, but we know that it will end one day. Writing a dtend where dtend equals a date is also not the reality as we do not know when this event will finish. We can encounter this sort of problem with hresum where the last job experience has a start date, but has no end date. it would be good to use a special keyword that would mean "today" (where today always equals the system date now()) or "still going" such as
| |
| <pre><abbr class="dtend" title="today">up to now</abbr></pre> or <pre><abbr class="dtend" title="still-going">now</abbr></pre>
| |
| | |
| *# I've read that the dtend should be one day after the end of the event as the dtend is exclusive. But what if I use a short date representation, such as "2008" for year 2008, or "200802" for february 2008 ? Should I make the dtend finish one year, or one month later, as dtend is still exclusive ? This would be very confusing in my opinion.
| |
| | |
| *# Last issue, what about an event that don't have a start time neither a end time, but that will last approximately the whole day. There is only a dtstart without time included ("20080428") and no dtend ? Or with a dtend with the same date ? Or with a dtend the day after ? Or with a special notation such as :
| |
| <pre><abbr class="dtstart dtend" title="1998-07">july 1998</abbr></pre>
| |
| | |
| *# To sum up, how would you write an event that has no duration but which is only a moment in the life (this recalls the first oy my issues where there is an event with no known end date, which is different from an event which has no end date because it has no duration !).
| |
| | |
| === 2009 ===
| |
| <div class="vevent">
| |
| * {{OpenIssue}} <span class="summary vcard"><span class="dtstart">2009-02</span> raised by <span class="fn"> JMesserly </span></span>
| |
| <div class="description">
| |
| *# Unclear whether YYYY or YYYY-MM is valid for dtstart or dtend
| |
| *#*Rationale for partial dates:
| |
| *#*#'''Identity theft'''- Wikipedia for example has guidelines on Living Persons to protect against identity theft. Over 3000 Marriage, Birth and death dates and emitted by wikipedia, and a high percentage for living persons include year only for birth date.
| |
| *#*#'''Unavailable precision''' Example: the birth date of Augustus Caesar is precisely known for the Roman calendar used at the time, however because of the frequency and chaos with which adjustments to that calendar were made prior to the adoption of the Julian calendar, the exact gregorian equivalent required for ISO8601 is impossible to know with precision. The best historians agree on is plus or minus 2 days, and it is said that it is unlikely there will ever be better precision. This is an example where we are using YYYY-MM, and it is quite common on in the 3500 genealogy pages emitting dstart/ dtends at [http://genealogy.wikia.com/index.php?title=Special:WhatLinksHere/Template:Info_table_person&from=70556&back=0&limit=500 genealogy.wikia.com], where it is frequently the case that family histories have only partial dates. -[[User:JMesserly|JMesserly]] 19:15, 6 April 2009 (UTC)
| |
| </div> | | </div> |
| </div> | | </div> |
|
| |
|
| == Template == | | == Template == |
|
| |
| {{issues-format}} | | {{issues-format}} |
|
| |
|
| == Related Pages == | | == Related Pages == |
| {{hcalendar-related-pages}} | | {{hcalendar-related-pages}} |