This section defines the SMIL-Boston animation module. SMIL-Boston animation is a framework for incorporating animation onto a time line and a mechanism for composing the effects of multiple animations. It includes a set of basic animation elements that can be applied to any XML-based language. Since these elements and attributes are defined in a module, designers of other markup languages can reuse the functionality in the SMIL-Boston animation module when they need to include animation in their language.
The SMIL-Boston animation module will build upon the functionality of the SMIL Animation [SMIL-ANIMATION] module currently being prepared for last call. The timing model included in SMIL Animation is based upon SMIL 1.0 [SMIL10], with some changes and extensions to support interactive (event-based) timing. The extensions are compatible with a core subset of the functionality expected to be included in the SMIL-Boston timing module.
This approach was used in the first version of SMIL Animation in order to facilitate release of an animation module well before SMIL-Boston is ready to go to Recommendation status. The SMIL-Boston animation module will not include its own timing model and will simply use the SMIL-Boston timing module. It will not redefine timing markup specifically for the purpose of animation.
This version of the document will only describe the enhancements expected to be included in the final version of this module. Further definition will follow in a later draft.
Animation is inherently time-based. Animation capabilities are described by new elements with associated attributes and semantics, as well as the SMIL timing attributes. Animation is modeled as a function that changes the presented value of a specific attribute over time.
SMIL Animation presents a consistent model for document authors and runtime implementers, and introduces a framework for integrating animation with the SMIL timing model. Animation only manipulates attributes of the target elements, and so does not require any specific knowledge of the target element semantics. Host languages may build upon the support in SMIL Animation to define additional and/or more specialized animation elements.
SMIL animation was written for integration into languages, such as SVG [SVG], that do not have other timing constructs. However, the need for declarative animation extends into languages (such as SMIL 1.0) which already have a great deal of support for timing. Animation in SMIL-Boston will overcome this limitation and extend SMIL Animation in a number of other significant ways.
SMIL-Boston animation will integrate fully with the SMIL-Boston language and and its more powerful timing module. Specific new functionality to be inherited from the SMIL-Boston timing module is expected to include:
Specific new functionality in the animation module is expected to include:
<excl>, and attributes such as
endon media elements.
endElement()methods can only be called on animation elements where