As with regular components, you may call data components with
cache=yes (or cache=defer or cache=force or
cache=old). Data components use the <:cache:>
(see section 4.5, page
Arguments to cached data components must obey the same
restrictions as arguments
to cached regular components (see section 4.2.6, page
Cached data components must also obey another restriction: the object returned by a data component must be pickleable. That's Python's way of saying serializable. If you don't know much about Python's pickle module, don't worry. The rule of thumb is: practically any kind of object you work with is pickleable. All Python basic data types can be pickled, as can instances of any classes you design. Therefore there is truly very little restriction on the kinds of objects you can return from a data component.