persistence
Persistence
serializationGroups
dataTypes
entities
ormTechnology
Kohana
databaseTechnology
MySql
timestampCreation
true
timestampUpdates
true
DatabaseTechnologies
MySql
MySql
Oracle
Oracle
OrmTechnologies
JPA
JPA
DataMapper
DataMapper
Idiorm
Idiorm
Kohana
Kohana
DoctrineORM
DoctrineORM
DoctrineODM
DoctrineODM
SerializationGroup
EntityOrView
singletonName
pluralisedName
keys
tableName
autoKeyName
id
autoKeyPersistentType
integer
autoKeyGenerationStrategy
unique
containerUnique
labels
features
allFeatures
attributes
associations
allAssociations
implementsUserInterface
false
allowFormTypeCustomisation
Feature
title
collectionOrmAllowAdd
false
collectionOrmAllowRemove
false
placeholder
nullDisplayValue
encodeUriKey
false
serializationGroups
headerClass
displayClass
footerClass
Attribute
defaultValue
validationPattern
inputClass
Association
pseudo
false
encapsulatedBy
inputClass
sourceEntityX
targetEntityX
serializationMaxDepth
1
Label
ModelLabel
labelFor
format
customise
false
features
serializationGroups
ModelLabelFeature
partOf
ModelLabelAttribute
attribute
dateFormat
ModelLabelAssociation
association
dynamicLabel
isSourceAssociation
Entity
entityFeatures
associationEnds
Cardinality
Optional
Optional
Required
Required
Many
Many
isHasChoices
isA
isA
hasA
hasA
EntityFeature
partOf
cardinality
Optional
ordered
false
primaryKey
derived
false
customiseSet
false
booleanIsHasChoice
singletonName
pluralisedName
columnName
EntityAttribute
hidden
false
containerUnique
persistentType
ormType
interfaceType
slugFields
unique
false
DataTypeAttribute
dataType
obfuscateFormFields
false
caseInsensitive
false
encrypt
false
DateDetails
DateOnly
DateOnly
TimeOnly
TimeOnly
DateAndTime
DateAndTime
DateAttribute
details
DateOnly
format
UrlAttribute
displayValue
ResourceAttribute
maximumUploadSize
-1
validUploadMimeTypes
validUploadExtensions
uploadsWithinWebsite
uploadPath
PathElement
StaticPathElement
element
DatePathElement
format
FileAttribute
ImageAttribute
LocationAttribute
EntityAssociation
keys
targetEntity
bidirectional
false
unique
true
pivotTableName
targetFeatureName
targetPrimaryKey
false
targetColumnName
targetDisplayLabel
targetHeaderClass
targetInputClass
input_association
targetDisplayClass
targetFooterClass
AssociationWithoutContainment
targetCardinality
Required
targetUnique
true
AssociationWithContainment
sourceVisible
true
AssociationKey
keyFor
sourceFeature
targetFeature
View
encapsulates
viewFeatures
ViewFeature
partOf
EncapsulatedFeature
displayLabel
alias
columnName
EncapsulatedAttribute
name

attribute
cardinality
EncapsulatedAssociation
name
association
encapsulatedTarget
isSourceAssociation
cardinality
sourceEntity
targetEntity
ViewAssociation
opposite
cardinality
Optional
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="persistence" nsURI="http://cs.man.ac.uk/mdsd/webgen/persistence"
    nsPrefix="webgen-persistence">
  <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
    <details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/>
    <details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/>
    <details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/>
  </eAnnotations>
  <eClassifiers xsi:type="ecore:EClass" name="Persistence">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="classifierNameUnique"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
      <details key="classifierNameUnique" value="dataTypes->isUnique(name) and entities->isUnique(name)"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="serializationGroups" upperBound="-1"
        eType="#//SerializationGroup" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="dataTypes" upperBound="-1"
        eType="ecore:EClass ../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//DataType"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="entities" upperBound="-1"
        eType="#//EntityOrView" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ormTechnology" eType="#//OrmTechnologies"
        defaultValueLiteral="Kohana"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="databaseTechnology" ordered="false"
        lowerBound="1" eType="#//DatabaseTechnologies" defaultValueLiteral="MySql"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="timestampCreation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="timestampUpdates" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="DatabaseTechnologies">
    <eLiterals name="MySql"/>
    <eLiterals name="Oracle" value="1"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="OrmTechnologies">
    <eLiterals name="JPA"/>
    <eLiterals name="DataMapper" value="1"/>
    <eLiterals name="Idiorm" value="2"/>
    <eLiterals name="Kohana" value="3" literal="Kohana"/>
    <eLiterals name="DoctrineORM" value="4"/>
    <eLiterals name="DoctrineODM" value="5" literal="DoctrineODM"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="SerializationGroup" eSuperTypes="../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//NamedElement"/>
  <eClassifiers xsi:type="ecore:EClass" name="EntityOrView" abstract="true" eSuperTypes="../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//Classifier">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="keysFromLocalFeatures"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
      <details key="keysFromLocalFeatures" value="allFeatures->includesAll(keys)"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="singletonName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pluralisedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="keys" upperBound="-1" eType="#//Feature"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="tableName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="autoKeyName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        defaultValueLiteral="id"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="autoKeyPersistentType"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" defaultValueLiteral="integer"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="autoKeyGenerationStrategy"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="unique" upperBound="-1"
        eType="#//Feature"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containerUnique" upperBound="-1"
        eType="#//Feature"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="labels" upperBound="-1"
        eType="#//ModelLabel" containment="true" eOpposite="#//ModelLabel/labelFor"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="features" upperBound="-1"
        eType="#//Feature" changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if self.oclIsTypeOf(Entity) then&#xD;&#xA;&#x9;self.oclAsType(Entity).entityFeatures&#xD;&#xA;else&#xD;&#xA;&#x9;self.oclAsType(View).viewFeatures&#xD;&#xA;endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="allFeatures" upperBound="-1"
        eType="#//Feature" changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if self.oclIsTypeOf(Entity) then&#xD;&#xA;&#x9;self.oclAsType(Entity).entityFeatures->union(self.oclAsType(Entity).associationEnds->select(e | e.bidirectional))->asOrderedSet()&#xD;&#xA;else&#xD;&#xA;&#x9;self.oclAsType(View).viewFeatures&#xD;&#xA;endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
        eType="#//Attribute" changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="features->select(f | f.oclIsKindOf(Attribute)).oclAsType(Attribute)->asOrderedSet()"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="associations" upperBound="-1"
        eType="#//Association" changeable="false" volatile="true" transient="true"
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="features->select(f | f.oclIsKindOf(Association)).oclAsType(Association)->asOrderedSet()"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="allAssociations" upperBound="-1"
        eType="#//Association" changeable="false" volatile="true" transient="true"
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="allFeatures->select(f | f.oclIsKindOf(Association)).oclAsType(Association)->asOrderedSet()"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="implementsUserInterface"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="allowFormTypeCustomisation"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Feature" abstract="true" interface="true">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="collectionOrmAllowAdd"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="collectionOrmAllowRemove"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="placeholder" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nullDisplayValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="encodeUriKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="serializationGroups" upperBound="-1"
        eType="#//SerializationGroup"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="headerClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="footerClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Attribute" abstract="true" interface="true"
      eSuperTypes="#//Feature #//Label">
    <eStructuralFeatures xsi:type="ecore:EReference" name="defaultValue" ordered="false"
        eType="ecore:EClass ../../uk.ac.man.cs.mdsd.webgen.expression/model/expression.ecore#//Expression"
        containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="validationPattern" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inputClass" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Association" abstract="true" interface="true"
      eSuperTypes="#//Feature">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pseudo" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="encapsulatedBy" upperBound="-1"
        eType="#//EncapsulatedAssociation" eOpposite="#//EncapsulatedAssociation/association"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inputClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sourceEntityX" lowerBound="1"
        eType="#//EntityOrView" changeable="false" volatile="true" transient="true"
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if self.oclIsKindOf(EntityAssociation) then&#xD;&#xA;&#x9;self.oclAsType(EntityAssociation).partOf&#xD;&#xA;else if self.oclIsTypeOf(EncapsulatedAssociation) then&#xD;&#xA;&#x9;&#x9;self.oclAsType(EncapsulatedAssociation).sourceEntity&#xD;&#xA;else&#xD;&#xA;&#x9;self.oclAsType(ViewAssociation).partOf&#xD;&#xA;endif endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="targetEntityX" lowerBound="1"
        eType="#//EntityOrView" changeable="false" volatile="true" transient="true"
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if self.oclIsKindOf(EntityAssociation) then&#xD;&#xA;&#x9;self.oclAsType(EntityAssociation).targetEntity&#xD;&#xA;else if self.oclIsTypeOf(EncapsulatedAssociation) then&#xD;&#xA;&#x9;&#x9;self.oclAsType(EncapsulatedAssociation).targetEntity&#xD;&#xA;else&#xD;&#xA;&#x9;-- TODO get other end&#xD;&#xA;&#x9;self.oclAsType(ViewAssociation).partOf&#xD;&#xA;endif endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="serializationMaxDepth"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="1"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Label" abstract="true" interface="true"/>
  <eClassifiers xsi:type="ecore:EClass" name="ModelLabel" eSuperTypes="../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//NamedElement #//Label">
    <eStructuralFeatures xsi:type="ecore:EReference" name="labelFor" lowerBound="1"
        eType="#//EntityOrView" eOpposite="#//EntityOrView/labels"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="format" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="customise" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="features" upperBound="-1"
        eType="#//ModelLabelFeature" containment="true" eOpposite="#//ModelLabelFeature/partOf"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="serializationGroups" upperBound="-1"
        eType="#//SerializationGroup"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ModelLabelFeature" abstract="true">
    <eStructuralFeatures xsi:type="ecore:EReference" name="partOf" lowerBound="1"
        eType="#//ModelLabel" eOpposite="#//ModelLabel/features"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ModelLabelAttribute" eSuperTypes="#//ModelLabelFeature">
    <eStructuralFeatures xsi:type="ecore:EReference" name="attribute" lowerBound="1"
        eType="#//Attribute"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dateFormat" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ModelLabelAssociation" eSuperTypes="#//ModelLabelFeature">
    <eStructuralFeatures xsi:type="ecore:EReference" name="association" lowerBound="1"
        eType="#//EntityAssociation"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="dynamicLabel" eType="#//ModelLabel"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isSourceAssociation" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" changeable="false"
        volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="not association.oclIsUndefined() implies&#xD;&#xA;&#x9;partOf.labelFor.features->includes(association)"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Entity" eSuperTypes="#//EntityOrView">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="featureNameUniqueWithinEntity"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
      <details key="featureNameUniqueWithinEntity" value="entityFeatures->isUnique(f | f.name)"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="entityFeatures" upperBound="-1"
        eType="#//EntityFeature" containment="true" eOpposite="#//EntityFeature/partOf"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="associationEnds" upperBound="-1"
        eType="#//EntityAssociation" eOpposite="#//EntityAssociation/targetEntity"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="Cardinality">
    <eLiterals name="Optional" literal="Optional"/>
    <eLiterals name="Required" literal="Required"/>
    <eLiterals name="Many" literal="Many"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="isHasChoices">
    <eLiterals name="isA"/>
    <eLiterals name="hasA"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="EntityFeature" abstract="true" eSuperTypes="../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//NamedDisplayElement #//Feature">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="primaryKeyRequired"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
      <details key="primaryKeyRequired" value="primaryKey implies cardinality &lt;> Cardinality::Optional"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EReference" name="partOf" lowerBound="1"
        eType="#//Entity" eOpposite="#//Entity/entityFeatures"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cardinality" lowerBound="1"
        eType="#//Cardinality" defaultValueLiteral="Optional"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ordered" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="primaryKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="derived" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="customiseSet" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="booleanIsHasChoice" eType="#//isHasChoices"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="singletonName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pluralisedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="columnName" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="EntityAttribute" abstract="true" eSuperTypes="#//EntityFeature #//Attribute">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="hidden" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="containerUnique" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="persistentType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ormType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="interfaceType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="slugFields" upperBound="-1"
        eType="#//Attribute"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DataTypeAttribute" eSuperTypes="#//EntityAttribute">
    <eStructuralFeatures xsi:type="ecore:EReference" name="dataType" ordered="false"
        lowerBound="1" eType="ecore:EClass ../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//DataType"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="obfuscateFormFields" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="caseInsensitive" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="encrypt" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EEnum" name="DateDetails">
    <eLiterals name="DateOnly" literal="DateOnly"/>
    <eLiterals name="TimeOnly" literal="TimeOnly"/>
    <eLiterals name="DateAndTime" literal="DateAndTime"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DateAttribute" eSuperTypes="#//EntityAttribute">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="details" ordered="false"
        lowerBound="1" eType="#//DateDetails" defaultValueLiteral="DateOnly"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="format" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="UrlAttribute" eSuperTypes="#//EntityAttribute">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayValue" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ResourceAttribute" abstract="true" eSuperTypes="#//EntityAttribute">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="maximumUploadSize" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="-1"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="validUploadMimeTypes" ordered="false"
        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="validUploadExtensions"
        ordered="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="uploadsWithinWebsite" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="uploadPath" upperBound="-1"
        eType="#//PathElement" containment="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="PathElement" abstract="true"/>
  <eClassifiers xsi:type="ecore:EClass" name="StaticPathElement" eSuperTypes="#//PathElement">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="element" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DatePathElement" eSuperTypes="#//PathElement">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="format" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="FileAttribute" eSuperTypes="#//ResourceAttribute"/>
  <eClassifiers xsi:type="ecore:EClass" name="ImageAttribute" eSuperTypes="#//ResourceAttribute"/>
  <eClassifiers xsi:type="ecore:EClass" name="LocationAttribute" eSuperTypes="#//EntityAttribute"/>
  <eClassifiers xsi:type="ecore:EClass" name="EntityAssociation" abstract="true" eSuperTypes="#//EntityFeature #//Association">
    <eStructuralFeatures xsi:type="ecore:EReference" name="keys" upperBound="-1" eType="#//AssociationKey"
        containment="true" eOpposite="#//AssociationKey/keyFor"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="targetEntity" lowerBound="1"
        eType="#//Entity" eOpposite="#//Entity/associationEnds"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="bidirectional" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pivotTableName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetFeatureName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetPrimaryKey" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="false"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetColumnName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetDisplayLabel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetHeaderClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetInputClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        defaultValueLiteral="input_association"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetDisplayClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetFooterClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AssociationWithoutContainment" eSuperTypes="#//EntityAssociation">
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
      <details key="constraints" value="oneToManyAssociationsMustBeBidirectional"/>
    </eAnnotations>
    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
      <details key="oneToManyAssociationsMustBeBidirectional" value="cardinality = Cardinality::Optional and targetCardinality = Cardinality::Required implies bidirectional"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetCardinality" lowerBound="1"
        eType="#//Cardinality" defaultValueLiteral="Required"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetUnique" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AssociationWithContainment" eSuperTypes="#//EntityAssociation">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourceVisible" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
        defaultValueLiteral="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AssociationKey">
    <eStructuralFeatures xsi:type="ecore:EReference" name="keyFor" lowerBound="1"
        eType="#//EntityAssociation" eOpposite="#//EntityAssociation/keys"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sourceFeature" lowerBound="1"
        eType="#//EntityFeature"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="targetFeature" eType="#//EntityFeature"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="View" eSuperTypes="#//EntityOrView">
    <eStructuralFeatures xsi:type="ecore:EReference" name="encapsulates" upperBound="-1"
        eType="#//EntityOrView"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="viewFeatures" upperBound="-1"
        eType="#//ViewFeature" containment="true" eOpposite="#//ViewFeature/partOf"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ViewFeature" abstract="true" eSuperTypes="#//Feature">
    <eStructuralFeatures xsi:type="ecore:EReference" name="partOf" lowerBound="1"
        eType="#//View" eOpposite="#//View/viewFeatures"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="EncapsulatedFeature" eSuperTypes="#//ViewFeature">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayLabel" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="alias" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="columnName" ordered="false"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="EncapsulatedAttribute" eSuperTypes="#//EncapsulatedFeature #//Attribute">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" defaultValueLiteral=""
        derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if not self.alias.oclIsUndefined() then&#xD;&#xA;&#x9;if self.alias &lt;> '' then&#xD;&#xA;&#x9;&#x9;self.alias&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;'empty alias'&#xD;&#xA;&#x9;endif&#xD;&#xA;else if attribute.oclIsUndefined() then&#xD;&#xA;&#x9;''&#xD;&#xA;else &#xD;&#xA;&#x9;if attribute.oclIsKindOf(EntityAttribute) then&#xD;&#xA;&#x9;&#x9;attribute.oclAsType(EntityAttribute).name&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;attribute.oclAsType(EncapsulatedAttribute).name&#xD;&#xA;&#x9;endif&#xD;&#xA;endif endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="attribute" lowerBound="1"
        eType="#//Attribute"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cardinality" lowerBound="1"
        eType="#//Cardinality">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if attribute.oclIsUndefined() then&#xD;&#xA;&#x9;Cardinality::Optional&#xD;&#xA;else &#xD;&#xA;&#x9;if attribute.oclIsKindOf(EntityAttribute) then&#xD;&#xA;&#x9;&#x9;attribute.oclAsType(EntityAttribute).cardinality&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;attribute.oclAsType(EncapsulatedAttribute).cardinality&#xD;&#xA;&#x9;endif&#xD;&#xA;endif"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="EncapsulatedAssociation" eSuperTypes="#//EncapsulatedFeature #//Association">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if not alias.oclIsUndefined() then&#xD;&#xA;&#x9;if alias &lt;> '' then&#xD;&#xA;&#x9;&#x9;alias&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;'empty alias'&#xD;&#xA;&#x9;endif&#xD;&#xA;else if association.oclIsUndefined() then&#xD;&#xA;&#x9;''&#xD;&#xA;else&#xD;&#xA;&#x9;if association.oclIsTypeOf(EncapsulatedAssociation) then&#xD;&#xA;&#x9;&#x9;association.oclAsType(EncapsulatedAssociation).name&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;if isSourceAssociation then&#xD;&#xA;&#x9;&#x9;&#x9;if self.association.oclIsKindOf(EntityAssociation) then&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;self.association.oclAsType(EntityAssociation).name&#xD;&#xA;&#x9;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;association.oclAsType(ViewAssociation).name&#xD;&#xA;&#x9;&#x9;&#x9;endif&#xD;&#xA;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;if self.association.oclIsKindOf(EntityAssociation) then&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;self.association.oclAsType(EntityAssociation).targetFeatureName&#xD;&#xA;&#x9;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;&#x9;association.oclAsType(ViewAssociation).opposite.name&#xD;&#xA;&#x9;&#x9;&#x9;endif&#xD;&#xA;&#x9;&#x9;endif&#xD;&#xA;&#x9;endif&#xD;&#xA;endif endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="association" lowerBound="1"
        eType="#//Association" eOpposite="#//Association/encapsulatedBy"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="encapsulatedTarget" eType="#//EncapsulatedAssociation"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="isSourceAssociation" lowerBound="1"
        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" changeable="false"
        volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="not association.oclIsUndefined() implies&#xD;&#xA;&#x9;partOf.encapsulates->collect(eov | eov.features)->includes(association)"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cardinality" lowerBound="1"
        eType="#//Cardinality">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if association.oclIsUndefined() then&#xD;&#xA;&#x9;Cardinality::Optional&#xD;&#xA;else&#xD;&#xA;&#x9;if association.oclIsTypeOf(EncapsulatedAssociation) then&#xD;&#xA;&#x9;&#x9;association.oclAsType(EncapsulatedAssociation).cardinality&#xD;&#xA;&#x9;else if association.oclIsTypeOf(ViewAssociation) then&#xD;&#xA;&#x9;&#x9;if isSourceAssociation then&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(ViewAssociation).cardinality&#xD;&#xA;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(ViewAssociation).opposite.cardinality&#xD;&#xA;&#x9;&#x9;endif&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;if isSourceAssociation then&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(EntityAssociation).cardinality&#xD;&#xA;&#x9;&#x9;else if association.oclIsTypeOf(AssociationWithContainment) then&#xD;&#xA;&#x9;&#x9;&#x9;Cardinality::Required&#xD;&#xA;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(AssociationWithoutContainment).targetCardinality &#xD;&#xA;&#x9;&#x9;endif endif&#xD;&#xA;&#x9;endif endif&#xD;&#xA;endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="sourceEntity" lowerBound="1"
        eType="#//Entity" changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if association.oclIsUndefined() then&#xD;&#xA;&#x9;null&#xD;&#xA;else&#xD;&#xA;&#x9;if association.oclIsTypeOf(EncapsulatedAssociation) then&#xD;&#xA;&#x9;&#x9;association.oclAsType(EncapsulatedAssociation).sourceEntity&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;if isSourceAssociation then&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(EntityAssociation).partOf&#xD;&#xA;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(EntityAssociation).targetEntity &#xD;&#xA;&#x9;&#x9;endif&#xD;&#xA;&#x9;endif&#xD;&#xA;endif"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EReference" name="targetEntity" lowerBound="1"
        eType="#//Entity" changeable="false" volatile="true" transient="true" derived="true">
      <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL">
        <details key="derivation" value="if association.oclIsUndefined() then&#xD;&#xA;&#x9;null&#xD;&#xA;else&#xD;&#xA;&#x9;if association.oclIsTypeOf(EncapsulatedAssociation) then&#xD;&#xA;&#x9;&#x9;association.oclAsType(EncapsulatedAssociation).targetEntity&#xD;&#xA;&#x9;else&#xD;&#xA;&#x9;&#x9;if isSourceAssociation then&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(EntityAssociation).targetEntity &#xD;&#xA;&#x9;&#x9;else&#xD;&#xA;&#x9;&#x9;&#x9;association.oclAsType(EntityAssociation).partOf&#xD;&#xA;&#x9;&#x9;endif&#xD;&#xA;&#x9;endif&#xD;&#xA;endif"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ViewAssociation" eSuperTypes="../../uk.ac.man.cs.mdsd.webgen.base/model/base.ecore#//NamedDisplayElement #//ViewFeature #//Association">
    <eStructuralFeatures xsi:type="ecore:EReference" name="opposite" lowerBound="1"
        eType="#//EncapsulatedAssociation"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cardinality" lowerBound="1"
        eType="#//Cardinality" defaultValueLiteral="Optional"/>
  </eClassifiers>
</ecore:EPackage>

{"directed":true,"nodes":[{"nsPrefix":"webgen-persistence","nsURI":"http://cs.man.ac.uk/mdsd/webgen/persistence","name":"persistence","id":0,"eClass":"EPackage"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Persistence","instanceClass":null,"abstract":false,"id":1,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"instanceClassName":null,"name":"DatabaseTechnologies","instanceClass":null,"id":2,"serializable":true,"eClass":"EEnum"},{"instanceTypeName":null,"instanceClassName":null,"name":"OrmTechnologies","instanceClass":null,"id":3,"serializable":true,"eClass":"EEnum"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"SerializationGroup","instanceClass":null,"abstract":false,"id":4,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EntityOrView","instanceClass":null,"abstract":true,"id":5,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Feature","instanceClass":null,"abstract":true,"id":6,"interface":true,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Attribute","instanceClass":null,"abstract":true,"id":7,"interface":true,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Association","instanceClass":null,"abstract":true,"id":8,"interface":true,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Label","instanceClass":null,"abstract":true,"id":9,"interface":true,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ModelLabel","instanceClass":null,"abstract":false,"id":10,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ModelLabelFeature","instanceClass":null,"abstract":true,"id":11,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ModelLabelAttribute","instanceClass":null,"abstract":false,"id":12,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ModelLabelAssociation","instanceClass":null,"abstract":false,"id":13,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"Entity","instanceClass":null,"abstract":false,"id":14,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"instanceClassName":null,"name":"Cardinality","instanceClass":null,"id":15,"serializable":true,"eClass":"EEnum"},{"instanceTypeName":null,"instanceClassName":null,"name":"isHasChoices","instanceClass":null,"id":16,"serializable":true,"eClass":"EEnum"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EntityFeature","instanceClass":null,"abstract":true,"id":17,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EntityAttribute","instanceClass":null,"abstract":true,"id":18,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"DataTypeAttribute","instanceClass":null,"abstract":false,"id":19,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"instanceClassName":null,"name":"DateDetails","instanceClass":null,"id":20,"serializable":true,"eClass":"EEnum"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"DateAttribute","instanceClass":null,"abstract":false,"id":21,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"UrlAttribute","instanceClass":null,"abstract":false,"id":22,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ResourceAttribute","instanceClass":null,"abstract":true,"id":23,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"PathElement","instanceClass":null,"abstract":true,"id":24,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"StaticPathElement","instanceClass":null,"abstract":false,"id":25,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"DatePathElement","instanceClass":null,"abstract":false,"id":26,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"FileAttribute","instanceClass":null,"abstract":false,"id":27,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ImageAttribute","instanceClass":null,"abstract":false,"id":28,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"LocationAttribute","instanceClass":null,"abstract":false,"id":29,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EntityAssociation","instanceClass":null,"abstract":true,"id":30,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"AssociationWithoutContainment","instanceClass":null,"abstract":false,"id":31,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"AssociationWithContainment","instanceClass":null,"abstract":false,"id":32,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"AssociationKey","instanceClass":null,"abstract":false,"id":33,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"View","instanceClass":null,"abstract":false,"id":34,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ViewFeature","instanceClass":null,"abstract":true,"id":35,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EncapsulatedFeature","instanceClass":null,"abstract":false,"id":36,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EncapsulatedAttribute","instanceClass":null,"abstract":false,"id":37,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"EncapsulatedAssociation","instanceClass":null,"abstract":false,"id":38,"interface":false,"eClass":"EClass"},{"instanceTypeName":null,"defaultValue":null,"instanceClassName":null,"name":"ViewAssociation","instanceClass":null,"abstract":false,"id":39,"interface":false,"eClass":"EClass"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"serializationGroups","changeable":true,"resolveProxies":true,"lowerBound":0,"id":40,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"dataTypes","changeable":true,"resolveProxies":true,"lowerBound":0,"id":41,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"entities","changeable":true,"resolveProxies":true,"lowerBound":0,"id":42,"derived":false},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"Kohana","unsettable":false,"transient":false,"unique":true,"name":"ormTechnology","changeable":true,"lowerBound":0,"iD":false,"id":43,"derived":false},{"ordered":false,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"MySql","unsettable":false,"transient":false,"unique":true,"name":"databaseTechnology","changeable":true,"lowerBound":1,"iD":false,"id":44,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":true,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"true","unsettable":false,"transient":false,"unique":true,"name":"timestampCreation","changeable":true,"lowerBound":0,"iD":false,"id":45,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":true,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"true","unsettable":false,"transient":false,"unique":true,"name":"timestampUpdates","changeable":true,"lowerBound":0,"iD":false,"id":46,"derived":false},{"id":47,"eClass":"EGenericType"},{"id":48,"eClass":"EGenericType"},{"id":49,"eClass":"EGenericType"},{"id":50,"eClass":"EGenericType"},{"id":51,"eClass":"EGenericType"},{"id":52,"eClass":"EGenericType"},{"id":53,"eClass":"EGenericType"},{"name":"MySql","id":54,"value":0,"literal":"MySql","eClass":"EEnumLiteral"},{"name":"Oracle","id":55,"value":1,"literal":"Oracle","eClass":"EEnumLiteral"},{"name":"JPA","id":56,"value":0,"literal":"JPA","eClass":"EEnumLiteral"},{"name":"DataMapper","id":57,"value":1,"literal":"DataMapper","eClass":"EEnumLiteral"},{"name":"Idiorm","id":58,"value":2,"literal":"Idiorm","eClass":"EEnumLiteral"},{"name":"Kohana","id":59,"value":3,"literal":"Kohana","eClass":"EEnumLiteral"},{"name":"DoctrineORM","id":60,"value":4,"literal":"DoctrineORM","eClass":"EEnumLiteral"},{"name":"DoctrineODM","id":61,"value":5,"literal":"DoctrineODM","eClass":"EEnumLiteral"},{"id":62,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"singletonName","changeable":true,"lowerBound":0,"iD":false,"id":63,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"pluralisedName","changeable":true,"lowerBound":0,"iD":false,"id":64,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"keys","changeable":true,"resolveProxies":true,"lowerBound":0,"id":65,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"tableName","changeable":true,"lowerBound":0,"iD":false,"id":66,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":"id","volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"id","unsettable":false,"transient":false,"unique":true,"name":"autoKeyName","changeable":true,"lowerBound":0,"iD":false,"id":67,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":"integer","volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"integer","unsettable":false,"transient":false,"unique":true,"name":"autoKeyPersistentType","changeable":true,"lowerBound":0,"iD":false,"id":68,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"autoKeyGenerationStrategy","changeable":true,"lowerBound":0,"iD":false,"id":69,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"unique","changeable":true,"resolveProxies":true,"lowerBound":0,"id":70,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"containerUnique","changeable":true,"resolveProxies":true,"lowerBound":0,"id":71,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"labels","changeable":true,"resolveProxies":true,"lowerBound":0,"id":72,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":true,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"features","changeable":false,"resolveProxies":true,"lowerBound":0,"id":73,"derived":true},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":true,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"allFeatures","changeable":false,"resolveProxies":true,"lowerBound":0,"id":74,"derived":true},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":true,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"attributes","changeable":false,"resolveProxies":true,"lowerBound":0,"id":75,"derived":true},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":true,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"associations","changeable":false,"resolveProxies":true,"lowerBound":0,"id":76,"derived":true},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":true,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"allAssociations","changeable":false,"resolveProxies":true,"lowerBound":0,"id":77,"derived":true},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"implementsUserInterface","changeable":true,"lowerBound":0,"iD":false,"id":78,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"allowFormTypeCustomisation","changeable":true,"lowerBound":0,"iD":false,"id":79,"derived":false},{"id":80,"eClass":"EGenericType"},{"id":81,"eClass":"EGenericType"},{"id":82,"eClass":"EGenericType"},{"id":83,"eClass":"EGenericType"},{"id":84,"eClass":"EGenericType"},{"id":85,"eClass":"EGenericType"},{"id":86,"eClass":"EGenericType"},{"id":87,"eClass":"EGenericType"},{"id":88,"eClass":"EGenericType"},{"id":89,"eClass":"EGenericType"},{"id":90,"eClass":"EGenericType"},{"container":true,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"labelFor","changeable":true,"resolveProxies":true,"lowerBound":1,"id":91,"derived":false},{"id":92,"eClass":"EGenericType"},{"id":93,"eClass":"EGenericType"},{"id":94,"eClass":"EGenericType"},{"id":95,"eClass":"EGenericType"},{"id":96,"eClass":"EGenericType"},{"id":97,"eClass":"EGenericType"},{"id":98,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"title","changeable":true,"lowerBound":0,"iD":false,"id":99,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"collectionOrmAllowAdd","changeable":true,"lowerBound":0,"iD":false,"id":100,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"collectionOrmAllowRemove","changeable":true,"lowerBound":0,"iD":false,"id":101,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"placeholder","changeable":true,"lowerBound":0,"iD":false,"id":102,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"nullDisplayValue","changeable":true,"lowerBound":0,"iD":false,"id":103,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"encodeUriKey","changeable":true,"lowerBound":0,"iD":false,"id":104,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"serializationGroups","changeable":true,"resolveProxies":true,"lowerBound":0,"id":105,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"headerClass","changeable":true,"lowerBound":0,"iD":false,"id":106,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"displayClass","changeable":true,"lowerBound":0,"iD":false,"id":107,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"footerClass","changeable":true,"lowerBound":0,"iD":false,"id":108,"derived":false},{"id":109,"eClass":"EGenericType"},{"id":110,"eClass":"EGenericType"},{"id":111,"eClass":"EGenericType"},{"id":112,"eClass":"EGenericType"},{"id":113,"eClass":"EGenericType"},{"id":114,"eClass":"EGenericType"},{"id":115,"eClass":"EGenericType"},{"id":116,"eClass":"EGenericType"},{"id":117,"eClass":"EGenericType"},{"id":118,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"defaultValue","changeable":true,"resolveProxies":true,"lowerBound":0,"id":119,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"validationPattern","changeable":true,"lowerBound":0,"iD":false,"id":120,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"inputClass","changeable":true,"lowerBound":0,"iD":false,"id":121,"derived":false},{"id":122,"eClass":"EGenericType"},{"id":123,"eClass":"EGenericType"},{"id":124,"eClass":"EGenericType"},{"id":125,"eClass":"EGenericType"},{"id":126,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"pseudo","changeable":true,"lowerBound":0,"iD":false,"id":127,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"encapsulatedBy","changeable":true,"resolveProxies":true,"lowerBound":0,"id":128,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"inputClass","changeable":true,"lowerBound":0,"iD":false,"id":129,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"sourceEntityX","changeable":false,"resolveProxies":true,"lowerBound":1,"id":130,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"targetEntityX","changeable":false,"resolveProxies":true,"lowerBound":1,"id":131,"derived":true},{"ordered":true,"upperBound":1,"defaultValue":1,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"1","unsettable":false,"transient":false,"unique":true,"name":"serializationMaxDepth","changeable":true,"lowerBound":0,"iD":false,"id":132,"derived":false},{"id":133,"eClass":"EGenericType"},{"id":134,"eClass":"EGenericType"},{"id":135,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"association","changeable":true,"resolveProxies":true,"lowerBound":1,"id":136,"derived":false},{"id":137,"eClass":"EGenericType"},{"id":138,"eClass":"EGenericType"},{"id":139,"eClass":"EGenericType"},{"id":140,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"format","changeable":true,"lowerBound":1,"iD":false,"id":141,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"customise","changeable":true,"lowerBound":0,"iD":false,"id":142,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"features","changeable":true,"resolveProxies":true,"lowerBound":0,"id":143,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"serializationGroups","changeable":true,"resolveProxies":true,"lowerBound":0,"id":144,"derived":false},{"id":145,"eClass":"EGenericType"},{"id":146,"eClass":"EGenericType"},{"id":147,"eClass":"EGenericType"},{"id":148,"eClass":"EGenericType"},{"id":149,"eClass":"EGenericType"},{"id":150,"eClass":"EGenericType"},{"container":true,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"partOf","changeable":true,"resolveProxies":true,"lowerBound":1,"id":151,"derived":false},{"id":152,"eClass":"EGenericType"},{"id":153,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"attribute","changeable":true,"resolveProxies":true,"lowerBound":1,"id":154,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"dateFormat","changeable":true,"lowerBound":0,"iD":false,"id":155,"derived":false},{"id":156,"eClass":"EGenericType"},{"id":157,"eClass":"EGenericType"},{"id":158,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"association","changeable":true,"resolveProxies":true,"lowerBound":1,"id":159,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"dynamicLabel","changeable":true,"resolveProxies":true,"lowerBound":0,"id":160,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":true,"name":"isSourceAssociation","changeable":false,"lowerBound":1,"iD":false,"id":161,"derived":true},{"id":162,"eClass":"EGenericType"},{"id":163,"eClass":"EGenericType"},{"id":164,"eClass":"EGenericType"},{"id":165,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"entityFeatures","changeable":true,"resolveProxies":true,"lowerBound":0,"id":166,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"associationEnds","changeable":true,"resolveProxies":true,"lowerBound":0,"id":167,"derived":false},{"id":168,"eClass":"EGenericType"},{"id":169,"eClass":"EGenericType"},{"container":true,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"partOf","changeable":true,"resolveProxies":true,"lowerBound":1,"id":170,"derived":false},{"id":171,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"targetEntity","changeable":true,"resolveProxies":true,"lowerBound":1,"id":172,"derived":false},{"name":"Optional","id":173,"value":0,"literal":"Optional","eClass":"EEnumLiteral"},{"name":"Required","id":174,"value":0,"literal":"Required","eClass":"EEnumLiteral"},{"name":"Many","id":175,"value":0,"literal":"Many","eClass":"EEnumLiteral"},{"name":"isA","id":176,"value":0,"literal":"isA","eClass":"EEnumLiteral"},{"name":"hasA","id":177,"value":0,"literal":"hasA","eClass":"EEnumLiteral"},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"Optional","unsettable":false,"transient":false,"unique":true,"name":"cardinality","changeable":true,"lowerBound":1,"iD":false,"id":178,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"ordered","changeable":true,"lowerBound":1,"iD":false,"id":179,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"primaryKey","changeable":true,"lowerBound":0,"iD":false,"id":180,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"derived","changeable":true,"lowerBound":0,"iD":false,"id":181,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"customiseSet","changeable":true,"lowerBound":0,"iD":false,"id":182,"derived":false},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"booleanIsHasChoice","changeable":true,"lowerBound":0,"iD":false,"id":183,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"singletonName","changeable":true,"lowerBound":0,"iD":false,"id":184,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"pluralisedName","changeable":true,"lowerBound":0,"iD":false,"id":185,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"columnName","changeable":true,"lowerBound":0,"iD":false,"id":186,"derived":false},{"id":187,"eClass":"EGenericType"},{"id":188,"eClass":"EGenericType"},{"id":189,"eClass":"EGenericType"},{"id":190,"eClass":"EGenericType"},{"id":191,"eClass":"EGenericType"},{"id":192,"eClass":"EGenericType"},{"id":193,"eClass":"EGenericType"},{"id":194,"eClass":"EGenericType"},{"id":195,"eClass":"EGenericType"},{"id":196,"eClass":"EGenericType"},{"id":197,"eClass":"EGenericType"},{"id":198,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"hidden","changeable":true,"lowerBound":0,"iD":false,"id":199,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"containerUnique","changeable":true,"lowerBound":0,"iD":false,"id":200,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"persistentType","changeable":true,"lowerBound":0,"iD":false,"id":201,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"ormType","changeable":true,"lowerBound":0,"iD":false,"id":202,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"interfaceType","changeable":true,"lowerBound":0,"iD":false,"id":203,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"slugFields","changeable":true,"resolveProxies":true,"lowerBound":0,"id":204,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"unique","changeable":true,"lowerBound":1,"iD":false,"id":205,"derived":false},{"id":206,"eClass":"EGenericType"},{"id":207,"eClass":"EGenericType"},{"id":208,"eClass":"EGenericType"},{"id":209,"eClass":"EGenericType"},{"id":210,"eClass":"EGenericType"},{"id":211,"eClass":"EGenericType"},{"id":212,"eClass":"EGenericType"},{"id":213,"eClass":"EGenericType"},{"id":214,"eClass":"EGenericType"},{"container":false,"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"dataType","changeable":true,"resolveProxies":true,"lowerBound":1,"id":215,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"obfuscateFormFields","changeable":true,"lowerBound":0,"iD":false,"id":216,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"caseInsensitive","changeable":true,"lowerBound":0,"iD":false,"id":217,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"encrypt","changeable":true,"lowerBound":0,"iD":false,"id":218,"derived":false},{"id":219,"eClass":"EGenericType"},{"id":220,"eClass":"EGenericType"},{"id":221,"eClass":"EGenericType"},{"id":222,"eClass":"EGenericType"},{"id":223,"eClass":"EGenericType"},{"name":"DateOnly","id":224,"value":0,"literal":"DateOnly","eClass":"EEnumLiteral"},{"name":"TimeOnly","id":225,"value":0,"literal":"TimeOnly","eClass":"EEnumLiteral"},{"name":"DateAndTime","id":226,"value":0,"literal":"DateAndTime","eClass":"EEnumLiteral"},{"ordered":false,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"DateOnly","unsettable":false,"transient":false,"unique":true,"name":"details","changeable":true,"lowerBound":1,"iD":false,"id":227,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"format","changeable":true,"lowerBound":0,"iD":false,"id":228,"derived":false},{"id":229,"eClass":"EGenericType"},{"id":230,"eClass":"EGenericType"},{"id":231,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"displayValue","changeable":true,"lowerBound":0,"iD":false,"id":232,"derived":false},{"id":233,"eClass":"EGenericType"},{"id":234,"eClass":"EGenericType"},{"ordered":false,"upperBound":1,"defaultValue":-1,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"-1","unsettable":false,"transient":false,"unique":true,"name":"maximumUploadSize","changeable":true,"lowerBound":0,"iD":false,"id":235,"derived":false},{"ordered":false,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"validUploadMimeTypes","changeable":true,"lowerBound":0,"iD":false,"id":236,"derived":false},{"ordered":false,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"validUploadExtensions","changeable":true,"lowerBound":0,"iD":false,"id":237,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"uploadsWithinWebsite","changeable":true,"lowerBound":0,"iD":false,"id":238,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"uploadPath","changeable":true,"resolveProxies":true,"lowerBound":0,"id":239,"derived":false},{"id":240,"eClass":"EGenericType"},{"id":241,"eClass":"EGenericType"},{"id":242,"eClass":"EGenericType"},{"id":243,"eClass":"EGenericType"},{"id":244,"eClass":"EGenericType"},{"id":245,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"element","changeable":true,"lowerBound":1,"iD":false,"id":246,"derived":false},{"id":247,"eClass":"EGenericType"},{"id":248,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"format","changeable":true,"lowerBound":1,"iD":false,"id":249,"derived":false},{"id":250,"eClass":"EGenericType"},{"id":251,"eClass":"EGenericType"},{"id":252,"eClass":"EGenericType"},{"id":253,"eClass":"EGenericType"},{"id":254,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"keys","changeable":true,"resolveProxies":true,"lowerBound":0,"id":255,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"bidirectional","changeable":true,"lowerBound":1,"iD":false,"id":256,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":true,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"true","unsettable":false,"transient":false,"unique":true,"name":"unique","changeable":true,"lowerBound":1,"iD":false,"id":257,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"pivotTableName","changeable":true,"lowerBound":0,"iD":false,"id":258,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"targetFeatureName","changeable":true,"lowerBound":0,"iD":false,"id":259,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"false","unsettable":false,"transient":false,"unique":true,"name":"targetPrimaryKey","changeable":true,"lowerBound":0,"iD":false,"id":260,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"targetColumnName","changeable":true,"lowerBound":0,"iD":false,"id":261,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"targetDisplayLabel","changeable":true,"lowerBound":0,"iD":false,"id":262,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"targetHeaderClass","changeable":true,"lowerBound":0,"iD":false,"id":263,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":"input_association","volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"input_association","unsettable":false,"transient":false,"unique":true,"name":"targetInputClass","changeable":true,"lowerBound":0,"iD":false,"id":264,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"targetDisplayClass","changeable":true,"lowerBound":0,"iD":false,"id":265,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"targetFooterClass","changeable":true,"lowerBound":0,"iD":false,"id":266,"derived":false},{"id":267,"eClass":"EGenericType"},{"id":268,"eClass":"EGenericType"},{"id":269,"eClass":"EGenericType"},{"container":true,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"keyFor","changeable":true,"resolveProxies":true,"lowerBound":1,"id":270,"derived":false},{"id":271,"eClass":"EGenericType"},{"id":272,"eClass":"EGenericType"},{"id":273,"eClass":"EGenericType"},{"id":274,"eClass":"EGenericType"},{"id":275,"eClass":"EGenericType"},{"id":276,"eClass":"EGenericType"},{"id":277,"eClass":"EGenericType"},{"id":278,"eClass":"EGenericType"},{"id":279,"eClass":"EGenericType"},{"id":280,"eClass":"EGenericType"},{"id":281,"eClass":"EGenericType"},{"id":282,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"Required","unsettable":false,"transient":false,"unique":true,"name":"targetCardinality","changeable":true,"lowerBound":1,"iD":false,"id":283,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":true,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"true","unsettable":false,"transient":false,"unique":true,"name":"targetUnique","changeable":true,"lowerBound":1,"iD":false,"id":284,"derived":false},{"id":285,"eClass":"EGenericType"},{"id":286,"eClass":"EGenericType"},{"id":287,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":true,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":"true","unsettable":false,"transient":false,"unique":true,"name":"sourceVisible","changeable":true,"lowerBound":0,"iD":false,"id":288,"derived":false},{"id":289,"eClass":"EGenericType"},{"id":290,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"sourceFeature","changeable":true,"resolveProxies":true,"lowerBound":1,"id":291,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"targetFeature","changeable":true,"resolveProxies":true,"lowerBound":0,"id":292,"derived":false},{"id":293,"eClass":"EGenericType"},{"id":294,"eClass":"EGenericType"},{"id":295,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"encapsulates","changeable":true,"resolveProxies":true,"lowerBound":0,"id":296,"derived":false},{"container":false,"ordered":true,"upperBound":-1,"defaultValue":null,"volatile":false,"many":true,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":true,"unsettable":false,"transient":false,"unique":true,"name":"viewFeatures","changeable":true,"resolveProxies":true,"lowerBound":0,"id":297,"derived":false},{"id":298,"eClass":"EGenericType"},{"id":299,"eClass":"EGenericType"},{"id":300,"eClass":"EGenericType"},{"container":true,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"partOf","changeable":true,"resolveProxies":true,"lowerBound":1,"id":301,"derived":false},{"id":302,"eClass":"EGenericType"},{"id":303,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"displayLabel","changeable":true,"lowerBound":0,"iD":false,"id":304,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"alias","changeable":true,"lowerBound":0,"iD":false,"id":305,"derived":false},{"ordered":false,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"columnName","changeable":true,"lowerBound":0,"iD":false,"id":306,"derived":false},{"id":307,"eClass":"EGenericType"},{"id":308,"eClass":"EGenericType"},{"id":309,"eClass":"EGenericType"},{"id":310,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":"","volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"","unsettable":false,"transient":true,"unique":true,"name":"name","changeable":false,"lowerBound":1,"iD":false,"id":311,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"attribute","changeable":true,"resolveProxies":true,"lowerBound":1,"id":312,"derived":false},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"cardinality","changeable":true,"lowerBound":1,"iD":false,"id":313,"derived":false},{"id":314,"eClass":"EGenericType"},{"id":315,"eClass":"EGenericType"},{"id":316,"eClass":"EGenericType"},{"id":317,"eClass":"EGenericType"},{"id":318,"eClass":"EGenericType"},{"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":true,"name":"name","changeable":false,"lowerBound":1,"iD":false,"id":319,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":false,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"encapsulatedTarget","changeable":true,"resolveProxies":true,"lowerBound":0,"id":320,"derived":false},{"ordered":true,"upperBound":1,"defaultValue":false,"volatile":true,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":true,"unique":true,"name":"isSourceAssociation","changeable":false,"lowerBound":1,"iD":false,"id":321,"derived":true},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":null,"unsettable":false,"transient":false,"unique":true,"name":"cardinality","changeable":true,"lowerBound":1,"iD":false,"id":322,"derived":false},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"sourceEntity","changeable":false,"resolveProxies":true,"lowerBound":1,"id":323,"derived":true},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":true,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":true,"unique":true,"name":"targetEntity","changeable":false,"resolveProxies":true,"lowerBound":1,"id":324,"derived":true},{"id":325,"eClass":"EGenericType"},{"id":326,"eClass":"EGenericType"},{"id":327,"eClass":"EGenericType"},{"id":328,"eClass":"EGenericType"},{"id":329,"eClass":"EGenericType"},{"id":330,"eClass":"EGenericType"},{"id":331,"eClass":"EGenericType"},{"id":332,"eClass":"EGenericType"},{"id":333,"eClass":"EGenericType"},{"container":false,"ordered":true,"upperBound":1,"defaultValue":null,"volatile":false,"many":false,"required":true,"eClass":"EReference","defaultValueLiteral":null,"containment":false,"unsettable":false,"transient":false,"unique":true,"name":"opposite","changeable":true,"resolveProxies":true,"lowerBound":1,"id":334,"derived":false},{"ordered":true,"upperBound":1,"volatile":false,"many":false,"required":true,"eClass":"EAttribute","defaultValueLiteral":"Optional","unsettable":false,"transient":false,"unique":true,"name":"cardinality","changeable":true,"lowerBound":1,"iD":false,"id":335,"derived":false},{"id":336,"eClass":"EGenericType"},{"id":337,"eClass":"EGenericType"},{"id":338,"eClass":"EGenericType"},{"id":339,"eClass":"EGenericType"},{"id":340,"eClass":"EGenericType"}],"links":[{"source":0,"target":1},{"source":0,"target":2},{"source":0,"target":3},{"source":0,"target":4},{"source":0,"target":5},{"source":0,"target":6},{"source":0,"target":7},{"source":0,"target":8},{"source":0,"target":9},{"source":0,"target":10},{"source":0,"target":11},{"source":0,"target":12},{"source":0,"target":13},{"source":0,"target":14},{"source":0,"target":15},{"source":0,"target":16},{"source":0,"target":17},{"source":0,"target":18},{"source":0,"target":19},{"source":0,"target":20},{"source":0,"target":21},{"source":0,"target":22},{"source":0,"target":23},{"source":0,"target":24},{"source":0,"target":25},{"source":0,"target":26},{"source":0,"target":27},{"source":0,"target":28},{"source":0,"target":29},{"source":0,"target":30},{"source":0,"target":31},{"source":0,"target":32},{"source":0,"target":33},{"source":0,"target":34},{"source":0,"target":35},{"source":0,"target":36},{"source":0,"target":37},{"source":0,"target":38},{"source":0,"target":39},{"source":1,"target":0},{"source":1,"target":40},{"source":1,"target":41},{"source":1,"target":42},{"source":1,"target":43},{"source":1,"target":44},{"source":1,"target":45},{"source":1,"target":46},{"source":40,"target":4},{"source":40,"target":47},{"source":40,"target":1},{"source":47,"target":4},{"source":41,"target":48},{"source":41,"target":1},{"source":42,"target":5},{"source":42,"target":49},{"source":42,"target":1},{"source":49,"target":5},{"source":43,"target":3},{"source":43,"target":50},{"source":43,"target":1},{"source":50,"target":3},{"source":44,"target":2},{"source":44,"target":51},{"source":44,"target":1},{"source":51,"target":2},{"source":45,"target":52},{"source":45,"target":1},{"source":46,"target":53},{"source":46,"target":1},{"source":2,"target":0},{"source":2,"target":54},{"source":2,"target":55},{"source":54,"target":2},{"source":55,"target":2},{"source":3,"target":0},{"source":3,"target":56},{"source":3,"target":57},{"source":3,"target":58},{"source":3,"target":59},{"source":3,"target":60},{"source":3,"target":61},{"source":56,"target":3},{"source":57,"target":3},{"source":58,"target":3},{"source":59,"target":3},{"source":60,"target":3},{"source":61,"target":3},{"source":4,"target":0},{"source":4,"target":62},{"source":5,"target":0},{"source":5,"target":63},{"source":5,"target":64},{"source":5,"target":65},{"source":5,"target":66},{"source":5,"target":67},{"source":5,"target":68},{"source":5,"target":69},{"source":5,"target":70},{"source":5,"target":71},{"source":5,"target":72},{"source":5,"target":73},{"source":5,"target":74},{"source":5,"target":75},{"source":5,"target":76},{"source":5,"target":77},{"source":5,"target":78},{"source":5,"target":79},{"source":5,"target":80},{"source":63,"target":81},{"source":63,"target":5},{"source":64,"target":82},{"source":64,"target":5},{"source":65,"target":6},{"source":65,"target":83},{"source":65,"target":5},{"source":83,"target":6},{"source":66,"target":84},{"source":66,"target":5},{"source":67,"target":85},{"source":67,"target":5},{"source":68,"target":86},{"source":68,"target":5},{"source":69,"target":87},{"source":69,"target":5},{"source":70,"target":6},{"source":70,"target":88},{"source":70,"target":5},{"source":88,"target":6},{"source":71,"target":6},{"source":71,"target":89},{"source":71,"target":5},{"source":89,"target":6},{"source":72,"target":10},{"source":72,"target":90},{"source":72,"target":5},{"source":72,"target":91},{"source":90,"target":10},{"source":73,"target":6},{"source":73,"target":92},{"source":73,"target":5},{"source":92,"target":6},{"source":74,"target":6},{"source":74,"target":93},{"source":74,"target":5},{"source":93,"target":6},{"source":75,"target":7},{"source":75,"target":94},{"source":75,"target":5},{"source":94,"target":7},{"source":76,"target":8},{"source":76,"target":95},{"source":76,"target":5},{"source":95,"target":8},{"source":77,"target":8},{"source":77,"target":96},{"source":77,"target":5},{"source":96,"target":8},{"source":78,"target":97},{"source":78,"target":5},{"source":79,"target":98},{"source":79,"target":5},{"source":6,"target":0},{"source":6,"target":99},{"source":6,"target":100},{"source":6,"target":101},{"source":6,"target":102},{"source":6,"target":103},{"source":6,"target":104},{"source":6,"target":105},{"source":6,"target":106},{"source":6,"target":107},{"source":6,"target":108},{"source":99,"target":109},{"source":99,"target":6},{"source":100,"target":110},{"source":100,"target":6},{"source":101,"target":111},{"source":101,"target":6},{"source":102,"target":112},{"source":102,"target":6},{"source":103,"target":113},{"source":103,"target":6},{"source":104,"target":114},{"source":104,"target":6},{"source":105,"target":4},{"source":105,"target":115},{"source":105,"target":6},{"source":115,"target":4},{"source":106,"target":116},{"source":106,"target":6},{"source":107,"target":117},{"source":107,"target":6},{"source":108,"target":118},{"source":108,"target":6},{"source":7,"target":0},{"source":7,"target":6},{"source":7,"target":9},{"source":7,"target":119},{"source":7,"target":120},{"source":7,"target":121},{"source":7,"target":122},{"source":7,"target":123},{"source":119,"target":124},{"source":119,"target":7},{"source":120,"target":125},{"source":120,"target":7},{"source":121,"target":126},{"source":121,"target":7},{"source":122,"target":6},{"source":123,"target":9},{"source":8,"target":0},{"source":8,"target":6},{"source":8,"target":127},{"source":8,"target":128},{"source":8,"target":129},{"source":8,"target":130},{"source":8,"target":131},{"source":8,"target":132},{"source":8,"target":133},{"source":127,"target":134},{"source":127,"target":8},{"source":128,"target":38},{"source":128,"target":135},{"source":128,"target":8},{"source":128,"target":136},{"source":135,"target":38},{"source":129,"target":137},{"source":129,"target":8},{"source":130,"target":5},{"source":130,"target":138},{"source":130,"target":8},{"source":138,"target":5},{"source":131,"target":5},{"source":131,"target":139},{"source":131,"target":8},{"source":139,"target":5},{"source":132,"target":140},{"source":132,"target":8},{"source":133,"target":6},{"source":9,"target":0},{"source":10,"target":0},{"source":10,"target":9},{"source":10,"target":91},{"source":10,"target":141},{"source":10,"target":142},{"source":10,"target":143},{"source":10,"target":144},{"source":10,"target":145},{"source":10,"target":146},{"source":91,"target":5},{"source":91,"target":147},{"source":91,"target":10},{"source":91,"target":72},{"source":147,"target":5},{"source":141,"target":148},{"source":141,"target":10},{"source":142,"target":149},{"source":142,"target":10},{"source":143,"target":11},{"source":143,"target":150},{"source":143,"target":10},{"source":143,"target":151},{"source":150,"target":11},{"source":144,"target":4},{"source":144,"target":152},{"source":144,"target":10},{"source":152,"target":4},{"source":146,"target":9},{"source":11,"target":0},{"source":11,"target":151},{"source":151,"target":10},{"source":151,"target":153},{"source":151,"target":11},{"source":151,"target":143},{"source":153,"target":10},{"source":12,"target":0},{"source":12,"target":11},{"source":12,"target":154},{"source":12,"target":155},{"source":12,"target":156},{"source":154,"target":7},{"source":154,"target":157},{"source":154,"target":12},{"source":157,"target":7},{"source":155,"target":158},{"source":155,"target":12},{"source":156,"target":11},{"source":13,"target":0},{"source":13,"target":11},{"source":13,"target":159},{"source":13,"target":160},{"source":13,"target":161},{"source":13,"target":162},{"source":159,"target":30},{"source":159,"target":163},{"source":159,"target":13},{"source":163,"target":30},{"source":160,"target":10},{"source":160,"target":164},{"source":160,"target":13},{"source":164,"target":10},{"source":161,"target":165},{"source":161,"target":13},{"source":162,"target":11},{"source":14,"target":0},{"source":14,"target":5},{"source":14,"target":166},{"source":14,"target":167},{"source":14,"target":168},{"source":166,"target":17},{"source":166,"target":169},{"source":166,"target":14},{"source":166,"target":170},{"source":169,"target":17},{"source":167,"target":30},{"source":167,"target":171},{"source":167,"target":14},{"source":167,"target":172},{"source":171,"target":30},{"source":168,"target":5},{"source":15,"target":0},{"source":15,"target":173},{"source":15,"target":174},{"source":15,"target":175},{"source":173,"target":15},{"source":174,"target":15},{"source":175,"target":15},{"source":16,"target":0},{"source":16,"target":176},{"source":16,"target":177},{"source":176,"target":16},{"source":177,"target":16},{"source":17,"target":0},{"source":17,"target":6},{"source":17,"target":170},{"source":17,"target":178},{"source":17,"target":179},{"source":17,"target":180},{"source":17,"target":181},{"source":17,"target":182},{"source":17,"target":183},{"source":17,"target":184},{"source":17,"target":185},{"source":17,"target":186},{"source":17,"target":187},{"source":17,"target":188},{"source":170,"target":14},{"source":170,"target":189},{"source":170,"target":17},{"source":170,"target":166},{"source":189,"target":14},{"source":178,"target":15},{"source":178,"target":190},{"source":178,"target":17},{"source":190,"target":15},{"source":179,"target":191},{"source":179,"target":17},{"source":180,"target":192},{"source":180,"target":17},{"source":181,"target":193},{"source":181,"target":17},{"source":182,"target":194},{"source":182,"target":17},{"source":183,"target":16},{"source":183,"target":195},{"source":183,"target":17},{"source":195,"target":16},{"source":184,"target":196},{"source":184,"target":17},{"source":185,"target":197},{"source":185,"target":17},{"source":186,"target":198},{"source":186,"target":17},{"source":188,"target":6},{"source":18,"target":0},{"source":18,"target":17},{"source":18,"target":7},{"source":18,"target":199},{"source":18,"target":200},{"source":18,"target":201},{"source":18,"target":202},{"source":18,"target":203},{"source":18,"target":204},{"source":18,"target":205},{"source":18,"target":206},{"source":18,"target":207},{"source":199,"target":208},{"source":199,"target":18},{"source":200,"target":209},{"source":200,"target":18},{"source":201,"target":210},{"source":201,"target":18},{"source":202,"target":211},{"source":202,"target":18},{"source":203,"target":212},{"source":203,"target":18},{"source":204,"target":7},{"source":204,"target":213},{"source":204,"target":18},{"source":213,"target":7},{"source":205,"target":214},{"source":205,"target":18},{"source":206,"target":17},{"source":207,"target":7},{"source":19,"target":0},{"source":19,"target":18},{"source":19,"target":215},{"source":19,"target":216},{"source":19,"target":217},{"source":19,"target":218},{"source":19,"target":219},{"source":215,"target":220},{"source":215,"target":19},{"source":216,"target":221},{"source":216,"target":19},{"source":217,"target":222},{"source":217,"target":19},{"source":218,"target":223},{"source":218,"target":19},{"source":219,"target":18},{"source":20,"target":0},{"source":20,"target":224},{"source":20,"target":225},{"source":20,"target":226},{"source":224,"target":20},{"source":225,"target":20},{"source":226,"target":20},{"source":21,"target":0},{"source":21,"target":18},{"source":21,"target":227},{"source":21,"target":228},{"source":21,"target":229},{"source":227,"target":20},{"source":227,"target":230},{"source":227,"target":21},{"source":230,"target":20},{"source":228,"target":231},{"source":228,"target":21},{"source":229,"target":18},{"source":22,"target":0},{"source":22,"target":18},{"source":22,"target":232},{"source":22,"target":233},{"source":232,"target":234},{"source":232,"target":22},{"source":233,"target":18},{"source":23,"target":0},{"source":23,"target":18},{"source":23,"target":235},{"source":23,"target":236},{"source":23,"target":237},{"source":23,"target":238},{"source":23,"target":239},{"source":23,"target":240},{"source":235,"target":241},{"source":235,"target":23},{"source":236,"target":242},{"source":236,"target":23},{"source":237,"target":243},{"source":237,"target":23},{"source":238,"target":244},{"source":238,"target":23},{"source":239,"target":24},{"source":239,"target":245},{"source":239,"target":23},{"source":245,"target":24},{"source":240,"target":18},{"source":24,"target":0},{"source":25,"target":0},{"source":25,"target":24},{"source":25,"target":246},{"source":25,"target":247},{"source":246,"target":248},{"source":246,"target":25},{"source":247,"target":24},{"source":26,"target":0},{"source":26,"target":24},{"source":26,"target":249},{"source":26,"target":250},{"source":249,"target":251},{"source":249,"target":26},{"source":250,"target":24},{"source":27,"target":0},{"source":27,"target":23},{"source":27,"target":252},{"source":252,"target":23},{"source":28,"target":0},{"source":28,"target":23},{"source":28,"target":253},{"source":253,"target":23},{"source":29,"target":0},{"source":29,"target":18},{"source":29,"target":254},{"source":254,"target":18},{"source":30,"target":0},{"source":30,"target":17},{"source":30,"target":8},{"source":30,"target":255},{"source":30,"target":172},{"source":30,"target":256},{"source":30,"target":257},{"source":30,"target":258},{"source":30,"target":259},{"source":30,"target":260},{"source":30,"target":261},{"source":30,"target":262},{"source":30,"target":263},{"source":30,"target":264},{"source":30,"target":265},{"source":30,"target":266},{"source":30,"target":267},{"source":30,"target":268},{"source":255,"target":33},{"source":255,"target":269},{"source":255,"target":30},{"source":255,"target":270},{"source":269,"target":33},{"source":172,"target":14},{"source":172,"target":271},{"source":172,"target":30},{"source":172,"target":167},{"source":271,"target":14},{"source":256,"target":272},{"source":256,"target":30},{"source":257,"target":273},{"source":257,"target":30},{"source":258,"target":274},{"source":258,"target":30},{"source":259,"target":275},{"source":259,"target":30},{"source":260,"target":276},{"source":260,"target":30},{"source":261,"target":277},{"source":261,"target":30},{"source":262,"target":278},{"source":262,"target":30},{"source":263,"target":279},{"source":263,"target":30},{"source":264,"target":280},{"source":264,"target":30},{"source":265,"target":281},{"source":265,"target":30},{"source":266,"target":282},{"source":266,"target":30},{"source":267,"target":17},{"source":268,"target":8},{"source":31,"target":0},{"source":31,"target":30},{"source":31,"target":283},{"source":31,"target":284},{"source":31,"target":285},{"source":283,"target":15},{"source":283,"target":286},{"source":283,"target":31},{"source":286,"target":15},{"source":284,"target":287},{"source":284,"target":31},{"source":285,"target":30},{"source":32,"target":0},{"source":32,"target":30},{"source":32,"target":288},{"source":32,"target":289},{"source":288,"target":290},{"source":288,"target":32},{"source":289,"target":30},{"source":33,"target":0},{"source":33,"target":270},{"source":33,"target":291},{"source":33,"target":292},{"source":270,"target":30},{"source":270,"target":293},{"source":270,"target":33},{"source":270,"target":255},{"source":293,"target":30},{"source":291,"target":17},{"source":291,"target":294},{"source":291,"target":33},{"source":294,"target":17},{"source":292,"target":17},{"source":292,"target":295},{"source":292,"target":33},{"source":295,"target":17},{"source":34,"target":0},{"source":34,"target":5},{"source":34,"target":296},{"source":34,"target":297},{"source":34,"target":298},{"source":296,"target":5},{"source":296,"target":299},{"source":296,"target":34},{"source":299,"target":5},{"source":297,"target":35},{"source":297,"target":300},{"source":297,"target":34},{"source":297,"target":301},{"source":300,"target":35},{"source":298,"target":5},{"source":35,"target":0},{"source":35,"target":6},{"source":35,"target":301},{"source":35,"target":302},{"source":301,"target":34},{"source":301,"target":303},{"source":301,"target":35},{"source":301,"target":297},{"source":303,"target":34},{"source":302,"target":6},{"source":36,"target":0},{"source":36,"target":35},{"source":36,"target":304},{"source":36,"target":305},{"source":36,"target":306},{"source":36,"target":307},{"source":304,"target":308},{"source":304,"target":36},{"source":305,"target":309},{"source":305,"target":36},{"source":306,"target":310},{"source":306,"target":36},{"source":307,"target":35},{"source":37,"target":0},{"source":37,"target":36},{"source":37,"target":7},{"source":37,"target":311},{"source":37,"target":312},{"source":37,"target":313},{"source":37,"target":314},{"source":37,"target":315},{"source":311,"target":316},{"source":311,"target":37},{"source":312,"target":7},{"source":312,"target":317},{"source":312,"target":37},{"source":317,"target":7},{"source":313,"target":15},{"source":313,"target":318},{"source":313,"target":37},{"source":318,"target":15},{"source":314,"target":36},{"source":315,"target":7},{"source":38,"target":0},{"source":38,"target":36},{"source":38,"target":8},{"source":38,"target":319},{"source":38,"target":136},{"source":38,"target":320},{"source":38,"target":321},{"source":38,"target":322},{"source":38,"target":323},{"source":38,"target":324},{"source":38,"target":325},{"source":38,"target":326},{"source":319,"target":327},{"source":319,"target":38},{"source":136,"target":8},{"source":136,"target":328},{"source":136,"target":38},{"source":136,"target":128},{"source":328,"target":8},{"source":320,"target":38},{"source":320,"target":329},{"source":320,"target":38},{"source":329,"target":38},{"source":321,"target":330},{"source":321,"target":38},{"source":322,"target":15},{"source":322,"target":331},{"source":322,"target":38},{"source":331,"target":15},{"source":323,"target":14},{"source":323,"target":332},{"source":323,"target":38},{"source":332,"target":14},{"source":324,"target":14},{"source":324,"target":333},{"source":324,"target":38},{"source":333,"target":14},{"source":325,"target":36},{"source":326,"target":8},{"source":39,"target":0},{"source":39,"target":35},{"source":39,"target":8},{"source":39,"target":334},{"source":39,"target":335},{"source":39,"target":336},{"source":39,"target":337},{"source":39,"target":338},{"source":334,"target":38},{"source":334,"target":339},{"source":334,"target":39},{"source":339,"target":38},{"source":335,"target":15},{"source":335,"target":340},{"source":335,"target":39},{"source":340,"target":15},{"source":337,"target":35},{"source":338,"target":8}],"multigraph":true}