As indicated, Scrivito stores all content objects in a database, keeping track of their attributes. The example page above is represented as a data structure similar to the one you can see here. An attribute of the widgetlist
type, here body
, is an array whose elements represent the widgets it contains.
The attributes given to objects via their object class are custom attributes. However, every content object also has a built-in set of system attributes, e.g. id
for identifying them, or _path
for maintaining the tree-like hierarchy objects may be part of. The data Scrivito stores for a content object includes both kinds of attributes.
As pointed out above, images are handled as individual objects that are referenced wherever they are needed. Thus, the value of the image
attribute of the ImageWidget
is an ID referencing the image object in the system.