Attention

TYPO3 v8 has reached its end-of-life March 31st, 2020 and is not maintained by the community anymore.

You can order Extended Long Term Support (ELTS) here: TYPO3 ELTS.

Sheet references

If Data Structures are arranged in a collection of sheets you can choose to store one or more sheets externally in separate files. This is done by setting the value of the <[sheet ident]> tag to a relative file reference instead of being a definition of the <ROOT> element.

Example

Taking the Data Structure from the previous example we could rearrange it in separate files:

Main Data Structure:

<T3DataStructure>
  <sheets>
        <sDEF>fileadmin/sheets/default_sheet.xml</sDEF>
    <s_welcome>fileadmin/sheets/welcome_sheet.xml</s_welcome>
  </sheets>
</T3DataStructure>

EXT:news/Configuration/FlexForms/Sheets/Default.xml:

<T3DataStructure>
   <ROOT>
      <TCEforms>
         <sheetTitle>LLL:EXT:felogin/locallang_db.xml:tt_content.pi_flexform.sheet_general</sheetTitle>
      </TCEforms>
      <type>array</type>
      <el>
         <showForgotPassword>
            <TCEforms>
               <label>LLL:EXT:felogin/locallang_db.xml:tt_content.pi_flexform.show_forgot_password</label>
               <config>
                  <type>check</type>
                  <items type="array">
                     <numIndex index="1" type="array">
                        <numIndex index="0">LLL:EXT:lang/locallang_core.xml:labels.enabled</numIndex>
                        <numIndex index="1">1</numIndex>
                     </numIndex>
                  </items>
               </config>
            </TCEforms>
         </showForgotPassword>
         <showPermaLogin>
            <TCEforms>
               <label>LLL:EXT:felogin/locallang_db.xml:tt_content.pi_flexform.show_permalogin</label>
               <config>
                  <default>1</default>
                  <type>check</type>
                  <items type="array">
                     <numIndex index="1" type="array">
                        <numIndex index="0">LLL:EXT:lang/locallang_core.xml:labels.enabled</numIndex>
                        <numIndex index="1">1</numIndex>
                     </numIndex>
                  </items>
               </config>
            </TCEforms>
         </showPermaLogin>
         // ...
      </el>
   </ROOT>
</T3DataStructure>

and so on for the two other sheets.