XML Reference


<application-settings>

Configure advanced features.

<application-settings>
  <setting name="Model/AllowAssociationToNonPk" value="true"/>
</application-settings>

<settings>

Attribute Description
name name of the advanced function
value configuration value
name description default value
Model/Association/AllowAssociationToNonPk Allows association to non primary key fields false
Model/Association/AllowManyOnInverseSide Allows association to have “many” also on inverse side (for example MongoDB) false
Model/Association/AllowAssociationFields Allows association to have bounded fields (for example Doctrine,D2,…) false
Model/Module/DynamicName Defines module name for specific framework (plugin,bundle,module,package) module
Model/Module/DefaultFileNamePostfix Defines default file name postfix. Used when postfix isn’t defined by module properties. .dcm (based on ORM)
Model/UniversalObject/Allow Allow working with universal object in project. false
TODO:Model/AllowManyToMany   true

<script-settings>

Configure script system for specific ORM/MVC.

<script-settings>
  <script-file name="Doctrine2.import.osc"/>
  <function type="import-function" name="Doctrine2Import"/>
  <hook type="before-import" name="GedmoExtensionBeforeImport"/>
</script-settings>

<script-file>

Attribute Description
name script filename

<function>

Attribute Description
type function type (ORMD enum)
name function name
Function type Description
import-function import ORM definitions to ORMD project
export-function export orm definitions from ORMD project
file-scanner-function scanning directories for all relevant files
get-module-info-function guessing entities names

<hook>

Attribute Description
type hook type(used for hook identification)
name function name

<import-export-formats>

This configuration element allows to define export formats. In example bellow is configuration for Doctrine2.

<import-export-formats>
  <import-export-format name="Doctrine2Yml" type="directory" caption="Doctrine2 Yml"/>
</import-export-formats>

<import-export-format>

Attribute Description
name format name
type format type (see below)
caption format UI caption
Format type Description
directory export module as directory with several files
file export module as single file

<inheritances-types>

<inheritances-types>
  <inheritance-type name="SINGLE_TABLE" caption="Simple"/>
</inheritances-types>		

<inheritance-type>

Attribute Description
name type name
caption caption in editor

<data-types>

<data-types>
  <data-type name="integer" unified-name="@INTEGER,@INT" primary-key-data-type="true"/>
  <data-type name="string" unified-name="@VARCHAR,@CHAR,@LONGVARCHAR"/>
  <container-type name="set"/>
</data-types>

<data-type>

Attribute Description
name type name
unified-name list of posible aliases
has-enum-values swich specifying enumeration type
primary-key-data-type switch to use as primary key

<container-type>

Attribute Description
name type name
unified-name list of posible aliases

<element-templates>

<element-templates>

  <template name='new-project'>
    <project>...</project>
  </template>

 <template name='association-field'>
    <field name="{inverseEntityName#UL}_{inverseFieldName#UL}"/>
  </template>

</element-templates>

<template>

Attribute Description
name template name

template-name

Type Description
new-project template is loaded when blank project is created
primary-field is for automatic primary key creation in all entities(tables)
association-field describe how association fields are created
many2many-field describe how many-to-many association fields are created
discriminator-field defines discriminator field created for inheritance

naming-convention

Keyword Description
#CFU CamelCaseFirstUpper
#CFL camelCaseFirstLower
#UL under_line
#CFUs CamelCaseFirstUpper in plural form
#CFLs camelCaseFirstLower in plural form
#ULs under_line in plural form