Network Working Group T. Hare Internet-Draft Individual Expires: November 16, 2004 May 18, 2004 Guideline for use of XML with iCalendar elements draft-hare-xcalendar-00 Status of this Memo This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on November 16, 2004. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract This memo defines a guideline for using XML to represent calendaring information that corresponds to the iCalendar, Internet Calendaring and Scheduling Core Object Specification defined by [RFC 2445] and the protocols defined by [RFC 2446], [RFC2447] and [CAP]. This memo applies to all [RFC 2445] extensions and modifications. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" and "OPTIONAL" in this document are to be interpreted as described in [RFC 2119]. Hare Expires November 16, 2004 [Page 1] Internet-Draft iCalendar XML Guideline May 2004 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Using XML For Representing iCalendar . . . . . . . . . . . . . 5 3. XML and XSL Dependencies . . . . . . . . . . . . . . . . . . . 6 4. Working With Standard and XML iCalendar Representations . . . 7 5. Conversion . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6. Mixed Use of Both Representations . . . . . . . . . . . . . . 9 7. Using Data Types . . . . . . . . . . . . . . . . . . . . . . . 10 8. Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . 11 9. Emailing documents with iCalendar XML Representation . . . . . 13 10. iCalendar XML Representation and File Systems . . . . . . . 14 11. Example Usage . . . . . . . . . . . . . . . . . . . . . . . 15 11.1 Example DTD . . . . . . . . . . . . . . . . . . . . . . . 15 11.2 An example XSL transformation . . . . . . . . . . . . . . 28 11.3 A well-formed and valid iCalendar XML document . . . . . . 31 11.4 Including binary content in attachments . . . . . . . . . 32 11.5 Including binary content inline . . . . . . . . . . . . . 32 11.6 iCalendar XML document with multiple iCalendar objects . . 33 11.7 Using the iCalendar namespace . . . . . . . . . . . . . . 34 11.8 Publish meeting information . . . . . . . . . . . . . . . 35 11.9 Publish transparent annual event . . . . . . . . . . . . . 35 11.10 Meeting invitation . . . . . . . . . . . . . . . . . . . 36 11.11 Assign a to-do . . . . . . . . . . . . . . . . . . . . . 36 11.12 Publish busy time . . . . . . . . . . . . . . . . . . . 37 11.13 Request busy time . . . . . . . . . . . . . . . . . . . 38 11.14 Issue a CAP command . . . . . . . . . . . . . . . . . . 38 11.15 A well-formed and valid XML document which can be transformed into iCalendar . . . . . . . . . . . . . . . 38 12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . 41 13. Security Considerations . . . . . . . . . . . . . . . . . . 42 Author's Address . . . . . . . . . . . . . . . . . . . . . . . 42 A. Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . 43 Intellectual Property and Copyright Statements . . . . . . . . 45 Hare Expires November 16, 2004 [Page 2] Internet-Draft iCalendar XML Guideline May 2004 1. Introduction The Extended Markup Language (XML) as defined in [XML] has gained widespread attention as a "web friendly" syntax for representing and exchanging documents and data on the Internet. This interest includes requests for and discussion of possible document type definitions (DTD) and name-spaces for IETF standard formats such as that defined by [RFC 2445], [RCF 2446], and [RFC 2447]. This memo defines how XML can be used to represent iCalendar objects,and how iCalendar namespaces can be used with other XML documents. An example DTD is provided although use of a DTD is not required. This memo does not try to enforce any specific one-to-one mapping between XML objects and iCalendar objects, but instead attempts to document the method whereby XML developers can provide interoperability with iCalendar. NOTE: The [RFC 2445] is the definitive reference for the definition of iCalendar semantics. This memo only provides a guideline for representing such semantics in XML. This memo does not introduce any new semantics for items already defined by [RFC 2445]. [RFC 2446], [RFC 2447], and [CAP] are the references for protocols for the exchange of iCalendar objects. This memo does not introduce any new protocols or functions beyond those in the respective documents. An attempt has been made to guide the developer in use of XML to represent iCalendar semantics, allowing XML-based applications to make use of the iCalendar [RFC2445] and related protocols [RFC2446], [RFC2447], and [CAP] semantics and to provide interoperability between XML-based applications and iCalendar-compliant applications. The publication of XML version 1.0 was followed by publication of two World-wide Web Consortium (W3C) recommendations relevant to this memo.The first was a recommendation on "Namespaces in XML" and the other was a recommendation on "Extensible Stylesheet Language" and "Extensible Stylesheet Language Transformation" (XSL and XSLT). A XML name-space is a collection of names, identified by a URI. An XSL transformation(XSLT)is a document in the Extensible Stylesheet Language (XSL) which provide a method for transforming an XML document into some other form. In anticipation of the use of XML namespaces, this memo includes the definition of URIs to be used to identify the namespaces for iCalendar [RFC 2445], iTIP [RFC 2446], iMIP [RFC 2447] and CAP elements. XML applications that conform to this memo and also use namespaces MAY include other non-iCalendar namespaces. Hare Expires November 16, 2004 [Page 3] Internet-Draft iCalendar XML Guideline May 2004 Documents MAY include a Document Type Definition (DTD), an XML schema, or may reference external versions of either. This memo allows documents containing iCalendar XML objects to be constructed with either. DTDs and Schemas are outside the scope of this memo. A document containing a DTD or schema MAY include definitions for calendar elements. Any document conforming to this memo MUST provide an XSL transformation which will render those calendar elements into standard iCalendar/iTIP/iMIP/CAP (as appropriate) elements. Hare Expires November 16, 2004 [Page 4] Internet-Draft iCalendar XML Guideline May 2004 2. Using XML For Representing iCalendar XML is a simplified version of the text markup syntax defined by ISO 8879, Standard Generalized Markup Language (SGML). XML was published as a proposed recommendation [XML] by the World-wide Web Consortium (W3C) on February 10, 1998. Hare Expires November 16, 2004 [Page 5] Internet-Draft iCalendar XML Guideline May 2004 3. XML and XSL Dependencies This memo specifies the XML representation for the standard iCalendar elements defined by [RFC 2445], [RFC 2446], [RFC2447], and [CAP]. There are no XML dependencies other than the [XML] and the [XMLNS] recommendations. This memo requires that conforming documents include a reference to an [XSL] stylesheet for transforming the document into standard iCalendar format. How the transformation is done is left to the implementor. Providing an XSL transform into iCalendar objects does not preclude providing other transforms. Hare Expires November 16, 2004 [Page 6] Internet-Draft iCalendar XML Guideline May 2004 4. Working With Standard and XML iCalendar Representations This memo provides a guideline for using alternative, XML representations for the standard iCalendar elements defined in [RFC 2445]. These alternative representations SHOULD provide the same semantics as that defined in the standard format. It is the goal of this memo to allow all [RFC 2445] extensions and\ modifications to be translated into and from this XML format. Hare Expires November 16, 2004 [Page 7] Internet-Draft iCalendar XML Guideline May 2004 5. Conversion This memo requires any compliant document to be transformable into standard iCalendar information. It is recognized that such conversion MAY be asymmetric, since compliant documents MAY include information which is not representable in iCalendar and which would be lost during any "round trip" conversions. To formalize and standardize the interchange of iCalendar information through XML, each conforming document MUST include reference to an XSL stylesheet which can transform the document into a standard iCalendar [RFC 2445] document of MIME content-type "text/calendar". Hare Expires November 16, 2004 [Page 8] Internet-Draft iCalendar XML Guideline May 2004 6. Mixed Use of Both Representations As previously indicated, conversion between the XML and standard representations of iCalendar is a straightforward process using XSL transformations. In addition, mixed use of both representations is also possible using MIME objects. While MIME multipart content-types can be used to provide a mix of both the standard and XML representations, this is NOT required. Instead, each document MUST include a reference to an XSL stylesheet which can transform the XML representation into standard iCalendar (and possibly, iTIP, iMIP, or CAP) syntax. With the use of the MIME multipart content-types, compound MIME entities containing a mix of the standard and XML representations can be specified. Internet applications conforming to this memo MAY send both the standard and XML representation of the iCalendar objects, to provide compatibility with Internet applications which cannot process the required XSL transformation. Hare Expires November 16, 2004 [Page 9] Internet-Draft iCalendar XML Guideline May 2004 7. Using Data Types Strong "data typing" is an integral design principle to the iCalendar format. Strong data typing in iCalendar means that the format type for each property value is well known. Within [RFC 2445], the data type is called the "value type". The standard format defined by [RFC 2445] specifies a default value type for each calendar and component property. In addition, many of the property definitions allow for the specification of alternate value types. The required XSL transformation in this memo MUST create iCalendar elements with proper types. Consult iCalendar [RFC 2445] for documentation of value types. Hare Expires November 16, 2004 [Page 10] Internet-Draft iCalendar XML Guideline May 2004 8. Namespaces [XMLNS] defines "Namespaces in XML" to be a collection of names, identified by a URI, which are used in XML documents as element types and attribute names. The [XML] specification does not include a definition for namespaces, but does set down some guidelines for experimental naming of namespaces. XML namespaces allow multiple markup vocabulary in a single document. Documents and applications conforming to this memo MAY use multiple namespaces with the iCalendar, iTIP, iMIP, and CAP namespaces. Multiple namespaces MUST be used for the different iCalendar and protocol elements. This requirement is intended to provide clarity in the document, by discriminating calendar object elements from protocol elements. The document at the namespace URI does not contain any defintions but serves as a unique identifier to allow specification of different namespaces. Applications complying with this memo MUST use the following URIs for namespace elements: iCalendar: http://www.ietf.org/rfc/rfc2445.txt iTIP: http://www.ietf.org/rfc/rfc2446.txt iMIP: http://www.ietf.org/rfc/rfc2447.txt CAP: http://www.ietf.org/internet-drafts/draft-ietf-calsch-cap-12.txt NOTE: the URI for CAP will be replaced with the RFCxxxx reference when CAP is completed. The following is an example of a well-formed but invalid "xdoc" document type that includes elements and attribute lists from the iCalendar and iTIP namespaces. The semantics of the "xmlns" attribute, and any attribute with "xmlns:" as a prefix, is as specified in [XMLNS]. It is used to declare a namespace in XML. Hare Expires November 16, 2004 [Page 11] Internet-Draft iCalendar XML Guideline May 2004 iCalendar provides for "experimental" elements. These elements are represented in iCalendar with element names beginning with "X-". Any experimental element in a document which conforms to this memo MUST be represented by a namespace different than those used for iCalendar, iTIP, iMIP, or CAP. This requirement is intended to simplify implementation of extensions and experimental items. Hare Expires November 16, 2004 [Page 12] Internet-Draft iCalendar XML Guideline May 2004 9. Emailing documents with iCalendar XML Representation It is expected that iCalendar XML documents will need to be sent over SMTP/MIME email. The "text/xml" and "application/xml" content-types have been registered for XML documents. All documents conforming to this memo SHOULD be sent as content-type "text/xml" or "application/xml". When iCalendar elements may be mixed with others, it is not practical for an MUA to determine, without opening the document, if iCalendar XML elements exist within the document. If a part of a MIME multi-part message contains only XML-represented iCalendar objects, and it is wished to provide the ability for an application to determine content based upon the MIME headers, the content-types "text/xml+calendar" or "application/xml+calendar" MAY be used. Internet applications conforming to this memo MUST include in any iCalendar XML document that is sent, the XSL stylesheet reference to be used to provide transformation from the XML representation to the standard representation. This restriction guarantees that a standard iCalendar object can be produced from the iCalendar XML document. Internet applications conforming to this memo MAY send the iCalendar XML document in a "multipart/alternative" MIME entity that also contains an equivalent iCalendar object in the standard format defined by [RFC 2445], to provide compatibility with applications which cannot process XML or XSL transformations. An XML application comforming to the guidelines in this memo MUST be able to receive and properly process the "application/xml" document contained within a "multipart" message content-type, and MUST be capable of performing the XSL transformation of the iCalendar elements of the document into a standard iCalendar document. Hare Expires November 16, 2004 [Page 13] Internet-Draft iCalendar XML Guideline May 2004 10. iCalendar XML Representation and File Systems The iCalendar XML documents will be stored in file systems. The accepted practice for file extensions for XML documents is the text "XML". However, IF a document contains only XML representations of iCalendar data, then for file association with applications that can directly process this document type, it is RECOMMENDED that the file extension be the text "xcs". Hare Expires November 16, 2004 [Page 14] Internet-Draft iCalendar XML Guideline May 2004 11. Example Usage The following sections provide various examples of documents using iCalendar elements in XML. 11.1 Example DTD The following is a DTD which can be used to represent iCalendar [RFC 2445] objects. While this DTD represents the iCalendar objects as currently defined, this document does not imply that this is the only way to represent them, nor that this is the best DTD to do so. This is provided as an example, only. Hare Expires November 16, 2004 [Page 15] Internet-Draft iCalendar XML Guideline May 2004 Hare Expires November 16, 2004 [Page 16] Internet-Draft iCalendar XML Guideline May 2004 Hare Expires November 16, 2004 [Page 18] Internet-Draft iCalendar XML Guideline May 2004 Hare Expires November 16, 2004 [Page 21] Internet-Draft iCalendar XML Guideline May 2004 Hare Expires November 16, 2004 [Page 26] Internet-Draft iCalendar XML Guideline May 2004 Hare Expires November 16, 2004 [Page 27] Internet-Draft iCalendar XML Guideline May 2004 11.2 An example XSL transformation The following is an example of an XSL transformation which can convert an xCalendar document into an iCalendar [RFC 2445] text object. Again, this is an example and not presented as the only or best way to accomplish the transformation. Hare Expires November 16, 2004 [Page 28] Internet-Draft iCalendar XML Guideline May 2004 BEGIN:VCALENDAR METHOD:PUBLISH : END:VCALENDAR BEGIN: END: Hare Expires November 16, 2004 [Page 29] Internet-Draft iCalendar XML Guideline May 2004 : : , : ; Hare Expires November 16, 2004 [Page 30] Internet-Draft iCalendar XML Guideline May 2004 ; = 11.3 A well-formed and valid iCalendar XML document The following is a simple example of a iCalendar XML document. This document is both a well-formed and valid XML document. It also contains the required reference to the XSL transformation. The iCalendar object specifies an appointment. 19981116T150000@cal10.host.com 19981116T145958Z Project XYZ Review Conference Room 23A 19981116T163000Z 19981116T190000Z Appointment Hare Expires November 16, 2004 [Page 31] Internet-Draft iCalendar XML Guideline May 2004 11.4 Including binary content in attachments The following is an example of a valid iCalendar XML document that also includes an external reference to an attachment. The iCalendar object specifies a meeting invitation with an attachment. REQUEST 2.0 -//HandGen//NONSGML vGen v1.0//EN 19981211T133000@cal1.host.com 19981211T132928Z cap://host.com/jim 19981212T150000Z 19981212T160000Z Department Meeting Conference Room 23A jim@host.com MAILTO:joe@host.com MAILTO:steve@host.com http://host.com/pub/photos/holiday.jpg 11.5 Including binary content inline The following is an example of a well-formed and valid iCalendar XML document that includes an attachment as inline binary content. The iCalendar object specifies a meeting invitation with an attachment. Hare Expires November 16, 2004 [Page 32] Internet-Draft iCalendar XML Guideline May 2004 REQUEST 2.0 -//HandGen//NONSGML vGen v1.0//EN 19981211T133000@cal1.host.com 19981211T132928Z MAILTO:jim@host.com 19981212T150000Z 19981212T160000Z Department Meeting Conference Room 23A MAILTO:jim@host.com MAILTO:joe@host.com MAILTO:steve@host.com MIICajCCAdOgAwIBAgI CBEUwDQEEBQAwdzELMAkGA1UEBhMCVVMxLDAqBgNVBAoTI05ldHNjYXB lIEjYXRpb25z...and so on...IENvcnBvc== 11.6 iCalendar XML document with multiple iCalendar objects The following is an example of a well-formed and valid iCalendar XML document that includes more than one iCalendar object. Hare Expires November 16, 2004 [Page 33] Internet-Draft iCalendar XML Guideline May 2004 PUBLISH 2.0 -//HandGen//NONSGML vGen v1.0//EN 19981009T233000@cal1.host.com 19981009T232928Z 19981010T000000Z 19981010T235959Z Register for conference 2 2.0 -//HandGen//NONSGML vGen v1.0//EN PUBLISH 19981009T233010@cal1.host.com 19981009T233000Z 19981120T133000Z 19981122T183000Z IT Conference Downtowner Hotel 11.7 Using the iCalendar namespace The following is an example of a snippet of a XML document that includes elements from the iCalendar name-space. 19981123T133000Z 19981123T203000Z 1234567 999.99 Hare Expires November 16, 2004 [Page 34] Internet-Draft iCalendar XML Guideline May 2004 11.8 Publish meeting information The following is a snippet of an iCalendar XML document that publishes information about a meeting. 2.0 -//hacksw/handcal//NONSGML 1.0//EN PUBLISH 19970901T130000Z-123401@host.com 19970901T130000Z 19970903T163000Z 19970903T190000Z Annual Employee Review PRIVATE Business,Human Resources 11.9 Publish transparent annual event The following is a snippet of an iCalendar XML document that publishes information about an annually repeating event that is transparent to busy time searches. 2.0 PUBLISH 19990101T125957Z-123403@host.com 19990101T130000Z 19991102 Our Blissful Anniversary CONFIDENTIAL TRANSPARENT Anniversary,Personal,Special Occasion FREQ=YEARLY Hare Expires November 16, 2004 [Page 35] Internet-Draft iCalendar XML Guideline May 2004 11.10 Meeting invitation The following is a snippet of an iCalendar XML document that specifies an invitation for a meeting. The meeting occurs on the first Monday of each year for five years. REQUEST 2.0 -//hacksw/handcal//NONSGML 1.0//EN 19981220T130000Z-123403@host.com 19981220T130050Z MAILTO:corprel@host.com 19990104T140000Z 19990104T220000Z Annual Stockholders Meeting One Corporate Drive, Wilmington, DL MAILTO:mrbig@host.com CAP:host.com/stockholders Business,Meeting,Special Occasion FREQ=YEARLY;COUNT=5;BYDAY=1MO 11.11 Assign a to-do The following is a snippet of an iCalendar XML document for a to-do. Hare Expires November 16, 2004 [Page 36] Internet-Draft iCalendar XML Guideline May 2004 REQUEST 2.0 -//hacksw/handcal//NONSGML 1.0//EN 19990104T133402@ical1.host.com 19990104T133410Z 19990104 19990129 MAILTO:dboss@host.com Periodic Self Review Complete your self review. Contact me if you questions. 1 CONFIDENTIAL CAP:dilbert@host.com 11.12 Publish busy time The following is an iCalendar XML document that publishes busy time information. The default value for the "method" attribute is "PUBLISH" and does not need to be specified in this example. 2.0 -//hacksw/handcal//NONSGML 1.0//EN 19980313T133000@ical1.host.com 19990104T133010Z CAP:host.com/jsmith 19980313T141711Z 19980410T141711Z jsmith.ifb 19980314T233000Z/19980315T003000Z 19980316T153000Z/19980316T163000Z 19980318T030000Z/19980318T040000Z Hare Expires November 16, 2004 [Page 37] Internet-Draft iCalendar XML Guideline May 2004 11.13 Request busy time The following is a snippet of an iCalendar XML document that requests a calendar user's busy time information. REQUEST 2.0 -//hacksw/handcal//NONSGML 1.0//EN 19970901T083000@ical1.host.com 19970901T083000Z MAILTO:jane_doe@host1.com 19971015T050000Z 19971016T050000Z MAILTO:john_public@host2.com 11.14 Issue a CAP command The following is a snippet of an iCalendar XML document that issues a CAP command to delete a UID. 2.0 -//hacksw/handcal//NONSGML 1.0//EN relcalid-22 DELETE SELECT VEVENT FROM VAGENDA WHERE UID = 'abcd12345' 11.15 A well-formed and valid XML document which can be transformed into iCalendar The following is a simple example document which contains some date and time elements . This document is both a well-formed and valid XML document. It contains a DTD and references a stylesheet which transforms the schedule elements into iCalendar. The time used is a Hare Expires November 16, 2004 [Page 38] Internet-Draft iCalendar XML Guideline May 2004 "floating" time, without timezone information, to simplify the example. Frank Dylan Rolling Blunder Revue East Sandusky, Ohio Civic Auditorium 01/03/1997 Sandlot, NM Lost Highway Cafe 08/09/1997 The required stylesheet to transform the document into an iCalendar object (tour2ical.xsl) . Note that some of the transformations, notably date and time, would need more work to provide the robustness usually needed for applications; the simple method here is used as an example only. Hare Expires November 16, 2004 [Page 39] Internet-Draft iCalendar XML Guideline May 2004 BEGIN:VCALENDAR METHOD:PUBLISH BEGIN:VEVENT DTSTAMP: DTSTART: SUMMARY: DESCRIPTION: T Hare Expires November 16, 2004 [Page 40] Internet-Draft iCalendar XML Guideline May 2004 12. Acknowledgments This document is based on previous work by Frank Dawson, Eric R. Plamondon, Doug Royer, and Surendra K. Reddy, who have been retained as authors on this document. Their previous xCalendar work also acknowledged the contributions of Greg FitzPatrick, Charles Goldfarb, Paul Hoffman, Lisa Lippert, and Thomas Rowe. The rdf2ical.xsl transformation created by Masahide Kanzaki provided inspiration and concepts for the XSL transformation in this document. The primary author of this version of the document (T. Hare), however, assumes responsibility for all content, omissions, and especially errors. Hare Expires November 16, 2004 [Page 41] Internet-Draft iCalendar XML Guideline May 2004 13. Security Considerations CDATA Sections - - A XML iCalendar document may contain CDATA sections to represent content for specific element types. The CDATA section specifies arbitrary character data that is not meant to be interpreted. It is not scanned by the XML parser for markup. While this memo restricts that any CDATA section MUST NOT contain markup or other such alternate representation for the property value, in general, CDATA section from a non-conformant implementation can contain content such as HTML markup. HTML text can be used to invoke programs. Implementors should be aware that this may leave an implementation open to malicious attack that might occur as a result of executing the markup in the CDATA section. PROCEDURAL ALARMS - - A XML iCalendar document can be created that contains a "VEVENT" and "VTODO" calendar component with "VALARM" calendar components. The "VALARM" calendar component can be of type PROCEDURE and can have an attachment containing some sort of executable program. Implementations that incorporate these types of alarms are subject to any virus or malicious attack that might occur as a result of executing the attachment. ATTACHMENTS - - A XML iCalendar document can include references to Uniform Resource Locators that can be programmed resources. Implementers and users of this memo should be aware of the network security implications of accepting and parsing such information. In addition, the security considerations observed by implementations of electronic mail systems should be followed for this memo. Author's Address Tim Hare An individual 3048 Bell Grove Dr. Tallahassee, FL 32308 US Phone: (850)414-4209 EMail: TimHare@comcast.net Hare Expires November 16, 2004 [Page 42] Internet-Draft iCalendar XML Guideline May 2004 Appendix A. Bibliography [FPI] F. Dawson, "iCalendar Formal Public Identifier", Internet Draft, http://www.internic.net/internet-drafts/draft-calsch-icalfpi-00.txt, September 1998. [ISO9070] "Information Technology_SGML Support Facilities_Registration Procedures for Public Text Owner Identifiers", ISO/IEC 9070, Second Edition, International Organization for Standardization, April 1991. [RFC 2045] N. Freed, N. Borenstein, "Multipurpose Internet Mail Extensions (MIME) - Part One: Format of Internet Message Bodies", RFC 2045, November 1996. [RFC 2119] S. Bradner, "Key words for use in RFCs to Indicate Requirement Levels", RFC 2119, http://www.ietf.org/rfc/rfc2119.txt, March 1997. [RFC 2445] F. Dawson and D. Stenerson, "Internet Calendaring and Scheduling Core Object Specification (iCalendar)", RFC 2445, http:/ /www.ietf.org/rfc/rfc2445.txt, November 1998. [RFC 2446] F. Dawson, R. Hopson, S. Mansour, S. Silverberg "iCalendar Transport- independent Interoperability Protocol", RFC 2446, http://www.ietf.org/rfc/rfc2446.txt, November 1998 [RFC 2447] F. Dawson, S. Mansour, S. Silverberg "iCalendar Message-based Interoperability Protocol", RFC 2447, http://www.ietf.org/rfc/rfc2447.txt, November 1998 [CAP] G. Babics, P. Hill, S. Mansour, D. Royer "Calendar Access Protocol", Internet-Draft, http://www.ietf.org/internet-drafts/draft-ietf-calsch-cap-12.txt, January 2004 [Previous xCalendar work] F. Dawson, S. Reddy, D. Royer, E. Plamondon "iCalendar DTD Document (xCal)", Internet-Draft, http://www.ietf.org/internet-drafts/draft-ietf-many-xcal-03.txt, July 2002 [XML] "Extensible Markup Language (XML)", Worldwide Web Consortium, http://www.w3.org/TR/REC-xml, October 2000. [XSL] "Extensible Stylesheet Language (XSL)", Worldwide Web Consortium, http://www.w3.org/TR/xsl, October 2001. Hare Expires November 16, 2004 [Page 43] Internet-Draft iCalendar XML Guideline May 2004 [XSLT] "Extensible Stylesheet Language Transformations (XSLT)", Worldwide Web Consortium, http://www.w3.org/TR/xslt, November 1999. Hare Expires November 16, 2004 [Page 44] Internet-Draft iCalendar XML Guideline May 2004 Intellectual Property Statement The IETF takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on the IETF's procedures with respect to rights in standards-track and standards-related documentation can be found in BCP-11. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification can be obtained from the IETF Secretariat. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to practice this standard. Please address the information to the IETF Executive Director. Full Copyright Statement Copyright (C) The Internet Society (2004). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assignees. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION Hare Expires November 16, 2004 [Page 45] Internet-Draft iCalendar XML Guideline May 2004 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society. Hare Expires November 16, 2004 [Page 46]