[uf-discuss] One more shot at accessible hCalendar

Belov, Charles Charles.Belov at sfmta.com
Tue May 13 16:26:26 PDT 2008

I'll try to keep this to new comments concerning the use of the ISO date
in the hCalendar microformat. Please excuse me if I'm repeating
something. At the moment, these are the things that would prevent me
from implementing hCalendar on our website.


Site visitor accessibility:

Even if a particular screen reader can disable abbreviations or titles
so as not to hear ISO-format dates read, that means that screen reader
would also not read human-friendly titles that have nothing to do with
microformats. Even if your site does not use human-friendly title tags,
there are sites "in the wild" that do, and having the screen readers
suppress these would be a loss.

Possible alternatives:

If the webmaster does use an empty span with a title tag to contain the
ISO date, the webmaster could add a style="display: none" attribute to
it to ensure that screen readers did not read it.


Site creator accessibility:

1. We have non-technical people creating and editing static HTML web
pages using Adobe Contribute. There is no easy way in Contribute to
insert a title tag. 

2. Even if I were to be able to create a kludge to let the people enter
a title tag, they would still have to create human-unfriendly ISO dates
in those title tags.

3. These non-technical people would have to deal with a human-unfriendly
spec that end dates without times end at the beginning, not the end, of
the day in the ISO date.

Possible alternatives:

These tags could optionally be used in place of the class="dtstart" and

class="dtstartyyyy" for year
class="dtstartmmm" for month as Jan, Feb, etc., or 01, 02, etc., or 1,
2, etc.
class="dtstartdd" for day as 01, 02, etc. or 1, 2, etc.
class="dtstartdow" for day as Mon, Tue, etc. or Monday, Tuesday, etc.
class="dtstarttime" for time as 10:12am, 10:12a, 10:12 am, 10:12 a,
1012, 10:12:01am, etc. 

Remember, these are humans entering these dates and they may not be
consistent (as long as they don't misspell the month or day, the
computers ought to be the ones who are forgiving).

Replace start with 
end for human-unfriendly end date (ends at start of day 12:00:01am if no
time given) or 
endfull for human-friendly end date (ends at end of full day 11:59:59pm
if no time given) or
startend or startendful for something that is used for start and end


Tuesday, May 13, 2008, 4:08pm

would be human-friendly encoded for a start date as 

<span class="dtstartdow">Tuesday</span>, <span
class="dtstartmmm">May</span> <span class="dtstartdd">13</span>, <span
class="dtstartyyyy">2008</span>, <span class="dtstarttime">4:08pm</span>

Tuesday, May 13, through Friday, May 16, 2008

would be human-friendly encoded for a start and end date as

<span class="dtstartdow">Tuesday</span>, <span
class="dtstartmmm">May</span> <span class="dtstartdd">13</span>, <span
class="dtstartyyyy">2008</span>, through <span
class="dtendfulldow">Friday</span>, <span
class="dtendfullmmm">May</span> <span class="dtendfulldd">16</span>,
<span class="dtstartendfullyyyy">2008</span>

While I as webmaster would have to provide pre-set fill-ins for the
non-technical content editor to drop a date into the pre-formatted span
tags, it would protect the non-technical content editor from having to
deal with the code. For example, in Contribute, I would code a template
containing a table with repeating regions wrapped by the span tags.  The
non-technical content editor would drop a day-of-week, month, date,
year, and time into the spaces provided.

Remember that any page these occur on would presumably have a language
specification such as "en-us" so computers would be able to deal with
standard month and day of week names and abbreviations.


Hope this helps,
Charles Belov
SFMTA Webmaster

More information about the microformats-discuss mailing list