Network Working Group P. Hoschka INTERNET DRAFT W3C draft-hoschka-smil-media-type-12.txt April 2004 The application/smil and application/smil+xml Media Types 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. Abstract This document specifies the Media Type for version 1 and version 2 of the Synchronized Multimedia Integration Language (SMIL 1.0 and SMIL 2.0). SMIL allows integrating a set of independent multimedia objects into a synchronized multimedia presentation. 1. Introduction The World Wide Web Consortium has issued specifications which define version 1 [1] and version 2 [2] of the Synchronized Multimedia Integration Language (SMIL). This memo provides information about the application/smil and application/smil+xml Media Types. The definition is based on RFC3023 defining the use of the "application/xml" media type [3]. Before using the "application/smil" or "application/smil+xml" media type, implementors must thus be familiar with [3]. Expiration Date: October 2004 [Page 1]
INTERNET DRAFT April 2004 2. Synchronized Multimedia Integration Language SMIL allows integrating a set of independent multimedia objects into a synchronized multimedia presentation. Using SMIL, an author can 1.describe the temporal behavior of the presentation 2.describe the layout of the presentation on a screen 3.associate hyperlinks with media objects 4.define conditional content inclusion/exclusion based on system/network properties 3. Registration Information To: ietf-types@iana.org Subject: Registration of MIME media type application/smil MIME media type name: application MIME subtype name: smil Required parameters: none Optional parameters: charset All of the considerations described in RFC3023 also apply to the SMIL media type. profile See Section 5 of this document. Encoding considerations: All of the considerations described in RFC3023 also apply to the SMIL media type. Security considerations: SMIL documents contain a construct that allows "infinite loops". This is indispensable for a multimedia format. However, SMIL clients should foresee provisions such as a "stop" button that lets users interrupt such an "infinite loop". As with HTML, SMIL documents contain links to other media (images,sounds, videos, text, ...) and those links are typically followed automatically by software, resulting in the transfer of Expiration Date: October 2004 [Page 2]
INTERNET DRAFT April 2004 files without the explicit request of the user for each one. The security considerations of each linked file are those of the individual registered types. The SMIL language contains "switch" elements. SMIL provides no mechanism that assures the media objects contained in a "switch" element provide equivalent information. An author, knowing that one SMIL player will display one alternative of a "switch" and another will display a different part, can put different information in the two parts. While there are legitimate use cases for this, this also gives rise to a security consideration: The author can fool viewers into thinking that the same information was displayed when in fact it was not. In addition, all of the security considerations of RFC3023 also apply to SMIL. Interoperability considerations: SMIL documents contain links to other media objects. The SMIL player must be able to decode the media types of these media in order to display the whole document. To increase interoperability, SMIL has provisions for including alternate versions of a media object in a document. Published specification: see [1] and [2] Applications which use this media type: SMIL players and editors Additional information: Semantics of fragment identifiers in URIs: The SMIL media type allows to append a fragment identifier to a URI pointing to a SMIL resource (e.g. http://www.example.com/test.smil#foo). The semantics of fragment identifiers for SMIL resources are defined in [2]. Magic number(s): There is no single initial byte sequence that is always present for SMIL files. However, Section 4 below gives some guidelines for recognizing SMIL files. File extension(s): .smil, .smi, .sml NOTE: On the Windows operating system and the Macintosh platform, the ".smi" extension is used by other formats. Expiration Date: October 2004 [Page 3]
INTERNET DRAFT April 2004 To avoid conflicts, it is thus recommended to use the extension ".smil" for storing SMIL files on these platforms. Macintosh File Type Code(s): "TEXT", ".SMI", "SMIL" Object Identifier(s) or OID(s): none Person & email address to contact for further information: The author of this memo. Intended usage: COMMON Author/Change controller: The SMIL 1.0 and SMIL 2.0 specifications are a work product of the World Wide Web Consortium's SYMM Working Group. The W3C has change control over both specifications. To: ietf-types@iana.org Subject: Registration of MIME media type application/smil+xml MIME media type name: application MIME subtype name: smil+xml Required parameters: see registration of application/smil Optional parameters: see registration of application/smil Encoding considerations: see registration of application/smil Security considerations: see registration of application/smil Interoperability considerations: see registration of application/smil Published specification: see registration of application/smil Applications which use this media type: see registration of application/smil Additional information: see registration of application/smil Magic number(s): see registration of application/smil File extension(s): see registration of application/smil Macintosh File Type Code(s): see registration of application/smil Expiration Date: October 2004 [Page 4]
INTERNET DRAFT April 2004 Object Identifier(s) or OID(s): see registration of application/smil Person & email address to contact for further information: see registration of application/smil Intended usage: see registration of application/smil Author/Change controller: see registration of application/smil 4. Recognizing SMIL files All SMIL files will have the string "<smil" near the beginning of the file. Some will also begin with an XML declaration which begins with "<?xml", though that alone does not indicate a SMIL document. All SMIL 2.0 files must also include a declaration of the SMIL 2.0 namespace. This should appear shortly after the string "<smil", and should read 'xmlns="http://www.w3.org/2001/SMIL20/Language"'. 5. The "profile" optional parameter This parameter is meant to be used in MIME media type based content negotiation (such as that done with the HTTP "Accept" header) to negotiate for a variety of SMIL based languages. It is modelled after the "profile" parameter in the application/xhtml+smil MIME type registration [4], and is motivated by very similar considerations. The parameter is intended to be used only during content negotiation. It is not expected that it be used to deliver content, or that origin web servers have any knowledge of it (though they are welcome to). It is primarily targetted for use on the network by proxies in the HTTP chain that manipulate data formats (such as transcoders). The value of the profile attribute is a URI that can be used as a name to identify a language. Though the URI need not be resolved in order to be useful as a name, it could be a namespace, schema, or a language specification. As an example, user agents supporting only SMIL Basic (see http://www.w3.org/TR/smil20/smil-basic.html) currently have no standard means to convey their inability to fully support SMIL 2.0. While SMIL 2.0 Basic user agents are required to parse the full SMIL 2.0 language, there is potentially a substantial burden in receiving and parsing document content that will not be presented to the user, since its functionality is not included in SMIL Basic. In future, the functionality afforded by this parameter will also be achievable by the emerging work on a protocol to transfer CC/PP Expiration Date: October 2004 [Page 5]
INTERNET DRAFT April 2004 descriptions [5]. It is suggested that the "profile" parameter be used until the CC/PP protocol work has been finalized. An example use of this parameter as part of a HTTP GET transaction would be: Accept: application/smil+xml; profile="http://www.w3.org/2001/SMIL20/HostLanguage" 6. References [1] "Synchronized Multimedia Integration Language (SMIL) 1.0 Specification", W3C Recommendation REC-smil-19980615, http://www.w3.org/TR/1998/REC-smil/, July 1998. [2] "Synchronized Multimedia Integration Language (SMIL) 2.0 Specification", W3C Recommendation, http://www.w3.org/TR/smil20/, August 2001. [3] M. Murata, S. St.Laurent, D. Kohn E. "XML Media Types", RFC 3023, January 2001. [4] M. Baker, P. Stark. "The 'application/xhtml+xml' Media Type", RFC 3236, January 2002. [5] H. Ohto, J. Hjelm, G. Klyne, M. Butler, L. Tran, F. Reynolds, C. Woodrow "Composite Capability/Preferences Profiles (CC/PP): Structure and Vocabularies 1.0", W3C Recommendation http://www.w3.org/TR/CCPP-struct-vocab/, January 2004. 6. Author's Address Philipp Hoschka W3C/INRIA 2004, route des Lucioles - B.P. 93 06902 Sophia Antipolis Cedex FRANCE Phone: +33 (0)492387984 Fax:+33 (0)493657765 EMail: ph@w3.org Expiration Date: October 2004 [Page 6]