The DynamicProperty element is a child element of DynamicProperties.
DynamicProperties can have one or more DynamicProperty children.
The DynamicProperty element has attributes. Valid attributes depend on the parent element of Form, BusinessRecord, BusinessApplication, or Database.
   <File>
      <DynamicProperties>
        <DynamicProperty/>
        <DynamicProperty/>
        <DynamicProperty/>
      </DynamicProperties>
    </File>
| Attribute | Options | 
|---|---|
| name | Property identifier, name that appears in the xml. Must be unique among all the dynamic properties. The property gets associated with the Item / Relation through name. | 
| description | Textual description of the property. Displayed in property view tooltip. | 
| type | Property type. Defines how the property editor behaves.
 A custom property is a property which uses a property editor defined by the customer. We provide only 2 types of custom editors: 
  | 
| initialValue | Default value used when no user value is set. This is the value set when the restore button is used. The default value is not saved in the file. | 
| dynamicContent (Form) | Name of the dynamic content source if the property is dynamic. The available dynamic contents
in Form Designer are:
  | 
| dynamicContent (BusinessApplication) | Name of the dynamic content source if the property is dynamic.  The available dynamic
contents in BusinessApplication are: 
  | 
| editorInfo | 
 Semi-colon separated list of attribute:value pair containing the property editor information. For example:
 
editorInfo="contains:ButtonEdit|CheckBox |ComboBox|DateEdit|Edit|FFImage|FFLabel |Field|ProgressBar|RadioGroup|Slider |SpinEdit|TextEdit|TimeEdit" 
  | 
| label | Text displayed in the Properties view. | 
| readOnly | Sets property to read only. Options are true or false. | 
| isHidden | Sets visibility of the property. Options are true or false. | 
    <File extension="4fdm" isManaged="true">
      <DynamicProperties>
        <DynamicProperty name="foreignFields"  type="FIELDS"  
          label="foreignFields" initialValue="" 
          editorInfo="isDynamic:true" dynamicContent="srcFieldsContent"/>
        <DynamicProperty name="primaryFields"  type="FIELDS"  
          label="primaryFields" initialValue="" 
          editorInfo="isDynamic:true" dynamicContent="dstFieldsContent"/>
        <DynamicPropertyGroup name="relations"     
          label="Relation"      
          description="Relation properties group" 
          properties="foreignFields;primaryFields"/>
        <DynamicProperty name="canSearch"      type="BOOLEAN" 
          label="canSearch"     initialValue="true" 
          description="Allow search using Query By Example"/>
        <DynamicProperty name="canAdd"         type="BOOLEAN" 
          label="canAdd"        initialValue="true" 
          description="Allow adding items"/>
        <DynamicProperty name="canModify"      type="BOOLEAN" 
          label="canModify"     initialValue="true" 
          description="Allow modifying existing items"/>
        <DynamicProperty name="canDelete"      type="BOOLEAN" 
          label="canDelete"     initialValue="true" 
          description="Allow deleting items"/>
        <DynamicPropertyGroup name="functionality" 
          label="Functionality" 
          description="Functionality properties group" 
          properties="canAdd;canModify;canDelete;canSearch"/>
      </DynamicProperties>
      <Items>
        <Item nodeName="Relation" srcProperty="foreignFields" 
          dstProperty="primaryFields" 
          dynamicProperties="primaryFields;foreignFields"/>
        <Item nodeName="Record" 
          dynamicProperties="canAdd;canModify;canDelete;canSearch"/>
      </Items>
    </File>