Attention
TYPO3 v11 has reached end-of-life as of October 31th 2024 and is no longer being maintained. Use the version switcher on the top left of this page to select documentation for a supported version of TYPO3.
Need more time before upgrading? You can purchase Extended Long Term Support (ELTS) for TYPO3 v11 here: TYPO3 ELTS.
T3DataStructure
TYPO3 offers an XML format, T3DataStructure, which defines a hierarchical data structure. In itself the data structure definition does not do much - it is only a back bone for higher level applications which can add their own configuration inside.
The T3DataStructure could be used for different applications in theory, however it is commonly only used in the context of FlexForms.
FlexForms are used in the contexts:
- TCA form type FlexForms: The type allows users to build information hierarchies (in XML) according to the data structure. In this sense the Data Structure is like a DTD (Document Type Definition) for the backend which can render a dynamic form based on the Data Structure.
- The configuration of plugins of many common extensions with FlexForms like news.
- FlexForms can be used for containers created by the extensions like container or gridelements
- dce an an extension to create content elements based on FlexForms.
This documentation of a data structure will document the general aspects of the XML format and leave the details about FlexForms and TemplaVoila to be documented elsewhere.
Some other facts about Data Structures (DS):
- A Data Structure is defined in XML with the document tag named "<T3DataStructure>"
- The XML format generally complies with what can be converted into a
PHP array by
General
- thus it directly reflects how a multidimensional PHP array is constructed.Utility:: xml2array () - A Data Structure can be arranged in a set of "sheets". The purpose of sheets will depend on the application. Basically sheets are like a one-dimensional internal categorization of Data Structures.
- Parsing a Data Structure into a PHP array can be achieved by passing it to
General
(see the Parsing a Data Structure section).Utility:: xml2array () - "DS" is sometimes used as short for Data Structure
Next chapters