-
Notifications
You must be signed in to change notification settings - Fork 6
Expand file tree
/
Copy pathFlow.cs
More file actions
945 lines (839 loc) · 68.6 KB
/
Flow.cs
File metadata and controls
945 lines (839 loc) · 68.6 KB
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
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
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
// -------------------------------------------------------------------------------------------------
// <copyright file="Flow.cs" company="Starion Group S.A.">
//
// Copyright (C) 2022-2026 Starion Group S.A.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// </copyright>
// ------------------------------------------------------------------------------------------------
// ------------------------------------------------------------------------------------------------
// --------THIS IS AN AUTOMATICALLY GENERATED FILE. ANY MANUAL CHANGES WILL BE OVERWRITTEN!--------
// ------------------------------------------------------------------------------------------------
namespace SysML2.NET.Core.POCO.Kernel.Interactions
{
using System;
using System.CodeDom.Compiler;
using System.Collections.Generic;
using System.Linq;
using SysML2.NET.Core.Core.Types;
using SysML2.NET.Core.POCO.Core.Classifiers;
using SysML2.NET.Core.POCO.Core.Features;
using SysML2.NET.Core.POCO.Core.Types;
using SysML2.NET.Core.POCO.Kernel.Associations;
using SysML2.NET.Core.POCO.Kernel.Behaviors;
using SysML2.NET.Core.POCO.Kernel.Connectors;
using SysML2.NET.Core.POCO.Root.Annotations;
using SysML2.NET.Core.POCO.Root.Elements;
using SysML2.NET.Core.POCO.Root.Namespaces;
using SysML2.NET.Collections;
using SysML2.NET.Decorators;
/// <summary>
/// An Flow is a Step that represents the transfer of values from one Feature to another. Flows can take
/// non-zero time to complete.
/// </summary>
[Class(xmiId: "_18_5_3_b9102da_1536869417406_861526_17744", isAbstract: false, isFinalSpecialization: false, isActive: false)]
[GeneratedCode("SysML2.NET", "latest")]
public partial class Flow : IFlow, IContainedRelationship
{
/// <summary>
/// Initialize a new instance of <see cref="Flow" />
/// </summary>
public Flow()
{
((IContainedElement)this).OwnedRelationship = new ContainerList<IElement, IRelationship>(this,
(relationship, element) => ((IContainedRelationship)relationship).OwningRelatedElement = element,
relationship => relationship.OwningRelatedElement);
((IContainedRelationship)this).OwnedRelatedElement = new ContainerList<IRelationship, IElement>(this,
(element, relationship) => ((IContainedElement)element).OwningRelationship = relationship,
element => element.OwningRelationship);
}
/// <summary>
/// Gets or sets the unique identifier
/// </summary>
[Property(xmiId: "sysml2.net", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IData.Id")]
public Guid Id { get; set; }
/// <summary>
/// Various alternative identifiers for this Element. Generally, these will be set by tools.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594312532679_496267_4310", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.AliasIds")]
public List<string> AliasIds { get; set; } = [];
/// <summary>
/// The Associations that type the Connector.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674983_471497_43284", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")]
[RedefinedByProperty("IFlow.Interaction")]
[Implements(implementation: "IConnector.Association")]
List<IAssociation> Kernel.Connectors.IConnector.association => [.. this.interaction];
/// <summary>
/// The Behaviors that type this Step.
/// </summary>
[Property(xmiId: "_18_5_3_b9102da_1536346315176_954314_17388", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")]
[RedefinedByProperty("IFlow.Interaction")]
[Implements(implementation: "IStep.Behavior")]
List<IBehavior> Kernel.Behaviors.IStep.behavior => [.. this.interaction];
/// <summary>
/// The Feature that are chained together to determine the values of this Feature, derived from the
/// chainingFeatures of the ownedFeatureChainings of this Feature, in the same order. The values of a
/// Feature with chainingFeatures are the same as values of the last Feature in the chain, which can be
/// found by starting with the values of the first Feature (for each instance of the domain of the
/// original Feature), then using each of those as domain instances to find the values of the second
/// Feature in chainingFeatures, and so on, to values of the last Feature.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1619792219511_543311_445", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: false, defaultValue: null)]
[Implements(implementation: "IFeature.ChainingFeature")]
public List<IFeature> chainingFeature => this.ComputeChainingFeature();
/// <summary>
/// The endFeatures of a Connector, which redefine the endFeatures of the associations of the Connector.
/// The connectorEnds determine via ReferenceSubsetting Relationships which Features are related by the
/// Connector.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1556735067666_827798_21922", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")]
[Implements(implementation: "IConnector.ConnectorEnd")]
public List<IFeature> connectorEnd => this.ComputeConnectorEnd();
/// <summary>
/// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it
/// has one. Semantically, the values of the crossFeature of an end Feature must include all values of
/// the end Feature obtained when navigating from values of the other end Features of the same
/// owningType.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1689616227528_355910_218", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IFeature.CrossFeature")]
public IFeature crossFeature => this.ComputeCrossFeature();
/// <summary>
/// The declared name of this Element.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674987_737648_43307", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.DeclaredName")]
public string DeclaredName { get; set; }
/// <summary>
/// An optional alternative name for the Element that is intended to be shorter or in some way more
/// succinct than its primary name. It may act as a modeler-specified identifier for the Element, though
/// it is then the responsibility of the modeler to maintain the uniqueness of this identifier within a
/// model or relative to some other context.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594160442439_915308_4153", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.DeclaredShortName")]
public string DeclaredShortName { get; set; }
/// <summary>
/// The innermost Type that is a common direct or indirect featuringType of the relatedFeatures, such
/// that, if it exists and was the featuringType of this Connector, the Connector would satisfy the
/// checkConnectorTypeFeaturing constraint.
/// </summary>
[Property(xmiId: "_2022x_2_12e503d9_1737751598145_444042_71", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IConnector.DefaultFeaturingType")]
public IType defaultFeaturingType => this.ComputeDefaultFeaturingType();
/// <summary>
/// The interpretations of a Type with differencingTypes are asserted to be those of the first of those
/// Types, but not including those of the remaining Types. For example, a Classifier might be the
/// difference of a Classifier for people and another for people of a particular nationality, leaving
/// people who are not of that nationality. Similarly, a feature of people might be the difference
/// between a feature for their children and a Classifier for people of a particular sex, identifying
/// their children not of that sex (because the interpretations of the children Feature that identify
/// those of that sex are also interpretations of the Classifier for that sex).
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1661975883472_645501_1372", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IType.DifferencingType")]
public List<IType> differencingType => this.ComputeDifferencingType();
/// <summary>
/// The features of this Type that have a non-null direction.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1623952188842_882068_37169", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")]
[RedefinedByProperty("IStep.Parameter")]
[Implements(implementation: "IType.DirectedFeature")]
List<IFeature> Core.Types.IType.directedFeature => [.. this.parameter];
/// <summary>
/// Indicates how values of this Feature are determined or used (as specified for the
/// FeatureDirectionKind).
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674994_447677_43347", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IFeature.Direction")]
public FeatureDirectionKind? Direction { get; set; }
/// <summary>
/// The Documentation owned by this Element.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594150061166_345630_1621", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_2_12e503d9_1594145755059_76214_87")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092869879_112608_17278")]
[Implements(implementation: "IElement.Documentation")]
public List<IDocumentation> documentation => this.ComputeDocumentation();
/// <summary>
/// The globally unique identifier for this Element. This is intended to be set by tooling, and it must
/// not change during the lifetime of the Element.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674986_844338_43305", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.ElementId")]
public string ElementId { get; set; }
/// <summary>
/// All features of this Type with isEnd = true.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1562476168385_824569_22106", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")]
[RedefinedByProperty("IConnector.ConnectorEnd")]
[Implements(implementation: "IType.EndFeature")]
List<IFeature> Core.Types.IType.endFeature => [.. this.connectorEnd];
/// <summary>
/// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an
/// ownedMemberFeature.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1563834516279_920295_20653", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1562476168386_366266_22107")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_592215_43200")]
[Implements(implementation: "IFeature.EndOwningType")]
public IType endOwningType => this.ComputeEndOwningType();
/// <summary>
/// The ownedMemberFeatures of the featureMemberships of this Type.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674959_326391_43166", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_644335_43267")]
[Implements(implementation: "IType.Feature")]
public List<IFeature> feature => this.ComputeFeature();
/// <summary>
/// The FeatureMemberships for features of this Type, which include all ownedFeatureMemberships and
/// those inheritedMemberships that are FeatureMemberships (but does not include any
/// importedMemberships).
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1651076866512_962346_485", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IType.FeatureMembership")]
public List<IFeatureMembership> featureMembership => this.ComputeFeatureMembership();
/// <summary>
/// The last of the chainingFeatures of this Feature, if it has any. Otherwise, this Feature itself.
/// </summary>
[Property(xmiId: "_2022x_2_12e503d9_1715790852907_110671_19", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IFeature.FeatureTarget")]
public IFeature featureTarget => this.ComputeFeatureTarget();
/// <summary>
/// Types that feature this Feature, such that any instance in the domain of the Feature must be
/// classified by all of these Types, including at least all the featuringTypes of its typeFeaturings.
/// If the Feature is chained, then the featuringTypes of the first Feature in the chain are also
/// featuringTypes of the chained Feature.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1603905619975_304385_743", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IFeature.FeaturingType")]
public List<IType> featuringType => this.ComputeFeaturingType();
/// <summary>
/// The connectorEnds of this Flow that are FlowEnds.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1563219311176_506548_20966", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 2, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1556735067666_827798_21922")]
[Implements(implementation: "IFlow.FlowEnd")]
public List<IFlowEnd> flowEnd => this.ComputeFlowEnd();
/// <summary>
/// The Memberships in this Namespace that result from the ownedImports of this Namespace.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674979_207869_43270", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674962_198288_43183")]
[Implements(implementation: "INamespace.ImportedMembership")]
public List<IMembership> importedMembership => this.ComputeImportedMembership();
/// <summary>
/// All the memberFeatures of the inheritedMemberships of this Type that are FeatureMemberships.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1575499020770_15576_2334", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")]
[Implements(implementation: "IType.InheritedFeature")]
public List<IFeature> inheritedFeature => this.ComputeInheritedFeature();
/// <summary>
/// All Memberships inherited by this Type via Specialization or Conjugation. These are included in the
/// derived union for the memberships of the Type.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1551972927538_787976_19004", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674962_198288_43183")]
[Implements(implementation: "IType.InheritedMembership")]
public List<IMembership> inheritedMembership => this.ComputeInheritedMembership();
/// <summary>
/// All features related to this Type by FeatureMemberships that have direction in or inout.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674960_37384_43169", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_4_12e503d9_1623952188842_882068_37169")]
[Implements(implementation: "IType.Input")]
public List<IFeature> input => this.ComputeInput();
/// <summary>
/// The Interactions that type this Flow. Interactions are both Associations and Behaviors, which can
/// type Connectors and Steps, respectively.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1661900477937_518125_727", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674983_471497_43284")]
[RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")]
[Implements(implementation: "IFlow.Interaction")]
public List<IInteraction> interaction => this.ComputeInteraction();
/// <summary>
/// The interpretations of a Type with intersectingTypes are asserted to be those in common among the
/// intersectingTypes, which are the Types derived from the intersectingType of the ownedIntersectings
/// of this Type. For example, a Classifier might be an intersection of Classifiers for people of a
/// particular sex and of a particular nationality. Similarly, a feature for people's children of a
/// particular sex might be the intersection of a Feature for their children and a Classifier for people
/// of that sex (because the interpretations of the children Feature that identify those of that sex are
/// also interpretations of the Classifier for that sex).
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1661973922199_584242_1045", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IType.IntersectingType")]
public List<IType> intersectingType => this.ComputeIntersectingType();
/// <summary>
/// Indicates whether instances of this Type must also be instances of at least one of its specialized
/// Types.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674959_741353_43165", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IType.IsAbstract")]
public bool IsAbstract { get; set; }
/// <summary>
/// Whether the Feature is a composite feature of its featuringType. If so, the values of the Feature
/// cannot exist after its featuring instance no longer does and cannot be values of another composite
/// feature that is not on the same featuring instance.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674970_331870_43224", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsComposite")]
public bool IsComposite { get; set; }
/// <summary>
/// Indicates whether this Type has an ownedConjugator.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1575485930816_796088_1933", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IType.IsConjugated")]
public bool isConjugated => this.ComputeIsConjugated();
/// <summary>
/// If isVariable is true, then whether the value of this Feature nevertheless does not change over all
/// snapshots of its owningType.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674993_300560_43342", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsConstant")]
public bool IsConstant { get; set; }
/// <summary>
/// Whether the values of this Feature can always be computed from the values of other Features.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674992_500504_43341", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsDerived")]
public bool IsDerived { get; set; }
/// <summary>
/// Whether or not this Feature is an end Feature. An end Feature always has multiplicity 1, mapping
/// each of its domain instances to a single co-domain instance. However, it may have a crossFeature, in
/// which case values of the crossFeature must be the same as those found by navigation across instances
/// of the owningType from values of other end Features to values of this Feature. If the owningType has
/// n end Features, then the multiplicity, ordering, and uniqueness declared for the crossFeature of any
/// one of these end Features constrains the cardinality, ordering, and uniqueness of the collection of
/// values of that Feature reached by navigation when the values of the other n-1 end Features are held
/// fixed.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1562475749426_705395_21984", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsEnd")]
public bool IsEnd { get; set; }
/// <summary>
/// Whether this Relationship was generated by tooling to meet semantic rules, rather than being
/// directly created by a modeler.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1662070829631_521257_3623", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IRelationship.IsImplied")]
public bool IsImplied { get; set; }
/// <summary>
/// Whether all necessary implied Relationships have been included in the ownedRelationships of this
/// Element. This property may be true, even if there are not actually any ownedRelationships with
/// isImplied = true, meaning that no such Relationships are actually implied for this Element. However,
/// if it is false, then ownedRelationships may not contain any implied Relationships. That is, either
/// all required implied Relationships must be included, or none of them.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1662070949317_79713_3658", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IElement.IsImpliedIncluded")]
public bool IsImpliedIncluded { get; set; }
/// <summary>
/// Whether this Element is contained in the ownership tree of a library model.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1665443500960_5561_723", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.IsLibraryElement")]
public bool isLibraryElement => this.ComputeIsLibraryElement();
/// <summary>
/// Whether an order exists for the values of this Feature or not.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674969_728225_43215", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsOrdered")]
public bool IsOrdered { get; set; }
/// <summary>
/// Whether the values of this Feature are contained in the space and time of instances of the domain of
/// the Feature and represent the same thing as those instances.
/// </summary>
[Property(xmiId: "_18_5_3_b9102da_1559231981638_234817_22063", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsPortion")]
public bool IsPortion { get; set; }
/// <summary>
/// Whether all things that meet the classification conditions of this Type must be classified by the
/// Type. (A Type gives conditions that must be met by whatever it
/// classifies, but when isSufficient is false, things may meet those conditions but still not be
/// classified by the Type. For example, a Type Car that is not sufficient could require everything it
/// classifies to have four wheels, but not all four wheeled things would classify as cars. However, if
/// the Type Car were sufficient, it would classify all four-wheeled things.)
/// </summary>
[Property(xmiId: "_18_5_3_b9102da_1564072709069_937523_30797", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IType.IsSufficient")]
public bool IsSufficient { get; set; }
/// <summary>
/// Whether or not values for this Feature must have no duplicates or not.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674968_321342_43214", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "true")]
[Implements(implementation: "IFeature.IsUnique")]
public bool IsUnique { get; set; } = true;
/// <summary>
/// Whether the value of this Feature might vary over time. That is, whether the Feature may have a
/// different value for each snapshot of an owningType that is an Occurrence.
/// </summary>
[Property(xmiId: "_2022x_2_12e503d9_1725998273002_23711_212", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: "false")]
[Implements(implementation: "IFeature.IsVariable")]
public bool IsVariable { get; set; }
/// <summary>
/// The set of all member Elements of this Namespace, which are the memberElements of all memberships of
/// the Namespace.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674979_644335_43267", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "INamespace.Member")]
public List<IElement> member => this.ComputeMember();
/// <summary>
/// All Memberships in this Namespace, including (at least) the union of ownedMemberships and
/// importedMemberships.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674962_198288_43183", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: true, isUnique: true, defaultValue: null)]
[Implements(implementation: "INamespace.Membership")]
public List<IMembership> membership => this.ComputeMembership();
/// <summary>
/// An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type.
/// If there is no such ownedMember, then the cardinality of this Type is constrained by all the
/// Multiplicity constraints applicable to any direct supertypes.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1573095852093_324833_5396", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_259543_43268")]
[Implements(implementation: "IType.Multiplicity")]
public IMultiplicity multiplicity => this.ComputeMultiplicity();
/// <summary>
/// The name to be used for this Element during name resolution within its owningNamespace. This is
/// derived using the effectiveName() operation. By default, it is the same as the declaredName, but
/// this is overridden for certain kinds of Elements to compute a name even when the declaredName is
/// null.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1617485009541_709355_27528", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.Name")]
public string name => this.ComputeName();
/// <summary>
/// All features related to this Type by FeatureMemberships that have direction out or inout.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674960_365618_43170", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_4_12e503d9_1623952188842_882068_37169")]
[Implements(implementation: "IType.Output")]
public List<IFeature> output => this.ComputeOutput();
/// <summary>
/// The ownedRelationships of this Element that are Annotations, for which this Element is the
/// annotatedElement.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594152527165_702130_2500", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543094430277_599480_18543")]
[Implements(implementation: "IElement.OwnedAnnotation")]
public List<IAnnotation> ownedAnnotation => this.ComputeOwnedAnnotation();
/// <summary>
/// A Conjugation owned by this Type for which the Type is the originalType.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1575482646809_280165_440", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_2_12e503d9_1575482490144_309557_300")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[Implements(implementation: "IType.OwnedConjugator")]
public IConjugation ownedConjugator => this.ComputeOwnedConjugator();
/// <summary>
/// The one ownedSubsetting of this Feature, if any, that is a CrossSubsetting}, for which the Feature
/// is the crossingFeature.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1689616916594_145818_277", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674970_472382_43221")]
[Implements(implementation: "IFeature.OwnedCrossSubsetting")]
public ICrossSubsetting ownedCrossSubsetting => this.ComputeOwnedCrossSubsetting();
/// <summary>
/// The ownedRelationships of this Type that are Differencings, having this Type as their
/// typeDifferenced.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1661871168454_98082_797", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_80547_43227")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[Implements(implementation: "IType.OwnedDifferencing")]
public List<IDifferencing> ownedDifferencing => this.ComputeOwnedDifferencing();
/// <summary>
/// The ownedRelationships of this Type that are Disjoinings, for which the Type is the typeDisjoined
/// Type.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1627447519613_145554_370", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[SubsettedProperty(propertyName: "_19_0_4_b9102da_1623183194914_502526_616")]
[Implements(implementation: "IType.OwnedDisjoining")]
public List<IDisjoining> ownedDisjoining => this.ComputeOwnedDisjoining();
/// <summary>
/// The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of
/// this Element.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1543092869879_112608_17278", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.OwnedElement")]
public List<IElement> ownedElement => this.ComputeOwnedElement();
/// <summary>
/// All endFeatures of this Type that are ownedFeatures.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1563834516278_687758_20652", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_226999_43167")]
[Implements(implementation: "IType.OwnedEndFeature")]
public List<IFeature> ownedEndFeature => this.ComputeOwnedEndFeature();
/// <summary>
/// The ownedMemberFeatures of the ownedFeatureMemberships of this Type.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674959_226999_43167", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_259543_43268")]
[Implements(implementation: "IType.OwnedFeature")]
public List<IFeature> ownedFeature => this.ComputeOwnedFeature();
/// <summary>
/// The ownedRelationships of this Feature that are FeatureChainings, for which the Feature will be the
/// featureChained.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1622125589880_791465_72", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_80547_43227")]
[Implements(implementation: "IFeature.OwnedFeatureChaining")]
public List<IFeatureChaining> ownedFeatureChaining => this.ComputeOwnedFeatureChaining();
/// <summary>
/// The ownedRelationships of this Feature that are FeatureInvertings and for which the Feature is the
/// featureInverted.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1653567738671_359235_43", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_4_b9102da_1623178838861_768019_145")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[Implements(implementation: "IFeature.OwnedFeatureInverting")]
public List<IFeatureInverting> ownedFeatureInverting => this.ComputeOwnedFeatureInverting();
/// <summary>
/// The ownedMemberships of this Type that are FeatureMemberships, for which the Type is the owningType.
/// Each such FeatureMembership identifies an ownedFeature of the Type.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674960_868417_43171", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_190614_43269")]
[SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866512_962346_485")]
[Implements(implementation: "IType.OwnedFeatureMembership")]
public List<IFeatureMembership> ownedFeatureMembership => this.ComputeOwnedFeatureMembership();
/// <summary>
/// The ownedRelationships of this Namespace that are Imports, for which the Namespace is the
/// importOwningNamespace.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674974_746786_43247", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_80547_43227")]
[Implements(implementation: "INamespace.OwnedImport")]
public List<IImport> ownedImport => this.ComputeOwnedImport();
/// <summary>
/// The ownedRelationships of this Type that are Intersectings, have the Type as their typeIntersected.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1623242552144_910757_524", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_80547_43227")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[Implements(implementation: "IType.OwnedIntersecting")]
public List<IIntersecting> ownedIntersecting => this.ComputeOwnedIntersecting();
/// <summary>
/// The owned members of this Namespace, which are the <cpde>ownedMemberElements of the ownedMemberships
/// of the Namespace.</cpde>
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674979_259543_43268", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_644335_43267")]
[Implements(implementation: "INamespace.OwnedMember")]
public List<IElement> ownedMember => this.ComputeOwnedMember();
/// <summary>
/// The ownedRelationships of this Namespace that are Memberships, for which the Namespace is the
/// membershipOwningNamespace.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674979_190614_43269", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674962_198288_43183")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_80547_43227")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[Implements(implementation: "INamespace.OwnedMembership")]
public List<IMembership> ownedMembership => this.ComputeOwnedMembership();
/// <summary>
/// The ownedSubsettings of this Feature that are Redefinitions, for which the Feature is the
/// redefiningFeature.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674970_161813_43220", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674970_472382_43221")]
[Implements(implementation: "IFeature.OwnedRedefinition")]
public List<IRedefinition> ownedRedefinition => this.ComputeOwnedRedefinition();
/// <summary>
/// The one ownedSubsetting of this Feature, if any, that is a ReferenceSubsetting, for which the
/// Feature is the referencingFeature.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1661555161564_247405_255", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674970_472382_43221")]
[Implements(implementation: "IFeature.OwnedReferenceSubsetting")]
public IReferenceSubsetting ownedReferenceSubsetting => this.ComputeOwnedReferenceSubsetting();
/// <summary>
/// The relatedElements of this Relationship that are owned by the Relationship.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674986_59873_43302", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_132339_43177")]
[Implements(implementation: "IRelationship.OwnedRelatedElement")]
public IReadOnlyList<IElement> OwnedRelatedElement => ((IContainedRelationship)this).OwnedRelatedElement;
/// <summary>Backing field for IRelationship.OwnedRelatedElement</summary>
ContainerList<IRelationship, IElement> IContainedRelationship.OwnedRelatedElement { get; set; }
/// <summary>
/// The Relationships for which this Element is the owningRelatedElement.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1543092026091_217766_16748", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_585972_43176")]
[Implements(implementation: "IElement.OwnedRelationship")]
public IReadOnlyList<IRelationship> OwnedRelationship => ((IContainedElement)this).OwnedRelationship;
/// <summary>Backing field for IElement.OwnedRelationship</summary>
ContainerList<IElement, IRelationship> IContainedElement.OwnedRelationship { get; set; }
/// <summary>
/// The ownedRelationships of this Type that are Specializations, for which the Type is the specific
/// Type.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674959_579676_43168", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674984_558067_43292")]
[Implements(implementation: "IType.OwnedSpecialization")]
public List<ISpecialization> ownedSpecialization => this.ComputeOwnedSpecialization();
/// <summary>
/// The ownedSpecializations of this Feature that are Subsettings, for which the Feature is the
/// subsettingFeature.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674970_472382_43221", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_579676_43168")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674966_718145_43205")]
[Implements(implementation: "IFeature.OwnedSubsetting")]
public List<ISubsetting> ownedSubsetting => this.ComputeOwnedSubsetting();
/// <summary>
/// The ownedRelationships of this Feature that are TypeFeaturings and for which the Feature is the
/// featureOfType.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1603905673975_310948_762", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_4_12e503d9_1603904928950_196800_580")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[Implements(implementation: "IFeature.OwnedTypeFeaturing")]
public List<ITypeFeaturing> ownedTypeFeaturing => this.ComputeOwnedTypeFeaturing();
/// <summary>
/// The ownedSpecializations of this Feature that are FeatureTypings, for which the Feature is the
/// typedFeature.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1596597427751_965862_42", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_579676_43168")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543180501615_804591_21100")]
[Implements(implementation: "IFeature.OwnedTyping")]
public List<IFeatureTyping> ownedTyping => this.ComputeOwnedTyping();
/// <summary>
/// The ownedRelationships of this Type that are Unionings, having the Type as their typeUnioned.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1661869978505_968809_460", aggregation: AggregationKind.Composite, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_80547_43227")]
[Implements(implementation: "IType.OwnedUnioning")]
public List<IUnioning> ownedUnioning => this.ComputeOwnedUnioning();
/// <summary>
/// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this
/// Element, if any.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1543092869879_744477_17277", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.Owner")]
public IElement owner => this.ComputeOwner();
/// <summary>
/// The FeatureMembership that owns this Feature as an ownedMemberFeature, determining its owningType.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674970_68441_43223", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674972_622493_43236")]
[Implements(implementation: "IFeature.OwningFeatureMembership")]
public IFeatureMembership owningFeatureMembership => this.ComputeOwningFeatureMembership();
/// <summary>
/// The owningRelationship of this Element, if that Relationship is a Membership.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674972_622493_43236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674973_469277_43243")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674986_482273_43303")]
[Implements(implementation: "IElement.OwningMembership")]
public IOwningMembership owningMembership => this.ComputeOwningMembership();
/// <summary>
/// The Namespace that owns this Element, which is the membershipOwningNamespace of the owningMembership
/// of this Element, if any.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674986_474739_43306", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674980_717955_43271")]
[Implements(implementation: "IElement.OwningNamespace")]
public INamespace owningNamespace => this.ComputeOwningNamespace();
/// <summary>
/// The relatedElement of this Relationship that owns the Relationship, if any.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1543092026091_693018_16749", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_132339_43177")]
[Implements(implementation: "IRelationship.OwningRelatedElement")]
public IElement OwningRelatedElement => ((IContainedRelationship)this).OwningRelatedElement;
/// <summary>Backing field for IRelationship.OwningRelatedElement</summary>
IElement IContainedRelationship.OwningRelatedElement { get; set; }
/// <summary>
/// The Relationship for which this Element is an ownedRelatedElement, if any.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674986_482273_43303", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_585972_43176")]
[Implements(implementation: "IElement.OwningRelationship")]
public IRelationship OwningRelationship => ((IContainedElement)this).OwningRelationship;
/// <summary>Backing field for IElement.OwningRelationship</summary>
IRelationship IContainedElement.OwningRelationship { get; set; }
/// <summary>
/// The Type that is the owningType of the owningFeatureMembership of this Feature.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674965_592215_43200", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674987_297074_43308")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674986_474739_43306")]
[SubsettedProperty(propertyName: "_19_0_4_12e503d9_1603905619975_304385_743")]
[Implements(implementation: "IFeature.OwningType")]
public IType owningType => this.ComputeOwningType();
/// <summary>
/// The parameters of this Step, which are defined as its directedFeatures, whose values are passed into
/// and/or out of a performance of the Step.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1595189174990_213826_657", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[RedefinedProperty(propertyName: "_19_0_4_12e503d9_1623952188842_882068_37169")]
[Implements(implementation: "IStep.Parameter")]
public List<IFeature> parameter => this.ComputeParameter();
/// <summary>
/// The ownedFeature of the Flow that is a PayloadFeature (if any).
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1563219424870_347345_21142", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_226999_43167")]
[Implements(implementation: "IFlow.PayloadFeature")]
public IPayloadFeature payloadFeature => this.ComputePayloadFeature();
/// <summary>
/// The type of values transferred, which is the type of the payloadFeature of the Flow.
/// </summary>
[Property(xmiId: "_18_5_3_b9102da_1536870569046_1672_18020", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: false, defaultValue: null)]
[Implements(implementation: "IFlow.PayloadType")]
public List<IClassifier> payloadType => this.ComputePayloadType();
/// <summary>
/// The full ownership-qualified name of this Element, represented in a form that is valid according to
/// the KerML textual concrete syntax for qualified names (including use of unrestricted name notation
/// and escaped characters, as necessary). The qualifiedName is null if this Element has no
/// owningNamespace or if there is not a complete ownership chain of named Namespaces from a root
/// Namespace to this Element. If the owningNamespace has other Elements with the same name as this one,
/// then the qualifiedName is null for all such Elements other than the first.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1611356604987_900871_594", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.QualifiedName")]
public string qualifiedName => this.ComputeQualifiedName();
/// <summary>
/// The Elements that are related by this Relationship, derived as the union of the source and target
/// Elements of the Relationship.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674961_132339_43177", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: false, defaultValue: null)]
[RedefinedByProperty("IConnector.RelatedFeature")]
[Implements(implementation: "IRelationship.RelatedElement")]
List<IElement> Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature];
/// <summary>
/// The Features that are related by this Connector considered as a Relationship and that restrict the
/// links it identifies, given by the referenced Features of the connectorEnds of the Connector.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674968_916334_43210", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: false, defaultValue: null)]
[RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_132339_43177")]
[Implements(implementation: "IConnector.RelatedFeature")]
public List<IFeature> relatedFeature => this.ComputeRelatedFeature();
/// <summary>
/// The short name to be used for this Element during name resolution within its owningNamespace. This
/// is derived using the effectiveShortName() operation. By default, it is the same as the
/// declaredShortName, but this is overridden for certain kinds of Elements to compute a shortName even
/// when the declaredName is null.
/// </summary>
[Property(xmiId: "_19_0_4_12e503d9_1673496405504_544235_24", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IElement.ShortName")]
public string shortName => this.ComputeShortName();
/// <summary>
/// The relatedElements from which this Relationship is considered to be directed.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674971_696758_43228", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_132339_43177")]
[RedefinedByProperty("IConnector.SourceFeature")]
[Implements(implementation: "IRelationship.Source")]
List<IElement> Root.Elements.IRelationship.Source
{
get => this.sourceFeature != null ? [this.sourceFeature] : [];
set { }
}
/// <summary>
/// The source relatedFeature for this Connector. It is the first relatedFeature.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594953058873_558253_3897", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")]
[RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")]
[Implements(implementation: "IConnector.SourceFeature")]
public IFeature sourceFeature => this.ComputeSourceFeature();
/// <summary>
/// The Feature that provides the items carried by the Flow. It must be a feature of the source of the
/// Flow.
/// </summary>
[Property(xmiId: "_18_5_3_b9102da_1536870707078_57525_18088", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: false, defaultValue: null)]
[Implements(implementation: "IFlow.SourceOutputFeature")]
public IFeature sourceOutputFeature => this.ComputeSourceOutputFeature();
/// <summary>
/// The relatedElements to which this Relationship is considered to be directed.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674961_138197_43179", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: false, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_132339_43177")]
[RedefinedByProperty("IConnector.TargetFeature")]
[Implements(implementation: "IRelationship.Target")]
List<IElement> Root.Elements.IRelationship.Target
{
get => [.. this.targetFeature];
set { }
}
/// <summary>
/// The target relatedFeatures for this Connector. This includes all the relatedFeatures other than the
/// sourceFeature.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594953128207_991867_3946", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")]
[RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")]
[Implements(implementation: "IConnector.TargetFeature")]
public List<IFeature> targetFeature => this.ComputeTargetFeature();
/// <summary>
/// The Feature that receives the values carried by the Flow. It must be a feature of the target of the
/// Flow.
/// </summary>
[Property(xmiId: "_18_5_3_b9102da_1536870573474_966268_18041", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: false, defaultValue: null)]
[Implements(implementation: "IFlow.TargetInputFeature")]
public IFeature targetInputFeature => this.ComputeTargetInputFeature();
/// <summary>
/// The TextualRepresentations that annotate this Element.
/// </summary>
[Property(xmiId: "_19_0_2_12e503d9_1594154758493_640290_3388", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[SubsettedProperty(propertyName: "_19_0_2_12e503d9_1594145755059_76214_87")]
[SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092869879_112608_17278")]
[Implements(implementation: "IElement.TextualRepresentation")]
public List<ITextualRepresentation> textualRepresentation => this.ComputeTextualRepresentation();
/// <summary>
/// Types that restrict the values of this Feature, such that the values must be instances of all the
/// types. The types of a Feature are derived from its typings and the types of its subsettings. If the
/// Feature is chained, then the types of the last Feature in the chain are also types of the chained
/// Feature.
/// </summary>
[Property(xmiId: "_18_5_3_12e503d9_1533160674969_376003_43216", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[RedefinedByProperty("IConnector.Association")]
[Implements(implementation: "IFeature.Type")]
List<IType> Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association];
/// <summary>
/// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the
/// unioningTypes together, which are the Types derived from the unioningType of the ownedUnionings of
/// this Type. For example, a Classifier for people might be the union of Classifiers for all the sexes.
/// Similarly, a feature for people's children might be the union of features dividing them in the
/// same ways as people in general.
/// </summary>
[Property(xmiId: "_19_0_4_b9102da_1661974896766_783268_1231", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)]
[Implements(implementation: "IType.UnioningType")]
public List<IType> unioningType => this.ComputeUnioningType();
}
}
// ------------------------------------------------------------------------------------------------
// --------THIS IS AN AUTOMATICALLY GENERATED FILE. ANY MANUAL CHANGES WILL BE OVERWRITTEN!--------
// ------------------------------------------------------------------------------------------------