| <?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="modelmanagement" |
| nsURI="http://eclipse.org/ocl/examples/impactanalyzer/testmodel/ngpm/modelmanagement.ecore" |
| nsPrefix="modelmanagement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| <details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| <details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="Packaging, namespaces, visibility rules, dependency management, specifying facades / public parts, SCs, DCs, SCVs, ..."/> |
| </eAnnotations> |
| <eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="#//PackageOwner"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="Packages own and structure the model content. Higher-level concepts such as process components, applications or deployment units should not inherit from Package but instead own packages that contain their implementation."/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL"> |
| <details key="DistinctClassNamesPerPackage" value="self.classes->forAll( i, j | i <> j implies i.name <> j.name )"/> |
| <details key="NoCyclicOwnership" value="not self.hasOwnershipCycle(Set{})"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="DistinctClassNamesPerPackage NoCyclicOwnership"/> |
| </eAnnotations> |
| <eOperations name="hasOwnershipCycle" ordered="false" unique="false" lowerBound="1" |
| eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL"> |
| <details key="body" value="if pks->includes(self) then
 true
 else
 if self.owner->isEmpty() then
 false
 else
 if self.owner.oclIsKindOf(Package) then
 self.owner.oclAsType(Package).hasOwnershipCycle(pks->including(self))
 else
 false
 endif
 endif
 endif"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="constraints" value="body"/> |
| </eAnnotations> |
| <eParameters name="pks" ordered="false" upperBound="-1" eType="#//Package"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="associations" upperBound="-1" |
| eType="ecore:EClass data.ecore#//classes/Association" containment="true" eOpposite="data.ecore#//classes/Association/package_"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="classes" upperBound="-1" |
| eType="ecore:EClass data.ecore#//classes/SapClass" containment="true" eOpposite="data.ecore#//classes/SapClass/package_"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="parameterizedClasses" upperBound="-1" |
| eType="ecore:EClass data.ecore#//generics/ClassParameterization" containment="true" |
| eOpposite="data.ecore#//generics/ClassParameterization/package_"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="owner" eType="#//PackageOwner" |
| transient="true" eOpposite="#//PackageOwner/ownedPackages"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="configurability" upperBound="-1" |
| eType="ecore:EClass configuration.ecore#//businessconfiguration/experimental/ConfigurationEntity" |
| containment="true"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml"> |
| <details key="Property.oppositeRoleName" value="package_"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="bindings" upperBound="-1" |
| eType="ecore:EClass integration.ecore#//binding/Binding" containment="true"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml"> |
| <details key="Property.oppositeRoleName" value="package_"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="NamedElement" abstract="true"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" ordered="false" unique="false" |
| lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="description" ordered="false" |
| unique="false" eType="ecore:EClass localization.ecore#//TranslatableText" |
| containment="true" resolveProxies="false"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Application" eSuperTypes="#//NamedElement"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="An application, such as "Business ByDesign""/> |
| </eAnnotations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="deploymentUnits" upperBound="-1" |
| eType="#//deploymentunits/DeploymentUnit" containment="true"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="integrationScenarios" upperBound="-1" |
| eType="ecore:EClass integration.ecore#//processintegration/IntegrationScenario" |
| containment="true"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="PackageOwner" eSuperTypes="#//NamedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedPackages" upperBound="-1" |
| eType="#//Package" containment="true" eOpposite="#//Package/owner"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Module"/> |
| <eSubpackages name="processcomponents" nsURI="http://eclipse.org/ocl/examples/impactanalyzer/testmodel/ngpm/modelmanagement/processcomponents.ecore" |
| nsPrefix="modelmanagement.processcomponents"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| <details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| <details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The process components as defined by AP are an important structuring means into which BOs can be grouped."/> |
| </eAnnotations> |
| <eClassifiers xsi:type="ecore:EClass" name="ProcessComponent" abstract="true" |
| eSuperTypes="#//PackageOwner"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="providedInterfaces" upperBound="-1" |
| eType="ecore:EClass data.ecore#//classes/SapClass"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="eventProducers" upperBound="-1" |
| eType="ecore:EClass behavioral.ecore#//events/EventProducer"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="initiatedInteractions" |
| upperBound="-1" eType="ecore:EClass integration.ecore#//processintegration/ProcessComponentInteraction" |
| eOpposite="integration.ecore#//processintegration/ProcessComponentInteraction/initiatorProcessComponent"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="interactions" upperBound="-1" |
| eType="ecore:EClass integration.ecore#//processintegration/ProcessComponentInteraction" |
| eOpposite="integration.ecore#//processintegration/ProcessComponentInteraction/processComponent"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="ProcessComponentInsideCompany" eSuperTypes="#//processcomponents/ProcessComponent"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="A process component that the implementation is known of. It therefore specifies the set of implementing classes and blocks. The blocks implement service interfaces offered by the process component."/> |
| </eAnnotations> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="ProcessComponentOutsideCompany" eSuperTypes="#//processcomponents/ProcessComponent"/> |
| </eSubpackages> |
| <eSubpackages name="deploymentunits" nsURI="http://eclipse.org/ocl/examples/impactanalyzer/testmodel/ngpm/modelmanagement/deploymentunits.ecore" |
| nsPrefix="modelmanagement.deploymentunits"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> |
| <details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| <details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| <details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="Specifies constraints regarding the deployability of a solution. Which parts need to be codeployed, what can be distributed.

Align with PPMS "Deployment Package""/> |
| </eAnnotations> |
| <eClassifiers xsi:type="ecore:EClass" name="DeploymentUnit" eSuperTypes="#//PackageOwner #//NamedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="pcsInsideCompany" upperBound="-1" |
| eType="#//processcomponents/ProcessComponent" containment="true"/> |
| </eClassifiers> |
| </eSubpackages> |
| </ecore:EPackage> |