Data Definition
Data definitions are used by the CMS to generate forms-based input fields for the creation and editing of page content, as well as to generate XML data from the input provided by a user in said input fields. They consist of XML data authored either by hand or using the data definition builder (found in /common/data definition builder) that describe how a certain set of data is structured. For example, an article in an online magazine might be described as follows:
When applied to a page, you would see a series of form input fields: two text fields labeled 'Headline' and 'Location', a text field with a calendar chooser for 'Date', a file chooser for 'Image' and the multi-line WYSIWYG text field 'Main Content'. When the user fills out this form, the CMS again uses the data definition to make the data available as XML, something like this:
This XML data can then be transformed by an XSLT stylesheet for the purposes of presentation or multi-purposing of content. Simply put, data definitions allow one to define a structure, which all data of a specific type should exhibit, making automation of presentation and repurposing possible.