Newer
Older
<?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="nsd" nsURI="http://www.iec.ch/61850/2016/NSD" nsPrefix="nsd">
<eAnnotations source="http://www.eclipse.org/OCL/Import">
<details key="ecore" value="http://www.eclipse.org/emf/2002/Ecore"/>
<details key="ecore.xml.type" value="http://www.eclipse.org/emf/2003/XMLType"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
<details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
<details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
</eAnnotations>
<eClassifiers xsi:type="ecore:EClass" name="AppliesToType" eSuperTypes="#//NsdObject #//AgNSIdentification">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="AppliesTo_._type"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceNsUsage" ordered="false"
eType="#//ServiceNsUsage" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ServiceNsUsage/appliesTo"/>
<eClassifiers xsi:type="ecore:EClass" name="DependsOn" eSuperTypes="#//NsdObject #//AgNSIdentification">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="DependsOn_._type"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/dependsOn"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToNS" ordered="false"
eType="#//NS" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/referredByDependsOn"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value=""/>
<details key="kind" value="mixed"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="elementWildcard"/>
<details key="name" value=":mixed"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
transient="true" containment="true" resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="xmlns:prefix"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
transient="true" containment="true" resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="xsi:schemaLocation"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="applicableServiceNS" eType="#//ApplicableServiceNS"
volatile="true" transient="true" unsettable="true" derived="true" containment="true"
resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="ApplicableServiceNS"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" eType="#//NS" volatile="true"
transient="true" unsettable="true" derived="true" containment="true" resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="NS"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nSDoc" eType="#//NSDoc"
volatile="true" transient="true" unsettable="true" derived="true" containment="true"
resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="NSDoc"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceNS" eType="#//ServiceNS"
volatile="true" transient="true" unsettable="true" derived="true" containment="true"
resolveProxies="false">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="ServiceNS"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ServiceType" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="Service_._type"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="#//ACSIServicesKind"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="applicableServices" ordered="false"
eType="#//ApplicableServices" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ApplicableServices/service"/>
<eClassifiers xsi:type="ecore:EClass" name="Abbreviation" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tAbbreviation"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="descID"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="abbreviations" ordered="false"
eType="#//Abbreviations" unsettable="true" resolveProxies="false" eOpposite="#//Abbreviations/abbreviation"/>
<eClassifiers xsi:type="ecore:EClass" name="Abbreviations" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tAbbreviations"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="abbreviation" ordered="false"
upperBound="-1" eType="#//Abbreviation" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//Abbreviation/abbreviations">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="Abbreviation"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/abbreviations"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceNS" ordered="false"
eType="#//ServiceNS" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ServiceNS/abbreviations"/>
<eClassifiers xsi:type="ecore:EClass" name="AbstractLNClass" eSuperTypes="#//AnyLNClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tAbstractLNClass"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="lNClasses" ordered="false"
eType="#//LNClasses" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//LNClasses/abstractLNClass"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByAnyLNClass" ordered="false"
upperBound="-1" eType="#//AnyLNClass" transient="true" unsettable="true" eOpposite="#//AnyLNClass/refersToAbstractLNClass"/>
<eClassifiers xsi:type="ecore:EEnum" name="ACSIServicesKind">
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tACSIServicesKind"/>
</eAnnotations>
<eLiterals name="Associate"/>
<eLiterals name="Abort" value="1"/>
<eLiterals name="Release" value="2"/>
<eLiterals name="GetServerDirectory" value="3"/>
<eLiterals name="GetLogicalDeviceDirectory" value="4"/>
<eLiterals name="GetAllDataValues" value="5"/>
<eLiterals name="GetDataValues" value="6"/>
<eLiterals name="SetDataValues" value="7"/>
<eLiterals name="GetDataDirectory" value="8"/>
<eLiterals name="GetDataDefinition" value="9"/>
<eLiterals name="GetDataSetValues" value="10"/>
<eLiterals name="SetDataSetValues" value="11"/>
<eLiterals name="CreateDataSet" value="12"/>
<eLiterals name="DeleteDataSet" value="13"/>
<eLiterals name="GetDataSetDirectory" value="14"/>
<eLiterals name="SelectActiveSG" value="15"/>
<eLiterals name="SelectEditSG" value="16"/>
<eLiterals name="SetEditSGValue" value="17"/>
<eLiterals name="ConfirmEditSGValues" value="18"/>
<eLiterals name="GetEditSGValue" value="19"/>
<eLiterals name="GetSGCBValues" value="20"/>
<eLiterals name="Report" value="21"/>
<eLiterals name="GetBRCBValues" value="22"/>
<eLiterals name="SetBRCBValues" value="23"/>
<eLiterals name="GetURCBValues" value="24"/>
<eLiterals name="SetURCBValues" value="25"/>
<eLiterals name="GetLCBValues" value="26"/>
<eLiterals name="SetLCBValues" value="27"/>
<eLiterals name="QueryLogByTime" value="28"/>
<eLiterals name="QueryLogAfter" value="29"/>
<eLiterals name="GetLogStatusValues" value="30"/>
<eLiterals name="SendGOOSEMessage" value="31"/>
<eLiterals name="GetGoCBValues" value="32"/>
<eLiterals name="SetGoCBValues" value="33"/>
<eLiterals name="GetGoReference" value="34"/>
<eLiterals name="GetGOOSEElementNumber" value="35"/>
<eLiterals name="SendMSVMessage" value="36"/>
<eLiterals name="GetMSVCBValues" value="37"/>
<eLiterals name="SetMSVCBValues" value="38"/>
<eLiterals name="SendUSVMessage" value="39"/>
<eLiterals name="GetUSVCBValues" value="40"/>
<eLiterals name="SetUSVCBValues" value="41"/>
<eLiterals name="Select" value="42"/>
<eLiterals name="SelectWithValue" value="43"/>
<eLiterals name="Cancel" value="44"/>
<eLiterals name="Operate" value="45"/>
<eLiterals name="CommandTermination" value="46"/>
<eLiterals name="TimeActivatedOperate" value="47"/>
<eLiterals name="GetFile" value="48"/>
<eLiterals name="SetFile" value="49"/>
<eLiterals name="DeleteFile" value="50"/>
<eLiterals name="GetFileAttributeValues" value="51"/>
<eLiterals name="TimeSynchronization" value="52"/>
<eLiterals name="InternalChange" value="53"/>
<eLiterals name="GetLogicalNodeDirectory" value="54"/>
<eLiterals name="GetMsvReference" value="55"/>
<eLiterals name="GetMSVElementNumber" value="56"/>
<eLiterals name="GetUsvReference" value="57"/>
<eLiterals name="GetUSVElementNumber" value="58"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="ACSIServicesKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tACSIServicesKind:Object"/>
<details key="baseType" value="tACSIServicesKind"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AnyLNClass" abstract="true" eSuperTypes="#//TitledClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tAnyLNClass"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eOperations name="getName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"/>
<eOperations name="getLNClasses" eType="#//LNClasses"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="dataObject" ordered="false"
upperBound="-1" eType="#//DataObject" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//DataObject/anyLNClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="DataObject"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="base" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="base"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToAbstractLNClass"
ordered="false" eType="#//AbstractLNClass" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//AbstractLNClass/referredByAnyLNClass"/>
<eClassifiers xsi:type="ecore:EClass" name="ApplicableServiceNS" eSuperTypes="#//Copyrighted">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tApplicableServiceNS"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceNsUsage" ordered="false"
upperBound="-1" eType="#//ServiceNsUsage" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//ServiceNsUsage/applicableServiceNS">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="ServiceNsUsage"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="date" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//DateTime"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="date"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//UnsignedInt"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="version"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ApplicableServices" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tApplicableServices"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="service" ordered="false"
upperBound="-1" eType="#//ServiceType" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//ServiceType/applicableServices">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="Service"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="dataSetMemberOf" ordered="false"
upperBound="-1" eType="#//DataSetMemberOf" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//DataSetMemberOf/applicableServices">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="DataSetMemberOf"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="functionalConstraint" ordered="false"
eType="#//FunctionalConstraint" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//FunctionalConstraint/applicableServices"/>
<eClassifiers xsi:type="ecore:EDataType" name="AttributeTypeKind" instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tAttributeTypeKind"/>
<details key="memberTypes" value="tDefinedAttributeTypeKind tUndefinedAttributeTypeKind"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BasicType" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tBasicType"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="descID"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="basicTypes" ordered="false"
eType="#//BasicTypes" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//BasicTypes/basicType"/>
<eClassifiers xsi:type="ecore:EClass" name="BasicTypes" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tBasicTypes"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="basicType" ordered="false"
upperBound="-1" eType="#//BasicType" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//BasicType/basicTypes">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="BasicType"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/basicTypes"/>
<eClassifiers xsi:type="ecore:EEnum" name="CBKind">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tCBKind"/>
</eAnnotations>
<eLiterals name="RCB"/>
<eLiterals name="LCB" value="1"/>
<eLiterals name="GoCB" value="2"/>
<eLiterals name="SVCB" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="CBKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tCBKind:Object"/>
<details key="baseType" value="tCBKind"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CDC" eSuperTypes="#//TitledClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tCDC"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="uniqueCDCChild"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="uniqueCDCChild" value="Tuple {
	message : String = 'For a CDC, there shall not be two sub-elements (SubDataObject or DataAttribute) with same name.',
	status : Boolean = 
			let names : Bag(String) = self.subDataObject.name->union(self.dataAttribute.name) in names->size() = names->asSet()->size()
}.status"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="subDataObject" ordered="false"
upperBound="-1" eType="#//SubDataObject" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//SubDataObject/cDC">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="SubDataObject"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="dataAttribute" ordered="false"
upperBound="-1" eType="#//DataAttribute" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//DataAttribute/cDC">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="DataAttribute"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceParameter" ordered="false"
eType="#//ServiceParameter" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//ServiceParameter/cDC">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="ServiceParameter"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="enumParameterized" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="enumParameterized"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="statistics" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="statistics"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="typeKindParameterized"
eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="typeKindParameterized"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="variant" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Token"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="variant"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="cDCs" ordered="false" eType="#//CDCs"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//CDCs/cDC"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataObject" ordered="false"
upperBound="-1" eType="#//DataObject" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//DataObject/refersToCDC"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredBySubDataObject"
ordered="false" upperBound="-1" eType="#//SubDataObject" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//SubDataObject/refersToCDC"/>
<eClassifiers xsi:type="ecore:EClass" name="CDCs" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tCDCs"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="cDC" ordered="false" upperBound="-1"
eType="#//CDC" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//CDC/cDCs">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="CDC"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/cDCs"/>
<eClassifiers xsi:type="ecore:EClass" name="Changes" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tChanges"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="changesID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="changesID"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="date" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Date"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="date"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
defaultValueLiteral="A" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="revision"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="tissues" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="tissues"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/changes"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceNS" ordered="false"
eType="#//ServiceNS" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ServiceNS/changes"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
defaultValueLiteral="1" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="release"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="version"/>
</eAnnotations>
</eStructuralFeatures>
<eClassifiers xsi:type="ecore:EClass" name="ConstructedAttribute" eSuperTypes="#//TitledClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tConstructedAttribute"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="uniqueSubDataAttribute"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="uniqueSubDataAttribute" value="Tuple {
	message : String = 'For a ConstructedAttribute, there shall not be two SubDataAttribute sub-elements with same name',
	status : Boolean = 
			self.subDataAttribute->isUnique( s : SubDataAttribute | s.name )
}.status"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="subDataAttribute" ordered="false"
upperBound="-1" eType="#//SubDataAttribute" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//SubDataAttribute/constructedAttribute">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="SubDataAttribute"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="constructedAttributes"
ordered="false" eType="#//ConstructedAttributes" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//ConstructedAttributes/constructedAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceTypeRealizations"
ordered="false" eType="#//ServiceTypeRealizations" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//ServiceTypeRealizations/serviceTypeRealization"/>
<eClassifiers xsi:type="ecore:EClass" name="ConstructedAttributes" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tConstructedAttributes"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="constructedAttribute" ordered="false"
upperBound="-1" eType="#//ConstructedAttribute" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//ConstructedAttribute/constructedAttributes">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="ConstructedAttribute"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/constructedAttributes"/>
<eClassifiers xsi:type="ecore:EClass" name="Copyrighted" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tCopyrighted"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="copyright" ordered="false"
eType="#//CopyrightNotice" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//CopyrightNotice/copyrighted">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="Copyright"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CopyrightNotice" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tCopyrightNotice"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="notice" ordered="false"
eType="#//Notice" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//Notice/copyrightNotice">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="Notice"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="license" ordered="false"
eType="#//License" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//License/copyrightNotice">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="License"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="copyrighted" ordered="false"
eType="#//Copyrighted" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//Copyrighted/copyright"/>
<eClassifiers xsi:type="ecore:EClass" name="DataAttribute" eSuperTypes="#//DocumentedClass #//AgPresenceCondition #//AgArray #//AgTrgOp #//AgAttributeTypeAndValues">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDataAttribute"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="fc" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="fc"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="cDC" ordered="false" eType="#//CDC"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//CDC/dataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredBySubDataObjectAsSizeAttribute"
ordered="false" upperBound="-1" eType="#//SubDataObject" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//SubDataObject/refersToSizeAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredBySubDataObjectAsMaxIndexAttribute"
ordered="false" upperBound="-1" eType="#//SubDataObject" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//SubDataObject/refersToMaxIndexAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToFunctionalConstraint"
ordered="false" eType="#//FunctionalConstraint" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//FunctionalConstraint/referredByDataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToPresenceCondition"
ordered="false" eType="#//PresenceCondition" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//PresenceCondition/referredByDataAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToSizeAttribute"
ordered="false" eType="#//DataAttribute" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//DataAttribute/referredByDataAttributeAsSizeAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToMaxIndexAttribute"
ordered="false" eType="#//DataAttribute" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//DataAttribute/referredByDataAttributeAsMaxIndexAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttributeAsSizeAttribute"
ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToSizeAttribute"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttributeAsMaxIndexAttribute"
ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToMaxIndexAttribute"/>
<eClassifiers xsi:type="ecore:EClass" name="DataObject" eSuperTypes="#//DocumentedClass #//AgPresenceCondition #//AgPresenceConditionDerivedStatistics #//AgUnderlyingType">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDataObject"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="transient" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="transient"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="type"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="anyLNClass" ordered="false"
eType="#//AnyLNClass" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//AnyLNClass/dataObject"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToCDC" ordered="false"
eType="#//CDC" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//CDC/referredByDataObject"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToPresenceCondition"
ordered="false" eType="#//PresenceCondition" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//PresenceCondition/referredByDataObject"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToPresenceConditionDerivedStatistics"
ordered="false" eType="#//PresenceCondition" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//PresenceCondition/referredByDataObjectForDerivedStatistics"/>
<eClassifiers xsi:type="ecore:EClass" name="DataSetMemberOf" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDataSetMemberOf"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="cb" eType="#//CBKind" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="cb"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="applicableServices" ordered="false"
eType="#//ApplicableServices" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ApplicableServices/dataSetMemberOf"/>
<eClassifiers xsi:type="ecore:EEnum" name="DefinedAttributeTypeKind">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDefinedAttributeTypeKind"/>
</eAnnotations>
<eLiterals name="BASIC">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The type of the data attribute is a basic one (e.g., BOOLEAN, INT32), including CODED ENUMs (e.g., Dbpos, Tcmd) and PACKED LISTs (Timestamp, Quality, OptFlds)."/>
</eAnnotations>
</eLiterals>
<eLiterals name="ENUMERATED" value="1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The type of the data attribute is an enumeration."/>
</eAnnotations>
</eLiterals>
<eLiterals name="CONSTRUCTED" value="2">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The type of the data attribute is a constructed (composed) one."/>
</eAnnotations>
</eLiterals>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="DefinedAttributeTypeKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDefinedAttributeTypeKind:Object"/>
<details key="baseType" value="tDefinedAttributeTypeKind"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Doc" eSuperTypes="#//NsdObject">
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDoc"/>
<details key="kind" value="mixed"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="elementWildcard"/>
<details key="name" value=":mixed"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
volatile="true" transient="true" derived="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="group"/>
<details key="name" value="group:1"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="any" unique="false" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
volatile="true" transient="true" derived="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="elementWildcard"/>
<details key="wildcards" value="##any"/>
<details key="name" value=":2"/>
<details key="processing" value="lax"/>
<details key="group" value="#group:1"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="id"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nSDoc" ordered="false"
eType="#//NSDoc" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//NSDoc/doc"/>
<eClassifiers xsi:type="ecore:EClass" name="DocumentedClass" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tDocumentedClass"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="deprecated" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="deprecated"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="descID"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="informative" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
defaultValueLiteral="false" unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="informative"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Enumeration" eSuperTypes="#//TitledClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tEnumeration"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="constraints" value="uniqueLiteralName uniqueLiteralVal"/>
</eAnnotations>
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
<details key="uniqueLiteralName" value="Tuple {
	message : String = 'For an Enumeration, there shall not be two Literal sub-elements with same name.',
	status : Boolean = 
			-- TODO: inherited literals should be taken into account
			-- For this, explicit links have to be created first
			self.literal->isUnique( l : Literal | l.name )
}.status"/>
<details key="uniqueLiteralVal" value="Tuple {
	message : String = 'For an Enumeration, there shall not be two Literal sub-elements with same liiteralVal.',
	status : Boolean = 
			self.literal->isUnique( l : Literal | l.literalVal )
}.status"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="literal" ordered="false"
upperBound="-1" eType="#//Literal" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//Literal/enumeration">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="Literal"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="inheritedFrom" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="inheritedFrom"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="name"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="enumerations" ordered="false"
eType="#//Enumerations" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//Enumerations/enumeration"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="refersToBaseEnumeration"
ordered="false" eType="#//Enumeration" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//Enumeration/referredByEnumerationAsBase"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByEnumerationAsBase"
ordered="false" upperBound="-1" eType="#//Enumeration" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//Enumeration/refersToBaseEnumeration"/>
<eClassifiers xsi:type="ecore:EClass" name="Enumerations" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tEnumerations"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="enumeration" upperBound="-1"
eType="#//Enumeration" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//Enumeration/enumerations">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="Enumeration"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/enumerations"/>
<eClassifiers xsi:type="ecore:EClass" name="FunctionalConstraint" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tFunctionalConstraint"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="applicableServices" ordered="false"
eType="#//ApplicableServices" unsettable="true" containment="true" resolveProxies="false"
eOpposite="#//ApplicableServices/functionalConstraint">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="ApplicableServices"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="abbreviation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="abbreviation"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="descID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="descID"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="titleID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="titleID"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="functionalConstraints"
ordered="false" eType="#//FunctionalConstraints" transient="true" unsettable="true"
resolveProxies="false" eOpposite="#//FunctionalConstraints/functionalConstraint"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredByDataAttribute"
ordered="false" upperBound="-1" eType="#//DataAttribute" transient="true"
unsettable="true" resolveProxies="false" eOpposite="#//DataAttribute/refersToFunctionalConstraint"/>
<eClassifiers xsi:type="ecore:EClass" name="FunctionalConstraints" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tFunctionalConstraints"/>
<details key="kind" value="elementOnly"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="functionalConstraint" ordered="false"
upperBound="-1" eType="#//FunctionalConstraint" unsettable="true" containment="true"
resolveProxies="false" eOpposite="#//FunctionalConstraint/functionalConstraints">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="element"/>
<details key="name" value="FunctionalConstraint"/>
<details key="namespace" value="##targetNamespace"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="nS" ordered="false" eType="#//NS"
transient="true" unsettable="true" resolveProxies="false" eOpposite="#//NS/functionalConstraints"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="serviceNS" ordered="false"
eType="#//ServiceNS" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//ServiceNS/functionalConstraints"/>
<eClassifiers xsi:type="ecore:EClass" name="License" eSuperTypes="#//NsdObject">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tLicense"/>
<details key="kind" value="mixed"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="elementWildcard"/>
<details key="name" value=":mixed"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//LicenseKind"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="kind"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="uri" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//NormalizedString"
unsettable="true">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="kind" value="attribute"/>
<details key="name" value="uri"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="copyrightNotice" ordered="false"
eType="#//CopyrightNotice" transient="true" unsettable="true" resolveProxies="false"
eOpposite="#//CopyrightNotice/license"/>
<eClassifiers xsi:type="ecore:EEnum" name="LicenseKind">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tLicenseKind"/>
</eAnnotations>
<eLiterals name="Standard"/>
<eLiterals name="Private" value="1"/>
<eLiterals name="None" value="2"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="LicenseKindObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tLicenseKind:Object"/>
<details key="baseType" value="tLicenseKind"/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Literal" eSuperTypes="#//DocumentedClass">
<eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
<details key="name" value="tLiteral"/>
<details key="kind" value="empty"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="literalVal" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Int"
unsettable="true">