SCL.ecore 170 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
<?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="scl" nsURI="http://www.iec.ch/61850/2003/SCL" nsPrefix="scl">
  <eClassifiers xsi:type="ecore:EClass" name="AnyContentFromOtherNamespace" abstract="true"
      eSuperTypes="#//SclObject">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="name" value="AnyContentFromOtherNamespace"/>
      <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="##other"/>
        <details key="name" value=":2"/>
        <details key="processing" value="lax"/>
        <details key="group" value="#group:1"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="anyAttribute" 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="attributeWildcard"/>
        <details key="wildcards" value="##other"/>
        <details key="name" value=":3"/>
        <details key="processing" value="lax"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BaseElement" abstract="true" eSuperTypes="#//ExplicitLinkResolver">
    <eStructuralFeatures xsi:type="ecore:EReference" name="Private" ordered="false"
        upperBound="-1" eType="#//Private" unsettable="true" containment="true" resolveProxies="false"
49
        eOpposite="#//Private/ParentBaseElement"/>
50
    <eStructuralFeatures xsi:type="ecore:EReference" name="Text" ordered="false" eType="#//Text"
51
        unsettable="true" containment="true" resolveProxies="false" eOpposite="#//Text/ParentBaseElement"/>
52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="any" 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="wildcards" value="##other"/>
        <details key="name" value=":0"/>
        <details key="processing" value="lax"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="anyAttribute" 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="attributeWildcard"/>
        <details key="wildcards" value="##other"/>
        <details key="name" value=":3"/>
        <details key="processing" value="lax"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Header" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nameStructure" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
75
        defaultValueLiteral="IEDName" unsettable="true"/>
76
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
77
        defaultValueLiteral="" unsettable="true"/>
78 79 80 81
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="toolID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
82 83
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSCL" ordered="false"
        eType="#//SCL" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SCL/Header"/>
84
    <eStructuralFeatures xsi:type="ecore:EReference" name="Text" ordered="false" eType="#//Text"
85
        unsettable="true" containment="true" resolveProxies="false" eOpposite="#//Text/ParentHeader"/>
86 87
    <eStructuralFeatures xsi:type="ecore:EReference" name="History" ordered="false"
        eType="#//History" unsettable="true" containment="true" resolveProxies="false"
88
        eOpposite="#//History/ParentHeader"/>
89 90
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="History" eSuperTypes="#//SclObject">
91
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentHeader" ordered="false"
92 93 94 95
        eType="#//Header" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Header/History"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Hitem" ordered="false"
        upperBound="-1" eType="#//Hitem" unsettable="true" containment="true" resolveProxies="false"
96
        eOpposite="#//Hitem/ParentHistory"/>
97 98 99 100 101 102 103 104 105 106 107 108 109 110
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Hitem" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="what" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="when" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="who" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="why" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
111
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentHistory" ordered="false"
112 113 114
        eType="#//History" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//History/Hitem"/>
  </eClassifiers>
115
  <eClassifiers xsi:type="ecore:EClass" name="IDNaming" eSuperTypes="#//BaseElement #//AgDesc">
116 117 118 119 120 121
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Line" eSuperTypes="#//GeneralEquipmentContainer">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
122
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentProcess" ordered="false"
123 124
        eType="#//Process" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Process/Line"/>
125 126
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSCL" ordered="false"
        eType="#//SCL" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SCL/Line"/>
127 128
    <eStructuralFeatures xsi:type="ecore:EReference" name="ConnectivityNode" ordered="false"
        upperBound="-1" eType="#//ConnectivityNode" unsettable="true" containment="true"
129
        resolveProxies="false" eOpposite="#//ConnectivityNode/ParentLine"/>
130 131
    <eStructuralFeatures xsi:type="ecore:EReference" name="ConductingEquipment" ordered="false"
        upperBound="-1" eType="#//ConductingEquipment" unsettable="true" containment="true"
132
        resolveProxies="false" eOpposite="#//ConductingEquipment/ParentLine"/>
133
    <eStructuralFeatures xsi:type="ecore:EReference" name="Voltage" eType="#//Voltage"
134
        unsettable="true" containment="true" resolveProxies="false" eOpposite="#//Voltage/ParentLine"/>
135 136
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="nomFreq" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBigDecimal"
        unsettable="true"/>
137
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="numPhases" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
138
        unsettable="true"/>
139
  </eClassifiers>
140
  <eClassifiers xsi:type="ecore:EClass" name="Naming" abstract="true" eSuperTypes="#//BaseElement #//AgDesc">
141 142 143 144 145 146 147 148 149 150 151
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Private" eSuperTypes="#//AnyContentFromOtherNamespace">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="mixed"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
152
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentBaseElement" ordered="false"
153 154 155 156 157 158 159 160
        eType="#//BaseElement" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//BaseElement/Private"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Process" eSuperTypes="#//GeneralEquipmentContainer">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Line" ordered="false" upperBound="-1"
        eType="#//Line" unsettable="true" containment="true" resolveProxies="false"
161 162 163
        eOpposite="#//Line/ParentProcess"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSCL" ordered="false"
        eType="#//SCL" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SCL/Process"/>
164 165
    <eStructuralFeatures xsi:type="ecore:EReference" name="ConductingEquipment" ordered="false"
        upperBound="-1" eType="#//ConductingEquipment" unsettable="true" containment="true"
166
        resolveProxies="false" eOpposite="#//ConductingEquipment/ParentProcess"/>
167 168
    <eStructuralFeatures xsi:type="ecore:EReference" name="Substation" ordered="false"
        upperBound="-1" eType="#//Substation" unsettable="true" containment="true"
169
        resolveProxies="false" eOpposite="#//Substation/ParentProcess"/>
170 171 172 173 174 175 176 177 178 179 180 181 182 183
    <eStructuralFeatures xsi:type="ecore:EReference" name="SubProcesses" ordered="false"
        upperBound="-1" eType="#//Process" unsettable="true" containment="true" resolveProxies="false"
        eOpposite="#//Process/ParentProcess"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentProcess" ordered="false"
        eType="#//Process" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Process/SubProcesses"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="SCL" eSuperTypes="#//BaseElement">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Header" ordered="false"
        eType="#//Header" unsettable="true" containment="true" resolveProxies="false"
184
        eOpposite="#//Header/ParentSCL"/>
185 186
    <eStructuralFeatures xsi:type="ecore:EReference" name="Line" ordered="false" upperBound="-1"
        eType="#//Line" unsettable="true" containment="true" resolveProxies="false"
187
        eOpposite="#//Line/ParentSCL"/>
188 189
    <eStructuralFeatures xsi:type="ecore:EReference" name="Process" ordered="false"
        upperBound="-1" eType="#//Process" unsettable="true" containment="true" resolveProxies="false"
190
        eOpposite="#//Process/ParentSCL"/>
191 192
    <eStructuralFeatures xsi:type="ecore:EReference" name="IED" ordered="false" upperBound="-1"
        eType="#//IED" unsettable="true" containment="true" resolveProxies="false"
193
        eOpposite="#//IED/ParentSCL"/>
194 195
    <eStructuralFeatures xsi:type="ecore:EReference" name="DataTypeTemplates" ordered="false"
        eType="#//DataTypeTemplates" unsettable="true" containment="true" resolveProxies="false"
196
        eOpposite="#//DataTypeTemplates/ParentSCL"/>
197 198
    <eStructuralFeatures xsi:type="ecore:EReference" name="Communication" ordered="false"
        eType="#//Communication" unsettable="true" containment="true" resolveProxies="false"
199
        eOpposite="#//Communication/ParentSCL"/>
200 201
    <eStructuralFeatures xsi:type="ecore:EReference" name="Substation" ordered="false"
        upperBound="-1" eType="#//Substation" unsettable="true" containment="true"
202
        resolveProxies="false" eOpposite="#//Substation/ParentSCL"/>
203
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="release" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
204 205 206 207 208 209 210 211
        unsettable="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Text" eSuperTypes="#//SclObject">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
212
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentBaseElement" ordered="false"
213 214
        eType="#//BaseElement" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//BaseElement/Text"/>
215
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentHeader" ordered="false"
216 217 218 219 220 221 222 223 224
        eType="#//Header" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Header/Text"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="simple"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Address" eSuperTypes="#//SclObject">
225
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentConnectedAP" ordered="false"
226 227
        eType="#//ConnectedAP" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ConnectedAP/Address"/>
228
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentControlBlock" ordered="false"
229 230 231
        eType="#//ControlBlock" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ControlBlock/Address"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="P" ordered="false" upperBound="-1"
232
        eType="#//P" unsettable="true" containment="true" resolveProxies="false" eOpposite="#//P/ParentAddress"/>
233 234 235 236
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Communication" eSuperTypes="#//UnNaming">
    <eStructuralFeatures xsi:type="ecore:EReference" name="SubNetwork" ordered="false"
        upperBound="-1" eType="#//SubNetwork" unsettable="true" containment="true"
237 238 239
        resolveProxies="false" eOpposite="#//SubNetwork/ParentCommunication"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSCL" ordered="false"
        eType="#//SCL" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SCL/Communication"/>
240 241 242 243 244 245 246 247 248 249
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConnectedAP" eSuperTypes="#//UnNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="apName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="redProt" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Address" ordered="false"
        eType="#//Address" unsettable="true" containment="true" resolveProxies="false"
250 251
        eOpposite="#//Address/ParentConnectedAP"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSubNetwork" ordered="false"
252 253 254 255 256 257 258
        eType="#//SubNetwork" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//SubNetwork/ConnectedAP"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAccessPoint" ordered="false"
        eType="#//AccessPoint" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AccessPoint/ReferredByConnectedAP"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="PhysConn" ordered="false"
        upperBound="-1" eType="#//PhysConn" unsettable="true" containment="true" resolveProxies="false"
259
        eOpposite="#//PhysConn/ParentConnectedAP"/>
260
    <eStructuralFeatures xsi:type="ecore:EReference" name="GSE" ordered="false" upperBound="-1"
261
        eType="#//GSE" volatile="true" unsettable="true" containment="true" resolveProxies="false"
262
        eOpposite="#//GSE/ParentConnectedAP">
263 264 265 266
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#ControlBlock"/>
      </eAnnotations>
    </eStructuralFeatures>
267
    <eStructuralFeatures xsi:type="ecore:EReference" name="SMV" ordered="false" upperBound="-1"
268
        eType="#//SMV" volatile="true" unsettable="true" containment="true" resolveProxies="false"
269
        eOpposite="#//SMV/ParentConnectedAP">
270 271 272 273 274 275 276 277 278 279 280
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#ControlBlock"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ControlBlock" ordered="false"
        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
        transient="true">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="group"/>
      </eAnnotations>
    </eStructuralFeatures>
281 282
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ControlBlock" abstract="true" eSuperTypes="#//UnNaming">
283
    <eOperations name="getParentConnectedAP" eType="#//ConnectedAP"/>
284 285 286 287 288 289
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cbName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ldInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Address" ordered="false"
        eType="#//Address" unsettable="true" containment="true" resolveProxies="false"
290
        eOpposite="#//Address/ParentControlBlock"/>
291 292 293 294 295 296 297 298 299
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToControlWithIEDName"
        ordered="false" eType="#//ControlWithIEDName" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//ControlWithIEDName/ReferredByControlBlock"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GSE" eSuperTypes="#//ControlBlock">
    <eStructuralFeatures xsi:type="ecore:EReference" name="MinTime" eType="#//MinTime"
        unsettable="true" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="MaxTime" eType="#//MaxTime"
        unsettable="true" containment="true"/>
300
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentConnectedAP" ordered="false"
301 302
        eType="#//ConnectedAP" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ConnectedAP/GSE"/>
303 304 305 306 307
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="P" eSuperTypes="#//PAddr">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
308
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAddress" ordered="false"
309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325
        eType="#//Address" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Address/P"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="PAddr" eSuperTypes="#//SclObject">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" 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="simple"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="P_PhysConn" eSuperTypes="#//PAddr">
326
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentPhysConn" ordered="false"
327 328 329 330 331 332
        eType="#//PhysConn" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//PhysConn/P"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="PhysConn" eSuperTypes="#//UnNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
333
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentConnectedAP" ordered="false"
334 335 336 337
        eType="#//ConnectedAP" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ConnectedAP/PhysConn"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="P" ordered="false" upperBound="-1"
        eType="#//P_PhysConn" unsettable="true" containment="true" resolveProxies="false"
338
        eOpposite="#//P_PhysConn/ParentPhysConn"/>
339 340
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="SMV" eSuperTypes="#//ControlBlock">
341
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentConnectedAP" ordered="false"
342 343 344 345 346 347 348
        eType="#//ConnectedAP" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ConnectedAP/SMV"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="SubNetwork" eSuperTypes="#//Naming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="BitRate" eType="#//BitRate"
349 350
        unsettable="true" containment="true" eOpposite="#//BitRate/ParentSubNetwork"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentCommunication" ordered="false"
351 352 353 354
        eType="#//Communication" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Communication/SubNetwork"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ConnectedAP" ordered="false"
        upperBound="-1" eType="#//ConnectedAP" unsettable="true" containment="true"
355
        resolveProxies="false" eOpposite="#//ConnectedAP/ParentSubNetwork"/>
356 357
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AbstractDataAttribute" abstract="true"
358
      eSuperTypes="#//UnNaming">
359 360 361
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="bType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="count" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
362
        defaultValueLiteral="0" unsettable="true"/>
363 364 365 366 367
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sAddr" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valImport" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
368
        defaultValueLiteral="false" unsettable="true"/>
369
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valKind" eType="#//ValKindEnum"
370
        defaultValueLiteral="Set" unsettable="true"/>
371 372 373 374
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToEnumType" ordered="false"
        eType="#//EnumType" unsettable="true" resolveProxies="false" eOpposite="#//EnumType/ReferredByAbstractDataAttribute"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Val" ordered="false" upperBound="-1"
        eType="#//Val" unsettable="true" containment="true" resolveProxies="false"
375
        eOpposite="#//Val/ParentAbstractDataAttribute"/>
376 377 378
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToDAType" ordered="false"
        eType="#//DAType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DAType/ReferredByAbstractDataAttribute"/>
379 380 381
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByFCDA" ordered="false"
        upperBound="-1" eType="#//FCDA" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//FCDA/RefersToAbstractDataAttribute"/>
382 383 384
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByExtRef" ordered="false"
        upperBound="-1" eType="#//ExtRef" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ExtRef/RefersToAbstractDataAttribute"/>
385 386
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
387 388 389 390 391 392
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByDAI" ordered="false"
        upperBound="-1" eType="#//DAI" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DAI/RefersToAbstractDataAttribute"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredBySDI" ordered="false"
        upperBound="-1" eType="#//SDI" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//SDI/RefersToAbstractDataAttribute"/>
393 394
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="BDA" eSuperTypes="#//AbstractDataAttribute">
395
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDAType" ordered="false"
396 397 398
        eType="#//DAType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DAType/BDA"/>
  </eClassifiers>
399
  <eClassifiers xsi:type="ecore:EClass" name="DA" eSuperTypes="#//AbstractDataAttribute #//AgDATrgOp">
400
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fc" eType="#//FCEnum" unsettable="true"/>
401
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDOType" ordered="false"
402 403 404 405
        eType="#//DOType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DOType/DA"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ProtNs" ordered="false"
        upperBound="-1" eType="#//ProtNs" unsettable="true" containment="true" resolveProxies="false"
406
        eOpposite="#//ProtNs/ParentDA"/>
407 408 409 410 411 412
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DAType" eSuperTypes="#//IDNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iedType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="BDA" ordered="false" upperBound="-1"
        eType="#//BDA" unsettable="true" containment="true" resolveProxies="false"
413
        eOpposite="#//BDA/ParentDAType"/>
414 415 416
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByAbstractDataAttribute"
        ordered="false" upperBound="-1" eType="#//AbstractDataAttribute" transient="true"
        unsettable="true" resolveProxies="false" eOpposite="#//AbstractDataAttribute/RefersToDAType"/>
417 418 419
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDataTypeTemplates"
        ordered="false" eType="#//DataTypeTemplates" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//DataTypeTemplates/DAType"/>
420 421
    <eStructuralFeatures xsi:type="ecore:EReference" name="ProtNs" ordered="false"
        upperBound="-1" eType="#//ProtNs" unsettable="true" containment="true" resolveProxies="false"
422
        eOpposite="#//ProtNs/ParentDAType"/>
423
  </eClassifiers>
424
  <eClassifiers xsi:type="ecore:EClass" name="DO" eSuperTypes="#//AbstractDataObject">
425
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="transient" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
426
        defaultValueLiteral="false" unsettable="true"/>
427
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentLNodeType" ordered="false"
428 429
        eType="#//LNodeType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LNodeType/DO"/>
430 431
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="accessControl" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
432 433 434
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByDOI" ordered="false"
        upperBound="-1" eType="#//DOI" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DOI/RefersToDO"/>
435 436 437 438 439
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DOType" eSuperTypes="#//IDNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="cdc" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iedType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
440
        defaultValueLiteral="" unsettable="true"/>
441 442
    <eStructuralFeatures xsi:type="ecore:EReference" name="DA" ordered="false" upperBound="-1"
        eType="#//DA" unsettable="true" containment="true" resolveProxies="false"
443
        eOpposite="#//DA/ParentDOType"/>
444 445 446
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByAbstractDataObject"
        ordered="false" upperBound="-1" eType="#//AbstractDataObject" transient="true"
        unsettable="true" resolveProxies="false" eOpposite="#//AbstractDataObject/RefersToDOType"/>
447 448 449
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDataTypeTemplates"
        ordered="false" eType="#//DataTypeTemplates" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//DataTypeTemplates/DOType"/>
450 451
    <eStructuralFeatures xsi:type="ecore:EReference" name="SDO" ordered="false" upperBound="-1"
        eType="#//SDO" unsettable="true" containment="true" resolveProxies="false"
452
        eOpposite="#//SDO/ParentDOType"/>
453 454 455 456
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DataTypeTemplates" eSuperTypes="#//ExplicitLinkResolver">
    <eStructuralFeatures xsi:type="ecore:EReference" name="DAType" ordered="false"
        upperBound="-1" eType="#//DAType" unsettable="true" containment="true" resolveProxies="false"
457
        eOpposite="#//DAType/ParentDataTypeTemplates"/>
458 459
    <eStructuralFeatures xsi:type="ecore:EReference" name="DOType" ordered="false"
        upperBound="-1" eType="#//DOType" unsettable="true" containment="true" resolveProxies="false"
460
        eOpposite="#//DOType/ParentDataTypeTemplates"/>
461 462
    <eStructuralFeatures xsi:type="ecore:EReference" name="EnumType" ordered="false"
        upperBound="-1" eType="#//EnumType" unsettable="true" containment="true" resolveProxies="false"
463
        eOpposite="#//EnumType/ParentDataTypeTemplates"/>
464 465
    <eStructuralFeatures xsi:type="ecore:EReference" name="LNodeType" ordered="false"
        upperBound="-1" eType="#//LNodeType" unsettable="true" containment="true"
466 467 468
        resolveProxies="false" eOpposite="#//LNodeType/ParentDataTypeTemplates"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSCL" ordered="false"
        eType="#//SCL" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SCL/DataTypeTemplates"/>
469 470 471 472 473
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="EnumType" eSuperTypes="#//IDNaming">
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByAbstractDataAttribute"
        ordered="false" upperBound="-1" eType="#//AbstractDataAttribute" transient="true"
        unsettable="true" resolveProxies="false" eOpposite="#//AbstractDataAttribute/RefersToEnumType"/>
474 475 476
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDataTypeTemplates"
        ordered="false" eType="#//DataTypeTemplates" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//DataTypeTemplates/EnumType"/>
477 478
    <eStructuralFeatures xsi:type="ecore:EReference" name="EnumVal" ordered="false"
        upperBound="-1" eType="#//EnumVal" unsettable="true" containment="true" resolveProxies="false"
479
        eOpposite="#//EnumVal/ParentEnumType"/>
480
  </eClassifiers>
481
  <eClassifiers xsi:type="ecore:EClass" name="EnumVal" eSuperTypes="#//SclObject #//AgDesc">
482 483 484 485 486
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ord" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
487
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentEnumType" ordered="false"
488 489 490 491 492 493 494 495 496 497 498
        eType="#//EnumType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//EnumType/EnumVal"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        defaultValueLiteral="">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="simple"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="LNodeType" eSuperTypes="#//IDNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iedType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
499
        defaultValueLiteral="" unsettable="true"/>
500 501 502 503
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="DO" ordered="false" upperBound="-1"
        eType="#//DO" unsettable="true" containment="true" resolveProxies="false"
504 505 506 507
        eOpposite="#//DO/ParentLNodeType"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDataTypeTemplates"
        ordered="false" eType="#//DataTypeTemplates" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//DataTypeTemplates/LNodeType"/>
508 509 510 511 512 513 514 515 516 517
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByAnyLN" ordered="false"
        upperBound="-1" eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/RefersToLNodeType"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ProtNs" eSuperTypes="#//SclObject">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
518 519 520
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDA" ordered="false"
        eType="#//DA" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//DA/ProtNs"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDAType" ordered="false"
521 522 523 524 525 526 527 528
        eType="#//DAType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DAType/ProtNs"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="simple"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
529
  <eClassifiers xsi:type="ecore:EClass" name="SDO" eSuperTypes="#//AbstractDataObject">
530 531
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="count" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
532
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDOType" ordered="false"
533 534
        eType="#//DOType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DOType/SDO"/>
535 536 537
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredBySDI" ordered="false"
        upperBound="-1" eType="#//SDI" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//SDI/RefersToSDO"/>
538 539 540 541 542 543 544
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Val" eSuperTypes="#//SclObject">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sGroup" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
545
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAbstractDataAttribute"
546 547
        ordered="false" eType="#//AbstractDataAttribute" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//AbstractDataAttribute/Val"/>
548 549
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDAI" ordered="false"
        eType="#//DAI" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//DAI/Val"/>
550 551 552 553 554 555 556
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="simple"/>
      </eAnnotations>
    </eStructuralFeatures>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AccessControl" eSuperTypes="#//SclObject">
557
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentLDevice" ordered="false"
558 559 560 561 562
        eType="#//LDevice" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LDevice/AccessControl"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AccessPoint" eSuperTypes="#//UnNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="clock" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
563
        defaultValueLiteral="false" unsettable="true"/>
564
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kdc" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
565
        defaultValueLiteral="false" unsettable="true"/>
566
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="router" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
567
        defaultValueLiteral="false" unsettable="true"/>
568 569
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentIED" ordered="false"
        eType="#//IED" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//IED/AccessPoint"/>
570 571
    <eStructuralFeatures xsi:type="ecore:EReference" name="LN" ordered="false" upperBound="-1"
        eType="#//LN" unsettable="true" containment="true" resolveProxies="false"
572
        eOpposite="#//LN/ParentAccessPoint"/>
573
    <eStructuralFeatures xsi:type="ecore:EReference" name="SMVSecurity" ordered="false"
574 575
        upperBound="-1" eType="#//SMVSecurity" unsettable="true" containment="true"
        resolveProxies="false" eOpposite="#//SMVSecurity/ParentAccessPoint"/>
576 577
    <eStructuralFeatures xsi:type="ecore:EReference" name="ServerAt" ordered="false"
        eType="#//ServerAt" unsettable="true" containment="true" resolveProxies="false"
578
        eOpposite="#//ServerAt/ParentAccessPoint"/>
579 580
    <eStructuralFeatures xsi:type="ecore:EReference" name="Server" ordered="false"
        eType="#//Server" unsettable="true" containment="true" resolveProxies="false"
581
        eOpposite="#//Server/ParentAccessPoint"/>
582 583
    <eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false"
        eType="#//Services" unsettable="true" containment="true" resolveProxies="false"
584
        eOpposite="#//Services/ParentAccessPoint"/>
585
    <eStructuralFeatures xsi:type="ecore:EReference" name="GOOSESecurity" ordered="false"
586 587
        upperBound="-1" eType="#//GOOSESecurity" unsettable="true" containment="true"
        resolveProxies="false" eOpposite="#//GOOSESecurity/ParentAccessPoint"/>
588 589 590 591 592 593 594 595 596 597 598 599 600
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByServerAt" ordered="false"
        upperBound="-1" eType="#//ServerAt" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ServerAt/RefersToAccessPoint"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByConnectedAP"
        ordered="false" upperBound="-1" eType="#//ConnectedAP" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//ConnectedAP/RefersToAccessPoint"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByKDC" ordered="false"
        upperBound="-1" eType="#//KDC" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//KDC/RefersToAccessPoint"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="AnyLN" abstract="true" eSuperTypes="#//UnNaming">
601
    <eOperations name="getParentLDevice" eType="#//LDevice"/>
602 603 604 605 606 607 608 609 610 611 612
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnType" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToLNodeType" ordered="false"
        eType="#//LNodeType" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LNodeType/ReferredByAnyLN"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Inputs" ordered="false"
        eType="#//Inputs" unsettable="true" containment="true" resolveProxies="false"
613
        eOpposite="#//Inputs/ParentAnyLN"/>
614 615
    <eStructuralFeatures xsi:type="ecore:EReference" name="Log" ordered="false" upperBound="-1"
        eType="#//Log" unsettable="true" containment="true" resolveProxies="false"
616
        eOpposite="#//Log/ParentAnyLN"/>
617 618
    <eStructuralFeatures xsi:type="ecore:EReference" name="DOI" ordered="false" upperBound="-1"
        eType="#//DOI" unsettable="true" containment="true" resolveProxies="false"
619
        eOpposite="#//DOI/ParentAnyLN"/>
620
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReportControl" ordered="false"
621
        upperBound="-1" eType="#//ReportControl" volatile="true" unsettable="true"
622
        containment="true" resolveProxies="false" eOpposite="#//ReportControl/ParentAnyLN">
623 624 625 626
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#ControlWithTriggerOpt"/>
      </eAnnotations>
    </eStructuralFeatures>
627
    <eStructuralFeatures xsi:type="ecore:EReference" name="LogControl" ordered="false"
628
        upperBound="-1" eType="#//LogControl" volatile="true" unsettable="true" containment="true"
629
        resolveProxies="false" eOpposite="#//LogControl/ParentAnyLN">
630 631 632 633
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#ControlWithTriggerOpt"/>
      </eAnnotations>
    </eStructuralFeatures>
634 635
    <eStructuralFeatures xsi:type="ecore:EReference" name="DataSet" ordered="false"
        upperBound="-1" eType="#//DataSet" unsettable="true" containment="true" resolveProxies="false"
636
        eOpposite="#//DataSet/ParentAnyLN"/>
637 638 639 640 641 642 643 644 645
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByClientLN" ordered="false"
        upperBound="-1" eType="#//ClientLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ClientLN/RefersToAnyLN"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByLogControl" ordered="false"
        upperBound="-1" eType="#//LogControl" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LogControl/RefersToAnyLN"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByAssociation"
        ordered="false" upperBound="-1" eType="#//Association" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//Association/RefersToAnyLN"/>
646
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByIEDName" ordered="false"
647 648
        upperBound="-1" eType="#//IEDName" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//IEDName/RefersToAnyLN"/>
649 650 651
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByLNode" ordered="false"
        upperBound="-1" eType="#//LNode" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LNode/RefersToAnyLN"/>
652 653 654 655 656 657 658 659 660 661 662 663 664 665 666
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ControlWithTriggerOpt"
        ordered="false" upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
        volatile="true" transient="true" unsettable="true">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="group"/>
        <details key="group" value="#Control"/>
      </eAnnotations>
    </eStructuralFeatures>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Control" ordered="false"
        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
        transient="true" unsettable="true">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="group"/>
      </eAnnotations>
    </eStructuralFeatures>
667
  </eClassifiers>
668
  <eClassifiers xsi:type="ecore:EClass" name="Association" eSuperTypes="#//BaseElement #//AgLNRef">
669 670 671 672
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="associationID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//AssociationKindEnum"
        unsettable="true"/>
673
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServer" ordered="false"
674 675 676 677 678 679
        eType="#//Server" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Server/Association"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false"
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/ReferredByAssociation"/>
  </eClassifiers>
680
  <eClassifiers xsi:type="ecore:EClass" name="Authentication" eSuperTypes="#//SclObject #//AgAuthentication">
681
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServer" ordered="false"
682 683 684 685 686 687 688 689 690 691
        eType="#//Server" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Server/Authentication"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Certificate" eSuperTypes="#//Naming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="serialNumber" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="xferNumber" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Subject" ordered="false"
        eType="#//Subject" unsettable="true" containment="true" resolveProxies="false"
692
        eOpposite="#//Subject/ParentCertificate"/>
693 694
    <eStructuralFeatures xsi:type="ecore:EReference" name="IssuerName" ordered="false"
        eType="#//IssuerName" unsettable="true" containment="true" resolveProxies="false"
695
        eOpposite="#//IssuerName/ParentCertificate"/>
696
  </eClassifiers>
697
  <eClassifiers xsi:type="ecore:EClass" name="ClientLN" eSuperTypes="#//ExplicitLinkResolver #//AgLNRef">
698 699
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="apRef" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
700
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentRptEnabled" ordered="false"
701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729
        eType="#//RptEnabled" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//RptEnabled/ClientLN"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false"
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/ReferredByClientLN"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ClientServices" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="bufReport" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="goose" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="gsse" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxAttributes" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxGOOSE" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxReports" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxSMV" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="readLog" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="supportsLdName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sv" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unbufReport" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
730
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
731 732 733 734
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ClientServices"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="TimeSyncProt" ordered="false"
        eType="#//TimeSyncProt" unsettable="true" containment="true" resolveProxies="false"
735
        eOpposite="#//TimeSyncProt/ParentClientServices"/>
736 737 738 739 740 741
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="rGOOSE" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="rSV" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="noIctBinding" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
Dominique Marcadet's avatar
Dominique Marcadet committed
742 743
    <eStructuralFeatures xsi:type="ecore:EReference" name="McSecurity" ordered="false"
        eType="#//McSecurity" unsettable="true" containment="true" resolveProxies="false"
744
        eOpposite="#//McSecurity/ParentClientServices"/>
745 746 747 748
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="CommProt" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ipv6" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
749
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
750 751 752 753
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/CommProt"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfDataSet" eSuperTypes="#//ServiceForConfDataSet">
754
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
755 756 757 758 759 760 761 762
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ConfDataSet"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfLNs" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fixLnInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fixPrefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
763
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
764 765 766 767
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ConfLNs"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfLdName" eSuperTypes="#//ServiceYesNo">
768
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
769 770 771 772
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ConfLdName"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfLogControl" eSuperTypes="#//ServiceWithMaxNonZero">
773
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
774 775 776 777
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ConfLogControl"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfReportControl" eSuperTypes="#//ServiceConfReportControl">
778
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
779 780 781 782 783 784
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ConfReportControl"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfSG" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="resvTms" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
785
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSettingGroups" ordered="false"
786 787 788 789
        eType="#//SettingGroups" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//SettingGroups/ConfSG"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ConfSigRef" eSuperTypes="#//ServiceWithMaxNonZero">
790
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
791 792 793 794
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/ConfSigRef"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Control" abstract="true" eSuperTypes="#//UnNaming">
795
    <eOperations name="getParentAnyLN" eType="#//AnyLN"/>
796 797 798 799 800 801 802
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="datSet" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToDataSet" ordered="false"
        eType="#//DataSet" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DataSet/ReferredByControl"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
803 804 805
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByExtRef" ordered="false"
        upperBound="-1" eType="#//ExtRef" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//ExtRef/RefersToControl"/>
806 807 808 809 810 811
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ControlWithIEDName" eSuperTypes="#//Control">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="confRev" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="IEDName" ordered="false"
        upperBound="-1" eType="#//IEDName" unsettable="true" containment="true" resolveProxies="false"
812
        eOpposite="#//IEDName/ParentControlWithIEDName"/>
813 814 815 816 817
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByControlBlock"
        ordered="false" upperBound="-1" eType="#//ControlBlock" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//ControlBlock/RefersToControlWithIEDName"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Protocol" ordered="false"
        eType="#//Protocol" unsettable="true" containment="true" resolveProxies="false"
818
        eOpposite="#//Protocol/ParentControlWithIEDName"/>
819 820 821 822 823 824 825
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="ControlWithTriggerOpt" abstract="true"
      eSuperTypes="#//Control">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="intgPd" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="TrgOps" ordered="false"
        eType="#//TrgOps" unsettable="true" containment="true" resolveProxies="false"
826
        eOpposite="#//TrgOps/ParentControlWithTriggerOpt"/>
827
  </eClassifiers>
828
  <eClassifiers xsi:type="ecore:EClass" name="DAI" eSuperTypes="#//UnNaming">
829 830 831 832 833 834 835 836 837 838
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sAddr" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valImport" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valKind" eType="#//ValKindEnum"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="Val" ordered="false" upperBound="-1"
        eType="#//Val" unsettable="true" containment="true" resolveProxies="false"
839 840 841 842 843
        eOpposite="#//Val/ParentDAI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDOI" ordered="false"
        eType="#//DOI" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//DOI/DAI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSDI" ordered="false"
        eType="#//SDI" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SDI/DAI"/>
844 845
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
846 847 848
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAbstractDataAttribute"
        ordered="false" eType="#//AbstractDataAttribute" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//AbstractDataAttribute/ReferredByDAI"/>
849
  </eClassifiers>
850
  <eClassifiers xsi:type="ecore:EClass" name="DOI" eSuperTypes="#//UnNaming">
851 852
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
853
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAnyLN" ordered="false"
854 855 856 857
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/DOI"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="DAI" ordered="false" upperBound="-1"
        eType="#//DAI" unsettable="true" containment="true" resolveProxies="false"
858
        eOpposite="#//DAI/ParentDOI"/>
859 860
    <eStructuralFeatures xsi:type="ecore:EReference" name="SDI" ordered="false" upperBound="-1"
        eType="#//SDI" unsettable="true" containment="true" resolveProxies="false"
861
        eOpposite="#//SDI/ParentDOI"/>
862 863 864 865
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="accessControl" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
866 867
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToDO" ordered="false"
        eType="#//DO" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//DO/ReferredByDOI"/>
868 869
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DataObjectDirectory" eSuperTypes="#//ServiceYesNo">
870
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
871 872 873 874
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/DataObjectDirectory"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DataSet" eSuperTypes="#//UnNaming">
875
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAnyLN" ordered="false"
876 877 878 879 880 881 882
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/DataSet"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByControl" ordered="false"
        upperBound="-1" eType="#//Control" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Control/RefersToDataSet"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="FCDA" ordered="false" upperBound="-1"
        eType="#//FCDA" unsettable="true" containment="true" resolveProxies="false"
883
        eOpposite="#//FCDA/ParentDataSet"/>
884 885 886 887
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DataSetDirectory" eSuperTypes="#//ServiceYesNo">
888
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
889 890 891 892
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/DataSetDirectory"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DynAssociation" eSuperTypes="#//ServiceWithOptionalMax">
893
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
894 895 896 897
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/DynAssociation"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="DynDataSet" eSuperTypes="#//ServiceWithMaxAndMaxAttributes">
898
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
899 900 901
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/DynDataSet"/>
  </eClassifiers>
902
  <eClassifiers xsi:type="ecore:EClass" name="ExtRef" eSuperTypes="#//BaseElement #//AgDesc">
903 904 905 906 907 908 909 910 911 912 913 914 915 916 917
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="daName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="doName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="intAddr" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ldInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
918
        defaultValueLiteral="" unsettable="true"/>
919 920 921 922 923 924 925 926 927 928 929 930
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="serviceType" eType="#//ServiceType"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="srcCBName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="srcLDInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="srcLNClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="srcLNInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="srcPrefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
931
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentInputs" ordered="false"
932 933
        eType="#//Inputs" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Inputs/ExtRef"/>
934 935 936
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAbstractDataAttribute"
        ordered="false" eType="#//AbstractDataAttribute" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//AbstractDataAttribute/ReferredByExtRef"/>
937 938 939
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAbstractDataObject"
        ordered="false" eType="#//AbstractDataObject" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//AbstractDataObject/ReferredByExtRef"/>
940 941 942 943 944 945 946 947
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pServT" eType="#//ServiceType"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pLN" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pDO" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="pDA" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
948 949 950
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToControl" ordered="false"
        eType="#//Control" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Control/ReferredByExtRef"/>
951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="FCDA" eSuperTypes="#//ExplicitLinkResolver">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="daName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="doName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fc" eType="#//FCEnum" unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ldInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        defaultValueLiteral="" unsettable="true"/>
968
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentDataSet" ordered="false"
969 970
        eType="#//DataSet" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//DataSet/FCDA"/>
971 972 973
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAbstractDataAttribute"
        ordered="false" upperBound="-1" eType="#//AbstractDataAttribute" transient="true"
        unsettable="true" resolveProxies="false" eOpposite="#//AbstractDataAttribute/ReferredByFCDA"/>
974 975 976 977 978 979 980 981
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="FileHandling" eSuperTypes="#//SclObject">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ftp" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ftps" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mms" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
982
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
983 984 985 986 987 988
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/FileHandling"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GOOSE" eSuperTypes="#//ServiceWithMax">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fixedOffs" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
989
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
990 991
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GOOSE"/>
992 993 994 995
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="goose" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="rGOOSE" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
996 997
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GOOSESecurity" eSuperTypes="#//Certificate">
998
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAccessPoint" ordered="false"
999 1000 1001 1002 1003 1004 1005
        eType="#//AccessPoint" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AccessPoint/GOOSESecurity"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GSEControl" eSuperTypes="#//ControlWithIEDName">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="appID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="fixedOffs" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
1006
        defaultValueLiteral="false" unsettable="true"/>
1007
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="securityEnable" eType="#//PredefinedTypeOfSecurityEnum"
1008
        defaultValueLiteral="None" unsettable="true"/>
1009
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//GSEControlTypeEnum"
1010
        defaultValueLiteral="GOOSE" unsettable="true"/>
1011 1012
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentLN0" ordered="false"
        eType="#//LN0" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//LN0/GSEControl"/>
1013 1014
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GSEDir" eSuperTypes="#//ServiceYesNo">
1015
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1016 1017 1018 1019 1020
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GSEDir"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GSESettings" eSuperTypes="#//ServiceSettings">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="appID" eType="#//ServiceSettingsEnum"
1021
        defaultValueLiteral="Fix" unsettable="true"/>
1022
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dataLabel" eType="#//ServiceSettingsEnum"
1023
        defaultValueLiteral="Fix" unsettable="true"/>
1024
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1025 1026
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GSESettings"/>
Dominique Marcadet's avatar
Dominique Marcadet committed
1027 1028
    <eStructuralFeatures xsi:type="ecore:EReference" name="McSecurity" ordered="false"
        eType="#//McSecurity" unsettable="true" containment="true" resolveProxies="false"
1029
        eOpposite="#//McSecurity/ParentGSESettings"/>
1030 1031
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kdaParticipant" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
        unsettable="true"/>
1032 1033
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GSSE" eSuperTypes="#//ServiceWithMax">
1034
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1035 1036 1037 1038
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GSSE"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GetCBValues" eSuperTypes="#//ServiceYesNo">
1039
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1040 1041 1042 1043
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GetCBValues"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GetDataObjectDefinition" eSuperTypes="#//ServiceYesNo">
1044
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1045 1046 1047 1048
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GetDataObjectDefinition"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GetDataSetValue" eSuperTypes="#//ServiceYesNo">
1049
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1050 1051 1052 1053
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GetDataSetValue"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="GetDirectory" eSuperTypes="#//ServiceYesNo">
1054
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServices" ordered="false"
1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074
        eType="#//Services" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Services/GetDirectory"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="IED" eSuperTypes="#//UnNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="configVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="engRight" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="manufacturer" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="originalSclRevision" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="originalSclVersion" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="owner" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="AccessPoint" ordered="false"
        upperBound="-1" eType="#//AccessPoint" unsettable="true" containment="true"
1075
        resolveProxies="false" eOpposite="#//AccessPoint/ParentIED"/>
1076 1077
    <eStructuralFeatures xsi:type="ecore:EReference" name="KDC" ordered="false" upperBound="-1"
        eType="#//KDC" unsettable="true" containment="true" resolveProxies="false"
1078
        eOpposite="#//KDC/ParentIED"/>
1079 1080
    <eStructuralFeatures xsi:type="ecore:EReference" name="Services" ordered="false"
        eType="#//Services" unsettable="true" containment="true" resolveProxies="false"
1081 1082 1083
        eOpposite="#//Services/ParentIED"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentSCL" ordered="false"
        eType="#//SCL" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//SCL/IED"/>
1084 1085
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
1086
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="originalSclRelease" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
1087
        unsettable="true"/>
1088 1089 1090
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByIEDName" ordered="false"
        eType="#//IEDName" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//IEDName/RefersToIED"/>
1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="IEDName" eSuperTypes="#//ExplicitLinkResolver">
    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
      <details key="kind" value="simple"/>
    </eAnnotations>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="apRef" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ldInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
1105
        defaultValueLiteral="" unsettable="true"/>
1106 1107 1108
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentControlWithIEDName"
        ordered="false" eType="#//ControlWithIEDName" transient="true" unsettable="true"
        resolveProxies="false" eOpposite="#//ControlWithIEDName/IEDName"/>
1109 1110
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false"
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
1111
        eOpposite="#//AnyLN/ReferredByIEDName"/>
1112 1113 1114 1115 1116 1117
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" 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="simple"/>
      </eAnnotations>
    </eStructuralFeatures>
1118 1119 1120 1121 1122
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToIED" ordered="false"
        eType="#//IED" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//IED/ReferredByIEDName"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToLDevice" ordered="false"
        eType="#//LDevice" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LDevice/ReferredByIEDName"/>
1123 1124
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Inputs" eSuperTypes="#//UnNaming">
1125
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAnyLN" ordered="false"
1126 1127 1128 1129
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/Inputs"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ExtRef" ordered="false"
        upperBound="-1" eType="#//ExtRef" unsettable="true" containment="true" resolveProxies="false"
1130
        eOpposite="#//ExtRef/ParentInputs"/>
1131 1132
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="IssuerName" eSuperTypes="#//Cert">
1133
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentCertificate" ordered="false"
1134 1135 1136 1137 1138 1139 1140 1141
        eType="#//Certificate" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Certificate/IssuerName"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="KDC" eSuperTypes="#//ExplicitLinkResolver">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="apName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="iedName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
1142 1143
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentIED" ordered="false"
        eType="#//IED" transient="true" unsettable="true" resolveProxies="false" eOpposite="#//IED/KDC"/>
1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAccessPoint" ordered="false"
        eType="#//AccessPoint" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AccessPoint/ReferredByKDC"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="LDevice" eSuperTypes="#//UnNaming">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="inst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ldName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="AccessControl" ordered="false"
        eType="#//AccessControl" unsettable="true" containment="true" resolveProxies="false"
1155 1156
        eOpposite="#//AccessControl/ParentLDevice"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentServer" ordered="false"
1157 1158
        eType="#//Server" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//Server/LDevice"/>
1159 1160 1161 1162 1163 1164 1165
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="AnyLN" ordered="false"
        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
        transient="true">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="group"/>
      </eAnnotations>
    </eStructuralFeatures>
1166
    <eStructuralFeatures xsi:type="ecore:EReference" name="LN0" ordered="false" eType="#//LN0"
1167
        volatile="true" unsettable="true" containment="true" eOpposite="#//LN0/ParentLDevice">
1168 1169 1170 1171
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#AnyLN"/>
      </eAnnotations>
    </eStructuralFeatures>
1172
    <eStructuralFeatures xsi:type="ecore:EReference" name="LN" ordered="false" upperBound="-1"
1173
        eType="#//LN" volatile="true" unsettable="true" containment="true" eOpposite="#//LN/ParentLDevice">
1174 1175 1176 1177
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#AnyLN"/>
      </eAnnotations>
    </eStructuralFeatures>
1178 1179 1180
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByIEDName" ordered="false"
        eType="#//IEDName" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//IEDName/RefersToLDevice"/>
1181 1182 1183 1184
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="LN" eSuperTypes="#//AnyLN">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        defaultValueLiteral="" unsettable="true"/>
1185
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAccessPoint" ordered="false"
1186 1187
        eType="#//AccessPoint" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AccessPoint/LN"/>
1188
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentLDevice" ordered="false"
1189 1190 1191 1192 1193
        eType="#//LDevice" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LDevice/LN"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="LN0" eSuperTypes="#//AnyLN">
    <eStructuralFeatures xsi:type="ecore:EReference" name="GSEControl" ordered="false"
1194
        upperBound="-1" eType="#//GSEControl" volatile="true" unsettable="true" containment="true"
1195
        resolveProxies="false" eOpposite="#//GSEControl/ParentLN0">
1196 1197 1198 1199
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#ControlWithIEDName"/>
      </eAnnotations>
    </eStructuralFeatures>
1200
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentLDevice" ordered="false"
1201 1202 1203
        eType="#//LDevice" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LDevice/LN0"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="SampledValueControl" ordered="false"
1204
        upperBound="-1" eType="#//SampledValueControl" volatile="true" unsettable="true"
1205
        containment="true" resolveProxies="false" eOpposite="#//SampledValueControl/ParentLN0">
1206 1207 1208 1209
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="group" value="#ControlWithIEDName"/>
      </eAnnotations>
    </eStructuralFeatures>
1210 1211
    <eStructuralFeatures xsi:type="ecore:EReference" name="SettingControl" ordered="false"
        eType="#//SettingControl" unsettable="true" containment="true" resolveProxies="false"
1212
        eOpposite="#//SettingControl/ParentLN0"/>
1213 1214 1215 1216 1217 1218 1219 1220
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ControlWithIEDName" ordered="false"
        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry"
        volatile="true" transient="true" unsettable="true">
      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
        <details key="kind" value="group"/>
        <details key="group" value="#Control"/>
      </eAnnotations>
    </eStructuralFeatures>
1221 1222
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Log" eSuperTypes="#//UnNaming">
1223
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAnyLN" ordered="false"
1224 1225 1226 1227
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/Log"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
1228 1229 1230
    <eStructuralFeatures xsi:type="ecore:EReference" name="ReferredByLogControl" ordered="false"
        upperBound="-1" eType="#//LogControl" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//LogControl/RefersToLog"/>
1231 1232 1233
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="LogControl" eSuperTypes="#//ControlWithTriggerOpt">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="bufTime" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"
1234
        defaultValueLiteral="0" unsettable="true"/>
1235 1236 1237
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ldInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnClass" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
1238
        defaultValueLiteral="LLN0" unsettable="true"/>
1239 1240 1241
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lnInst" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="logEna" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
1242
        defaultValueLiteral="true" unsettable="true"/>
1243 1244 1245
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="logName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
        unsettable="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="prefix" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
1246
        defaultValueLiteral="" unsettable="true"/>
1247
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="reasonCode" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBooleanObject"
1248
        defaultValueLiteral="true" unsettable="true"/>
1249
    <eStructuralFeatures xsi:type="ecore:EReference" name="ParentAnyLN" ordered="false"
1250 1251 1252 1253 1254
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/LogControl"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="RefersToAnyLN" ordered="false"
        eType="#//AnyLN" transient="true" unsettable="true" resolveProxies="false"
        eOpposite="#//AnyLN/ReferredByLogControl"/>