@@ -5,10 +5,13 @@ import {addPrefixAndNamespaceToDocument, createPrivateAddress, createPrivateElem
5
5
/**
6
6
* List of supported Common Data Classes in the 104 protocol.
7
7
*/
8
- export const supportedCdcTypes = [ 'ACT' , 'ASG' , 'BCR' , 'CMV' , 'DPS' , 'ING' , 'INS' , 'MV' , 'SEC' , 'SPG' , 'SPS' ] as const ;
8
+ export const supportedCdcTypes =
9
+ [ 'ACT' , 'APC' , 'ASG' , 'BAC' , 'BCR' , 'BSC' , 'CMV' ,
10
+ 'DPC' , 'DPS' , 'INC' , 'ING' , 'INS' , 'ISC' , 'MV' ,
11
+ 'SEC' , 'SPC' , 'SPG' , 'SPS' ] as const ;
9
12
export type SupportedCdcType = typeof supportedCdcTypes [ number ] ;
10
13
11
- type CreateFunction = ( daiElement : Element , selectedTi : string ) => Create [ ] ;
14
+ export type CreateFunction = ( daiElement : Element , selectedTi : string ) => Create [ ] ;
12
15
13
16
/**
14
17
* Record with configuration information on how to create Address elements for the 104 protocol.
@@ -35,60 +38,137 @@ export const cdcProcessings: Record<
35
38
ACT : {
36
39
monitor : {
37
40
'30' : {
38
- filter : 'DAI[name="general"], DAI[name="phsA"], DAI[name="phsB"], DAI[name="phsC"], DAI[name="neut"]' ,
41
+ filter : ':scope > DAI[name="general"], ' +
42
+ ':scope > DAI[name="phsA"], ' +
43
+ ':scope > DAI[name="phsB"], ' +
44
+ ':scope > DAI[name="phsC"], ' +
45
+ ':scope > DAI[name="neut"]' ,
39
46
create : createSingleAddressAction
40
47
} ,
41
48
'39' : {
42
- filter : 'DAI[name="general"]' ,
49
+ filter : ':scope > DAI[name="general"]' ,
43
50
create : createSingleAddressAction
44
51
}
45
52
} ,
46
53
control : { }
47
54
} ,
55
+ APC : {
56
+ monitor : {
57
+ '36' : {
58
+ filter : ':scope > SDI[name="mxVal"] > DAI[name="f"]' ,
59
+ create : createSingleAddressAction
60
+ } ,
61
+ } ,
62
+ control : {
63
+ '63' : {
64
+ filter : ':scope > SDI[name="Oper"] > SDI[name="ctlVal"] > DAI[name="f"]' ,
65
+ create : createSingleAddressAction
66
+ } ,
67
+ }
68
+ } ,
48
69
ASG : {
49
70
monitor : {
50
71
'63' : {
51
- filter : 'SDI[name="setMag"] > DAI[name="f"]' ,
72
+ filter : ':scope > SDI[name="setMag"] > DAI[name="f"]' ,
52
73
create : createSingleAddressAction
53
74
}
54
75
} ,
55
76
control : { }
56
77
} ,
78
+ BAC : {
79
+ monitor : {
80
+ '36' : {
81
+ filter : ':scope > SDI[name="mxVal"] > DAI[name="f"]' ,
82
+ create : createSingleAddressAction
83
+ } ,
84
+ } ,
85
+ control : {
86
+ '60' : {
87
+ filter : ':scope > SDI[name="Oper"] > DAI[name="ctlVal"]' ,
88
+ create : createSingleAddressAction
89
+ } ,
90
+ }
91
+ } ,
57
92
BCR : {
58
93
monitor : {
59
94
'37' : {
60
- filter : 'DAI[name="actVal"], DAI[name="frVal"]' ,
95
+ filter : ':scope > DAI[name="actVal"], ' +
96
+ ':scope > DAI[name="frVal"]' ,
61
97
create : createSingleAddressAction
62
98
} ,
63
99
} ,
64
100
control : { }
65
101
} ,
102
+ BSC : {
103
+ monitor : {
104
+ '32' : {
105
+ filter : ':scope > SDI[name="valWTr"] > DAI[name="posVal"]' ,
106
+ create : createSingleAddressAction
107
+ } ,
108
+ } ,
109
+ control : {
110
+ '60' : {
111
+ filter : ':scope > SDI[name="Oper"] > DAI[name=“ctlVal”]' ,
112
+ create : createSingleAddressAction
113
+ } ,
114
+ }
115
+ } ,
66
116
CMV : {
67
117
monitor : {
68
118
'35' : {
69
- filter : 'SDI[name="mag"] > DAI[name="i"], SDI[name="ang"] > DAI[name="i"]' ,
119
+ filter : ':scope > SDI[name="mag"] > DAI[name="i"], ' +
120
+ ':scope > SDI[name="ang"] > DAI[name="i"]' ,
70
121
create : createSingleAddressAction
71
122
} ,
72
123
'36' : {
73
- filter : 'SDI[name="mag"] > DAI[name="f"], SDI[name="ang"] > DAI[name="f"]' ,
124
+ filter : ':scope > SDI[name="mag"] > DAI[name="f"], ' +
125
+ ':scope > SDI[name="ang"] > DAI[name="f"]' ,
74
126
create : createSingleAddressAction
75
127
}
76
128
} ,
77
129
control : { }
78
130
} ,
131
+ DPC : {
132
+ monitor : {
133
+ '31' : {
134
+ filter : ':scope > DAI[name="stVal"]' ,
135
+ create : createSingleAddressAction
136
+ } ,
137
+ } ,
138
+ control : {
139
+ '59' : {
140
+ filter : ':scope > SDI[name="Oper"] > DAI[name="ctlVal"]' ,
141
+ create : createSingleAddressAction
142
+ } ,
143
+ }
144
+ } ,
79
145
DPS : {
80
146
monitor : {
81
147
'31' : {
82
- filter : 'DAI[name="stVal"]' ,
148
+ filter : ':scope > DAI[name="stVal"]' ,
83
149
create : createSingleAddressAction
84
150
}
85
151
} ,
86
152
control : { }
87
153
} ,
154
+ INC : {
155
+ monitor : {
156
+ '35' : {
157
+ filter : ':scope > DAI[name="stVal"]' ,
158
+ create : createSingleAddressAction
159
+ } ,
160
+ } ,
161
+ control : {
162
+ '62' : {
163
+ filter : ':scope > SDI[name="Oper"] > DAI[name="ctlVal"]' ,
164
+ create : createSingleAddressAction
165
+ } ,
166
+ }
167
+ } ,
88
168
ING : {
89
169
monitor : {
90
170
'62' : {
91
- filter : 'DAI[name="setVal"]' ,
171
+ filter : ':scope > DAI[name="setVal"]' ,
92
172
create : createSingleAddressAction
93
173
}
94
174
} ,
@@ -97,28 +177,42 @@ export const cdcProcessings: Record<
97
177
INS : {
98
178
monitor : {
99
179
'30' : {
100
- filter : 'DAI[name="stVal"]' ,
180
+ filter : ':scope > DAI[name="stVal"]' ,
101
181
create : createInvertedAddressAction
102
182
} ,
103
183
'33' : {
104
- filter : 'DAI[name="stVal"]' ,
184
+ filter : ':scope > DAI[name="stVal"]' ,
105
185
create : createSingleAddressAction
106
186
} ,
107
187
'35' : {
108
- filter : 'DAI[name="stVal"]' ,
188
+ filter : ':scope > DAI[name="stVal"]' ,
109
189
create : createSingleAddressAction
110
190
}
111
191
} ,
112
192
control : { }
113
193
} ,
194
+ ISC : {
195
+ monitor : {
196
+ '32' : {
197
+ filter : ':scope > SDI[name="valWTr"] > DAI[name="posVal"]' ,
198
+ create : createSingleAddressAction
199
+ } ,
200
+ } ,
201
+ control : {
202
+ '62' : {
203
+ filter : ':scope > SDI[name="Oper"] > DAI[name="ctlVal"]' ,
204
+ create : createSingleAddressAction
205
+ } ,
206
+ }
207
+ } ,
114
208
MV : {
115
209
monitor : {
116
210
'35' : {
117
- filter : 'SDI[name="mag"] > DAI[name="i"]' ,
211
+ filter : ':scope > SDI[name="mag"] > DAI[name="i"]' ,
118
212
create : createSingleAddressAction
119
213
} ,
120
214
'36' : {
121
- filter : 'SDI[name="mag"] > DAI[name="f"]' ,
215
+ filter : ':scope > SDI[name="mag"] > DAI[name="f"]' ,
122
216
create : createSingleAddressAction
123
217
}
124
218
} ,
@@ -127,16 +221,30 @@ export const cdcProcessings: Record<
127
221
SEC : {
128
222
monitor : {
129
223
'37' : {
130
- filter : 'DAI[name="cnt"]' ,
224
+ filter : ':scope > DAI[name="cnt"]' ,
131
225
create : createSingleAddressAction
132
226
}
133
227
} ,
134
228
control : { }
135
229
} ,
230
+ SPC : {
231
+ monitor : {
232
+ '30' : {
233
+ filter : ':scope > DAI[name="stVal"]' ,
234
+ create : createSingleAddressAction
235
+ } ,
236
+ } ,
237
+ control : {
238
+ '58' : {
239
+ filter : ':scope > SDI[name="Oper"] > DAI[name="ctlVal"]' ,
240
+ create : createSingleAddressAction
241
+ } ,
242
+ }
243
+ } ,
136
244
SPG : {
137
245
monitor : {
138
246
'58' : {
139
- filter : 'DAI[name="setVal"]' ,
247
+ filter : ':scope > DAI[name="setVal"]' ,
140
248
create : createSingleAddressAction
141
249
}
142
250
} ,
@@ -145,7 +253,7 @@ export const cdcProcessings: Record<
145
253
SPS : {
146
254
monitor : {
147
255
'30' : {
148
- filter : 'DAI[name="stVal"]' ,
256
+ filter : ':scope > DAI[name="stVal"]' ,
149
257
create : createSingleAddressAction
150
258
}
151
259
} ,
0 commit comments