2. Requirements
The design and specification of the SMIL DOM must meet the following set
of requirements.
General requirements:
-
Inherit DOM Level 2 core functionality - the SMIL DOM will be based
upon the generic Core DOM foundation.
-
Support constraints on DOM core functionality (e.g. mutation),
especially at runtime.
-
Support both SMIL documents as well as hybrid documents that
integrate XML/HTML and SMIL functionality.
-
Support and reflect the modularization of SMIL functionality.
It must be possible to design hybrid documents combining XML/HTML and
SMIL functionality, that can in turn support a hybrid or combined
DOM.
SMIL specific requirements:
-
Support SMIL specific elements. It must be possible to access and
manipulate all SMIL elements within a SMIL document or a hybrid
document that integrates XML and SMIL modules.
-
Support SMIL specific attributes and methods. It must be possible to
access and manipulate the SMIL attributes and methods on SMIL
elements as well as XML/HTML elements in a hybrid documents.
-
Support SMIL specific events, including:
- Specification of statically defined SMIL events
- Support for dynamically defined events
- The ability to create and raise all the above events
-
Support SMIL semantics. This includes various constraints on document
structure, attribute values and method invocation.
-
Define basic control interface for media player/renderers. Do not
define a plug-in API, but rather just the timing and sync control
interface.
It is not yet clear what all the requirements ([DOM Requirements])
on the SMIL DOM will be related to the modularization of SMIL
functionality. While the HTML Working Group is also working on
modularization of XHTML, a modularized HTML DOM is yet to be defined. In
addition, there is no general mechanism yet defined for combining DOM
modules for a particular profile.