Rich media technologies like streaming video, gigapixel panoramas, and terapixel maps are becoming broadly available on the Internet. Although rich media offer wonderful opportunities for creating experiences that have strong interactive and narrative elements, the ways in which users experience these media are widely disparate, involving a plethora of similar-yet-different web sites and mobile applications, each with its own proprietary rendering logic, data formats, and back-end services.
In this paper we introduce RIN —a declarative specification for orchestrating interactive, cinematic narratives that thread through an extensible set of rich media experiences. RIN’s XML (and JSON equivalent) markup makes it straightforward to represent complex, cinematic fly-throughs that fluidly compose diverse media technologies, including gigapixel panoramas, terapixel online maps, traditional paginated documents, and data visualizations, choreographed together with audio, text, and video. RIN introduces a concise representation of the logical state of an experience, called Small State, and the specification of the evolution of this state over time, called an Experience Stream. These abstractions along with others introduced in this paper enable a concise, declarative specification for a wide range of rich media experiences. We believe RIN can serve as the foundation for the next generation of standards-based rich media on the Internet, enabling a variety of new and compelling scenarios.