blob: 75c8e70ab2483c77b96bb80ed7d9553f8349fc93 [file] [log] [blame]
<?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) 2023 CEA LIST and others.&#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;http://www.eclipse.org/legal/epl-2.0/&#xA;&#xA; SPDX-License-Identifier: EPL-2.0&#xA; &#xA; Contributors:&#xA; &#x9;CEA LIST - Initial API and implementation"
modelDirectory="/org.eclipse.papyrus.aas.profile/src" modelPluginID="org.eclipse.papyrus.aas.profile"
modelName="Aas" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="8.0" copyrightFields="false"
usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore ../../org.eclipse.uml2.types/model/Types.genmodel#//types ../../org.eclipse.uml2.uml/model/UML.genmodel#//uml"
operationReflection="true" importOrganizing="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="PROCESS"/>
<details key="ANNOTATION_DETAILS" value="PROCESS"/>
<details key="PROPERTY_DEFAULT_EXPRESSIONS" value="IGNORE"/>
<details key="DUPLICATE_FEATURE_INHERITANCE" value="PROCESS"/>
<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="REPORT"/>
<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>aas.profile.uml</foreignModel>
<genPackages xsi:type="genmodel:GenPackage" prefix="AAS" basePackage="org.eclipse.papyrus"
disposableProviderFactory="true" ecorePackage="aas.ecore#/">
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//IdentifierType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifierType/Custom"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifierType/IRDI"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifierType/IRI"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//LangEnum">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/en"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/ar"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/cs"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/da"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/de"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/es"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/fr"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/hi"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/id"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/it"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/ja"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/ko"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/ml"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/nl"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/no"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/pl"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/pt"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/ro"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/ru"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/sr"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/sv"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/th"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/tr"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LangEnum/zh"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//KeyElements">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/GlobalReference"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/FragmentReference"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/AccessPermissionRule"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/AnnotatedRelationshipElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/BasicEvent"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Blob"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Capability"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/ConceptDictionary"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/DataElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/File"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Entity"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Event"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/MultiLanguageProperty"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Operation"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Property"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Range"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/ReferenceElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/RelationshipElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/SubmodelElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/SubmodelElementCollection"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/View"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/ConceptDescription"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Asset"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/AssetAdministrationShell"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/Submodel"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//ReferableElements">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/AccessPermissionRule"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/AnnotatedRelationshipElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/BasicEvent"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Blob"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Capability"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/ConceptDictionary"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/DataElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/File"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Entity"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Event"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/MultiLanguageProperty"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Operation"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Property"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Range"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/ReferenceElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/RelationshipElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/SubmodelElement"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/SubmodelElementCollection"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/View"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/ConceptDescription"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//IdentifiableElement">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/Asset"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/AssetAdministrationShell"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/ConceptDescription"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/Submodel"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//KeyType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyType/Custom"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyType/IRDI"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyType/IRI"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyType/IdShort"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyType/FragmentId"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//LocalKeyType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LocalKeyType/IdShort"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LocalKeyType/FragmentId"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//ModelingKind">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ModelingKind/Template"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ModelingKind/Instance"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//ProtocolKind">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/HTTP"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/MQTT"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/OPCUA"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/CoAP"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/ROS"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/OTHER"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//IdType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdType/String"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdType/Integer"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdType/Long"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdType/ByteArray"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdType/UUID"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//AssetKind">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//AssetKind/Type"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//AssetKind/Instance"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//MimeType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationjson"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationxls"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationpdf"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationzip"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationxml"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationiges"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationstep"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/imagepng"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/imagebmp"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/imagejpeg"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/imagegif"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/textxml"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/textplain"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/texthtml"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/other"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//SecurityKind">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//SecurityKind/none"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//SecurityKind/HTTPS"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//EntityType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//EntityType/CoManagedEntity"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//EntityType/SelfManagedEntity"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//LevelType">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LevelType/Min"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LevelType/Max"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LevelType/Nom"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LevelType/Typ"/>
</genEnums>
<genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//DataTypeIEC61360">
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/_"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/DATE"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/STRING"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/STRING_TRANSLATABLE"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/INTEGER_MEASURE"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/INTEGER_COUNT"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/INTEGER_CURRENCY"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/REAL_MEASURE"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/REAL_COUNT"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/REAL_CURRENCY"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/BOOLEAN"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/URL"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/RATIONAL"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/RATIONAL_MEASURE"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/TIME"/>
<genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//DataTypeIEC61360/TIMESTAMP"/>
</genEnums>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AssetAdministrationShell">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/derivedFrom"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/security"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/assetInformation"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/asset"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/submodel"
get="// should return all nestedClassifier of a AAS of type Submodel&#xA;&#x9;&#x9;EList&lt;Submodel> submodels = new BasicEList&lt;>();&#xA;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;org.eclipse.uml2.uml.Class base_class = getBase_Class();&#xA;&#x9;&#x9;&#x9;EList&lt;Classifier> allNestedClassifier = base_class.getNestedClassifiers();&#xA;&#x9;&#x9;&#x9;Iterator&lt;Classifier> it = allNestedClassifier.iterator();&#xA;&#x9;&#x9;&#x9;while (it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;Classifier classifier = it.next();&#xA;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(classifier, Submodel.class) != null) {&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;Submodel submodel = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(classifier, Submodel.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;submodels.add(submodel);&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return new UnmodifiableEList&lt;>(this, AASPackage.eINSTANCE.getSubmodel_Submodelelement(), submodels.size(), submodels.toArray());"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/endpoint"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//Identifiable">
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Identifiable/administration"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Identifiable/identification"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Identifiable/base_Package"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//Referable">
<genFeatures xsi:type="genmodel:GenFeature" property="Readonly" createChild="false"
ecoreFeature="ecore:EAttribute aas.ecore#//Referable/idShort" get="// get the name of the Referable Element&#xA;&#x9;&#x9;String name = null;&#xA;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_Class().getName();&#xA;&#x9;&#x9;} else if (this instanceof DataElement) {&#xA;&#x9;&#x9;&#x9;DataElement dataElement = (DataElement) this;&#xA;&#x9;&#x9;&#x9;name = dataElement.getBase_Property().getName();&#xA;&#x9;&#x9;} else if (this instanceof Capability) {&#xA;&#x9;&#x9;&#x9;Capability capability = (Capability) this;&#xA;&#x9;&#x9;&#x9;name = capability.getBase_Property().getName();&#xA;&#x9;&#x9;} else if (this instanceof Event) {&#xA;&#x9;&#x9;&#x9;Event event = (Event) this;&#xA;&#x9;&#x9;&#x9;name = event.getBase_Property().getName();&#xA;&#x9;&#x9;} else if (this instanceof Operation) {&#xA;&#x9;&#x9;&#x9;Operation operation = (Operation) this;&#xA;&#x9;&#x9;&#x9;name = operation.getBase_Operation().getName();&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;String idShort = name.replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Referable/category"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Referable/description"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Referable/base_Class"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//LangString">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//LangString/lang"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//LangString/value"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AdministrativeInformation">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AdministrativeInformation/version"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AdministrativeInformation/revision"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Identifier">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Identifier/idType"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Identifier/id"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//HasDataSpecification">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasDataSpecification/dataSpecification"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Reference">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Reference/key"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Reference/base_Class"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Key">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/type"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/value"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/idType"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Key/base_Class"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Security">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Security/base_Class"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Security/accessControlPolicyPoints"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Security/certificate"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Security/requiredCertificateExtension"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AccessControlPolicyPoints">
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//AccessControlPolicyPoints/localAccessControl"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalAccessControl"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalInformationPoints"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AccessControlPolicyPoints/internalInformationPoint"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalPolicyDecisionPoints"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalPolicyEnforcementPoint"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AccessControl"/>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Submodel">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Submodel/submodelelement"
get="// get all SubmodelElementCollection and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;&#x9;EList&lt;SubmodelElement> submodelElements = new org.eclipse.emf.common.util.BasicEList&lt;>();&#xA;&#x9;&#x9;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;org.eclipse.uml2.uml.Class base_class = getBase_Class();&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;// get all SECs and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;EList&lt;Classifier> allNestedClassifier = base_class.getNestedClassifiers();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;java.util.Iterator&lt;org.eclipse.uml2.uml.Classifier> it = allNestedClassifier.iterator();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;while (it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;Classifier classifier = it.next();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(classifier, org.eclipse.papyrus.aas.SubmodelElementCollection.class) != null) {&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;SubmodelElementCollection sec = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(classifier, org.eclipse.papyrus.aas.SubmodelElementCollection.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;submodelElements.add(sec);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;// get all submodelElements (stereotyped attributes) and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;EList&lt;org.eclipse.uml2.uml.Property> allAttributes = base_class.getAllAttributes();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;java.util.Iterator&lt;Property> p_it = allAttributes.iterator();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;while (p_it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;Property property = p_it.next();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.papyrus.uml.tools.utils.UMLUtil.getAppliedStereotype(property, &quot;AAS::SubmodelElement&quot;, false) != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;SubmodelElement child = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(property, org.eclipse.papyrus.aas.SubmodelElement.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;submodelElements.add(child);&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;// get all Operations and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;EList&lt;org.eclipse.uml2.uml.Operation> allOperations = base_class.getAllOperations();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;java.util.Iterator&lt;org.eclipse.uml2.uml.Operation> o_it = allOperations.iterator();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;while (o_it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;org.eclipse.uml2.uml.Operation operation = o_it.next();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(operation, org.eclipse.papyrus.aas.Operation.class) != null) {&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;org.eclipse.papyrus.aas.Operation op = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(operation, org.eclipse.papyrus.aas.Operation.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;submodelElements.add(op);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;return new org.eclipse.emf.ecore.util.EcoreEList.UnmodifiableEList&lt;>(this, AASPackage.eINSTANCE.getSubmodel_Submodelelement(), submodelElements.size(), submodelElements.toArray());"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//HasKind">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//HasKind/kind"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasKind/base_HasKind_Class"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//HasSemantics">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasSemantics/semanticId"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasSemantics/base_HasSemantics_Class"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//SubmodelElement">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//SubmodelElement/isDynamic"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElement/endPoint"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElement/nodeId"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Endpoint">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Endpoint/address"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Endpoint/protocol"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Endpoint/name"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//NodeId">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//NodeId/nameSpaceIndex"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//NodeId/identifier"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//NodeId/idType"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Certificate"/>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AssetInformation">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AssetInformation/assetKind"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetInformation/globalAssetId"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetInformation/specificAssetId"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetInformation/billOfMaterial"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetInformation/defaultThumbnail"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//IdentifierKeyValuePair">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//IdentifierKeyValuePair/key"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//IdentifierKeyValuePair/value"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//IdentifierKeyValuePair/externalSubjectId"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//File">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//File/path"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//File/mimeType"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//DataElement">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataElement/base_Property"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Asset">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Asset/kind"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Asset/endpoint"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AASEndpoint">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AASEndpoint/address"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AASEndpoint/port"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AASEndpoint/security"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Entity">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Entity/entityType"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Entity/asset"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Entity/base_Property"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//RelationshipElement">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//RelationshipElement/base_Dependency"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Operation">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Operation/base_Operation"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//SubmodelElementCollection">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElementCollection/value"
get="&#x9;// get all SubmodelElementCollection and add them to the list of submodelElements&#xA;&#x9;&#x9;EList&lt;SubmodelElement> submodelElements = new org.eclipse.emf.common.util.BasicEList&lt;>();&#xA;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;org.eclipse.uml2.uml.Class base_class = getBase_Class();&#xA;&#xA;&#x9;&#x9;&#x9;// get all SECs and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;EList&lt;Classifier> allNestedClassifier = base_class.getNestedClassifiers();&#xA;&#x9;&#x9;&#x9;java.util.Iterator&lt;org.eclipse.uml2.uml.Classifier> it = allNestedClassifier.iterator();&#xA;&#x9;&#x9;&#x9;while (it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;Classifier classifier = it.next();&#xA;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(classifier, org.eclipse.papyrus.aas.SubmodelElementCollection.class) != null) {&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;SubmodelElementCollection sec = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(classifier, org.eclipse.papyrus.aas.SubmodelElementCollection.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;submodelElements.add(sec);&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;}&#xA;&#xA;&#x9;&#x9;&#x9;// get all submodelElements (stereotyped attributes) and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;EList&lt;org.eclipse.uml2.uml.Property> allAttributes = base_class.getAllAttributes();&#xA;&#x9;&#x9;&#x9;java.util.Iterator&lt;Property> p_it = allAttributes.iterator();&#xA;&#x9;&#x9;&#x9;while (p_it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;Property property = p_it.next();&#xA;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.papyrus.uml.tools.utils.UMLUtil.getAppliedStereotype(property, &quot;AAS::SubmodelElement&quot;, false) != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;SubmodelElement child = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(property, org.eclipse.papyrus.aas.SubmodelElement.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;submodelElements.add(child);&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;}&#xA;&#xA;&#x9;&#x9;&#x9;// get all Operations and add them to the list of submodelElements&#xA;&#x9;&#x9;&#x9;EList&lt;org.eclipse.uml2.uml.Operation> allOperations = base_class.getAllOperations();&#xA;&#x9;&#x9;&#x9;java.util.Iterator&lt;org.eclipse.uml2.uml.Operation> o_it = allOperations.iterator();&#xA;&#x9;&#x9;&#x9;while (o_it.hasNext()) {&#xA;&#x9;&#x9;&#x9;&#x9;org.eclipse.uml2.uml.Operation operation = o_it.next();&#xA;&#x9;&#x9;&#x9;&#x9;if (org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(operation, org.eclipse.papyrus.aas.Operation.class) != null) {&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;org.eclipse.papyrus.aas.Operation op = org.eclipse.uml2.uml.util.UMLUtil.getStereotypeApplication(operation, org.eclipse.papyrus.aas.Operation.class);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;submodelElements.add(op);&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;}&#xA;&#xA;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return new org.eclipse.emf.ecore.util.EcoreEList.UnmodifiableEList&lt;>(this, AASPackage.eINSTANCE.getSubmodel_Submodelelement(), submodelElements.size(), submodelElements.toArray());"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElementCollection/base_Property"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElementCollection/base_DataType"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//SubmodelElementCollection/ordered"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//SubmodelElementCollection/allowDuplicates"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Property"/>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//ReferenceElement">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//ReferenceElement/value"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//Event">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Event/base_Property"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//BasicEvent">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//BasicEvent/observed"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Range">
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Range/min"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Range/max"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Capability">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Capability/base_Property"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//ConceptDescription">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//ConceptDescription/isCaseOf"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//LangStringSet"/>
<genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//DataSpecificationContent"/>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//DataSpecificationIEC61360">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/base_Class"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/preferredName"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/shortName"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//DataSpecificationIEC61360/unit"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/unitId"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//DataSpecificationIEC61360/sourceOfDefinition"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//DataSpecificationIEC61360/symbol"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/dataType"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/definition"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//DataSpecificationIEC61360/valueFormat"/>
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/valueList"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/value"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataSpecificationIEC61360/valueId"/>
<genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//DataSpecificationIEC61360/levelType"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//ValueReferencePairType">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//ValueReferencePairType/value"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//ValueReferencePairType/valueId"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//View">
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//View/containedElement"/>
</genClasses>
<genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//MultiLanguageProperty">
<genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
createChild="true" ecoreFeature="ecore:EReference aas.ecore#//MultiLanguageProperty/value"/>
<genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//MultiLanguageProperty/valueId"/>
</genClasses>
</genPackages>
</genmodel:GenModel>