logo

WikiJuanan: iCal ...

Inicio | Indice De Paginas | Ultimas Modificaciones | Ultimos Commentarios | Usuarios | Registrarse | Conectar:  Contraseña:  

Copiado de http://discerning.com/topics/standards/calendars.txt


[see also: recurrence.txt GUPE/iCalendar.pm]


=head1 Overviews


http://en.wikipedia.org/wiki/ICalendar
http://developer.apple.com/internet/appleapplications/icalendarfiles.html
http://muddybranch.thejkgroup.com/ http://www.intellical.com/ Jason Klemow
http://www.calconnect.org/resultsfromrecurrencequestionnaire.pdf

=head1 Standards Bodies and Consortia


http://www.calconnect.org/

=head1 Standard Formats


Google Base has a set of attributes at: http://base.google.com/base/atom_specs.html

Google Calendar http://www.google.com/calendar

http://groups.google.com/group/google-calendar-help-dataapi
http://code.google.com/apis/gdata/overview.html
has XML export.
uses Atom, with extra namespaces:
xmlns:gd='http://schemas.google.com/g/2005'
xmlns:gCal='http://schemas.google.com/gCal/2005'
gd:when
gd:recurrence
gCal:timezone

vCalendar (1.0 September 18, 1996) http://www.imc.org/pdi/vcal-10.txt
iCalender http://www.ietf.org/rfc/rfc2445.txt
xCal aka xCalendar http://xml.coverpages.org/iCal.html

Frank Dawson 2002

Dawson, Reddy, Royer, Plamondon 2002 «iCalendar DTD Document (xCal)"

  • Hare 2005 “Guideline for use of XML with iCalendar elements”
    http://ietfreport.isoc.org/idref/draft-hare-xcalendar/
    http://www.ietf.org/internet-drafts/draft-hare-xcalendar-03.txt
    uses attributes for vcalendar prodid and version
    defines a «-IETFDTD XCAL/iCalendar XML//EN» iCalendar dtd
    uses attributes for parameters
  • Royer 2005 «iCalendar in XML Format (xCal-Basic)"
    http://inet-consulting.com/xcal.html
    draft-royer-calsch-xcal-02
    puts prodid and version in elements
    uses lowercase for tag names but upper case for param values like role="CHAIR" and rrule content like BYDAY
    XML schema here: http://sw.sbay.org/xml/ http://sw.sbay.org/xml/xcal-20040224.xsd
  • SKICal http://skical.metamatrix.se/

    swedish; some good enhancements related to public events

    “RDF Calendar”

    hCalendar http://developers.technorati.com/wiki/hCalendar

    iCalendar Basic http://www.ietf.org/internet-drafts/draft-royer-ical-basic-03.txt

    simplifies iCalendar

    http://xml.coverpages.org/draft-royer-ical-vcard-01.txt

    Using VCARDs with iCalendar
    allows ATTENDEE;VCARDURL="https:cal.example.com/user?uid=vcard=123.vcf":CAP:Doug@Royer.com?

    http://www.iptc.org/EventsML/

    seems to have died


    Regarding vCard and XML:

    overview

    draft-dawson-vcard-xml-dtd-0[0–3]

    http://www.watersprings.org/pub/id/draft-dawson-vcard-xml-dtd-03.txt
    <vCard xmlns:xcfxml='http://www.ietf.org/internet-drafts/draft-dawson-vcard-xml-dtd-04.txt'>
    <n><family>Dawson</family> <given>Frank</given></n>
    <org><orgname>Lotus Development Corporation</orgname>
    <adr adr.type="WORK POSTAL PARCEL">
    <street>6544 Battleford Drive</street>

    <locality>Raleigh</locality>
    <region>NC</region>
    <pcode>27613–3502</pcode>
    <country>USA</country>
    </adr>

    <tel tel.type="WORK MSG PREF">+1–617–693-8728</tel>

    carrying forward from Dawson
    elements names are upper case
    version is an attribute
    params are self-closing element children
    namespace is vcard-temp

    =head1 Standard Protocols


    Cal DAV? http://greenbytes.de/tech/webdav/draft-dusseault-caldav-01.html


    http://www.faqs.org/rfcs/rfc2446.html

    iCalendar Transport-indendent Interoperability Protocol (iTIP)
    static and dynamic event, to-do, journal and free/busy objects
    either store and forward (imip) or real-time
    CU calendar user to CU communication
    CUA and CS

    http://www.faqs.org/rfcs/rfc2447.html

    [iMIP] specifies an Internet email binding for [iTIP].

    http://www.ietf.org/internet-drafts/draft-ietf-calsch-cap-02.txt

    CAP Calendar Access Protocol
    the CUA to CS communication

    IRIP

    real-time analog of imip. maybe being superseded by CAP?

    ICAP – defunct proposal (96), see http://www.clearblue.com/draft-oleary-icap-00.htm

    http://maelstrom.org.uk/
    Steve Ferris implemented ICAP java client and server, with source

    other proposals:

    Scheduling Wide-area Transport Protocol SWTP http://www.p2software.com/
    intranet consulting

    Simple Scheduling Transport Protocol (SSTP) presented by On Technology

    dead?

    Calendaring and Scheduling Interoperability Protocol (CSIP) presented by On Time / FTP? Software

    now opentext
    web based

    Internet Calendar Access Protocol (ICAP) presented by Clear Blue Network Systems and Lotus

    now criticalpath

    =head1 Open Source Projects


    Name Born Died URL 
    Free Association 2000 http://www.advogato.org/proj/Free%20Association/
    Reefknot 2001 http://reefknot.sourceforge.net/
    Hula 2005 http://www.hula-project.org/ Novell's old Net Mail? server
    OSA/Chandler 2003 http://www.osafoundation.org/


    =head1 Articles and Link Farms


    http://www.innerjoin.org/iCalendar/index.html


    http://linuxmafia.com/faq/Apps/scheduling.html


    Date Lens? http://www.cs.umd.edu/hcil/datelens/screenshots.shtml

    new design for a calendar
    requires. NET
    got eaten by Microsoft: http://research.microsoft.com/news/monthlyfeature/datelens.aspx

    http://www.w3.org/2001/sw/Europe/200210/calendar/vocab_usecases.html

    Semantic Web Calendaring vocabularies and usecases
    some interesting comments about the specs
    discusses iCalendar, xCalendar, Ski Cap?

    http://www.idealliance.org/papers/xml2001/papers/html/05-04-06.html

    Calendaring and Scheduling with XML-RDF

    draft-ietf-calsch-imp-guide-00.txt


    Once more into the Breach: Calendars, Events and RSS 2003


    rant about calendar support in evolution:


    Scheduling Ourselves to Death

    http://www.kcoyle.net/schedule.html

    =head1 Desired Features


    Some desired features:


    categories
    email reminders
    indicate public and private when publishing
    publishing of free busy
    scheduling system (somehow)
    RSS feed
    handle recurring events
    handle multi-day and all-day events
    booking of rooms or other equipment
    send email to server to pick up an event (or pull from your email)
    pull in public holiday db (country-specific), and/or commemorative day db
    search by string in summary, qbe, etc.
    merging of desired set of calendars
    control of sorting by: recur vs. recur, has start time and duration, has start time only, neither start time nor duration

    =head1 Google Base


    See 


    <g:event_date_range>

    <g:start>2005–12-20T14:00:00</g:start>
    <g:end>2005–12-20T19:00:00</g:end>

    </g:event_date_range>


    <g:expiration_date>2005–12–20</g:expiration_date>
    <g:expiration_date_time>2005–12-05T11:59:59</g:expiration_date_time>

    <g:location>1600 Amphitheatre Parkway, Mountain View, CA, 94043, USA</g:location>
    <g:location>37.423130,-122.083706</g:location>


    <g:image_link>http://example.com/images/1006.jpg</g:image_link>

    See some discussion here:


    http://weblog.infoworld.com/udell/2006/06/13.html
    http://www.snellspace.com/wp/?p=314
    doesn't like the new elements vs just including xcal or hcalendar

    =head1 Ji Cal?


    See http://jical.sourceforge.net/


    Has its own XML format that includes expanded events.


    =head1 iCalendar RFC2445


    See http://www.softwarestudio.org/iCal/2445Issues.html


    Synctactically, iCalendar/vCalendar/vCard are similar.
    It is roughly “field: value”, though the field names can be parametrized.
    Field values can contain 8-bit characters.
    Lines can be LWS wrapped (lines SHOULD be no longer than 75 octets).


    RFC 2445 grammar, in part:


    contentline = name *(";" param ) “:" value CRLF
    name = x-name / iana-token
    iana-token = 1*(ALPHA / DIGIT / “-")
    x-name = “X-" [vendorid “-"] 1*(ALPHA / DIGIT / “-")
    vendorid = 3*(ALPHA / DIGIT)
    param = param-name "=" param-value *("," param-value)
    param-name = iana-token / x-token
    param-value = paramtext / quoted-string
    paramtext = *SAFE-CHAR
    value = *VALUE-CHAR
    quoted-string = DQUOTE *QSAFE-CHAR DQUOTE
    NON-US-ASCII = %x80-F8
    QSAFE-CHAR = WSP / %x21 / %x23–7E / NON-US-ASCII
    SAFE-CHAR = WSP / %x21 / %x23–2B / %x2D-39 / %x3C-7E / NON-US-ASCII
    VALUE-CHAR = WSP / %x21–7E / NON-US-ASCII

    Values can contain escapes: \, \" \n


    cal-address type examples (for example for ORGANIZER property):


    "MAILTO:jane_doe@host1.com"
    «CN=John Smith?;DIR="ldap://host.com:6666/o=3DDC%20Associates,c=3DUS??(cn=3DJohn%20Smith)":MAILTO:jsmith@host1.com
    «ROLE=CHAIR:MAILTO:mrbig@host.com»

    URL property examples:


    "URL:http://abc.com/pub/calendars/jsmith/mytime.ics"
    «URL;VALUE=URI:http://davidcrow.ca/»
    "URL:http://host2.com/pub/busy/jpublic-01.ifb" (for a VFREEBUSY)

    =head1 iCalendar Issues


    Recurrence is complex, probably overly so.


    The standard requires that timezones be defined inline, yet
    there may be redefinitions of those timezones in the future
    that even affect future dates in existing calendars.
    This can mean conflicts with the conventional definition
    of the same-named timezones. This could happen with distant
    future events in old calendars,, as well as recurring events
    beyond a change in the definition.


    The properties such as UID, DTSTAMP, CREATED contrast
    “calendar store” with “object representation”. This has unclear
    meaning when objects might be reformatted, republished, and so on.
    The semantics of references to other objects such as by RELATED-TO are similarly
    confusing.


    DTEND is unclearly defined.


    Many properties could be used with different semantics, and in
    some cases you'd like to use more than one such meaning at once.
    For example:


    is URL the authoritative ics file? a web page? a brochure?
    what about ATTACH? Note it can have a URI value also.
    (cv. WHURL and PROMO in Ski Cal?)

    iCalendar is focused on business meetings (ATTENDEE property, SENT-BY parameter, etc.),
    without a similar degree of support for public events.
    For example:

    no distinction between event title and summary (Ski Cal? TITLE)
    no way to indicate a set of multiple performers/speakers (Ski Cal? PERSONS, SKiROLE)
    no way to indicate type of location (radio, TV, indoors, outdoors) (Ski Cal? VENUE)
    no structured way to specify admission information (cost, tickets, reservations, etc.)
    Ski Cal? ACCESS PRICE PAYMETHOD BOOKINGS PROHIBITED
    no way to indicate the languages spoken at the event (vs. language of text in description) (Ski Cal? SKILANG)
    no easy way to indicate a schedule within the event (Ski Cal? OPTIMESET)

    It has weak support for alternate DESCRIPTIONs (html vs. text; short vs. long).
    There is the ALTREP parameter, but it makes little sense outside of a MIME context that can provide additional attributes.
    There is the LANGUAGE parameter which apparently allows for multiple LOCATION and DESCRIPTION
    and other text properties that otherwise can occur only once --
    although the RFC is unclear on this, as 4.6.1 “eventprop” production says
    that “the following are optional, but MUST NOT occur more than once”.


    There is no certain way of distinguishing an unknown time, an unspecified time,
    and an all-day event. Or of saying «some day between may 1 and may 8".


    What distinguishes COMMENT from DESCRIPTION?


    The LOCATION is free text, with no structured address support such as with
    vCard (place name, address, phone), nor a distinct directions field
    (like Ski Cal? DIRECTIONS, PLACENAME properties; TRAVELBY parameter).


    ORGANIZER is too limited as cal-address, and CONTACT is too free.
    What if the real organizer is an organization with a title, phone, etc.?


    There is weak and unclear specification for charsets: Can UTF-16BE be used?
    What to do once a VCALENDAR is detached from a MIME container?


    There is no property for a VCALENDAR title (like X-WR-CALNAME) or the owning organization of a VCALENDAR.


    Multi-user change tracking is weak (no distinction between submitted by,
    posted by, posted when, etc. — each of which might differ from the organizer).
    Ski Cal? has PUBLISHER and MANAGEMENT, but those still don't really cover
    it all either.


    There is no suggested manner for namespace control on values of
    enumerated properties and parameters (CATEGORIES property, RESOURCES property,
    ROLE parameter, etc.) (see Ski Cal? NSREF).


    =head1 Example Event

    ===================================================
    Teaser

    Hear From a Courageous African Woman Who Stood Up 
    to the Vicious Ethnic Cleansing of the Black Community of 
    Tampa, Florida – and Won!

    Title:

    “Is the San Francisco Bay Area for Whites Only? A Forum on Ethnic Cleansing”

    Subtitle:

    with housing community activist Connie Burton from Tampa, Florida

    When:

    Tuesday, June 29th, 7 to 9:30pm

    Where:

    Fellowship Hall of Humanity, 390- 27th St., ( between Telegraph and Broadway), Oakland

    Contact:

    African People's Solidarity Committee, (510) 295–7834
    Call (510) 295–7834 for more info, leave a voicemail at 510–625-1106, or email uhurureparations@yahoo.com

    Description:


    On this coming Tuesday, June 29th from 7 to 9:30pm, the African
    People's Solidarity Committee is holding “Is the San Francisco Bay
    Area for Whites Only? A Forum on Ethnic Cleansing” at the Fellowship
    Hall of Humanity at 390 – 27th St (between Broadway and Telegraph) in
    Oakland.


    Featured as the keynote speaker will be Connie Burton, leader in the
    International People's Democratic Uhuru Movement out of Tampa,
    Florida.


    Several months ago, Burton led an African community struggle against
    the city of Tampa's plans to kick African people out of the Tampa Park
    apartments in what the city considered “prime real estate.”


    Utilizing the combination of her weekly “Straight Talk” radio program
    she hosts in Tampa with massive leafleting, bullhorning, protests and
    participation in weekly Tampa housing authority meetings, the Uhuru
    Movement in Tampa under Connie's leadership was able to push out the
    city's latest ethnic cleansing plan to remove black people from the
    neighborhood!


    Join this discussion about the devastating situation that exists from
    the Tampa Bay to the SF Bay as African people are forced from their
    communities. Through policies of police containment and a U.S.-imposed
    drug economy, young Africans in their communities in the Bay area face
    prison, the military, or the grave while people people are able to
    move into their neighborhoods.


    Other speakers at the forum include:
    Quetzaocelocuia of the Barrio Defense Committee in San Jose,
    Maurice Campbell of the Community First Coalition of Bayview-Hunter's Point,
    Bakari Olatunji of the International People's Democratic Uhuru Movement in Oakland,
    Wendy Snyder of the African People's Solidarity Committee.


    Let's take a stand from the white community to support genuine economic development and an end to the war on the African community!


    Brochure:

    download the leaflet at http://mrwillis.crosswinds.net/Leaflet_Uploads/Gentrification.pdf

    =head1 Proposed Schema


    Here is a proposed schema.
    We attempt to indicate here the mapping of field(s) between our schema,
    iCalendar, and Atom.


    Area
    When

    when_start DTSTART, @TZID

    ISO8601 datetime with any precision (year down to second)
    has a numerical tz offset, unless “floating”.
    offset taken from @TZID param, which is a name

    when_duration DTEND, DURATION

    (we use duration instead of end to avoid extra rules about tz etc.)
    if missing, then it is considered unknown (vs. 0 duration)
    cannot have more precision than start

    when_recur RRULE, EXRULE, RDATE, EXDATE

    Where LOCATION (multi-line plain text)

    whole location might be stored internally
    where_name single line free text
    where_addr_pobox the 7 vCard ADR fields; pobox and extended probably not used
    where_addr_extended
    where_addr_street
    where_addr_city
    where_addr_province
    where_addr_postal
    where_addr_country
    where_phone
    where_url URL, home page for location
    where_directions type=content (might be a link to directions)
    where_geo GEO (two floats long/lat)

    What

    all content fields can have content-type and lang

    summary SUMMARY

    type=content
    in iCalendar, free plain text, typically single line.
    used in isolation of rest of info. defaults to title, then to beginning of description

    title -

    if a movie, etc. that has a distinct title. will be shown in quotes.

    subtitle shown with the title, should not be set without it
    description DESCRIPTION

    type=content
    in iCalendar, multiple lines of free plain text which
    includes all people involved, and any schedule

    link* ATTACH, URL

    RFC2445 URL;VALUE=URI could be either the event or an ICS; it is vague
    attributes: rel href type (like Atom and HTML. Atom defines rel to be a URI or one of several tokens. type is media type here, and Atom says content/@type is broader)
    HTML says rel is CDATA, space-separated: http://www.w3.org/TR/REC-html40/struct/links.html#h-12.3
    rel="eventhome" “flyer” “brochure” “registration”
    eventhome = a html home page specifically for the event (vs. typically pdf for flyer)

    category* CATEGORIES

    exactly the same as Atom: term (text) label (text) scheme (URI)
    no restrictions on term: http://www.atomenabled.org/developers/syndication/atom-format-spec.php#rfc.section.4.2.2
    (alternative designs: URIs, TOKENs, QNames, labels)
    TBD: namespace declaration, and schema of choice labels (Ski Cal? NSREF is unspecified what the URI points to)
    one or more from various vocabularies
    event_type: concert, movie, art (poetry, dance, painting), conference,
    forum, educational/training,protest(march,vigil), group meeting,
    fundraiser, social (celebration, etc.)
    topic: police,prisons,education,health,democracy,
    human rights,environment,homelessness,international economy,history,law,race,labor,drugs
    incident: Katrina
    geoname (which it is about, not held at, such as from Getty or usgov Metropolitan Statistical Area): Iraq,Africa
    http://www.getty.edu/research/conducting_research/vocabularies/tgn/
    http://geography.about.com/cs/largecities/a/metromicro.htm
    admission tickets, reservation, price, etc.

    Who ORGANIZER, CONTACT

    organizer_name organization name or individual name
    contact_name specific individual to contact
    organizer_email
    organizer_url home page
    organizer_phone

    Changes CREATED LAST-MODIFIED UID URL

    created_by
    created_date
    source_url original ics 
    last_modified

    Some come from a fixed vocabulary of choices:


    event_type
    topics

    Some would be fkeys to a separate “address” table:


    location
    contact
    organizer

    full_name
    street
    street2
    city
    state
    postal_code
    country
    directions
    phone
    mobile
    email
    homepage

    ===================================================
    =head1 RDF Calendar


    RDF model for iCal: http://web.resource.org/rss/1.0/modules/event/

    notes that date precision is significant

    more RDF and iCalendar: http://www.ninebynine.org/RDFNotes/Calendaring/iCal-proposal.html


    http://esw.w3.org/topic/RdfCalendarDocumentation


    http://swordfish.rdfweb.org/discovery/2003/11/rdfical/www2004-draft-20031113-final.html

    RDFiCal: iCalendar in RDF

    http://www.w3.org/2001/sw/Europe/200404/rssical/rssical.html

    RSS and RDF iCalendar

    http://www.w3.org/2002/12/cal/

    RDF Calendar
    ical2rdf.pl now replaced by fromIcal.py
    has tools to convert schema from rfc to rdf/owl
    Dan Connolly

    http://dublincore.org/2003/12/08/dctype#Event

    dulbin core “Event” type DCMI

    =head1 Ski Cal?


    http://swordfish.rdfweb.org/people/libby/rdfweb/skical/skical-daml.daml
    http://swordfish.rdfweb.org/people/libby/rdfweb/skical/skical-daml-diary.txt

    iCalender/skical in DAML+oil

    http://skical.metamatrix.se/
    Structured Knowledge Initiative
    http://skical.metamatrix.se/skical20010905.html
    http://xml.coverpages.org/draft-many-ical-ski-06.txt

    (defunct?)
    better suited for public (non corporate events)
    Ski Cal? – an extension of iCalendar
    adds WHAT,WHEN,WHERE,WHOW,WHY,WHO
    SKIROLE
    OPTIMESET opening time set
    OPTIMES
    TITLE (of the movie, etc.,, vs. SUMMARY)
    PERSONS (performer, presenter, etc.)
    CONTROL
    MANAGEMENT
    DIRECTIONS
    PROMO
    PUBLISHER
    WHURL url associated
    VENUE
    PLACENAME
    PRICE
    PAYMETHOD
    BOOKINGS
    ACCESS[ibility]
    NAMESPACE

    =head1 Libraries


    perl
    ccal http://www.dns.net/dist/ccal-1.6
    (uses its own quick and dirty parser)
    GPL

    http://www.simondobson.org/downloads/files/ical2vcal

    iCal (v2) to vCal (v1) converter, using Text::vFile

    Icabra http://isg.ee.ethz.ch/tools/isgtc/index.cgi?page=module_source;module=icabra;source=icabra

    GPL

    ical2rdf.pl http://www.w3.org/2002/12/cal/ical2rdf.pl

    W3 license. iCal convert to RDF. see also fromIcal.py
    jclark on the perl modules: http://jclark.org/weblog/Programming/Perl/priorart.html


    python


    Erlang


    Java


    C

    http://dev.w3.org/cvsweb/Ical2html/
    W3 license. C. iCalendar to HTML. uses libical.

    libical http://www.softwarestudio.org/libical/ and http://www.aurore.net/projects/libical/

    LGPL/MPL
    libical-0.24 (Nov 24) was last release
    being picked up at http://www.aurore.net/projects/libical/

    http://korganizer.kde.org/develop/architecture.html

    libkcal is C++ wrapper around libical

    http://cvs.gnome.org/viewcvs/libmimedir/mimedir/

    LGPL parser. handles vCard, vCal, iCalendar.
    not to be confused with http://sourceforge.net/projects/libmimedir/
    maintained by Sebastian Rittau <srittau@jroger.in-berlin.de>


    Ruby


    Objective C

    http://svn.opengroupware.org/SOPE/trunk/sope-ical/iCalSaxDriver/README
    LGPL. objective C. parser of iCalendar. for converting icalendar to sax parse events corresponding to xCal.


    C#

    http://remotecalendars.sourceforge.net/
    COM plugin for Outlook

    http://sourceforge.net/projects/icalparser/

    GPL C# primarily to convert to RDF


    PHP


    Lisp


    =head1 Perl Modules


    perl cpan support

    problems with cpan iCalendar modules at http://jclark.org/weblog/Programming/Perl/priorart.html

    Date Time?::Format::ICal http://search.cpan.org/dist/DateTime-Format-ICal/lib/DateTime/Format/ICal.pm

    part of the latest datetime.perl.org project
    Dave Rolksy
    adopted from Date::Ical
    will parse recurrence (also uses Date Time?::Event::ICal)

    Date Time?::Event::ICal http://search.cpan.org/dist/DateTime-Event-ICal/lib/DateTime/Event/ICal.pm

    part of the latest datetime.perl.org project
    Flavio Soibelmann (also author of Date::Set, which became Date Time?::Set)

    Net::vFile http://search.cpan.org/~jlawrenc/Net-vCard-0.5/lib/Net/vFile.pm

    vCard and vCalendar

    Text::vFile

    does not expand RRULE. does not support nested structures.
    same author as Net::vFile; no work since 2003.
    no writing

    Date::ICal http://search.cpan.org/~rbow/Date-ICal-1.72/

    by Rich Bowen and the Reefknot team
    parses either ISO8601 or an ical duration
    no recurrence

    Net::ICal http://search.cpan.org/~srl/Net-ICal-0.15/lib/Net/ICal.pm

    no work since 2001; never finished.
    also part of reefknot
    supports rrule etc. at least in Net::ICal::Journal http://search.cpan.org/~srl/Net-ICal-0.15/lib/Net/ICal/Journal.pm
    which creates Net::ICal::Recurrence

    Text::vFile::asData

    does not expand RRULE. does support nested structures. does not unescape \,

    Date::Set http://search.cpan.org/~fglock/Date-Set-1.30/lib/Date/Set.pm

    can combine multiple dates.
    has internal support for Date::Set::ICal
    also part of reefknot
    supplanted by http://search.cpan.org/~fglock/DateTime-Set-0.17/lib/DateTime/Set.pm

    iCal::Parser::HTML

    uses iCal::Parser::SAX uses iCal::Parser uses Text::vFile::asData and Date Time?::Format::ICal

    iCal::Parser uses Text::vFile::asData.

    It does expand RRULE, using Date Time?::Format::ICal->new()->parse_recurrence
    It also expands events spanning multiple days into individual events.

    Data::ICal

    Artistic license. by Jesse Vincent, David Glasser, Simon Wistow
    uses Text::vFile::asData to parse.
    does its own writing.

    =head1 Open Source Native Clients


    Rainlendar http://www.rainlendar.net/ http://www.ipi.fi/~rainy/index.php?pn=projects&project=rainlendar

    Windows only client
    server runs windows or linux
    its own protocol not caldav. uses http://ssobjects.sourceforge.net/
    GPL C++

    Chandler


    Mozilla Sunbird (win32, osx, linux)

    http://www.mozilla.org/projects/calendar/sunbird_download.html
    only does webdav, not RFC protocol (as implemented by Sun)

    Evolution http://www.novell.com/products/desktop/features/evolution.html (osx, linux)

    Evolution Calendar “based on” Gnome Cal?, gnome calendar part of evolution
    worked on by “Frederico”
    Russell Steinthal rms39@columbia.edu interested in it http://www.softwarestudio.org/non-vc/MailArchives/libical/0165.html
    was: http://www.helixcode.com/apps/evolution.php3 http://primates.helixcode.com/~miguel/activity-log.html

    KOrganizer http://korganizer.kde.org/ (win32, osx, linux)


    Kalendar

    no client-server, vcalendar, etc.

    http://www.gnome.org/users-guide/gcal.html

    uses icalendar
    http://www.gnome.org/mailing-lists/archives/calendar-list/
    gnome-pim works with it?



    =head2 Commercial Calendar Clients


    30boxes.com

    web-based ajax editing
    supports ics export

    Yahoo Calendar calendar.yahoo.com

    will take yahoo CSV export to produce ical: http://www.manastungare.com/projects/yahoo2ical/

    Microsoft Outlook

    has problems: http://sippey.typepad.com/filtered/2004/02/ical_and_outloo.html

    http://www.rockinsoftware.com/WinDates.aspx

    shareware, now withdrawn

    http://www.even-t.com/even-t.html


    Corporate Time? http://www.cst.ca/ -> www.steltor.com -> Oracle

    enterprise calendaring and resource scheduling
    has linux support
    spun out lexacom then brought it back in
    had some of the original tech in Netscape CS?
    on icalendar committee
    Lexacom / Corporate? Software and Technologies (CS&T)
    montreal canada

    =head1 Web-Based Clients


    lists and reviews:

    http://planscalendar.com/index.php?p=competition
    http://www.machineofthemonth.org/articles/2003/0324/index.html
    http://courses.washington.edu/~hs590a/modules/23/webcalendars.html
    http://www.mg.co.za/mg/pc/9904/21apr-webcalendar.htm

    software: PHP iCalendar

    example use at http://calendar.resist.ca/month.php
    no editing, just presents a .ics file
    demo at http://phpicalendar.net/phpicalendar/
    parser is limited: doesn't even deal with escapes!
    fork to support booking, at http://www.nanofab.ualberta.ca/iCalDemo

    discussion at http://phpicalendar.net/forums/archive/index.php/t-1126.html
    http://www.nanofab.ualberta.ca/phpiCalDistro.zip

    EOF


    Monket Calendar http://www.monket.net/wiki/monket-calendar/

    GPL/CC dual license
    php + ajax
    author taking a break

    “UW Calendar” http://www.washington.edu/ucal/

    bsd license. java xml xslt.
    implements caldav
    ambitious
    currently no recurring support
    looks good; see: http://events.rpi.edu/showMain.rdo;jsessionid=EDB0054633915C25C6890443A7A13106
    and http://berlin.ucs.mun.ca/java/cal/

    http://planscalendar.com/

    perl GPL
    demo at http://planscalendar.com/demo/
    has web-based create.
    decent look.
    themes, translations, plugins
    some recurring support.
    has export to vCalendar not to iCal
    will import an ics file: http://www.planscalendar.com/forum/viewtopic.php?t=1091
    but not yet modify an ics: http://www.planscalendar.com/forum/viewtopic.php?t=612
    stores data in flat files or in database
    some massive perl files with intermixed html, etc.
    has its own parser

    iCal::Parser::HTML

    Perl license. demo?
    includes ical.cgi that is a cgi for displaying ics files
    http://cpan.uwinnipeg.ca/htdocs/iCal-Parser-HTML/README.html

    http://jwebcalendar.sourceforge.net

    java. uses xslt and javascript.
    seems dead

    http://dev.neb.net/phpMyCal/

    works with phpicalendar, gets ics out of mysql
    no updates since 2004

    webcalendar.sf.net = http://www.k5n.us/webcalendar.php

    php GPL. uses mysql.
    has web editing

    exports to iCalendar or vCalendar

    demo at http://www.k5n.us/opensource/month.php
    can act as a “calendar server” for Mozilla Sunbird or Apple iCal.
    a fork is used by pgw.
    exports iCal
    lists others at http://www.k5n.us/webcalendar.php?topic=Competitors

    Web Calendar? http://www.math.utexas.edu/users/mzou/WebCalendar.html

    mod_perl GPL
    has translations to many languages
    not that great looking ui by default
    has a “calendar server” (its own http post mechanism)
    “drag and drop editing”
    supports vcs files (not ics?)

    extcal http://sourceforge.net/projects/extcal

    php GPL mysql
    no iCal?
    demo at http://www.maroctour.com/cal/calendar.php
    looks great
    has web-based create
    formerly EXTcalendar http://www.realize.be/swentel/module.php?boxcontent=5&boxid=4

    http://sourceforge.net/projects/iwebcal/

    now commercial service (2003)

    http://sourceforge.net/projects/myxcal

    perl GPL
    uses xCal XML and XSLT
    nothing since 2003

    http://myphpcalendar.sourceforge.net/

    abandoned?
    GPL php
    integrated with thatware.org

    webcal http://bulldog.tzo.org/webcal/webcal.html

    went commercial in 2003 with http://www.webcalng.com/
    old sources at http://sf.net/projects/webcal/

    http://www.circulargenius.com/flatcalendar/

    Flat Calendar? no database. php

    http://www.osafoundation.org/

    Cosmo is a calendar server (works with webdav/caldav client like Chandler, Apple iCal, Sunbird)
    apache license. java. requires maven, tomcat, etc.

    Scooby is a web-based client that will work with Cosmo (or any caldav server).

    jsp

    Chandler is a native calendar client

    python GPL. wxPython

    =head1 Perl Modules for Generating Calendar HTML


    Plot Calendar? http://www.ajackson.org/software/plotcalendar/

    perl module for generating html or ascii calendar display
    will do Day or Month
    little action since 1999

    Calendar::Schedule http://users.cs.dal.ca/~vlado/srcperl/

    still worked on in 2005

    HTML::Calendar::Simple

    2002
    simplified module inspired by HTML::CalendarMonthSimple.

    =head1 Calendar Repositories


    http://pax.protest.net/event.cgi?ID=480818&state_values=SITE!.40

    City & State
    Topic / Issue
    Location
    Speaker
    Phone Contact
    Sponsor
    Description
    Tube / Bus? directions
    Contribution

    http://events.moac.org/


    http://www.radicalendar.org/index.php?function=subscribe


    =head1 Commercial Hosting


    http://www.icalshare.com/

    uses phpicalendar
    allows export
    no online authoring – in fact doesn't host at all, but pulls ics files from somewhere else

    http://upcoming.org/


    http://www.planzo.com/


    http://icaldates.com/

    affiliated with http://www.rockinsoftware.com/WinDates.aspx

    http://my.calendars.net/bsupcalendar/d01/10/2005?style=B&display=M&positioning=A

    No hay archivos en esta página. [Enseñar archivos/formulario]
    No hay comentarios en esta pagina. [Enseñar comentarios/formulario]