A method for recording pushed interactive data streams of a program. A pushed
data
stream is broadcast to a receiving station. The data stream includes one or more
data objects. The data stream may also reference to live data objects which are
intended for immediate consumption and become obsolete thereafter. The data stream
may include a file table and object properties corresponding to the data objects.
When the data stream is received by the receiving station, the individual data
objects are extracted from the data stream. The data objects, accompanying object
properties and the file table are then stored on a storage device. Data objects
which are external to the data stream or to the program (e.g., data objects from
other carousels) are retrieved and are also stored. Live data objects are not stored,
but references to these data objects are stored, so that when the program is replayed,
current versions of the referenced live data objects can be used. A program not
being recorded may contain data objects which are flagged to be cached which are
recorded automatically. Consequently, other programs may subsequently access them
from the recording when they are played.