<?xml version="1.0" encoding="UTF-8"?>
<genmodel:GenModel 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" xmlns:genmodel="http://www.eclipse.org/uml2/2.2.0/GenModel"
    copyrightText="Copyright (c) 2019 CEA LIST.&#xA;&#xA; All rights reserved. This program and the accompanying materials&#xA; are made available under the terms of the Eclipse Public License 2.0&#xA; which accompanies this distribution, and is available at&#xA; https://www.eclipse.org/legal/epl-2.0/&#xA;&#xA; SPDX-License-Identifier: EPL-2.0&#xA;&#xA; Contributors:&#xA; Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation"
    modelDirectory="/org.eclipse.papyrus.model2doc.emf.documentstructuretemplate/src-gen"
    creationIcons="false" creationSubmenus="true" editDirectory="/org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.edit/src-gen"
    editorDirectory="/org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.editor/src-gen"
    modelPluginID="org.eclipse.papyrus.model2doc.emf.documentstructuretemplate" modelName="Documentstructuretemplate"
    editPluginClass="org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.provider.DocumentStructureTemplateEditPlugin"
    editorPluginClass="org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.presentation.DocumentStructureTemplateEditorPlugin"
    nonNLSMarkers="true" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
    codeFormatting="true" commentFormatting="true" testsDirectory="/org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.tests/src-gen"
    importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="8.0" copyrightFields="false"
    optimizedHasChildren="true" usedGenPackages="../../org.eclipse.papyrus.model2doc.core.author/model/author.genmodel#//author ../../org.eclipse.papyrus.model2doc.core.builtintypes/model/BuiltInTypes.genmodel#//builtintypes ../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore ../../org.eclipse.papyrus.infra.emf.expressions/model/expressions.genmodel#//expressions ../../org.eclipse.papyrus.model2doc.core.generatorconfiguration/model/generatorconfiguration.genmodel#//generatorconfiguration"
    operationReflection="true" importOrganizing="true" cleanup="true" oSGiCompatible="true"
    pluralizedGetters="true">
  <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/importer/org.eclipse.uml2.uml.ecore.importer">
    <details key="OPPOSITE_ROLE_NAMES" value="IGNORE"/>
    <details key="DUPLICATE_FEATURES" value="DISCARD"/>
    <details key="ANNOTATION_DETAILS" value="PROCESS"/>
    <details key="PROPERTY_DEFAULT_EXPRESSIONS" value="IGNORE"/>
    <details key="DUPLICATE_FEATURE_INHERITANCE" value="DISCARD"/>
    <details key="COMMENTS" value="PROCESS"/>
    <details key="DERIVED_FEATURES" value="PROCESS"/>
    <details key="SUPER_CLASS_ORDER" value="PROCESS"/>
    <details key="DUPLICATE_OPERATION_INHERITANCE" value="PROCESS"/>
    <details key="REDEFINING_OPERATIONS" value="PROCESS"/>
    <details key="INVARIANT_CONSTRAINTS" value="PROCESS"/>
    <details key="UNION_PROPERTIES" value="REPORT"/>
    <details key="DUPLICATE_OPERATIONS" value="PROCESS"/>
    <details key="NON_API_INVARIANTS" value="IGNORE"/>
    <details key="CAMEL_CASE_NAMES" value="IGNORE"/>
    <details key="SUBSETTING_PROPERTIES" value="REPORT"/>
    <details key="OPERATION_BODIES" value="IGNORE"/>
    <details key="ECORE_TAGGED_VALUES" value="PROCESS"/>
    <details key="UNTYPED_PROPERTIES" value="REPORT"/>
    <details key="REDEFINING_PROPERTIES" value="REPORT"/>
    <details key="INVOCATION_DELEGATES" value="IGNORE"/>
    <details key="VALIDATION_DELEGATES" value="IGNORE"/>
  </genAnnotations>
  <foreignModel>documentstructuretemplate.uml</foreignModel>
  <genPackages xsi:type="genmodel:GenPackage" prefix="DocumentStructureTemplate" basePackage="org.eclipse.papyrus.model2doc.emf"
      disposableProviderFactory="true" multipleEditorPages="false" extensibleProviderFactory="true"
      childCreationExtenders="true" fileExtensions="pdst" ecorePackage="documentstructuretemplate.ecore#/">
    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="documentstructuretemplate.ecore#//EClassFilterBehavior">
      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="documentstructuretemplate.ecore#//EClassFilterBehavior/TYPE_OF"/>
      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="documentstructuretemplate.ecore#//EClassFilterBehavior/KIND_OF"/>
    </genEnums>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//DocumentTemplate">
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//DocumentTemplate/semanticContext"/>
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//DocumentTemplate/graphicalContext"/>
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//DocumentTemplate/documentTemplatePrototype"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//DocumentTemplate/name"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//DocumentTemplate/description"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//DocumentTemplate/kindId"/>
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//DocumentTemplate/documentStructureGeneratorConfiguration"/>
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//DocumentTemplate/author"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//DocumentTemplate/getType"
          body="if (null != getDocumentTemplatePrototype()) {&#xA;&#x9;return getDocumentTemplatePrototype().getType();&#xA;}&#xA;return null;"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//DocumentTemplate/getIconPath"
          body="if (null != getDocumentTemplatePrototype()) {&#xA;&#x9;return getDocumentTemplatePrototype().getIconPath();&#xA;}&#xA;return null;"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//DocumentTemplatePrototype">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//DocumentTemplatePrototype/type"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//DocumentTemplatePrototype/iconPath"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//DocumentTemplatePrototype/description"/>
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//DocumentTemplatePrototype/documentTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//TextDocumentTemplate">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//TextDocumentTemplate/mainTitle"/>
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//TextDocumentTemplate/documentPart"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//DocumentPart"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//TableOfContents">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//TableOfContents/tocTitle"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//Body">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//Body/bodyPartTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IBodyPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IBodySectionPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//IBodySectionPartTemplate/generate"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//IBodySectionPartTemplate/generateTitle"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//IBodySectionPartTemplate/customTitle"/>
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//IBodySectionPartTemplate/generateBranchCondition"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IBodySectionPartTemplate/buildPartTemplateTitle"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.operations.BodySectionPartTemplateTitleOperations.INSTANCE.buildPartTemplateTitle(this,context);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//IBodySectionPartTemplate/buildPartTemplateTitle/context"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IBodySectionPartTemplate/generateBranch"
          body="if(null==context){&#xA;&#x9;return false;&#xA;}&#xA;if(null==generateBranchCondition){&#xA;&#x9;return true;&#xA;}&#xA;&#xA;return generateBranchCondition.evaluate(context);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//IBodySectionPartTemplate/generateBranch/context"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IComposedBodyPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//IComposedBodyPartTemplate/subBodyPartTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ISubBodyPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ILeafBodyPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IComposedSubBodyPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//IComposedSubBodyPartTemplate/bodyPartTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ILeafSubBodyPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EClassPartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//EClassTemplate">
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//EClassTemplate/eClass"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//EClassTemplate/filterRule"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EClassTemplate/isMatchingFilterRule"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EClassTemplateOperations.isMatchingFilterRule(this, inputEObject);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EClassTemplate/isMatchingFilterRule/inputEObject"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EReferencePartTemplate"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//EReferenceTemplate">
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//EReferenceTemplate/eReference"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EReferenceTemplate/getEReferenceValues"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EReferenceTemplateOperations.getEReferenceValues(this,context);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EReferenceTemplate/getEReferenceValues/context"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EReferenceTemplate/buildEReferenceValueLabel"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EReferenceTemplateOperations.buildEReferenceValueLabel(this,value);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EReferenceTemplate/buildEReferenceValueLabel/value"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ITemplatePartView"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ITableView">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//ITableView/columns"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//ITableView/generateRowHeader"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//ITableView/generateColumnHeader"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//ITableView/getRows">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//ITableView/getRows/context"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//ITableView/buildRowHeaderLabel">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//ITableView/buildRowHeaderLabel/rowElement"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IColumn">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//IColumn/customColumnTitle"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IColumn/buildColumnHeaderLabel"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IColumn/getCellValue">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//IColumn/getCellValue/row"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IColumn/buildCellLabel">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//IColumn/buildCellLabel/cellValue"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EReferenceTableView"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EStructuralFeatureColumn">
      <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
        <details key="propertyEditorFactory" value="editor://documentstructuretemplate/EStructuralFeatureColumn/EStructuralFeature/"/>
      </genAnnotations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//EStructuralFeatureTemplate">
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//EStructuralFeatureTemplate/feature"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EStructuralFeatureTemplate/getEStructuralFeatureValues"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EStructuralFeatureTemplateOperations.getEStructuralFeatureValues(this,context);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EStructuralFeatureTemplate/getEStructuralFeatureValues/context"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EStructuralFeatureTemplate/buildEStructuralFeatureValueLabel"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EStructuralFeatureTemplateOperations.buildEStructuralFeatureValueLabel(this,value);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EStructuralFeatureTemplate/buildEStructuralFeatureValueLabel/value"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//IListItemTemplate/generateItem"/>
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//IListItemTemplate/customItemLabel"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IListItemTemplate/buildItemLabel">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//IListItemTemplate/buildItemLabel/item"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//IListItemTemplate/getItems">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//IListItemTemplate/getItems/context"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ILeafListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IRootListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IComposedListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//IComposedListItemTemplate/subListItemTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ISubListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//IComposedSubListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//IComposedSubListItemTemplate/listItemTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//ILeafSubListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EReferenceListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EAttributeListItemTemplate"/>
    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="documentstructuretemplate.ecore#//EAttributeTemplate">
      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
          propertySortChoices="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//EAttributeTemplate/eAttribute"/>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EAttributeTemplate/buildEAttributeValueLabel"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EAttributeTemplateOperations.buildEAttributeValueLabel(this, value);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EAttributeTemplate/buildEAttributeValueLabel/value"/>
      </genOperations>
      <genOperations xsi:type="genmodel:GenOperation" ecoreOperation="documentstructuretemplate.ecore#//EAttributeTemplate/getEAttributeValues"
          body="return org.eclipse.papyrus.model2doc.emf.documentstructuretemplate.internal.operations.EAttributeTemplateOperations.getEAttributeValues(this, context);">
        <genParameters xsi:type="genmodel:GenParameter" ecoreParameter="documentstructuretemplate.ecore#//EAttributeTemplate/getEAttributeValues/context"/>
      </genOperations>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EClassListItemTemplate"
        labelFeature="#//documentstructuretemplate/IListItemTemplate/customItemLabel"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//TreeListView"
        labelFeature="#//documentstructuretemplate/IBodySectionPartTemplate/customTitle">
      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
          createChild="true" ecoreFeature="ecore:EReference documentstructuretemplate.ecore#//TreeListView/rootListItemTemplate"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//InsertFileTemplate"/>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//TableOfFigures">
      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute documentstructuretemplate.ecore#//TableOfFigures/tofTitle"/>
    </genClasses>
    <genClasses xsi:type="genmodel:GenClass" ecoreClass="documentstructuretemplate.ecore#//EAttributeAsParagraph"/>
  </genPackages>
</genmodel:GenModel>
