diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/EnumerationDefinition.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/EnumerationDefinition.cs index e851a82b..b54ba59c 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/EnumerationDefinition.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/EnumerationDefinition.cs @@ -97,6 +97,7 @@ public partial class EnumerationDefinition : IEnumerationDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -643,6 +644,7 @@ bool Systems.DefinitionAndUsage.IDefinition.IsVariation /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IRequirementUsage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IRequirementUsage.cs index 7191dfe2..cd336d5b 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IRequirementUsage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IRequirementUsage.cs @@ -45,6 +45,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List actorParameter { get; } /// @@ -94,6 +95,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List stakeholderParameter { get; } /// @@ -101,6 +103,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] Guid subjectParameter { get; } /// diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IUsage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IUsage.cs index e2e64749..1bfdd465 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IUsage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/IUsage.cs @@ -59,6 +59,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List directedUsage { get; } /// @@ -247,6 +248,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List nestedUsage { get; } /// @@ -282,6 +284,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] Guid? owningDefinition { get; } /// diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/RequirementUsage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/RequirementUsage.cs index 964430dc..721e4ab4 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/RequirementUsage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/RequirementUsage.cs @@ -52,6 +52,7 @@ public partial class RequirementUsage : IRequirementUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -177,6 +178,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -710,6 +712,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -993,6 +996,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1141,6 +1145,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -1149,6 +1154,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/Usage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/Usage.cs index 238ab0a0..ca4bf907 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/Usage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenDto/Usage.cs @@ -134,6 +134,7 @@ public partial class Usage : IUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -625,6 +626,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -898,6 +900,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenExtensions/ElementExtensions.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenExtensions/ElementExtensions.cs index 45bb0e93..f4aa334a 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenExtensions/ElementExtensions.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenExtensions/ElementExtensions.cs @@ -117,33 +117,12 @@ public static bool QueryIsValidContainmentOwner(this IRelationship bridgeRelatio { return bridgeRelationship switch { - SysML2.NET.Core.POCO.Systems.Requirements.IActorMembership => source is SysML2.NET.Core.POCO.Systems.Parts.IPartUsage, - SysML2.NET.Core.POCO.Systems.Requirements.IFramedConcernMembership => source is SysML2.NET.Core.POCO.Systems.Requirements.IConcernUsage, - SysML2.NET.Core.POCO.Systems.VerificationCases.IRequirementVerificationMembership => source is SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage, - SysML2.NET.Core.POCO.Systems.Requirements.IStakeholderMembership => source is SysML2.NET.Core.POCO.Systems.Parts.IPartUsage, - SysML2.NET.Core.POCO.Systems.Requirements.ISubjectMembership => source is SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage, - SysML2.NET.Core.POCO.Kernel.Associations.IAssociation => source is SysML2.NET.Core.POCO.Core.Types.IType, - SysML2.NET.Core.POCO.Kernel.Connectors.IConnector => source is SysML2.NET.Core.POCO.Core.Features.IFeature, - SysML2.NET.Core.POCO.Core.Features.IEndFeatureMembership => source is SysML2.NET.Core.POCO.Core.Features.IFeature, - SysML2.NET.Core.POCO.Systems.Cases.IObjectiveMembership => source is SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage, - SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership => source is SysML2.NET.Core.POCO.Core.Features.IFeature, - SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership => source is SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage, - SysML2.NET.Core.POCO.Kernel.Functions.IResultExpressionMembership => source is SysML2.NET.Core.POCO.Kernel.Functions.IExpression, - SysML2.NET.Core.POCO.Systems.States.IStateSubactionMembership => source is SysML2.NET.Core.POCO.Systems.Actions.IActionUsage, - SysML2.NET.Core.POCO.Systems.States.ITransitionFeatureMembership => source is SysML2.NET.Core.POCO.Kernel.Behaviors.IStep, - SysML2.NET.Core.POCO.Systems.Views.IViewRenderingMembership => source is SysML2.NET.Core.POCO.Systems.Views.IRenderingUsage, - SysML2.NET.Core.POCO.Systems.Ports.IConjugatedPortTyping => source is SysML2.NET.Core.POCO.Systems.Ports.IConjugatedPortDefinition, SysML2.NET.Core.POCO.Core.Features.ICrossSubsetting => source is SysML2.NET.Core.POCO.Core.Features.IFeature, - SysML2.NET.Core.POCO.Kernel.Packages.IElementFilterMembership => source is SysML2.NET.Core.POCO.Kernel.Functions.IExpression, - SysML2.NET.Core.POCO.Core.Types.IFeatureMembership => source is SysML2.NET.Core.POCO.Core.Features.IFeature, - SysML2.NET.Core.POCO.Kernel.FeatureValues.IFeatureValue => source is SysML2.NET.Core.POCO.Kernel.Functions.IExpression, - SysML2.NET.Core.POCO.Core.Features.IRedefinition => source is SysML2.NET.Core.POCO.Core.Features.IFeature, + SysML2.NET.Core.POCO.Core.Types.IFeatureMembership => source is SysML2.NET.Core.POCO.Core.Types.IType, + SysML2.NET.Core.POCO.Kernel.FeatureValues.IFeatureValue => source is SysML2.NET.Core.POCO.Core.Features.IFeature, SysML2.NET.Core.POCO.Core.Features.IReferenceSubsetting => source is SysML2.NET.Core.POCO.Core.Features.IFeature, - SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IVariantMembership => source is SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage, - SysML2.NET.Core.POCO.Core.Features.IFeatureTyping => source is SysML2.NET.Core.POCO.Core.Types.IType, - SysML2.NET.Core.POCO.Root.Namespaces.IMembershipImport => source is SysML2.NET.Core.POCO.Root.Namespaces.IMembership, - SysML2.NET.Core.POCO.Root.Namespaces.INamespaceImport => source is SysML2.NET.Core.POCO.Root.Namespaces.INamespace, - SysML2.NET.Core.POCO.Systems.Ports.IPortConjugation => source is SysML2.NET.Core.POCO.Systems.Ports.IPortDefinition, + SysML2.NET.Core.POCO.Core.Features.IFeatureTyping => source is SysML2.NET.Core.POCO.Core.Features.IFeature, + SysML2.NET.Core.POCO.Systems.Ports.IPortConjugation => source is SysML2.NET.Core.POCO.Systems.Ports.IConjugatedPortDefinition, SysML2.NET.Core.POCO.Core.Classifiers.ISubclassification => source is SysML2.NET.Core.POCO.Core.Classifiers.IClassifier, SysML2.NET.Core.POCO.Core.Features.ISubsetting => source is SysML2.NET.Core.POCO.Core.Features.IFeature, SysML2.NET.Core.POCO.Core.Types.IConjugation => source is SysML2.NET.Core.POCO.Core.Types.IType, @@ -151,9 +130,11 @@ public static bool QueryIsValidContainmentOwner(this IRelationship bridgeRelatio SysML2.NET.Core.POCO.Core.Types.IDisjoining => source is SysML2.NET.Core.POCO.Core.Types.IType, SysML2.NET.Core.POCO.Core.Features.IFeatureChaining => source is SysML2.NET.Core.POCO.Core.Features.IFeature, SysML2.NET.Core.POCO.Core.Features.IFeatureInverting => source is SysML2.NET.Core.POCO.Core.Features.IFeature, + SysML2.NET.Core.POCO.Root.Namespaces.IImport => source is SysML2.NET.Core.POCO.Root.Namespaces.INamespace, SysML2.NET.Core.POCO.Core.Types.IIntersecting => source is SysML2.NET.Core.POCO.Core.Types.IType, + SysML2.NET.Core.POCO.Root.Namespaces.IMembership => source is SysML2.NET.Core.POCO.Root.Namespaces.INamespace, SysML2.NET.Core.POCO.Core.Types.ISpecialization => source is SysML2.NET.Core.POCO.Core.Types.IType, - SysML2.NET.Core.POCO.Core.Features.ITypeFeaturing => source is SysML2.NET.Core.POCO.Core.Types.IType, + SysML2.NET.Core.POCO.Core.Features.ITypeFeaturing => source is SysML2.NET.Core.POCO.Core.Features.IFeature, SysML2.NET.Core.POCO.Core.Types.IUnioning => source is SysML2.NET.Core.POCO.Core.Types.IType, _ => true, }; @@ -170,33 +151,12 @@ public static string ExpectedContainmentOwnerTypeName(this IRelationship bridgeR { return bridgeRelationship switch { - SysML2.NET.Core.POCO.Systems.Requirements.IActorMembership => nameof(SysML2.NET.Core.POCO.Systems.Parts.IPartUsage), - SysML2.NET.Core.POCO.Systems.Requirements.IFramedConcernMembership => nameof(SysML2.NET.Core.POCO.Systems.Requirements.IConcernUsage), - SysML2.NET.Core.POCO.Systems.VerificationCases.IRequirementVerificationMembership => nameof(SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage), - SysML2.NET.Core.POCO.Systems.Requirements.IStakeholderMembership => nameof(SysML2.NET.Core.POCO.Systems.Parts.IPartUsage), - SysML2.NET.Core.POCO.Systems.Requirements.ISubjectMembership => nameof(SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage), - SysML2.NET.Core.POCO.Kernel.Associations.IAssociation => nameof(SysML2.NET.Core.POCO.Core.Types.IType), - SysML2.NET.Core.POCO.Kernel.Connectors.IConnector => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), - SysML2.NET.Core.POCO.Core.Features.IEndFeatureMembership => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), - SysML2.NET.Core.POCO.Systems.Cases.IObjectiveMembership => nameof(SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage), - SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), - SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership => nameof(SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage), - SysML2.NET.Core.POCO.Kernel.Functions.IResultExpressionMembership => nameof(SysML2.NET.Core.POCO.Kernel.Functions.IExpression), - SysML2.NET.Core.POCO.Systems.States.IStateSubactionMembership => nameof(SysML2.NET.Core.POCO.Systems.Actions.IActionUsage), - SysML2.NET.Core.POCO.Systems.States.ITransitionFeatureMembership => nameof(SysML2.NET.Core.POCO.Kernel.Behaviors.IStep), - SysML2.NET.Core.POCO.Systems.Views.IViewRenderingMembership => nameof(SysML2.NET.Core.POCO.Systems.Views.IRenderingUsage), - SysML2.NET.Core.POCO.Systems.Ports.IConjugatedPortTyping => nameof(SysML2.NET.Core.POCO.Systems.Ports.IConjugatedPortDefinition), SysML2.NET.Core.POCO.Core.Features.ICrossSubsetting => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), - SysML2.NET.Core.POCO.Kernel.Packages.IElementFilterMembership => nameof(SysML2.NET.Core.POCO.Kernel.Functions.IExpression), - SysML2.NET.Core.POCO.Core.Types.IFeatureMembership => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), - SysML2.NET.Core.POCO.Kernel.FeatureValues.IFeatureValue => nameof(SysML2.NET.Core.POCO.Kernel.Functions.IExpression), - SysML2.NET.Core.POCO.Core.Features.IRedefinition => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), + SysML2.NET.Core.POCO.Core.Types.IFeatureMembership => nameof(SysML2.NET.Core.POCO.Core.Types.IType), + SysML2.NET.Core.POCO.Kernel.FeatureValues.IFeatureValue => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), SysML2.NET.Core.POCO.Core.Features.IReferenceSubsetting => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), - SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IVariantMembership => nameof(SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage), - SysML2.NET.Core.POCO.Core.Features.IFeatureTyping => nameof(SysML2.NET.Core.POCO.Core.Types.IType), - SysML2.NET.Core.POCO.Root.Namespaces.IMembershipImport => nameof(SysML2.NET.Core.POCO.Root.Namespaces.IMembership), - SysML2.NET.Core.POCO.Root.Namespaces.INamespaceImport => nameof(SysML2.NET.Core.POCO.Root.Namespaces.INamespace), - SysML2.NET.Core.POCO.Systems.Ports.IPortConjugation => nameof(SysML2.NET.Core.POCO.Systems.Ports.IPortDefinition), + SysML2.NET.Core.POCO.Core.Features.IFeatureTyping => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), + SysML2.NET.Core.POCO.Systems.Ports.IPortConjugation => nameof(SysML2.NET.Core.POCO.Systems.Ports.IConjugatedPortDefinition), SysML2.NET.Core.POCO.Core.Classifiers.ISubclassification => nameof(SysML2.NET.Core.POCO.Core.Classifiers.IClassifier), SysML2.NET.Core.POCO.Core.Features.ISubsetting => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), SysML2.NET.Core.POCO.Core.Types.IConjugation => nameof(SysML2.NET.Core.POCO.Core.Types.IType), @@ -204,9 +164,11 @@ public static string ExpectedContainmentOwnerTypeName(this IRelationship bridgeR SysML2.NET.Core.POCO.Core.Types.IDisjoining => nameof(SysML2.NET.Core.POCO.Core.Types.IType), SysML2.NET.Core.POCO.Core.Features.IFeatureChaining => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), SysML2.NET.Core.POCO.Core.Features.IFeatureInverting => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), + SysML2.NET.Core.POCO.Root.Namespaces.IImport => nameof(SysML2.NET.Core.POCO.Root.Namespaces.INamespace), SysML2.NET.Core.POCO.Core.Types.IIntersecting => nameof(SysML2.NET.Core.POCO.Core.Types.IType), + SysML2.NET.Core.POCO.Root.Namespaces.IMembership => nameof(SysML2.NET.Core.POCO.Root.Namespaces.INamespace), SysML2.NET.Core.POCO.Core.Types.ISpecialization => nameof(SysML2.NET.Core.POCO.Core.Types.IType), - SysML2.NET.Core.POCO.Core.Features.ITypeFeaturing => nameof(SysML2.NET.Core.POCO.Core.Types.IType), + SysML2.NET.Core.POCO.Core.Features.ITypeFeaturing => nameof(SysML2.NET.Core.POCO.Core.Features.IFeature), SysML2.NET.Core.POCO.Core.Types.IUnioning => nameof(SysML2.NET.Core.POCO.Core.Types.IType), _ => nameof(IElement), }; diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Association.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Association.cs index 7305c790..daaacd11 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Association.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Association.cs @@ -150,7 +150,7 @@ public Association() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -542,7 +542,7 @@ public Association() [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/EnumerationDefinition.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/EnumerationDefinition.cs index 6f165a3a..163330d7 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/EnumerationDefinition.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/EnumerationDefinition.cs @@ -138,6 +138,7 @@ public EnumerationDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -687,6 +688,7 @@ bool Systems.DefinitionAndUsage.IDefinition.IsVariation /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -817,7 +819,7 @@ bool Systems.DefinitionAndUsage.IDefinition.IsVariation [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_259543_43268")] [RedefinedByProperty("IEnumerationDefinition.EnumeratedValue")] [Implements(implementation: "IDefinition.Variant")] - List Systems.DefinitionAndUsage.IDefinition.variant => [.. this.enumeratedValue]; + List Systems.DefinitionAndUsage.IDefinition.variant => this.ComputeVariant(); /// /// The ownedMemberships of this Definition that are VariantMemberships. If isVariation = true, then diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FeatureTyping.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FeatureTyping.cs index f48990a2..1101a9e4 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FeatureTyping.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FeatureTyping.cs @@ -266,7 +266,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("IFeatureTyping.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Flow.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Flow.cs index 021408f5..de182be6 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Flow.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Flow.cs @@ -87,7 +87,7 @@ public Flow() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. this.interaction]; + List Kernel.Connectors.IConnector.association => this.ComputeAssociation(); /// /// The Behaviors that type this Step. @@ -96,7 +96,7 @@ public Flow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.interaction]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -176,7 +176,7 @@ public Flow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -210,7 +210,7 @@ public Flow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -825,7 +825,7 @@ public Flow() [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -925,7 +925,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FramedConcernMembership.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FramedConcernMembership.cs index 945af991..f3cfb96e 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FramedConcernMembership.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/FramedConcernMembership.cs @@ -179,7 +179,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -202,7 +202,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.ComputeMembershipOwningNamespace(); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -251,7 +251,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [RedefinedByProperty("IFramedConcernMembership.OwnedConcern")] [Implements(implementation: "IRequirementConstraintMembership.OwnedConstraint")] - IConstraintUsage IRequirementConstraintMembership.ownedConstraint => this.ownedConcern; + IConstraintUsage IRequirementConstraintMembership.ownedConstraint => this.ComputeOwnedConstraint(); /// /// The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of @@ -270,7 +270,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => this.ComputeOwnedMemberElement(); /// /// The elementId of the ownedMemberElement. @@ -288,7 +288,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IRequirementConstraintMembership.OwnedConstraint")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership)this).ownedConstraint; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ComputeOwnedMemberFeature(); /// /// The name of the ownedMemberElement. @@ -415,7 +415,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1617118807597_77864_3544", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IFramedConcernMembership.ReferencedConcern")] [Implements(implementation: "IRequirementConstraintMembership.ReferencedConstraint")] - IConstraintUsage IRequirementConstraintMembership.referencedConstraint => this.referencedConcern; + IConstraintUsage IRequirementConstraintMembership.referencedConstraint => this.ComputeReferencedConstraint(); /// /// The Elements that are related by this Relationship, derived as the union of the source and target diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IRequirementUsage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IRequirementUsage.cs index d030dd1c..26c471fb 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IRequirementUsage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IRequirementUsage.cs @@ -75,6 +75,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List actorParameter { get; } /// @@ -124,6 +125,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List stakeholderParameter { get; } /// @@ -131,6 +133,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] IUsage subjectParameter { get; } /// diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IUsage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IUsage.cs index a31acadb..518d3d20 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IUsage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/IUsage.cs @@ -86,6 +86,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List directedUsage { get; } /// @@ -274,6 +275,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List nestedUsage { get; } /// @@ -309,6 +311,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] IDefinition owningDefinition { get; } /// diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralInteger.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralInteger.cs index d7a75a43..bf29ff51 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralInteger.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralInteger.cs @@ -81,7 +81,7 @@ public LiteralInteger() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +142,7 @@ public LiteralInteger() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralRational.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralRational.cs index b5ede0c1..4efc644f 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralRational.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/LiteralRational.cs @@ -81,7 +81,7 @@ public LiteralRational() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +142,7 @@ public LiteralRational() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/OwningMembership.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/OwningMembership.cs index 985a4b9d..f16699a6 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/OwningMembership.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/OwningMembership.cs @@ -151,7 +151,7 @@ IElement IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string IMembership.memberElementId => this.ownedMemberElementId; + string IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/ReferenceSubsetting.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/ReferenceSubsetting.cs index 2a5567ac..91c64437 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/ReferenceSubsetting.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/ReferenceSubsetting.cs @@ -222,7 +222,7 @@ IType Core.Types.ISpecialization.General [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [RedefinedByProperty("IReferenceSubsetting.ReferencingFeature")] [Implements(implementation: "ISubsetting.OwningFeature")] - IFeature ISubsetting.owningFeature => this.referencingFeature; + IFeature ISubsetting.owningFeature => this.ComputeOwningFeature(); /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -272,7 +272,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubsetting.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => ((SysML2.NET.Core.POCO.Core.Features.ISubsetting)this).owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/RequirementUsage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/RequirementUsage.cs index 1a7bff9f..d2391c02 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/RequirementUsage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/RequirementUsage.cs @@ -95,6 +95,7 @@ public RequirementUsage() /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -122,7 +123,7 @@ public RequirementUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -145,7 +146,7 @@ public RequirementUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [RedefinedByProperty("IRequirementUsage.RequirementDefinition")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => this.requirementDefinition; + IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => this.ComputeConstraintDefinition(); /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -191,7 +192,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => this.ComputeDefinition(); /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -213,13 +214,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -316,7 +318,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => this.ComputeFunction(); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -753,6 +755,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -1039,6 +1042,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1122,7 +1126,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => this.ComputePredicate(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1190,6 +1194,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -1198,6 +1203,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1227,7 +1233,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/SelectExpression.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/SelectExpression.cs index f90c983e..d1c01933 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/SelectExpression.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/SelectExpression.cs @@ -91,7 +91,7 @@ public SelectExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +152,7 @@ public SelectExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Subclassification.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Subclassification.cs index e9fb6ed5..30a49f02 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Subclassification.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Subclassification.cs @@ -266,7 +266,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubclassification.OwningClassifier")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningClassifier; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/TextualRepresentation.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/TextualRepresentation.cs index 33aa5cca..e55ea47f 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/TextualRepresentation.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/TextualRepresentation.cs @@ -97,7 +97,7 @@ public TextualRepresentation() [Property(xmiId: "_19_0_2_12e503d9_1594145755058_99428_86", aggregation: AggregationKind.None, lowerValue: 1, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("ITextualRepresentation.RepresentedElement")] [Implements(implementation: "IAnnotatingElement.AnnotatedElement")] - List IAnnotatingElement.annotatedElement => this.representedElement != null ? [this.representedElement] : []; + List IAnnotatingElement.annotatedElement => this.ComputeAnnotatedElement(); /// /// The Annotations that relate this AnnotatingElement to its annotatedElements. This includes the diff --git a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Usage.cs b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Usage.cs index 9384fb20..21ee15b1 100644 --- a/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Usage.cs +++ b/SysML2.NET.CodeGenerator.Tests/Expected/UML/Core/AutoGenPoco/Usage.cs @@ -174,6 +174,7 @@ public Usage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -665,6 +666,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -941,6 +943,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1039,7 +1042,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. this.definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET.CodeGenerator.Tests/SysML2.NET.CodeGenerator.Tests.csproj b/SysML2.NET.CodeGenerator.Tests/SysML2.NET.CodeGenerator.Tests.csproj index 16f57f7e..a4f371c3 100644 --- a/SysML2.NET.CodeGenerator.Tests/SysML2.NET.CodeGenerator.Tests.csproj +++ b/SysML2.NET.CodeGenerator.Tests/SysML2.NET.CodeGenerator.Tests.csproj @@ -1160,7 +1160,7 @@ - + diff --git a/SysML2.NET.CodeGenerator/Generators/UmlHandleBarsGenerators/UmlCorePocoValidationGenerator.cs b/SysML2.NET.CodeGenerator/Generators/UmlHandleBarsGenerators/UmlCorePocoValidationGenerator.cs index 7fc468d4..596266ec 100644 --- a/SysML2.NET.CodeGenerator/Generators/UmlHandleBarsGenerators/UmlCorePocoValidationGenerator.cs +++ b/SysML2.NET.CodeGenerator/Generators/UmlHandleBarsGenerators/UmlCorePocoValidationGenerator.cs @@ -127,9 +127,50 @@ protected override void RegisterTemplates() /// The payload with the two ordered rule lists. private static ContainmentRulePayload QueryContainmentRulePayload(XmiReaderResult xmiReaderResult) { - var (_, ownedRelatedElementXmiId, owningRelatedElementXmiId, elementXmiId) = + var (relationshipClass, ownedRelatedElementXmiId, owningRelatedElementXmiId, elementXmiId) = QueryRootContainmentMeta(xmiReaderResult); + // Relationship's target-side branch (relatedElement + target + source) shares a common + // ancestor with the ownedRelatedElement / owningRelatedElement branch: Relationship::relatedElement + // (a derivedUnion). Some uml4net versions populate SubsettedProperty collections at query time + // with reverse-subsetters (i.e. properties that subset the current property), causing the chain + // walker to cross between the target-side and owner-side branches via this shared ancestor. + // Collecting the xmiIds of relatedElement and its two immediate subsetters (target, source) and + // passing them as "avoid" nodes makes the walker dead-end there, so a candidate property is + // picked only when its declared subset/redefinition chain LEADS DIRECTLY to the requested root + // without crossing over. + var walkAvoidXmiIds = new HashSet(); + var ownedRelatedElementSubsets = relationshipClass.OwnedAttribute + .Where(a => a.XmiId == ownedRelatedElementXmiId) + .SelectMany(a => a.SubsettedProperty.Select(s => s.XmiId)) + .ToHashSet(); + var owningRelatedElementSubsets = relationshipClass.OwnedAttribute + .Where(a => a.XmiId == owningRelatedElementXmiId) + .SelectMany(a => a.SubsettedProperty.Select(s => s.XmiId)) + .ToHashSet(); + var relatedElementXmiId = ownedRelatedElementSubsets + .Intersect(owningRelatedElementSubsets) + .FirstOrDefault(); + + if (relatedElementXmiId != null) + { + walkAvoidXmiIds.Add(relatedElementXmiId); + + // target and source are Relationship's non-composite ownedAttributes typed Element that + // subset relatedElement (they are the target-side memberEnds of the source/target + // associations). Add them so a candidate whose redefined chain hits target/source does not + // then cross into owningRelatedElement via uml4net's bidirectional subset expansion. + foreach (var relationshipEnd in relationshipClass.OwnedAttribute + .Where(a => !a.IsComposite + && a.XmiId != owningRelatedElementXmiId + && a.XmiId != relatedElementXmiId + && a.Type is IClass end && end.XmiId == elementXmiId + && a.SubsettedProperty.Any(s => s.XmiId == relatedElementXmiId))) + { + walkAvoidXmiIds.Add(relationshipEnd.XmiId); + } + } + var seenClassXmiIds = new HashSet(); var targetRows = new List<(IClass UmlClass, IProperty TypedProperty, int InheritanceDepth)>(); var ownerRows = new List<(IClass UmlClass, IProperty TypedProperty, int InheritanceDepth)>(); @@ -145,8 +186,8 @@ private static ContainmentRulePayload QueryContainmentRulePayload(XmiReaderResul var inheritanceDepth = QueryInheritanceDepth(umlClass); - var typedTarget = QueryTypedSubsettingProperty(umlClass, ownedRelatedElementXmiId, requireComposite: true); - + var typedTarget = QueryTypedSubsettingProperty(umlClass, ownedRelatedElementXmiId, requireComposite: true, avoidXmiIds: walkAvoidXmiIds); + if (typedTarget != null) { targetRows.Add((umlClass, typedTarget, inheritanceDepth)); @@ -155,8 +196,8 @@ private static ContainmentRulePayload QueryContainmentRulePayload(XmiReaderResul // Owner-side narrowing is meaningful only when the typed property's type is strictly // narrower than Element — otherwise the arm would be equivalent to 'source is not null' // which is exactly what the '_ => true' default already returns. - var typedOwner = QueryTypedSubsettingProperty(umlClass, owningRelatedElementXmiId, requireComposite: false); - + var typedOwner = QueryTypedSubsettingProperty(umlClass, owningRelatedElementXmiId, requireComposite: false, avoidXmiIds: walkAvoidXmiIds); + if (typedOwner != null && typedOwner.Type.XmiId != elementXmiId) { ownerRows.Add((umlClass, typedOwner, inheritanceDepth)); @@ -271,8 +312,15 @@ private static (IClass RelationshipClass, string OwnedRelatedElementXmiId, strin { composite = attribute; } - else if (!attribute.IsComposite && backRef == null) + else if (!attribute.IsComposite && backRef == null && HasCompositePairedMemberEnd(attribute)) { + // Relationship declares MULTIPLE non-composite Element-typed ownedAttributes + // (owningRelatedElement, target, source). Only owningRelatedElement is paired + // with a COMPOSITE property on Element (via the ownedRelationship / + // owningRelatedElement association whose Element-side end is composite). The + // other candidates (target, source) pair with non-composite reference back-refs + // (targetRelationship, sourceRelationship). Requiring the paired end to be + // composite selects the true containment back-reference. backRef = attribute; } } @@ -303,6 +351,27 @@ private static (IClass RelationshipClass, string OwnedRelatedElementXmiId, strin return (match.Class, match.Composite.XmiId, match.BackRef.XmiId, ((IClass)match.Composite.Type).XmiId); } + /// + /// Returns true when the given property's association has a memberEnd on the OTHER side of the + /// relationship that is composite. Used to distinguish the true owner-side back-reference + /// (owningRelatedElement, whose paired end Element::ownedRelationship is composite) + /// from other non-composite Element-typed ownedAttributes on Relationship + /// (target, source) whose paired ends are non-composite references. + /// + /// The non-composite property whose association is inspected. + /// true if a memberEnd distinct from exists on the + /// association and is composite; otherwise false. + private static bool HasCompositePairedMemberEnd(IProperty property) + { + if (property.Association == null) + { + return false; + } + + return property.Association.MemberEnd + .Any(end => end != null && end.XmiId != property.XmiId && end.IsComposite); + } + /// /// Returns true when is a strict (non-reflexive) descendant /// of via transitive walks. @@ -354,10 +423,15 @@ private static bool IsStrictDescendantOf(IClass candidateDescendant, IClass cand /// The candidate class. /// The xmi id of the root property in the subsetting chain. /// When true, only composite-aggregation attributes are considered - /// (target-side OwnedRelatedElement chain). When false, any aggregation is accepted - /// (owner-side OwningRelatedElement chain, which is not composite). + /// (target-side OwnedRelatedElement chain). When false, only non-composite attributes are + /// considered (owner-side OwningRelatedElement chain, which is not composite). + /// Optional set of "shared-ancestor" property xmiIds that the walker + /// must treat as dead-ends. Used to prevent chain walks from crossing between the owned-side and + /// owner-side branches via Relationship::relatedElement and its immediate target-side + /// subsetters (target, source), whose subsetted-by collections may be populated + /// bidirectionally by some uml4net versions. /// The typed property, or null. - private static IProperty QueryTypedSubsettingProperty(IClass umlClass, string rootPropertyXmiId, bool requireComposite) + private static IProperty QueryTypedSubsettingProperty(IClass umlClass, string rootPropertyXmiId, bool requireComposite, HashSet avoidXmiIds = null) { IProperty bestMatch = null; var bestDepth = int.MinValue; @@ -369,7 +443,12 @@ private static IProperty QueryTypedSubsettingProperty(IClass umlClass, string ro continue; } - var depth = QueryDepthToRootProperty(attribute, rootPropertyXmiId); + if (!requireComposite && attribute.IsComposite) + { + continue; + } + + var depth = QueryDepthToRootProperty(attribute, rootPropertyXmiId, avoidXmiIds); if (depth < 0) { @@ -393,8 +472,13 @@ private static IProperty QueryTypedSubsettingProperty(IClass umlClass, string ro /// /// The starting property. /// The xmi id of the root property in the subsetting chain. + /// Optional set of xmi ids treated as dead-ends: if the walker visits + /// one of these properties, it is not expanded (its subsets / redefinitions are not enqueued). + /// Used to prevent walks from crossing between the target-side and owner-side branches via the + /// shared Relationship::relatedElement ancestor and its immediate target-side subsetters + /// (target, source). /// The chain depth, or -1. - private static int QueryDepthToRootProperty(IProperty property, string rootPropertyXmiId) + private static int QueryDepthToRootProperty(IProperty property, string rootPropertyXmiId, HashSet avoidXmiIds = null) { var visited = new HashSet(); var queue = new Queue<(IProperty Property, int Depth)>(); @@ -410,6 +494,11 @@ private static int QueryDepthToRootProperty(IProperty property, string rootPrope return depth; } + if (avoidXmiIds != null && avoidXmiIds.Contains(current.XmiId)) + { + continue; + } + foreach (var redefined in current.RedefinedProperty.Where(redefined => visited.Add(redefined.XmiId))) { queue.Enqueue((redefined, depth + 1)); diff --git a/SysML2.NET.CodeGenerator/HandleBarHelpers/PropertyHelper.cs b/SysML2.NET.CodeGenerator/HandleBarHelpers/PropertyHelper.cs index 3c15054c..4a1e964b 100644 --- a/SysML2.NET.CodeGenerator/HandleBarHelpers/PropertyHelper.cs +++ b/SysML2.NET.CodeGenerator/HandleBarHelpers/PropertyHelper.cs @@ -258,7 +258,11 @@ public static void RegisterPropertyHelper(this IHandlebars handlebars) if (!isRedefinedPropertyInContext) { - if (property.QueryIsDefaultValueDifferentThanDefault()) + if (property.QueryIsEnumPropertyWithDefaultValue()) + { + sb.Append($" = {property.Type.Name.CapitalizeFirstLetter()}.{property.QueryDefaultValueAsString().CapitalizeFirstLetter()};"); + } + else if (property.QueryIsDefaultValueDifferentThanDefault()) { if (property.QueryIsString()) { @@ -269,10 +273,6 @@ public static void RegisterPropertyHelper(this IHandlebars handlebars) sb.Append($" = {property.QueryDefaultValueAsString()};"); } } - else if (property.QueryIsEnumPropertyWithDefaultValue()) - { - sb.Append($" = {property.Type.Name.CapitalizeFirstLetter()}.{property.QueryDefaultValueAsString().CapitalizeFirstLetter()};"); - } } writer.WriteSafeString(sb + Environment.NewLine); @@ -421,9 +421,29 @@ public static void RegisterPropertyHelper(this IHandlebars handlebars) if (property.IsDerived || property.IsDerivedUnion) { - if (isRedefinedPropertyInContext) + // UML redefinition semantics (UML 2.5 §9.9.7): a redefining property REPLACES its + // redefined parent for instances of the redefiningContext. In this POCO, that means + // the narrower property is the projected FILTER of its wider redefined parent — the + // wider view and the narrower view are structurally the same value, just typed + // differently. So: + // + // * If this property redefines a parent that is also emitted on this class, its + // body is a type-filter projection of that parent — no independent computation. + // * If this property does NOT redefine anything in the class hierarchy (i.e. it is + // the WIDEST derived property in its redefinition chain, holding its own OCL + // derivation body from the KerML/SysML XMI), its body reads storage via the + // Compute{Name}() extension in SysML2.NET/Extend/. + // + // Under this direction: + // * UML redefinition equivalence is guaranteed by construction — every wider view + // transitively resolves to the same Compute{Widest} storage read. + // * UML subsetting containment is likewise structural for redefinition chains. + // * The infinite-recursion hazard of the previous "wider view delegates to leaf, + // leaf reads a wider view" design is impossible: projection flows strictly + // narrower ← wider, never cycles. + if (TryFindRedefinedParentForProjection(property, classContext, out var redefinedParent)) { - sb.Append($"=> {GetRedefinedPropertyGetterImplementationForPoco(property, redefiningProperty, classContext)}"); + sb.Append($"=> {EmitProjectionExpressionForPoco(property, redefinedParent, classContext)}"); } else { @@ -486,7 +506,11 @@ public static void RegisterPropertyHelper(this IHandlebars handlebars) if ((!property.IsDerived || property.IsDerivedUnion) && !isRedefinedPropertyInContext) { - if (property.QueryIsDefaultValueDifferentThanDefault()) + if (property.QueryIsEnumPropertyWithDefaultValue()) + { + sb.Append($" = {property.Type.Name.CapitalizeFirstLetter()}.{property.QueryDefaultValueAsString().CapitalizeFirstLetter()};"); + } + else if (property.QueryIsDefaultValueDifferentThanDefault()) { if (property.QueryIsString()) { @@ -497,10 +521,6 @@ public static void RegisterPropertyHelper(this IHandlebars handlebars) sb.Append($" = {property.QueryDefaultValueAsString()};"); } } - else if (property.QueryIsEnumPropertyWithDefaultValue()) - { - sb.Append($" = {property.Type.Name.CapitalizeFirstLetter()}.{property.QueryDefaultValueAsString().CapitalizeFirstLetter()};"); - } } if (property.QueryPropertyIsPartOfNonDerivedCompositeAggregation()) @@ -1307,6 +1327,170 @@ private static string GetRedefinedPropertyGetterImplementationForDto(IProperty r : $"{redefinitionPropertyName};"; } + /// + /// For POCO redefinition-projection emission: locates the immediate parent property that the + /// given redefines, provided that parent is declared on the same + /// class as or one of its ancestors (i.e. is inherited into the + /// current POCO's feature set and therefore has a matching implementation to project from). + /// + /// The derived (or derived-union) property being emitted. + /// The class the POCO is being generated for. + /// The parent property when found; otherwise null. + /// + /// true when redefines a parent that is accessible from + /// — meaning the property's body must be emitted as a + /// type-filter projection of that parent (UML redefinition semantics: narrower view is a + /// filter of wider view). false when the property is the widest in its redefinition + /// chain and therefore must be backed by a Compute{Name}() extension that reads + /// storage. + /// + private static bool TryFindRedefinedParentForProjection(IProperty property, IClass classContext, out IProperty redefinedParent) + { + redefinedParent = null; + + foreach (var candidate in property.RedefinedProperty) + { + if (candidate?.Owner is IClass ownerClass && IsSelfOrAncestor(classContext, ownerClass)) + { + redefinedParent = candidate; + return true; + } + } + + return false; + } + + /// + /// Returns true when is + /// itself or a transitive ancestor via . + /// + /// The class whose ancestor chain is walked. + /// The class searched for. + /// true if is + /// itself or is reachable via transitive walks; + /// otherwise false. + private static bool IsSelfOrAncestor(IClass descendant, IClass candidateAncestor) + { + if (descendant.XmiId == candidateAncestor.XmiId) + { + return true; + } + + var visited = new HashSet { descendant.XmiId }; + var queue = new Queue(); + queue.Enqueue(descendant); + + while (queue.Count > 0) + { + var current = queue.Dequeue(); + + foreach (var super in current.SuperClass.Where(super => super != null && visited.Add(super.XmiId))) + { + if (super.XmiId == candidateAncestor.XmiId) + { + return true; + } + + queue.Enqueue(super); + } + } + + return false; + } + + /// + /// Emits the C# body of the getter for POCO emission when + /// is a derived redefinition of . + /// The body projects the parent's value through the appropriate type-filter / cardinality-cast + /// so that UML redefinition semantics — narrower value ⊆ wider value and reading + /// the wider view through its interface returns the redefinition's value — hold by + /// construction. + /// + /// The derived (narrower) property being emitted. + /// The wider parent property to project from. + /// The class the POCO is being generated for; used to compose the + /// exception subject-name for strict-single projections. + /// The projection expression, terminated with a trailing ;. + /// + /// Emitted shapes, by parent → this multiplicity and type-narrowing: + /// + /// Enumerable → enumerable, same type: [.. ((IOwner)this).parent]; + /// Enumerable → enumerable, narrower type: [.. ((IOwner)this).parent.OfType<INarrower>()]; + /// Enumerable → scalar (any type): ((IOwner)this).parent.OfType<INarrower>().SingleOrDefaultStrict(nameof(ClassContext)); + /// Scalar → scalar, same type: ((IOwner)this).parent; + /// Scalar → scalar, narrower type: ((IOwner)this).parent as INarrower; + /// Scalar → enumerable (rare): ((IOwner)this).parent != null ? [((IOwner)this).parent] : []; + /// + /// The strict-single projection uses 's + /// SingleOrDefaultStrict so that a malformed model carrying more than one value where + /// the redefined property declares [0..1] surfaces as a loud + /// MultiplicityViolationException rather than silently picking one. + /// + private static string EmitProjectionExpressionForPoco(IProperty property, IProperty redefinedParent, IClass classContext) + { + var parentAccess = BuildRedefinedParentAccessExpression(redefinedParent, classContext); + var narrowerTypeName = property.QueryCSharpTypeName(); + + if (property.Type is not IDataType) + { + narrowerTypeName = $"I{narrowerTypeName}"; + } + + var childIsEnumerable = property.QueryIsEnumerable(); + var parentIsEnumerable = redefinedParent.QueryIsEnumerable(); + var sameType = redefinedParent.Type?.XmiId == property.Type?.XmiId; + + if (parentIsEnumerable && childIsEnumerable) + { + return sameType + ? $"[.. {parentAccess}];" + : $"[.. {parentAccess}.OfType<{narrowerTypeName}>()];"; + } + + if (parentIsEnumerable && !childIsEnumerable) + { + // Wider list → narrower scalar. Enforce [0..1] with SingleOrDefaultStrict: two elements + // of the narrowed type surface as MultiplicityViolationException. + return sameType + ? $"{parentAccess}.SingleOrDefaultStrict<{narrowerTypeName}>(nameof({classContext.Name}));" + : $"{parentAccess}.OfType<{narrowerTypeName}>().SingleOrDefaultStrict(nameof({classContext.Name}));"; + } + + if (!parentIsEnumerable && !childIsEnumerable) + { + return sameType + ? $"{parentAccess};" + : $"{parentAccess} as {narrowerTypeName};"; + } + + // Scalar → enumerable (rare in redefinition chains; kept for completeness). + return $"{parentAccess} != null ? [{parentAccess}] : [];"; + } + + /// + /// Composes the C# expression that accesses from within + /// the POCO body of . The parent is always reached through its + /// declaring interface cast (e.g. ((IFeature)this).type) because every derived + /// property in a redefinition chain is emitted as an explicit-interface implementation on the + /// POCO — including the widest, which is either owned by + /// itself or inherited from an ancestor. + /// + /// The parent property whose value is being read. + /// The class the POCO is being generated for. + /// The parent-access expression, e.g. ((IFeature)this).type. + private static string BuildRedefinedParentAccessExpression(IProperty redefinedParent, IClass classContext) + { + var parentOwner = (INamedElement)redefinedParent.Owner; + var parentOwnerNamespace = Extensions.NamedElementExtensions.QueryNamespace(parentOwner); + var contextNamespace = Extensions.NamedElementExtensions.QueryNamespace(classContext); + + var qualifiedInterface = parentOwnerNamespace == contextNamespace + ? $"I{parentOwner.Name}" + : $"SysML2.NET.Core.POCO.{parentOwnerNamespace}.I{parentOwner.Name}"; + + return $"(({qualifiedInterface})this).{redefinedParent.QueryPropertyNameBasedOnUmlProperties()}"; + } + /// /// Gets the getter implementation for an that has been redefined, for POCO generation /// diff --git a/SysML2.NET.CodeGenerator/SysML2.NET.CodeGenerator.csproj b/SysML2.NET.CodeGenerator/SysML2.NET.CodeGenerator.csproj index 62ec1964..affa35f1 100644 --- a/SysML2.NET.CodeGenerator/SysML2.NET.CodeGenerator.csproj +++ b/SysML2.NET.CodeGenerator/SysML2.NET.CodeGenerator.csproj @@ -21,8 +21,8 @@ - - + + diff --git a/SysML2.NET.CodeGenerator/Templates/Uml/core-poco-class-uml-template.hbs b/SysML2.NET.CodeGenerator/Templates/Uml/core-poco-class-uml-template.hbs index da5e5b45..2893dde8 100644 --- a/SysML2.NET.CodeGenerator/Templates/Uml/core-poco-class-uml-template.hbs +++ b/SysML2.NET.CodeGenerator/Templates/Uml/core-poco-class-uml-template.hbs @@ -33,6 +33,7 @@ namespace SysML2.NET.Core.POCO.{{ #NamedElement.WriteFullyQualifiedNameSpace thi {{ #Class.WriteNameSpaces this POCO}} using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; {{ #Documentation this }} {{ #Decorator.WriteClassAttribute this }} diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/AcceptActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/AcceptActionUsageExtensions.cs index 067c1cc0..49a18cf4 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/AcceptActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/AcceptActionUsageExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.AcceptActionUsage ToDto(this Core.POCO.Sy dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ActionUsageExtensions.cs index 4c8bfcb1..9c8f24e7 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ActionUsageExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.ActionUsage ToDto(this Core.POCO.Systems. dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/AnalysisCaseUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/AnalysisCaseUsageExtensions.cs index 930a97af..9b71d668 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/AnalysisCaseUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/AnalysisCaseUsageExtensions.cs @@ -212,7 +212,6 @@ public static Core.DTO.Systems.AnalysisCases.AnalysisCaseUsage ToDto(this Core.P if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.actorParameter = poco.actorParameter.Select(x => x.Id).ToList(); dto.analysisCaseDefinition = poco.analysisCaseDefinition?.Id; dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); @@ -269,7 +268,6 @@ public static Core.DTO.Systems.AnalysisCases.AnalysisCaseUsage ToDto(this Core.P dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); dto.objectiveRequirement = poco.objectiveRequirement?.Id; - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/AssignmentActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/AssignmentActionUsageExtensions.cs index 219dec21..22c37d88 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/AssignmentActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/AssignmentActionUsageExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.AssignmentActionUsage ToDto(this Core.POC dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/CalculationUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/CalculationUsageExtensions.cs index efdc36ba..6a00da5f 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/CalculationUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/CalculationUsageExtensions.cs @@ -212,7 +212,6 @@ public static Core.DTO.Systems.Calculations.CalculationUsage ToDto(this Core.POC if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.calculationDefinition = poco.calculationDefinition?.Id; dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); dto.crossFeature = poco.crossFeature?.Id; @@ -267,7 +266,6 @@ public static Core.DTO.Systems.Calculations.CalculationUsage ToDto(this Core.POC dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/CaseUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/CaseUsageExtensions.cs index c6508a7c..96da82d7 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/CaseUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/CaseUsageExtensions.cs @@ -212,7 +212,6 @@ public static Core.DTO.Systems.Cases.CaseUsage ToDto(this Core.POCO.Systems.Case if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.actorParameter = poco.actorParameter.Select(x => x.Id).ToList(); dto.caseDefinition = poco.caseDefinition?.Id; dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); @@ -269,7 +268,6 @@ public static Core.DTO.Systems.Cases.CaseUsage ToDto(this Core.POCO.Systems.Case dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); dto.objectiveRequirement = poco.objectiveRequirement?.Id; - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/DecisionNodeExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/DecisionNodeExtensions.cs index d0f6a60e..bd59effb 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/DecisionNodeExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/DecisionNodeExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.DecisionNode ToDto(this Core.POCO.Systems dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ExhibitStateUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ExhibitStateUsageExtensions.cs index bd48b760..81b16d2f 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ExhibitStateUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ExhibitStateUsageExtensions.cs @@ -271,7 +271,6 @@ public static Core.DTO.Systems.States.ExhibitStateUsage ToDto(this Core.POCO.Sys dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/FlowUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/FlowUsageExtensions.cs index abed88dd..96b056bd 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/FlowUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/FlowUsageExtensions.cs @@ -245,7 +245,6 @@ public static Core.DTO.Systems.Flows.FlowUsage ToDto(this Core.POCO.Systems.Flow if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); dto.connectorEnd = poco.connectorEnd.Select(x => x.Id).ToList(); dto.crossFeature = poco.crossFeature?.Id; @@ -301,7 +300,6 @@ public static Core.DTO.Systems.Flows.FlowUsage ToDto(this Core.POCO.Systems.Flow dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForLoopActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForLoopActionUsageExtensions.cs index bf849fa1..609f8474 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForLoopActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForLoopActionUsageExtensions.cs @@ -267,7 +267,6 @@ public static Core.DTO.Systems.Actions.ForLoopActionUsage ToDto(this Core.POCO.S dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForkNodeExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForkNodeExtensions.cs index 11a92c00..cb5857c9 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForkNodeExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/ForkNodeExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.ForkNode ToDto(this Core.POCO.Systems.Act dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/IfActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/IfActionUsageExtensions.cs index b684f0f5..75d40be0 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/IfActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/IfActionUsageExtensions.cs @@ -267,7 +267,6 @@ public static Core.DTO.Systems.Actions.IfActionUsage ToDto(this Core.POCO.System dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/IncludeUseCaseUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/IncludeUseCaseUsageExtensions.cs index 38ab996c..416ad54a 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/IncludeUseCaseUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/IncludeUseCaseUsageExtensions.cs @@ -212,7 +212,6 @@ public static Core.DTO.Systems.UseCases.IncludeUseCaseUsage ToDto(this Core.POCO if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.actorParameter = poco.actorParameter.Select(x => x.Id).ToList(); dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); dto.crossFeature = poco.crossFeature?.Id; @@ -269,7 +268,6 @@ public static Core.DTO.Systems.UseCases.IncludeUseCaseUsage ToDto(this Core.POCO dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); dto.objectiveRequirement = poco.objectiveRequirement?.Id; - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/JoinNodeExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/JoinNodeExtensions.cs index 37144a7d..8e969f19 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/JoinNodeExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/JoinNodeExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.JoinNode ToDto(this Core.POCO.Systems.Act dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/MergeNodeExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/MergeNodeExtensions.cs index f57eaeb4..3519fcda 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/MergeNodeExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/MergeNodeExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.MergeNode ToDto(this Core.POCO.Systems.Ac dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/MetadataUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/MetadataUsageExtensions.cs index cb387f4c..7c633ad9 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/MetadataUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/MetadataUsageExtensions.cs @@ -235,7 +235,6 @@ public static Core.DTO.Systems.Metadata.MetadataUsage ToDto(this Core.POCO.Syste dto.isConjugated = poco.isConjugated; dto.isLibraryElement = poco.isLibraryElement; dto.isReference = poco.isReference; - dto.itemDefinition = poco.itemDefinition.Select(x => x.Id).ToList(); dto.mayTimeVary = poco.mayTimeVary; dto.member = poco.member.Select(x => x.Id).ToList(); dto.membership = poco.membership.Select(x => x.Id).ToList(); diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/PerformActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/PerformActionUsageExtensions.cs index cfe92409..8b877ee5 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/PerformActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/PerformActionUsageExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.PerformActionUsage ToDto(this Core.POCO.S dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/SendActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/SendActionUsageExtensions.cs index f6554732..89ed77a3 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/SendActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/SendActionUsageExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.SendActionUsage ToDto(this Core.POCO.Syst dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; @@ -297,7 +296,7 @@ public static Core.DTO.Systems.Actions.SendActionUsage ToDto(this Core.POCO.Syst dto.owningType = poco.owningType?.Id; dto.owningUsage = poco.owningUsage?.Id; dto.parameter = poco.parameter.Select(x => x.Id).ToList(); - dto.payloadArgument = poco.payloadArgument.Id; + dto.payloadArgument = poco.payloadArgument?.Id; dto.qualifiedName = poco.qualifiedName; dto.receiverArgument = poco.receiverArgument?.Id; dto.senderArgument = poco.senderArgument?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/StateUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/StateUsageExtensions.cs index 7843f13d..16684be0 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/StateUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/StateUsageExtensions.cs @@ -270,7 +270,6 @@ public static Core.DTO.Systems.States.StateUsage ToDto(this Core.POCO.Systems.St dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/SuccessionFlowUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/SuccessionFlowUsageExtensions.cs index cb37a8c8..124fcc44 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/SuccessionFlowUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/SuccessionFlowUsageExtensions.cs @@ -245,7 +245,6 @@ public static Core.DTO.Systems.Flows.SuccessionFlowUsage ToDto(this Core.POCO.Sy if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); dto.connectorEnd = poco.connectorEnd.Select(x => x.Id).ToList(); dto.crossFeature = poco.crossFeature?.Id; @@ -301,7 +300,6 @@ public static Core.DTO.Systems.Flows.SuccessionFlowUsage ToDto(this Core.POCO.Sy dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/TerminateActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/TerminateActionUsageExtensions.cs index 5fd1806f..65f6079b 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/TerminateActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/TerminateActionUsageExtensions.cs @@ -265,7 +265,6 @@ public static Core.DTO.Systems.Actions.TerminateActionUsage ToDto(this Core.POCO dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/TransitionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/TransitionUsageExtensions.cs index a619577f..a9cd5cf2 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/TransitionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/TransitionUsageExtensions.cs @@ -267,7 +267,6 @@ public static Core.DTO.Systems.States.TransitionUsage ToDto(this Core.POCO.Syste dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/UseCaseUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/UseCaseUsageExtensions.cs index 1e43b1bb..f22b9325 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/UseCaseUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/UseCaseUsageExtensions.cs @@ -212,7 +212,6 @@ public static Core.DTO.Systems.UseCases.UseCaseUsage ToDto(this Core.POCO.System if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.actorParameter = poco.actorParameter.Select(x => x.Id).ToList(); dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); dto.crossFeature = poco.crossFeature?.Id; @@ -269,7 +268,6 @@ public static Core.DTO.Systems.UseCases.UseCaseUsage ToDto(this Core.POCO.System dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); dto.objectiveRequirement = poco.objectiveRequirement?.Id; - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/VerificationCaseUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/VerificationCaseUsageExtensions.cs index ef08957f..db976f6d 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/VerificationCaseUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/VerificationCaseUsageExtensions.cs @@ -212,7 +212,6 @@ public static Core.DTO.Systems.VerificationCases.VerificationCaseUsage ToDto(thi if (includeDerivedProperties) { - dto.actionDefinition = poco.actionDefinition.Select(x => x.Id).ToList(); dto.actorParameter = poco.actorParameter.Select(x => x.Id).ToList(); dto.caseDefinition = poco.caseDefinition?.Id; dto.chainingFeature = poco.chainingFeature.Select(x => x.Id).ToList(); @@ -269,7 +268,6 @@ public static Core.DTO.Systems.VerificationCases.VerificationCaseUsage ToDto(thi dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); dto.objectiveRequirement = poco.objectiveRequirement?.Id; - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Dal/Core/AutoGenPocoExtension/WhileLoopActionUsageExtensions.cs b/SysML2.NET.Dal/Core/AutoGenPocoExtension/WhileLoopActionUsageExtensions.cs index 998801b6..fe64221a 100644 --- a/SysML2.NET.Dal/Core/AutoGenPocoExtension/WhileLoopActionUsageExtensions.cs +++ b/SysML2.NET.Dal/Core/AutoGenPocoExtension/WhileLoopActionUsageExtensions.cs @@ -266,7 +266,6 @@ public static Core.DTO.Systems.Actions.WhileLoopActionUsage ToDto(this Core.POCO dto.nestedVerificationCase = poco.nestedVerificationCase.Select(x => x.Id).ToList(); dto.nestedView = poco.nestedView.Select(x => x.Id).ToList(); dto.nestedViewpoint = poco.nestedViewpoint.Select(x => x.Id).ToList(); - dto.occurrenceDefinition = poco.occurrenceDefinition.Select(x => x.Id).ToList(); dto.output = poco.output.Select(x => x.Id).ToList(); dto.ownedAnnotation = poco.ownedAnnotation.Select(x => x.Id).ToList(); dto.ownedConjugator = poco.ownedConjugator?.Id; diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AcceptActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AcceptActionUsageDeSerializer.cs index 6c259e45..5523f8e6 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AcceptActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AcceptActionUsageDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the AcceptActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the AcceptActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ActionUsageDeSerializer.cs index e912ad90..fcd14c32 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ActionUsageDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the ActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the ActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AnalysisCaseUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AnalysisCaseUsageDeSerializer.cs index 1e717234..b5ec9e08 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AnalysisCaseUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AnalysisCaseUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static IAnalysisCaseUsage DeSerialize(JsonElement jsonElement, Serializ /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.AnalysisCases.AnalysisCaseUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the AnalysisCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("actorParameter"u8, out var actorParameterProperty)) { foreach (var arrayItem in actorParameterProperty.EnumerateArray()) @@ -1435,26 +1415,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the objectiveRequirement Json property was not found in the AnalysisCaseUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the AnalysisCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AssignmentActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AssignmentActionUsageDeSerializer.cs index 924a3187..66020f98 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AssignmentActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/AssignmentActionUsageDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the AssignmentActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the AssignmentActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CalculationUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CalculationUsageDeSerializer.cs index 6ed308f7..b21652de 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CalculationUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CalculationUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static ICalculationUsage DeSerialize(JsonElement jsonElement, Serializa /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.Calculations.CalculationUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the CalculationUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("aliasIds"u8, out var aliasIdsProperty)) { foreach (var arrayItem in aliasIdsProperty.EnumerateArray()) @@ -1391,26 +1371,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the CalculationUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the CalculationUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CaseUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CaseUsageDeSerializer.cs index 03120ebb..c34e4ddb 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CaseUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/CaseUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static ICaseUsage DeSerialize(JsonElement jsonElement, SerializationMod /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.Cases.CaseUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the CaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("actorParameter"u8, out var actorParameterProperty)) { foreach (var arrayItem in actorParameterProperty.EnumerateArray()) @@ -1435,26 +1415,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the objectiveRequirement Json property was not found in the CaseUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the CaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/DecisionNodeDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/DecisionNodeDeSerializer.cs index 72de0317..c45417c1 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/DecisionNodeDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/DecisionNodeDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the DecisionNode: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the DecisionNode: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ExhibitStateUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ExhibitStateUsageDeSerializer.cs index b8298796..8970fbbb 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ExhibitStateUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ExhibitStateUsageDeSerializer.cs @@ -1444,26 +1444,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the ExhibitStateUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the ExhibitStateUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/FlowUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/FlowUsageDeSerializer.cs index 3ac00bbe..96a13be1 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/FlowUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/FlowUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static IFlowUsage DeSerialize(JsonElement jsonElement, SerializationMod /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.Flows.FlowUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the FlowUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("aliasIds"u8, out var aliasIdsProperty)) { foreach (var arrayItem in aliasIdsProperty.EnumerateArray()) @@ -1431,26 +1411,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the FlowUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the FlowUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForLoopActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForLoopActionUsageDeSerializer.cs index 93c4aa5c..5eac0005 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForLoopActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForLoopActionUsageDeSerializer.cs @@ -1405,26 +1405,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the ForLoopActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the ForLoopActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForkNodeDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForkNodeDeSerializer.cs index f911cbda..b1e92f0e 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForkNodeDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/ForkNodeDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the ForkNode: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the ForkNode: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IfActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IfActionUsageDeSerializer.cs index e8c5a6cf..40cc3a2f 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IfActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IfActionUsageDeSerializer.cs @@ -1404,26 +1404,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the IfActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the IfActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IncludeUseCaseUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IncludeUseCaseUsageDeSerializer.cs index dcd9d599..a900b894 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IncludeUseCaseUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/IncludeUseCaseUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static IIncludeUseCaseUsage DeSerialize(JsonElement jsonElement, Serial /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.UseCases.IncludeUseCaseUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the IncludeUseCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("actorParameter"u8, out var actorParameterProperty)) { foreach (var arrayItem in actorParameterProperty.EnumerateArray()) @@ -1431,26 +1411,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the objectiveRequirement Json property was not found in the IncludeUseCaseUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the IncludeUseCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/JoinNodeDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/JoinNodeDeSerializer.cs index 1b55be06..30ebfc2e 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/JoinNodeDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/JoinNodeDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the JoinNode: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the JoinNode: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MergeNodeDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MergeNodeDeSerializer.cs index 5c4de455..ccf17d1d 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MergeNodeDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MergeNodeDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the MergeNode: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the MergeNode: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MetadataUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MetadataUsageDeSerializer.cs index 7b88f4b8..8fdc663f 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MetadataUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/MetadataUsageDeSerializer.cs @@ -770,26 +770,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the isVariation Json property was not found in the MetadataUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("itemDefinition"u8, out var itemDefinitionProperty)) - { - foreach (var arrayItem in itemDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var itemDefinitionExternalIdProperty)) - { - var propertyValue = itemDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.itemDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the itemDefinition Json property was not found in the MetadataUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("mayTimeVary"u8, out var mayTimeVaryProperty)) { if (mayTimeVaryProperty.ValueKind != JsonValueKind.Null) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/PerformActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/PerformActionUsageDeSerializer.cs index 7308f303..510d8f96 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/PerformActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/PerformActionUsageDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the PerformActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the PerformActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SendActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SendActionUsageDeSerializer.cs index 91ac55b1..575c2078 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SendActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SendActionUsageDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the SendActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the SendActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/StateUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/StateUsageDeSerializer.cs index 20062a70..8e6fb349 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/StateUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/StateUsageDeSerializer.cs @@ -1419,26 +1419,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the StateUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the StateUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SuccessionFlowUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SuccessionFlowUsageDeSerializer.cs index da5e6cb4..f85d4fb5 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SuccessionFlowUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/SuccessionFlowUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static ISuccessionFlowUsage DeSerialize(JsonElement jsonElement, Serial /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.Flows.SuccessionFlowUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the SuccessionFlowUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("aliasIds"u8, out var aliasIdsProperty)) { foreach (var arrayItem in aliasIdsProperty.EnumerateArray()) @@ -1431,26 +1411,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the SuccessionFlowUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the SuccessionFlowUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TerminateActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TerminateActionUsageDeSerializer.cs index 58dcf846..bda12c27 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TerminateActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TerminateActionUsageDeSerializer.cs @@ -1355,26 +1355,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the TerminateActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the TerminateActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TransitionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TransitionUsageDeSerializer.cs index 939879bf..a176d053 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TransitionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/TransitionUsageDeSerializer.cs @@ -1395,26 +1395,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the TransitionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the TransitionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/UseCaseUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/UseCaseUsageDeSerializer.cs index c8d79789..a11a7132 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/UseCaseUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/UseCaseUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static IUseCaseUsage DeSerialize(JsonElement jsonElement, Serialization /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.UseCases.UseCaseUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the UseCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("actorParameter"u8, out var actorParameterProperty)) { foreach (var arrayItem in actorParameterProperty.EnumerateArray()) @@ -1431,26 +1411,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the objectiveRequirement Json property was not found in the UseCaseUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the UseCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/VerificationCaseUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/VerificationCaseUsageDeSerializer.cs index 069f6496..c8c93610 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/VerificationCaseUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/VerificationCaseUsageDeSerializer.cs @@ -115,26 +115,6 @@ internal static IVerificationCaseUsage DeSerialize(JsonElement jsonElement, Seri /// private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO.Systems.VerificationCases.VerificationCaseUsage dtoInstance, JsonElement jsonElement, ILogger logger) { - if (jsonElement.TryGetProperty("actionDefinition"u8, out var actionDefinitionProperty)) - { - foreach (var arrayItem in actionDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var actionDefinitionExternalIdProperty)) - { - var propertyValue = actionDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.actionDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the actionDefinition Json property was not found in the VerificationCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("actorParameter"u8, out var actorParameterProperty)) { foreach (var arrayItem in actorParameterProperty.EnumerateArray()) @@ -1435,26 +1415,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the objectiveRequirement Json property was not found in the VerificationCaseUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the VerificationCaseUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/WhileLoopActionUsageDeSerializer.cs b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/WhileLoopActionUsageDeSerializer.cs index 66347b1a..7f6d2143 100644 --- a/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/WhileLoopActionUsageDeSerializer.cs +++ b/SysML2.NET.Serializer.Json/Core/AutoGenDeSerializer/WhileLoopActionUsageDeSerializer.cs @@ -1380,26 +1380,6 @@ private static void DeserializeDtoIncludingDerivedProperties(SysML2.NET.Core.DTO logger.LogDebug("the nestedViewpoint Json property was not found in the WhileLoopActionUsage: {Id}", dtoInstance.Id); } - if (jsonElement.TryGetProperty("occurrenceDefinition"u8, out var occurrenceDefinitionProperty)) - { - foreach (var arrayItem in occurrenceDefinitionProperty.EnumerateArray()) - { - if (arrayItem.TryGetProperty("@id"u8, out var occurrenceDefinitionExternalIdProperty)) - { - var propertyValue = occurrenceDefinitionExternalIdProperty.GetString(); - - if (propertyValue != null) - { - dtoInstance.occurrenceDefinition.Add(Guid.Parse(propertyValue)); - } - } - } - } - else - { - logger.LogDebug("the occurrenceDefinition Json property was not found in the WhileLoopActionUsage: {Id}", dtoInstance.Id); - } - if (jsonElement.TryGetProperty("output"u8, out var outputProperty)) { foreach (var arrayItem in outputProperty.EnumerateArray()) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AcceptActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AcceptActionUsageWriter.cs index a8b9fb1b..1a79e294 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AcceptActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AcceptActionUsageWriter.cs @@ -913,17 +913,6 @@ public override void Write(XmlWriter xmlWriter, IAcceptActionUsage poco, string } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2155,17 +2144,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IAcceptActionUsage po } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ActionUsageWriter.cs index c7b3a4ef..ce51d097 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ActionUsageWriter.cs @@ -889,17 +889,6 @@ public override void Write(XmlWriter xmlWriter, IActionUsage poco, string elemen } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2074,17 +2063,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IActionUsage poco, st } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AnalysisCaseUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AnalysisCaseUsageWriter.cs index bdd2a4fc..018f115f 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AnalysisCaseUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AnalysisCaseUsageWriter.cs @@ -409,17 +409,6 @@ public override void Write(XmlWriter xmlWriter, IAnalysisCaseUsage poco, string // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -970,17 +959,6 @@ public override void Write(XmlWriter xmlWriter, IAnalysisCaseUsage poco, string } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1708,17 +1686,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IAnalysisCaseUsage po // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -2269,17 +2236,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IAnalysisCaseUsage po } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AssignmentActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AssignmentActionUsageWriter.cs index 0ea59a98..693e4d67 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AssignmentActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/AssignmentActionUsageWriter.cs @@ -913,17 +913,6 @@ public override void Write(XmlWriter xmlWriter, IAssignmentActionUsage poco, str } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2155,17 +2144,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IAssignmentActionUsag } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CalculationUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CalculationUsageWriter.cs index 39111e63..f0012fd7 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CalculationUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CalculationUsageWriter.cs @@ -385,17 +385,6 @@ public override void Write(XmlWriter xmlWriter, ICalculationUsage poco, string e // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.calculationDefinition != null) @@ -924,17 +913,6 @@ public override void Write(XmlWriter xmlWriter, ICalculationUsage poco, string e } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1616,17 +1594,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ICalculationUsage poc // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.calculationDefinition != null) @@ -2155,17 +2122,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ICalculationUsage poc } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CaseUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CaseUsageWriter.cs index e0f52992..540c99ef 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CaseUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/CaseUsageWriter.cs @@ -401,17 +401,6 @@ public override void Write(XmlWriter xmlWriter, ICaseUsage poco, string elementN // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -962,17 +951,6 @@ public override void Write(XmlWriter xmlWriter, ICaseUsage poco, string elementN } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1681,17 +1659,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ICaseUsage poco, stri // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -2242,17 +2209,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ICaseUsage poco, stri } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/DecisionNodeWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/DecisionNodeWriter.cs index 34b0a205..4853c325 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/DecisionNodeWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/DecisionNodeWriter.cs @@ -889,17 +889,6 @@ public override void Write(XmlWriter xmlWriter, IDecisionNode poco, string eleme } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2074,17 +2063,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IDecisionNode poco, s } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ExhibitStateUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ExhibitStateUsageWriter.cs index b957fdb3..b5ae6eed 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ExhibitStateUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ExhibitStateUsageWriter.cs @@ -959,17 +959,6 @@ public override void Write(XmlWriter xmlWriter, IExhibitStateUsage poco, string } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2225,17 +2214,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IExhibitStateUsage po } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/FlowUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/FlowUsageWriter.cs index 80cae09d..be563cd2 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/FlowUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/FlowUsageWriter.cs @@ -409,17 +409,6 @@ public override void Write(XmlWriter xmlWriter, IFlowUsage poco, string elementN // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.chainingFeature != null) @@ -970,17 +959,6 @@ public override void Write(XmlWriter xmlWriter, IFlowUsage poco, string elementN } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1757,17 +1735,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IFlowUsage poco, stri // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.chainingFeature != null) @@ -2318,17 +2285,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IFlowUsage poco, stri } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForLoopActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForLoopActionUsageWriter.cs index a6c3ca64..49598168 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForLoopActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForLoopActionUsageWriter.cs @@ -935,17 +935,6 @@ public override void Write(XmlWriter xmlWriter, IForLoopActionUsage poco, string } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2177,17 +2166,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IForLoopActionUsage p } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForkNodeWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForkNodeWriter.cs index 31f7a0d2..5f4db778 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForkNodeWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/ForkNodeWriter.cs @@ -889,17 +889,6 @@ public override void Write(XmlWriter xmlWriter, IForkNode poco, string elementNa } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2074,17 +2063,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IForkNode poco, strin } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IfActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IfActionUsageWriter.cs index e9c85afc..5225af0d 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IfActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IfActionUsageWriter.cs @@ -935,17 +935,6 @@ public override void Write(XmlWriter xmlWriter, IIfActionUsage poco, string elem } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2177,17 +2166,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IIfActionUsage poco, } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IncludeUseCaseUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IncludeUseCaseUsageWriter.cs index 76f9ba99..b587dd01 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IncludeUseCaseUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/IncludeUseCaseUsageWriter.cs @@ -409,17 +409,6 @@ public override void Write(XmlWriter xmlWriter, IIncludeUseCaseUsage poco, strin // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -970,17 +959,6 @@ public override void Write(XmlWriter xmlWriter, IIncludeUseCaseUsage poco, strin } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1719,17 +1697,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IIncludeUseCaseUsage // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -2280,17 +2247,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IIncludeUseCaseUsage } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/JoinNodeWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/JoinNodeWriter.cs index c685418d..a135579b 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/JoinNodeWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/JoinNodeWriter.cs @@ -889,17 +889,6 @@ public override void Write(XmlWriter xmlWriter, IJoinNode poco, string elementNa } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2074,17 +2063,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IJoinNode poco, strin } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MergeNodeWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MergeNodeWriter.cs index a0aba368..98da2f3e 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MergeNodeWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MergeNodeWriter.cs @@ -889,17 +889,6 @@ public override void Write(XmlWriter xmlWriter, IMergeNode poco, string elementN } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2074,17 +2063,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IMergeNode poco, stri } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MetadataUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MetadataUsageWriter.cs index 782ee2c8..acd4e146 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MetadataUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/MetadataUsageWriter.cs @@ -589,17 +589,6 @@ public override void Write(XmlWriter xmlWriter, IMetadataUsage poco, string elem } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.itemDefinition != null) - { - foreach (var item in poco.itemDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "itemDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.member != null) @@ -1826,17 +1815,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IMetadataUsage poco, } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.itemDefinition != null) - { - foreach (var item in poco.itemDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "itemDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.member != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/PerformActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/PerformActionUsageWriter.cs index 67df8081..3a4cebcc 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/PerformActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/PerformActionUsageWriter.cs @@ -897,17 +897,6 @@ public override void Write(XmlWriter xmlWriter, IPerformActionUsage poco, string } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2101,17 +2090,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IPerformActionUsage p } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SendActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SendActionUsageWriter.cs index a559d810..f803f214 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SendActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SendActionUsageWriter.cs @@ -913,17 +913,6 @@ public override void Write(XmlWriter xmlWriter, ISendActionUsage poco, string el } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2155,17 +2144,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ISendActionUsage poco } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/StateUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/StateUsageWriter.cs index 38b46748..bae89cc7 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/StateUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/StateUsageWriter.cs @@ -940,17 +940,6 @@ public override void Write(XmlWriter xmlWriter, IStateUsage poco, string element } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2187,17 +2176,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IStateUsage poco, str } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SuccessionFlowUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SuccessionFlowUsageWriter.cs index b09219b1..9c6f73ac 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SuccessionFlowUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/SuccessionFlowUsageWriter.cs @@ -409,17 +409,6 @@ public override void Write(XmlWriter xmlWriter, ISuccessionFlowUsage poco, strin // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.chainingFeature != null) @@ -970,17 +959,6 @@ public override void Write(XmlWriter xmlWriter, ISuccessionFlowUsage poco, strin } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1757,17 +1735,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ISuccessionFlowUsage // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.chainingFeature != null) @@ -2318,17 +2285,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ISuccessionFlowUsage } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TerminateActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TerminateActionUsageWriter.cs index 2ed2b07c..9a177099 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TerminateActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TerminateActionUsageWriter.cs @@ -897,17 +897,6 @@ public override void Write(XmlWriter xmlWriter, ITerminateActionUsage poco, stri } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2101,17 +2090,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ITerminateActionUsage } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TransitionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TransitionUsageWriter.cs index 54929bc4..95e5ca3f 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TransitionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/TransitionUsageWriter.cs @@ -936,17 +936,6 @@ public override void Write(XmlWriter xmlWriter, ITransitionUsage poco, string el } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2211,17 +2200,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, ITransitionUsage poco } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/UseCaseUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/UseCaseUsageWriter.cs index 12267c7a..b1c59151 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/UseCaseUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/UseCaseUsageWriter.cs @@ -401,17 +401,6 @@ public override void Write(XmlWriter xmlWriter, IUseCaseUsage poco, string eleme // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -962,17 +951,6 @@ public override void Write(XmlWriter xmlWriter, IUseCaseUsage poco, string eleme } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1692,17 +1670,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IUseCaseUsage poco, s // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -2253,17 +2220,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IUseCaseUsage poco, s } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/VerificationCaseUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/VerificationCaseUsageWriter.cs index 0168cdda..7dfa578a 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/VerificationCaseUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/VerificationCaseUsageWriter.cs @@ -409,17 +409,6 @@ public override void Write(XmlWriter xmlWriter, IVerificationCaseUsage poco, str // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -970,17 +959,6 @@ public override void Write(XmlWriter xmlWriter, IVerificationCaseUsage poco, str } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -1719,17 +1697,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IVerificationCaseUsag // Reference/containment properties as child elements (sorted alphabetically) - if (writerOptions.IncludeDerivedProperties) - { - if (poco.actionDefinition != null) - { - foreach (var item in poco.actionDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "actionDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.actorParameter != null) @@ -2280,17 +2247,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IVerificationCaseUsag } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/WhileLoopActionUsageWriter.cs b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/WhileLoopActionUsageWriter.cs index fb9cbe18..12345514 100644 --- a/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/WhileLoopActionUsageWriter.cs +++ b/SysML2.NET.Serializer.Xmi/Writers/AutoGenWriters/WhileLoopActionUsageWriter.cs @@ -924,17 +924,6 @@ public override void Write(XmlWriter xmlWriter, IWhileLoopActionUsage poco, stri } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - this.XmiDataWriterFacade.WriteReferenceElement(xmlWriter, (IData)item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) @@ -2166,17 +2155,6 @@ public override async Task WriteAsync(XmlWriter xmlWriter, IWhileLoopActionUsage } } - if (writerOptions.IncludeDerivedProperties) - { - if (poco.occurrenceDefinition != null) - { - foreach (var item in poco.occurrenceDefinition) - { - await this.XmiDataWriterFacade.WriteReferenceElementAsync(xmlWriter, item, "occurrenceDefinition", elementOriginMap, currentFileUri); - } - } - } - if (writerOptions.IncludeDerivedProperties) { if (poco.output != null) diff --git a/SysML2.NET.Tests/Extend/AnalysisCaseUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/AnalysisCaseUsageExtensionsTestFixture.cs index 26b8f664..e4462ca2 100644 --- a/SysML2.NET.Tests/Extend/AnalysisCaseUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/AnalysisCaseUsageExtensionsTestFixture.cs @@ -27,6 +27,7 @@ namespace SysML2.NET.Tests.Extend using SysML2.NET.Core.POCO.Core.Features; using SysML2.NET.Core.POCO.Kernel.Functions; using SysML2.NET.Core.POCO.Systems.AnalysisCases; + using SysML2.NET.Core.POCO.Systems.Cases; using SysML2.NET.Core.POCO.Systems.DefinitionAndUsage; using SysML2.NET.Exceptions; using SysML2.NET.Extensions; @@ -37,12 +38,33 @@ public class AnalysisCaseUsageExtensionsTestFixture [Test] public void VerifyComputeAnalysisCaseDefinition() { + // Null subject: guard clause throws ArgumentNullException. Assert.That(() => ((IAnalysisCaseUsage)null).ComputeAnalysisCaseDefinition(), Throws.TypeOf()); var analysisCaseUsage = new AnalysisCaseUsage(); - // Empty case: no FeatureTyping whose Type is an IAnalysisCaseDefinition → null. - Assert.That(analysisCaseUsage.ComputeAnalysisCaseDefinition, Throws.TypeOf()); + // Empty case: no FeatureTyping owned by the subject → null. + Assert.That(analysisCaseUsage.ComputeAnalysisCaseDefinition(), Is.Null); + + // Discrimination: FeatureTyping targets a plain CaseDefinition, which is a superclass of + // IAnalysisCaseDefinition and therefore NOT an IAnalysisCaseDefinition — filtered out by + // OfType() → still null. + var caseDefinition = new CaseDefinition(); + analysisCaseUsage.AssignOwnership(new FeatureTyping { Type = caseDefinition }); + Assert.That(analysisCaseUsage.ComputeAnalysisCaseDefinition(), Is.Null); + + // Populated case: adding a FeatureTyping whose Type is an IAnalysisCaseDefinition → returned. + // The prior non-matching CaseDefinition typing must continue to be filtered out. + var analysisCaseDefinition = new AnalysisCaseDefinition(); + analysisCaseUsage.AssignOwnership(new FeatureTyping { Type = analysisCaseDefinition }); + Assert.That(analysisCaseUsage.ComputeAnalysisCaseDefinition(), Is.SameAs(analysisCaseDefinition)); + + // [0..1] upper-bound violation: two FeatureTypings each targeting an IAnalysisCaseDefinition + // → SingleOrDefaultStrict throws MultiplicityViolationException per the derived property's + // [0..1] multiplicity. + var secondAnalysisCaseDefinition = new AnalysisCaseDefinition(); + analysisCaseUsage.AssignOwnership(new FeatureTyping { Type = secondAnalysisCaseDefinition }); + Assert.That(() => analysisCaseUsage.ComputeAnalysisCaseDefinition(), Throws.TypeOf()); } [Test] diff --git a/SysML2.NET.Tests/Extend/CalculationUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/CalculationUsageExtensionsTestFixture.cs index 5e8efdb8..7cffc293 100644 --- a/SysML2.NET.Tests/Extend/CalculationUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/CalculationUsageExtensionsTestFixture.cs @@ -45,7 +45,7 @@ public void VerifyComputeCalculationDefinition() var emptyCalculationUsage = new CalculationUsage(); // No FeatureTyping entries → no IFunction type → null (property is [0..1]). - Assert.That(emptyCalculationUsage.ComputeCalculationDefinition, Throws.TypeOf()); + Assert.That(emptyCalculationUsage.ComputeCalculationDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET.Tests/Extend/CaseUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/CaseUsageExtensionsTestFixture.cs index 3d5f7646..e23681e4 100644 --- a/SysML2.NET.Tests/Extend/CaseUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/CaseUsageExtensionsTestFixture.cs @@ -68,7 +68,7 @@ public void VerifyComputeCaseDefinition() var caseUsage = new CaseUsage(); // Empty case: no FeatureTyping whose Type is an ICaseDefinition → null. - Assert.That(caseUsage.ComputeCaseDefinition, Throws.TypeOf()); + Assert.That(caseUsage.ComputeCaseDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET.Tests/Extend/ConstraintUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/ConstraintUsageExtensionsTestFixture.cs index 15a10384..942096b2 100644 --- a/SysML2.NET.Tests/Extend/ConstraintUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/ConstraintUsageExtensionsTestFixture.cs @@ -43,7 +43,7 @@ public void VerifyComputeConstraintDefinition() // Empty OwnedRelationship → no FeatureTyping → null. var emptyUsage = new ConstraintUsage(); - Assert.That(emptyUsage.ComputeConstraintDefinition, Throws.TypeOf()); + Assert.That(emptyUsage.ComputeConstraintDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET.Tests/Extend/RenderingUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/RenderingUsageExtensionsTestFixture.cs index b83d9472..ec0802df 100644 --- a/SysML2.NET.Tests/Extend/RenderingUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/RenderingUsageExtensionsTestFixture.cs @@ -41,7 +41,7 @@ public void VerifyComputeRenderingDefinition() var renderingUsage = new RenderingUsage(); // Empty: no OwnedRelationship → null. - Assert.That(renderingUsage.ComputeRenderingDefinition, Throws.TypeOf()); + Assert.That(renderingUsage.ComputeRenderingDefinition(), Is.Null); } } } diff --git a/SysML2.NET.Tests/Extend/RequirementUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/RequirementUsageExtensionsTestFixture.cs index fe1a6fe6..4929af44 100644 --- a/SysML2.NET.Tests/Extend/RequirementUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/RequirementUsageExtensionsTestFixture.cs @@ -162,7 +162,7 @@ public void VerifyComputeRequirementDefinition() var requirementUsage = new RequirementUsage(); // Empty case: no OwnedRelationship → returns null. - Assert.That(requirementUsage.ComputeRequirementDefinition, Throws.TypeOf()); + Assert.That(requirementUsage.ComputeRequirementDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET.Tests/Extend/VerificationCaseUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/VerificationCaseUsageExtensionsTestFixture.cs index cd3063e9..e650ce8c 100644 --- a/SysML2.NET.Tests/Extend/VerificationCaseUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/VerificationCaseUsageExtensionsTestFixture.cs @@ -43,7 +43,7 @@ public void VerifyComputeVerificationCaseDefinition() var verificationCaseUsage = new VerificationCaseUsage(); // Empty case: no FeatureTyping whose Type is an IVerificationCaseDefinition → null. - Assert.That(verificationCaseUsage.ComputeVerificationCaseDefinition, Throws.TypeOf()); + Assert.That(verificationCaseUsage.ComputeVerificationCaseDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET.Tests/Extend/ViewUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/ViewUsageExtensionsTestFixture.cs index 5f0f5345..26aace54 100644 --- a/SysML2.NET.Tests/Extend/ViewUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/ViewUsageExtensionsTestFixture.cs @@ -177,7 +177,7 @@ public void VerifyComputeViewDefinition() var viewUsage = new ViewUsage(); // Empty: no FeatureTyping → null. - Assert.That(viewUsage.ComputeViewDefinition, Throws.TypeOf()); + Assert.That(viewUsage.ComputeViewDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET.Tests/Extend/ViewpointUsageExtensionsTestFixture.cs b/SysML2.NET.Tests/Extend/ViewpointUsageExtensionsTestFixture.cs index e1d15626..bcf6b6db 100644 --- a/SysML2.NET.Tests/Extend/ViewpointUsageExtensionsTestFixture.cs +++ b/SysML2.NET.Tests/Extend/ViewpointUsageExtensionsTestFixture.cs @@ -41,7 +41,7 @@ public void VerifyComputeViewpointDefinition() var viewpointUsage = new ViewpointUsage(); // Empty: no OwnedRelationship → null. - Assert.That(viewpointUsage.ComputeViewpointDefinition, Throws.TypeOf()); + Assert.That(viewpointUsage.ComputeViewpointDefinition(), Is.Null); } [Test] diff --git a/SysML2.NET/Core/AutoGenDto/AcceptActionUsage.cs b/SysML2.NET/Core/AutoGenDto/AcceptActionUsage.cs index 2dd09a10..4d6d3bb0 100644 --- a/SysML2.NET/Core/AutoGenDto/AcceptActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/AcceptActionUsage.cs @@ -57,6 +57,7 @@ public partial class AcceptActionUsage : IAcceptActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -124,7 +125,7 @@ public partial class AcceptActionUsage : IAcceptActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -153,6 +154,7 @@ public partial class AcceptActionUsage : IAcceptActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -660,6 +662,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -702,8 +705,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -943,6 +947,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1020,6 +1025,7 @@ bool Core.Features.IFeature.IsVariable /// base AcceptActionUsage AcceptAction from the Systems Model Library. /// [Property(xmiId: "_19_0_4_12e503d9_1642701018287_478584_4462", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591477541360_47573_933")] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] [Implements(implementation: "IAcceptActionUsage.PayloadParameter")] public Guid payloadParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ActionDefinition.cs b/SysML2.NET/Core/AutoGenDto/ActionDefinition.cs index 0188795f..cd3bf6e8 100644 --- a/SysML2.NET/Core/AutoGenDto/ActionDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ActionDefinition.cs @@ -53,6 +53,7 @@ public partial class ActionDefinition : IActionDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -107,6 +108,7 @@ public partial class ActionDefinition : IActionDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -634,6 +636,7 @@ public partial class ActionDefinition : IActionDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/ActionUsage.cs b/SysML2.NET/Core/AutoGenDto/ActionUsage.cs index 83c91af9..06b7b645 100644 --- a/SysML2.NET/Core/AutoGenDto/ActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ActionUsage.cs @@ -58,6 +58,7 @@ public partial class ActionUsage : IActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -125,7 +126,7 @@ public partial class ActionUsage : IActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -154,6 +155,7 @@ public partial class ActionUsage : IActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -661,6 +663,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -703,8 +706,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -944,6 +948,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/AllocationDefinition.cs b/SysML2.NET/Core/AutoGenDto/AllocationDefinition.cs index 625da96a..9fc1b08e 100644 --- a/SysML2.NET/Core/AutoGenDto/AllocationDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/AllocationDefinition.cs @@ -127,6 +127,7 @@ public partial class AllocationDefinition : IAllocationDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -687,6 +688,7 @@ bool Core.Types.IType.IsSufficient /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/AllocationUsage.cs b/SysML2.NET/Core/AutoGenDto/AllocationUsage.cs index baecbc74..91083637 100644 --- a/SysML2.NET/Core/AutoGenDto/AllocationUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/AllocationUsage.cs @@ -179,6 +179,7 @@ public partial class AllocationUsage : IAllocationUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -705,6 +706,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -996,6 +998,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/AnalysisCaseDefinition.cs b/SysML2.NET/Core/AutoGenDto/AnalysisCaseDefinition.cs index 5db5982c..1f75c2fa 100644 --- a/SysML2.NET/Core/AutoGenDto/AnalysisCaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/AnalysisCaseDefinition.cs @@ -51,6 +51,7 @@ public partial class AnalysisCaseDefinition : IAnalysisCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -59,6 +60,7 @@ public partial class AnalysisCaseDefinition : IAnalysisCaseDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -73,6 +75,7 @@ public partial class AnalysisCaseDefinition : IAnalysisCaseDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation { get; internal set; } = []; @@ -121,6 +124,7 @@ public partial class AnalysisCaseDefinition : IAnalysisCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -675,6 +679,7 @@ public partial class AnalysisCaseDefinition : IAnalysisCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -807,6 +812,7 @@ public partial class AnalysisCaseDefinition : IAnalysisCaseDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/AnalysisCaseUsage.cs b/SysML2.NET/Core/AutoGenDto/AnalysisCaseUsage.cs index b3001af5..d073bb4a 100644 --- a/SysML2.NET/Core/AutoGenDto/AnalysisCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/AnalysisCaseUsage.cs @@ -54,14 +54,17 @@ public partial class AnalysisCaseUsage : IAnalysisCaseUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => ((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.HasValue ? [((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.Value] : []; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -96,6 +99,7 @@ public partial class AnalysisCaseUsage : IAnalysisCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] Guid? Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.DTO.Systems.Cases.ICaseUsage)this).caseDefinition.HasValue ? ((SysML2.NET.Core.DTO.Systems.Cases.ICaseUsage)this).caseDefinition.Value : Guid.Empty; @@ -157,7 +161,7 @@ public partial class AnalysisCaseUsage : IAnalysisCaseUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -186,6 +190,7 @@ public partial class AnalysisCaseUsage : IAnalysisCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -710,6 +715,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -760,8 +766,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1001,6 +1008,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1121,6 +1129,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/AssertConstraintUsage.cs b/SysML2.NET/Core/AutoGenDto/AssertConstraintUsage.cs index 88b144b2..84ea17ca 100644 --- a/SysML2.NET/Core/AutoGenDto/AssertConstraintUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/AssertConstraintUsage.cs @@ -161,6 +161,7 @@ public partial class AssertConstraintUsage : IAssertConstraintUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -692,6 +693,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -975,6 +977,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/AssignmentActionUsage.cs b/SysML2.NET/Core/AutoGenDto/AssignmentActionUsage.cs index 850988eb..4fe6df87 100644 --- a/SysML2.NET/Core/AutoGenDto/AssignmentActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/AssignmentActionUsage.cs @@ -56,6 +56,7 @@ public partial class AssignmentActionUsage : IAssignmentActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -123,7 +124,7 @@ public partial class AssignmentActionUsage : IAssignmentActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -152,6 +153,7 @@ public partial class AssignmentActionUsage : IAssignmentActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -659,6 +661,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -701,8 +704,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -942,6 +946,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/AttributeDefinition.cs b/SysML2.NET/Core/AutoGenDto/AttributeDefinition.cs index 5656496b..a9bc71bf 100644 --- a/SysML2.NET/Core/AutoGenDto/AttributeDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/AttributeDefinition.cs @@ -100,6 +100,7 @@ public partial class AttributeDefinition : IAttributeDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -620,6 +621,7 @@ public partial class AttributeDefinition : IAttributeDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/AttributeUsage.cs b/SysML2.NET/Core/AutoGenDto/AttributeUsage.cs index 8d9265af..2e032093 100644 --- a/SysML2.NET/Core/AutoGenDto/AttributeUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/AttributeUsage.cs @@ -144,6 +144,7 @@ public partial class AttributeUsage : IAttributeUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -644,6 +645,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -917,6 +919,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/BindingConnectorAsUsage.cs b/SysML2.NET/Core/AutoGenDto/BindingConnectorAsUsage.cs index ab9bad54..e6e876a5 100644 --- a/SysML2.NET/Core/AutoGenDto/BindingConnectorAsUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/BindingConnectorAsUsage.cs @@ -155,6 +155,7 @@ public partial class BindingConnectorAsUsage : IBindingConnectorAsUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -655,6 +656,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -936,6 +938,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/CalculationDefinition.cs b/SysML2.NET/Core/AutoGenDto/CalculationDefinition.cs index 84aa9b36..f69c0fa5 100644 --- a/SysML2.NET/Core/AutoGenDto/CalculationDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/CalculationDefinition.cs @@ -53,6 +53,7 @@ public partial class CalculationDefinition : ICalculationDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -67,6 +68,7 @@ public partial class CalculationDefinition : ICalculationDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation { get; internal set; } = []; @@ -115,6 +117,7 @@ public partial class CalculationDefinition : ICalculationDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -661,6 +664,7 @@ public partial class CalculationDefinition : ICalculationDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/CalculationUsage.cs b/SysML2.NET/Core/AutoGenDto/CalculationUsage.cs index b5a3d34f..fcfe68f9 100644 --- a/SysML2.NET/Core/AutoGenDto/CalculationUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/CalculationUsage.cs @@ -58,8 +58,10 @@ public partial class CalculationUsage : ICalculationUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => this.calculationDefinition.HasValue ? [this.calculationDefinition.Value] : []; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -84,6 +86,7 @@ public partial class CalculationUsage : ICalculationUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] public Guid? calculationDefinition { get; internal set; } @@ -135,7 +138,7 @@ public partial class CalculationUsage : ICalculationUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -164,6 +167,7 @@ public partial class CalculationUsage : ICalculationUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -688,6 +692,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -730,8 +735,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -971,6 +977,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/CaseDefinition.cs b/SysML2.NET/Core/AutoGenDto/CaseDefinition.cs index f5205276..2b38eedc 100644 --- a/SysML2.NET/Core/AutoGenDto/CaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/CaseDefinition.cs @@ -53,6 +53,7 @@ public partial class CaseDefinition : ICaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -61,6 +62,7 @@ public partial class CaseDefinition : ICaseDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -75,6 +77,7 @@ public partial class CaseDefinition : ICaseDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation { get; internal set; } = []; @@ -123,6 +126,7 @@ public partial class CaseDefinition : ICaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -677,6 +681,7 @@ public partial class CaseDefinition : ICaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -799,6 +804,7 @@ public partial class CaseDefinition : ICaseDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/CaseUsage.cs b/SysML2.NET/Core/AutoGenDto/CaseUsage.cs index 556c8601..c822d3ba 100644 --- a/SysML2.NET/Core/AutoGenDto/CaseUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/CaseUsage.cs @@ -54,14 +54,17 @@ public partial class CaseUsage : ICaseUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => ((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.HasValue ? [((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.Value] : []; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -88,6 +91,7 @@ public partial class CaseUsage : ICaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] Guid? Systems.Calculations.ICalculationUsage.calculationDefinition => this.caseDefinition.HasValue ? this.caseDefinition.Value : Guid.Empty; @@ -148,7 +152,7 @@ public partial class CaseUsage : ICaseUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -177,6 +181,7 @@ public partial class CaseUsage : ICaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -701,6 +706,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -751,8 +757,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -992,6 +999,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1103,6 +1111,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ConcernDefinition.cs b/SysML2.NET/Core/AutoGenDto/ConcernDefinition.cs index f4f5e0e5..ecf6a845 100644 --- a/SysML2.NET/Core/AutoGenDto/ConcernDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ConcernDefinition.cs @@ -51,6 +51,7 @@ public partial class ConcernDefinition : IConcernDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -123,6 +124,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -678,6 +680,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -812,6 +815,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -828,6 +832,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ConcernUsage.cs b/SysML2.NET/Core/AutoGenDto/ConcernUsage.cs index cf8eef84..020ffb01 100644 --- a/SysML2.NET/Core/AutoGenDto/ConcernUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ConcernUsage.cs @@ -54,6 +54,7 @@ public partial class ConcernUsage : IConcernUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -187,6 +188,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -720,6 +722,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -1003,6 +1006,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1152,6 +1156,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -1160,6 +1165,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ConjugatedPortDefinition.cs b/SysML2.NET/Core/AutoGenDto/ConjugatedPortDefinition.cs index ec91386f..0681d9e3 100644 --- a/SysML2.NET/Core/AutoGenDto/ConjugatedPortDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ConjugatedPortDefinition.cs @@ -108,6 +108,7 @@ public partial class ConjugatedPortDefinition : IConjugatedPortDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -654,6 +655,7 @@ public partial class ConjugatedPortDefinition : IConjugatedPortDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/ConnectionDefinition.cs b/SysML2.NET/Core/AutoGenDto/ConnectionDefinition.cs index c53dae85..acf7fe36 100644 --- a/SysML2.NET/Core/AutoGenDto/ConnectionDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ConnectionDefinition.cs @@ -116,6 +116,7 @@ public partial class ConnectionDefinition : IConnectionDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -676,6 +677,7 @@ bool Core.Types.IType.IsSufficient /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/ConnectionUsage.cs b/SysML2.NET/Core/AutoGenDto/ConnectionUsage.cs index 2e2aa774..96b20fbb 100644 --- a/SysML2.NET/Core/AutoGenDto/ConnectionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ConnectionUsage.cs @@ -172,6 +172,7 @@ public partial class ConnectionUsage : IConnectionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -698,6 +699,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -989,6 +991,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ConstraintDefinition.cs b/SysML2.NET/Core/AutoGenDto/ConstraintDefinition.cs index fe9176fc..8b1ef6d1 100644 --- a/SysML2.NET/Core/AutoGenDto/ConstraintDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ConstraintDefinition.cs @@ -98,6 +98,7 @@ public partial class ConstraintDefinition : IConstraintDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -644,6 +645,7 @@ public partial class ConstraintDefinition : IConstraintDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/ConstraintUsage.cs b/SysML2.NET/Core/AutoGenDto/ConstraintUsage.cs index 9a4dd501..e04da028 100644 --- a/SysML2.NET/Core/AutoGenDto/ConstraintUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ConstraintUsage.cs @@ -154,6 +154,7 @@ public partial class ConstraintUsage : IConstraintUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -678,6 +679,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -961,6 +963,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/DecisionNode.cs b/SysML2.NET/Core/AutoGenDto/DecisionNode.cs index 50c44837..20ae93b2 100644 --- a/SysML2.NET/Core/AutoGenDto/DecisionNode.cs +++ b/SysML2.NET/Core/AutoGenDto/DecisionNode.cs @@ -53,6 +53,7 @@ public partial class DecisionNode : IDecisionNode /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -120,7 +121,7 @@ public partial class DecisionNode : IDecisionNode [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -149,6 +150,7 @@ public partial class DecisionNode : IDecisionNode /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -656,6 +658,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -698,8 +701,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -939,6 +943,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/Definition.cs b/SysML2.NET/Core/AutoGenDto/Definition.cs index 2e50b2a9..ccc9a7c1 100644 --- a/SysML2.NET/Core/AutoGenDto/Definition.cs +++ b/SysML2.NET/Core/AutoGenDto/Definition.cs @@ -104,6 +104,7 @@ public partial class Definition : IDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -624,6 +625,7 @@ public partial class Definition : IDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/EnumerationDefinition.cs b/SysML2.NET/Core/AutoGenDto/EnumerationDefinition.cs index 56fdcfc6..5c112ed5 100644 --- a/SysML2.NET/Core/AutoGenDto/EnumerationDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/EnumerationDefinition.cs @@ -97,6 +97,7 @@ public partial class EnumerationDefinition : IEnumerationDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -643,6 +644,7 @@ bool Systems.DefinitionAndUsage.IDefinition.IsVariation /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/EnumerationUsage.cs b/SysML2.NET/Core/AutoGenDto/EnumerationUsage.cs index e86442cb..461887a1 100644 --- a/SysML2.NET/Core/AutoGenDto/EnumerationUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/EnumerationUsage.cs @@ -140,6 +140,7 @@ public partial class EnumerationUsage : IEnumerationUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -648,6 +649,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -921,6 +923,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/EventOccurrenceUsage.cs b/SysML2.NET/Core/AutoGenDto/EventOccurrenceUsage.cs index fb360a4c..dfd7e0e0 100644 --- a/SysML2.NET/Core/AutoGenDto/EventOccurrenceUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/EventOccurrenceUsage.cs @@ -134,6 +134,7 @@ public partial class EventOccurrenceUsage : IEventOccurrenceUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -659,6 +660,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -942,6 +944,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ExhibitStateUsage.cs b/SysML2.NET/Core/AutoGenDto/ExhibitStateUsage.cs index 5c277741..1cbe61f7 100644 --- a/SysML2.NET/Core/AutoGenDto/ExhibitStateUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ExhibitStateUsage.cs @@ -57,6 +57,7 @@ public partial class ExhibitStateUsage : IExhibitStateUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [RedefinedByProperty("IStateUsage.StateDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] List Systems.Actions.IActionUsage.actionDefinition => [.. this.stateDefinition]; @@ -125,7 +126,7 @@ public partial class ExhibitStateUsage : IExhibitStateUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -154,6 +155,7 @@ public partial class ExhibitStateUsage : IExhibitStateUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -725,6 +727,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -767,8 +770,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1008,6 +1012,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/FlowDefinition.cs b/SysML2.NET/Core/AutoGenDto/FlowDefinition.cs index 4a45cdc7..f0f70da4 100644 --- a/SysML2.NET/Core/AutoGenDto/FlowDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/FlowDefinition.cs @@ -53,6 +53,7 @@ public partial class FlowDefinition : IFlowDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -118,6 +119,7 @@ public partial class FlowDefinition : IFlowDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -670,6 +672,7 @@ public partial class FlowDefinition : IFlowDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/FlowUsage.cs b/SysML2.NET/Core/AutoGenDto/FlowUsage.cs index a6b28fe0..b74f9f83 100644 --- a/SysML2.NET/Core/AutoGenDto/FlowUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/FlowUsage.cs @@ -56,8 +56,10 @@ public partial class FlowUsage : IFlowUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("IFlowUsage.FlowDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => [.. this.flowDefinition]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -151,7 +153,7 @@ public partial class FlowUsage : IFlowUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -180,6 +182,7 @@ public partial class FlowUsage : IFlowUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -267,6 +270,7 @@ public partial class FlowUsage : IFlowUsage /// Model Libraries. /// [Property(xmiId: "_19_0_4_12e503d9_1661892878973_977062_185", 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_1565500905804_589845_30779")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1661900477937_518125_727")] [Implements(implementation: "IFlowUsage.FlowDefinition")] public List flowDefinition { get; internal set; } = []; @@ -725,6 +729,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -767,8 +772,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1016,6 +1022,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ForLoopActionUsage.cs b/SysML2.NET/Core/AutoGenDto/ForLoopActionUsage.cs index ed6a81de..7b488246 100644 --- a/SysML2.NET/Core/AutoGenDto/ForLoopActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ForLoopActionUsage.cs @@ -55,6 +55,7 @@ public partial class ForLoopActionUsage : IForLoopActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -130,7 +131,7 @@ public partial class ForLoopActionUsage : IForLoopActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -159,6 +160,7 @@ public partial class ForLoopActionUsage : IForLoopActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -675,6 +677,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -717,8 +720,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -958,6 +962,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ForkNode.cs b/SysML2.NET/Core/AutoGenDto/ForkNode.cs index 05f15ea1..27274f9f 100644 --- a/SysML2.NET/Core/AutoGenDto/ForkNode.cs +++ b/SysML2.NET/Core/AutoGenDto/ForkNode.cs @@ -54,6 +54,7 @@ public partial class ForkNode : IForkNode /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -121,7 +122,7 @@ public partial class ForkNode : IForkNode [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -150,6 +151,7 @@ public partial class ForkNode : IForkNode /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -657,6 +659,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -699,8 +702,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -940,6 +944,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/IAcceptActionUsage.cs b/SysML2.NET/Core/AutoGenDto/IAcceptActionUsage.cs index 10cb5fdb..41866f1c 100644 --- a/SysML2.NET/Core/AutoGenDto/IAcceptActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IAcceptActionUsage.cs @@ -55,6 +55,7 @@ public partial interface IAcceptActionUsage : IActionUsage /// base AcceptActionUsage AcceptAction from the Systems Model Library. /// [Property(xmiId: "_19_0_4_12e503d9_1642701018287_478584_4462", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591477541360_47573_933")] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] Guid payloadParameter { get; } diff --git a/SysML2.NET/Core/AutoGenDto/IActionDefinition.cs b/SysML2.NET/Core/AutoGenDto/IActionDefinition.cs index 2563207d..e4b141d3 100644 --- a/SysML2.NET/Core/AutoGenDto/IActionDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/IActionDefinition.cs @@ -46,6 +46,7 @@ public partial interface IActionDefinition : IBehavior, IOccurrenceDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List action { get; } } diff --git a/SysML2.NET/Core/AutoGenDto/IActionUsage.cs b/SysML2.NET/Core/AutoGenDto/IActionUsage.cs index 167e7085..7449dcc7 100644 --- a/SysML2.NET/Core/AutoGenDto/IActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IActionUsage.cs @@ -51,6 +51,7 @@ public partial interface IActionUsage : IStep, IOccurrenceUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] List actionDefinition { get; } } diff --git a/SysML2.NET/Core/AutoGenDto/ICalculationDefinition.cs b/SysML2.NET/Core/AutoGenDto/ICalculationDefinition.cs index 5af59673..dd44b3f7 100644 --- a/SysML2.NET/Core/AutoGenDto/ICalculationDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ICalculationDefinition.cs @@ -44,6 +44,7 @@ public partial interface ICalculationDefinition : IFunction, IActionDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] List calculation { get; } diff --git a/SysML2.NET/Core/AutoGenDto/ICalculationUsage.cs b/SysML2.NET/Core/AutoGenDto/ICalculationUsage.cs index 087260a4..64792907 100644 --- a/SysML2.NET/Core/AutoGenDto/ICalculationUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ICalculationUsage.cs @@ -51,6 +51,7 @@ public partial interface ICalculationUsage : IExpression, IActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] Guid? calculationDefinition { get; } } diff --git a/SysML2.NET/Core/AutoGenDto/ICaseDefinition.cs b/SysML2.NET/Core/AutoGenDto/ICaseDefinition.cs index 0885b9a7..44a7c513 100644 --- a/SysML2.NET/Core/AutoGenDto/ICaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ICaseDefinition.cs @@ -45,6 +45,7 @@ public partial interface ICaseDefinition : ICalculationDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List actorParameter { get; } /// @@ -59,6 +60,7 @@ public partial interface ICaseDefinition : ICalculationDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] Guid subjectParameter { get; } } diff --git a/SysML2.NET/Core/AutoGenDto/ICaseUsage.cs b/SysML2.NET/Core/AutoGenDto/ICaseUsage.cs index 390a7b51..74e5193c 100644 --- a/SysML2.NET/Core/AutoGenDto/ICaseUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ICaseUsage.cs @@ -45,6 +45,7 @@ public partial interface ICaseUsage : ICalculationUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List actorParameter { get; } /// @@ -66,6 +67,7 @@ public partial interface ICaseUsage : ICalculationUsage /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] Guid subjectParameter { get; } } diff --git a/SysML2.NET/Core/AutoGenDto/IDefinition.cs b/SysML2.NET/Core/AutoGenDto/IDefinition.cs index ff92dbd0..ae2709ef 100644 --- a/SysML2.NET/Core/AutoGenDto/IDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/IDefinition.cs @@ -52,6 +52,7 @@ public partial interface IDefinition : IClassifier /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List directedUsage { get; } /// @@ -222,6 +223,7 @@ public partial interface IDefinition : IClassifier /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List ownedUsage { get; } /// diff --git a/SysML2.NET/Core/AutoGenDto/IFlowUsage.cs b/SysML2.NET/Core/AutoGenDto/IFlowUsage.cs index 9a3ead4d..19eefd90 100644 --- a/SysML2.NET/Core/AutoGenDto/IFlowUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IFlowUsage.cs @@ -48,6 +48,7 @@ public partial interface IFlowUsage : IConnectorAsUsage, IFlow, IActionUsage /// Model Libraries. /// [Property(xmiId: "_19_0_4_12e503d9_1661892878973_977062_185", 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_1565500905804_589845_30779")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1661900477937_518125_727")] List flowDefinition { get; } diff --git a/SysML2.NET/Core/AutoGenDto/IMetadataUsage.cs b/SysML2.NET/Core/AutoGenDto/IMetadataUsage.cs index 39a94555..177bca04 100644 --- a/SysML2.NET/Core/AutoGenDto/IMetadataUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IMetadataUsage.cs @@ -48,6 +48,7 @@ public partial interface IMetadataUsage : IItemUsage, IMetadataFeature /// The MetadataDefinition that is the definition of this MetadataUsage. /// [Property(xmiId: "_19_0_4_12e503d9_1647727047674_847094_2563", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1606345564958_925589_327")] Guid? metadataDefinition { get; } diff --git a/SysML2.NET/Core/AutoGenDto/IRequirementDefinition.cs b/SysML2.NET/Core/AutoGenDto/IRequirementDefinition.cs index 4faec383..4f37a412 100644 --- a/SysML2.NET/Core/AutoGenDto/IRequirementDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/IRequirementDefinition.cs @@ -45,6 +45,7 @@ public partial interface IRequirementDefinition : IConstraintDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List actorParameter { get; } /// @@ -87,6 +88,7 @@ public partial interface IRequirementDefinition : IConstraintDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List stakeholderParameter { get; } /// @@ -94,6 +96,7 @@ public partial interface IRequirementDefinition : IConstraintDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] Guid subjectParameter { get; } /// diff --git a/SysML2.NET/Core/AutoGenDto/IRequirementUsage.cs b/SysML2.NET/Core/AutoGenDto/IRequirementUsage.cs index 678f1a14..e2c8cf41 100644 --- a/SysML2.NET/Core/AutoGenDto/IRequirementUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IRequirementUsage.cs @@ -45,6 +45,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List actorParameter { get; } /// @@ -94,6 +95,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List stakeholderParameter { get; } /// @@ -101,6 +103,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] Guid subjectParameter { get; } /// diff --git a/SysML2.NET/Core/AutoGenDto/IUsage.cs b/SysML2.NET/Core/AutoGenDto/IUsage.cs index a80c2144..3531a388 100644 --- a/SysML2.NET/Core/AutoGenDto/IUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IUsage.cs @@ -59,6 +59,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List directedUsage { get; } /// @@ -247,6 +248,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List nestedUsage { get; } /// @@ -282,6 +284,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] Guid? owningDefinition { get; } /// diff --git a/SysML2.NET/Core/AutoGenDto/IfActionUsage.cs b/SysML2.NET/Core/AutoGenDto/IfActionUsage.cs index c049313d..a9a9e672 100644 --- a/SysML2.NET/Core/AutoGenDto/IfActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IfActionUsage.cs @@ -55,6 +55,7 @@ public partial class IfActionUsage : IIfActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -122,7 +123,7 @@ public partial class IfActionUsage : IIfActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -151,6 +152,7 @@ public partial class IfActionUsage : IIfActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -674,6 +676,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -716,8 +719,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -957,6 +961,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/IncludeUseCaseUsage.cs b/SysML2.NET/Core/AutoGenDto/IncludeUseCaseUsage.cs index 8b121d4c..f8a586e8 100644 --- a/SysML2.NET/Core/AutoGenDto/IncludeUseCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/IncludeUseCaseUsage.cs @@ -57,14 +57,17 @@ public partial class IncludeUseCaseUsage : IIncludeUseCaseUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => ((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.HasValue ? [((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.Value] : []; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -91,6 +94,7 @@ public partial class IncludeUseCaseUsage : IIncludeUseCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] Guid? Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.DTO.Systems.Cases.ICaseUsage)this).caseDefinition.HasValue ? ((SysML2.NET.Core.DTO.Systems.Cases.ICaseUsage)this).caseDefinition.Value : Guid.Empty; @@ -152,7 +156,7 @@ public partial class IncludeUseCaseUsage : IIncludeUseCaseUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -181,6 +185,7 @@ public partial class IncludeUseCaseUsage : IIncludeUseCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -732,6 +737,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -782,8 +788,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1023,6 +1030,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1144,6 +1152,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/InterfaceDefinition.cs b/SysML2.NET/Core/AutoGenDto/InterfaceDefinition.cs index 2529c346..16b38a82 100644 --- a/SysML2.NET/Core/AutoGenDto/InterfaceDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/InterfaceDefinition.cs @@ -116,6 +116,7 @@ public partial class InterfaceDefinition : IInterfaceDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -684,6 +685,7 @@ bool Core.Types.IType.IsSufficient /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/InterfaceUsage.cs b/SysML2.NET/Core/AutoGenDto/InterfaceUsage.cs index ea30ccc0..cbe1c7ee 100644 --- a/SysML2.NET/Core/AutoGenDto/InterfaceUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/InterfaceUsage.cs @@ -171,6 +171,7 @@ public partial class InterfaceUsage : IInterfaceUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -705,6 +706,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -996,6 +998,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ItemDefinition.cs b/SysML2.NET/Core/AutoGenDto/ItemDefinition.cs index c861b2a0..5a7e9f88 100644 --- a/SysML2.NET/Core/AutoGenDto/ItemDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ItemDefinition.cs @@ -99,6 +99,7 @@ public partial class ItemDefinition : IItemDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -626,6 +627,7 @@ public partial class ItemDefinition : IItemDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/ItemUsage.cs b/SysML2.NET/Core/AutoGenDto/ItemUsage.cs index 7e86aa46..b6584761 100644 --- a/SysML2.NET/Core/AutoGenDto/ItemUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ItemUsage.cs @@ -133,6 +133,7 @@ public partial class ItemUsage : IItemUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -650,6 +651,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -933,6 +935,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/JoinNode.cs b/SysML2.NET/Core/AutoGenDto/JoinNode.cs index db2c0059..46461a0e 100644 --- a/SysML2.NET/Core/AutoGenDto/JoinNode.cs +++ b/SysML2.NET/Core/AutoGenDto/JoinNode.cs @@ -54,6 +54,7 @@ public partial class JoinNode : IJoinNode /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -121,7 +122,7 @@ public partial class JoinNode : IJoinNode [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -150,6 +151,7 @@ public partial class JoinNode : IJoinNode /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -657,6 +659,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -699,8 +702,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -940,6 +944,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/MergeNode.cs b/SysML2.NET/Core/AutoGenDto/MergeNode.cs index b0e35d74..6e8e7eeb 100644 --- a/SysML2.NET/Core/AutoGenDto/MergeNode.cs +++ b/SysML2.NET/Core/AutoGenDto/MergeNode.cs @@ -54,6 +54,7 @@ public partial class MergeNode : IMergeNode /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -121,7 +122,7 @@ public partial class MergeNode : IMergeNode [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -150,6 +151,7 @@ public partial class MergeNode : IMergeNode /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -657,6 +659,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -699,8 +702,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -940,6 +944,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/MetadataDefinition.cs b/SysML2.NET/Core/AutoGenDto/MetadataDefinition.cs index 026c8615..62ca4fca 100644 --- a/SysML2.NET/Core/AutoGenDto/MetadataDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/MetadataDefinition.cs @@ -96,6 +96,7 @@ public partial class MetadataDefinition : IMetadataDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -623,6 +624,7 @@ public partial class MetadataDefinition : IMetadataDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/MetadataUsage.cs b/SysML2.NET/Core/AutoGenDto/MetadataUsage.cs index a27e4ef4..e2fa15c9 100644 --- a/SysML2.NET/Core/AutoGenDto/MetadataUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/MetadataUsage.cs @@ -152,6 +152,7 @@ public partial class MetadataUsage : IMetadataUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -434,8 +435,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565471361757_649736_20796", 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_1618943843466_158863_236")] + [RedefinedByProperty("IMetadataUsage.MetadataDefinition")] [Implements(implementation: "IItemUsage.ItemDefinition")] - public List itemDefinition { get; internal set; } = []; + List Systems.Items.IItemUsage.itemDefinition => this.metadataDefinition.HasValue ? [this.metadataDefinition.Value] : []; /// /// Whether this Usage may be time varying (that is, whether it is featured by the snapshots of its @@ -479,6 +481,7 @@ bool Core.Features.IFeature.IsVariable /// The MetadataDefinition that is the definition of this MetadataUsage. /// [Property(xmiId: "_19_0_4_12e503d9_1647727047674_847094_2563", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1606345564958_925589_327")] [Implements(implementation: "IMetadataUsage.MetadataDefinition")] public Guid? metadataDefinition { get; internal set; } @@ -686,6 +689,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -988,6 +992,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/OccurrenceDefinition.cs b/SysML2.NET/Core/AutoGenDto/OccurrenceDefinition.cs index e46ecfeb..1d5b4c82 100644 --- a/SysML2.NET/Core/AutoGenDto/OccurrenceDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/OccurrenceDefinition.cs @@ -99,6 +99,7 @@ public partial class OccurrenceDefinition : IOccurrenceDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -626,6 +627,7 @@ public partial class OccurrenceDefinition : IOccurrenceDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/OccurrenceUsage.cs b/SysML2.NET/Core/AutoGenDto/OccurrenceUsage.cs index 0c5904f2..f0fae972 100644 --- a/SysML2.NET/Core/AutoGenDto/OccurrenceUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/OccurrenceUsage.cs @@ -133,6 +133,7 @@ public partial class OccurrenceUsage : IOccurrenceUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -640,6 +641,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -923,6 +925,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/PartDefinition.cs b/SysML2.NET/Core/AutoGenDto/PartDefinition.cs index 467a200b..b2a9a4e6 100644 --- a/SysML2.NET/Core/AutoGenDto/PartDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/PartDefinition.cs @@ -97,6 +97,7 @@ public partial class PartDefinition : IPartDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -624,6 +625,7 @@ public partial class PartDefinition : IPartDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/PartUsage.cs b/SysML2.NET/Core/AutoGenDto/PartUsage.cs index 37d79cf4..9ec8a561 100644 --- a/SysML2.NET/Core/AutoGenDto/PartUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/PartUsage.cs @@ -132,6 +132,7 @@ public partial class PartUsage : IPartUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -649,6 +650,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -932,6 +934,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/PerformActionUsage.cs b/SysML2.NET/Core/AutoGenDto/PerformActionUsage.cs index 579bda74..8af196dc 100644 --- a/SysML2.NET/Core/AutoGenDto/PerformActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/PerformActionUsage.cs @@ -57,6 +57,7 @@ public partial class PerformActionUsage : IPerformActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -124,7 +125,7 @@ public partial class PerformActionUsage : IPerformActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -153,6 +154,7 @@ public partial class PerformActionUsage : IPerformActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -679,6 +681,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -721,8 +724,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -962,6 +966,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/PortDefinition.cs b/SysML2.NET/Core/AutoGenDto/PortDefinition.cs index 18444f5f..2e4d1e39 100644 --- a/SysML2.NET/Core/AutoGenDto/PortDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/PortDefinition.cs @@ -106,6 +106,7 @@ public partial class PortDefinition : IPortDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -633,6 +634,7 @@ public partial class PortDefinition : IPortDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/PortUsage.cs b/SysML2.NET/Core/AutoGenDto/PortUsage.cs index 305efa74..0317760f 100644 --- a/SysML2.NET/Core/AutoGenDto/PortUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/PortUsage.cs @@ -131,6 +131,7 @@ public partial class PortUsage : IPortUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -638,6 +639,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -922,6 +924,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ReferenceUsage.cs b/SysML2.NET/Core/AutoGenDto/ReferenceUsage.cs index ed50e29c..11d2b6a4 100644 --- a/SysML2.NET/Core/AutoGenDto/ReferenceUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ReferenceUsage.cs @@ -131,6 +131,7 @@ public partial class ReferenceUsage : IReferenceUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -631,6 +632,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -904,6 +906,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/RenderingDefinition.cs b/SysML2.NET/Core/AutoGenDto/RenderingDefinition.cs index 220aaf08..1dd858c0 100644 --- a/SysML2.NET/Core/AutoGenDto/RenderingDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/RenderingDefinition.cs @@ -96,6 +96,7 @@ public partial class RenderingDefinition : IRenderingDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -623,6 +624,7 @@ public partial class RenderingDefinition : IRenderingDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/RenderingUsage.cs b/SysML2.NET/Core/AutoGenDto/RenderingUsage.cs index f644d4d2..282756dd 100644 --- a/SysML2.NET/Core/AutoGenDto/RenderingUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/RenderingUsage.cs @@ -131,6 +131,7 @@ public partial class RenderingUsage : IRenderingUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -648,6 +649,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -931,6 +933,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/RequirementDefinition.cs b/SysML2.NET/Core/AutoGenDto/RequirementDefinition.cs index 0937413b..ffc123cd 100644 --- a/SysML2.NET/Core/AutoGenDto/RequirementDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/RequirementDefinition.cs @@ -52,6 +52,7 @@ public partial class RequirementDefinition : IRequirementDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -124,6 +125,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -679,6 +681,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -813,6 +816,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -829,6 +833,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/RequirementUsage.cs b/SysML2.NET/Core/AutoGenDto/RequirementUsage.cs index 00677d4a..e0f45d6f 100644 --- a/SysML2.NET/Core/AutoGenDto/RequirementUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/RequirementUsage.cs @@ -52,6 +52,7 @@ public partial class RequirementUsage : IRequirementUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -177,6 +178,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -710,6 +712,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -993,6 +996,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1141,6 +1145,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -1149,6 +1154,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/SatisfyRequirementUsage.cs b/SysML2.NET/Core/AutoGenDto/SatisfyRequirementUsage.cs index 5ab50b5c..6c8e523b 100644 --- a/SysML2.NET/Core/AutoGenDto/SatisfyRequirementUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/SatisfyRequirementUsage.cs @@ -55,6 +55,7 @@ public partial class SatisfyRequirementUsage : ISatisfyRequirementUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -190,6 +191,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -730,6 +732,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -1013,6 +1016,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1179,6 +1183,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -1187,6 +1192,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/SendActionUsage.cs b/SysML2.NET/Core/AutoGenDto/SendActionUsage.cs index 34e0c7fe..c715580f 100644 --- a/SysML2.NET/Core/AutoGenDto/SendActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/SendActionUsage.cs @@ -58,6 +58,7 @@ public partial class SendActionUsage : ISendActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -125,7 +126,7 @@ public partial class SendActionUsage : ISendActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -154,6 +155,7 @@ public partial class SendActionUsage : ISendActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -661,6 +663,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -703,8 +706,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -944,6 +948,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/StateDefinition.cs b/SysML2.NET/Core/AutoGenDto/StateDefinition.cs index 725f2bc4..baeac050 100644 --- a/SysML2.NET/Core/AutoGenDto/StateDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/StateDefinition.cs @@ -54,6 +54,7 @@ public partial class StateDefinition : IStateDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -108,6 +109,7 @@ public partial class StateDefinition : IStateDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -671,6 +673,7 @@ public partial class StateDefinition : IStateDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/StateUsage.cs b/SysML2.NET/Core/AutoGenDto/StateUsage.cs index 9b6d3052..6e63f069 100644 --- a/SysML2.NET/Core/AutoGenDto/StateUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/StateUsage.cs @@ -57,6 +57,7 @@ public partial class StateUsage : IStateUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [RedefinedByProperty("IStateUsage.StateDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] List Systems.Actions.IActionUsage.actionDefinition => [.. this.stateDefinition]; @@ -125,7 +126,7 @@ public partial class StateUsage : IStateUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -154,6 +155,7 @@ public partial class StateUsage : IStateUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -697,6 +699,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -739,8 +742,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -980,6 +984,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/SuccessionAsUsage.cs b/SysML2.NET/Core/AutoGenDto/SuccessionAsUsage.cs index f02a2eb4..4724be82 100644 --- a/SysML2.NET/Core/AutoGenDto/SuccessionAsUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/SuccessionAsUsage.cs @@ -155,6 +155,7 @@ public partial class SuccessionAsUsage : ISuccessionAsUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -655,6 +656,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -936,6 +938,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/SuccessionFlowUsage.cs b/SysML2.NET/Core/AutoGenDto/SuccessionFlowUsage.cs index bddd43ea..06aabaf2 100644 --- a/SysML2.NET/Core/AutoGenDto/SuccessionFlowUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/SuccessionFlowUsage.cs @@ -54,8 +54,10 @@ public partial class SuccessionFlowUsage : ISuccessionFlowUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("IFlowUsage.FlowDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => [.. this.flowDefinition]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -149,7 +151,7 @@ public partial class SuccessionFlowUsage : ISuccessionFlowUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -178,6 +180,7 @@ public partial class SuccessionFlowUsage : ISuccessionFlowUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -265,6 +268,7 @@ public partial class SuccessionFlowUsage : ISuccessionFlowUsage /// Model Libraries. /// [Property(xmiId: "_19_0_4_12e503d9_1661892878973_977062_185", 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_1565500905804_589845_30779")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1661900477937_518125_727")] [Implements(implementation: "IFlowUsage.FlowDefinition")] public List flowDefinition { get; internal set; } = []; @@ -723,6 +727,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -765,8 +770,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1014,6 +1020,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/TerminateActionUsage.cs b/SysML2.NET/Core/AutoGenDto/TerminateActionUsage.cs index ac44f540..4f5b433c 100644 --- a/SysML2.NET/Core/AutoGenDto/TerminateActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/TerminateActionUsage.cs @@ -57,6 +57,7 @@ public partial class TerminateActionUsage : ITerminateActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -124,7 +125,7 @@ public partial class TerminateActionUsage : ITerminateActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -153,6 +154,7 @@ public partial class TerminateActionUsage : ITerminateActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -660,6 +662,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -702,8 +705,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -943,6 +947,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/TransitionUsage.cs b/SysML2.NET/Core/AutoGenDto/TransitionUsage.cs index ec657537..8dbbcc6f 100644 --- a/SysML2.NET/Core/AutoGenDto/TransitionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/TransitionUsage.cs @@ -59,6 +59,7 @@ public partial class TransitionUsage : ITransitionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -126,7 +127,7 @@ public partial class TransitionUsage : ITransitionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -155,6 +156,7 @@ public partial class TransitionUsage : ITransitionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -682,6 +684,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -724,8 +727,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -965,6 +969,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/Usage.cs b/SysML2.NET/Core/AutoGenDto/Usage.cs index 6a5c5f79..cee8ad7f 100644 --- a/SysML2.NET/Core/AutoGenDto/Usage.cs +++ b/SysML2.NET/Core/AutoGenDto/Usage.cs @@ -134,6 +134,7 @@ public partial class Usage : IUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -625,6 +626,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -898,6 +900,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/UseCaseDefinition.cs b/SysML2.NET/Core/AutoGenDto/UseCaseDefinition.cs index 633982b8..3789cd21 100644 --- a/SysML2.NET/Core/AutoGenDto/UseCaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/UseCaseDefinition.cs @@ -53,6 +53,7 @@ public partial class UseCaseDefinition : IUseCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -61,6 +62,7 @@ public partial class UseCaseDefinition : IUseCaseDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -75,6 +77,7 @@ public partial class UseCaseDefinition : IUseCaseDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation { get; internal set; } = []; @@ -123,6 +126,7 @@ public partial class UseCaseDefinition : IUseCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -685,6 +689,7 @@ public partial class UseCaseDefinition : IUseCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -807,6 +812,7 @@ public partial class UseCaseDefinition : IUseCaseDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/UseCaseUsage.cs b/SysML2.NET/Core/AutoGenDto/UseCaseUsage.cs index 6f67f057..a67bf774 100644 --- a/SysML2.NET/Core/AutoGenDto/UseCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/UseCaseUsage.cs @@ -54,14 +54,17 @@ public partial class UseCaseUsage : IUseCaseUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => ((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.HasValue ? [((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.Value] : []; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -88,6 +91,7 @@ public partial class UseCaseUsage : IUseCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] Guid? Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.DTO.Systems.Cases.ICaseUsage)this).caseDefinition.HasValue ? ((SysML2.NET.Core.DTO.Systems.Cases.ICaseUsage)this).caseDefinition.Value : Guid.Empty; @@ -149,7 +153,7 @@ public partial class UseCaseUsage : IUseCaseUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -178,6 +182,7 @@ public partial class UseCaseUsage : IUseCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -710,6 +715,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -760,8 +766,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1001,6 +1008,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1112,6 +1120,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/VerificationCaseDefinition.cs b/SysML2.NET/Core/AutoGenDto/VerificationCaseDefinition.cs index 9ddd0adc..9c85a5a9 100644 --- a/SysML2.NET/Core/AutoGenDto/VerificationCaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/VerificationCaseDefinition.cs @@ -52,6 +52,7 @@ public partial class VerificationCaseDefinition : IVerificationCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action { get; internal set; } = []; @@ -60,6 +61,7 @@ public partial class VerificationCaseDefinition : IVerificationCaseDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -74,6 +76,7 @@ public partial class VerificationCaseDefinition : IVerificationCaseDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation { get; internal set; } = []; @@ -122,6 +125,7 @@ public partial class VerificationCaseDefinition : IVerificationCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -676,6 +680,7 @@ public partial class VerificationCaseDefinition : IVerificationCaseDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -798,6 +803,7 @@ public partial class VerificationCaseDefinition : IVerificationCaseDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/VerificationCaseUsage.cs b/SysML2.NET/Core/AutoGenDto/VerificationCaseUsage.cs index 9e18c94f..65cd85e8 100644 --- a/SysML2.NET/Core/AutoGenDto/VerificationCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/VerificationCaseUsage.cs @@ -54,14 +54,17 @@ public partial class VerificationCaseUsage : IVerificationCaseUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition { get; internal set; } = []; + List Systems.Actions.IActionUsage.actionDefinition => ((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.HasValue ? [((SysML2.NET.Core.DTO.Systems.Calculations.ICalculationUsage)this).calculationDefinition.Value] : []; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -88,6 +91,7 @@ public partial class VerificationCaseUsage : IVerificationCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] Guid? Systems.Calculations.ICalculationUsage.calculationDefinition => this.caseDefinition.HasValue ? this.caseDefinition.Value : Guid.Empty; @@ -148,7 +152,7 @@ public partial class VerificationCaseUsage : IVerificationCaseUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -177,6 +181,7 @@ public partial class VerificationCaseUsage : IVerificationCaseUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -701,6 +706,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -751,8 +757,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.DTO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -992,6 +999,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1103,6 +1111,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ViewDefinition.cs b/SysML2.NET/Core/AutoGenDto/ViewDefinition.cs index fc9985ad..7a8358dd 100644 --- a/SysML2.NET/Core/AutoGenDto/ViewDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ViewDefinition.cs @@ -97,6 +97,7 @@ public partial class ViewDefinition : IViewDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -624,6 +625,7 @@ public partial class ViewDefinition : IViewDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; diff --git a/SysML2.NET/Core/AutoGenDto/ViewUsage.cs b/SysML2.NET/Core/AutoGenDto/ViewUsage.cs index f2a648b0..46766d39 100644 --- a/SysML2.NET/Core/AutoGenDto/ViewUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ViewUsage.cs @@ -132,6 +132,7 @@ public partial class ViewUsage : IViewUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -658,6 +659,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -941,6 +943,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ViewpointDefinition.cs b/SysML2.NET/Core/AutoGenDto/ViewpointDefinition.cs index e5b1687e..273f5345 100644 --- a/SysML2.NET/Core/AutoGenDto/ViewpointDefinition.cs +++ b/SysML2.NET/Core/AutoGenDto/ViewpointDefinition.cs @@ -51,6 +51,7 @@ public partial class ViewpointDefinition : IViewpointDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -123,6 +124,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -678,6 +680,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage { get; internal set; } = []; @@ -812,6 +815,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -828,6 +832,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/ViewpointUsage.cs b/SysML2.NET/Core/AutoGenDto/ViewpointUsage.cs index a8c327da..67f0df27 100644 --- a/SysML2.NET/Core/AutoGenDto/ViewpointUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/ViewpointUsage.cs @@ -52,6 +52,7 @@ public partial class ViewpointUsage : IViewpointUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter { get; internal set; } = []; @@ -177,6 +178,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -710,6 +712,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -993,6 +996,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } @@ -1142,6 +1146,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter { get; internal set; } = []; @@ -1150,6 +1155,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public Guid subjectParameter { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenDto/WhileLoopActionUsage.cs b/SysML2.NET/Core/AutoGenDto/WhileLoopActionUsage.cs index 0f1fbfe6..7d5cdf74 100644 --- a/SysML2.NET/Core/AutoGenDto/WhileLoopActionUsage.cs +++ b/SysML2.NET/Core/AutoGenDto/WhileLoopActionUsage.cs @@ -57,6 +57,7 @@ public partial class WhileLoopActionUsage : IWhileLoopActionUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] public List actionDefinition { get; internal set; } = []; @@ -132,7 +133,7 @@ public partial class WhileLoopActionUsage : IWhileLoopActionUsage [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.DTO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -161,6 +162,7 @@ public partial class WhileLoopActionUsage : IWhileLoopActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage { get; internal set; } = []; @@ -668,6 +670,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage { get; internal set; } = []; @@ -710,8 +713,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition { get; internal set; } = []; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.actionDefinition]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -951,6 +955,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public Guid? owningDefinition { get; internal set; } diff --git a/SysML2.NET/Core/AutoGenPoco/AcceptActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/AcceptActionUsage.cs index 0bab4fc7..5d836802 100644 --- a/SysML2.NET/Core/AutoGenPoco/AcceptActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/AcceptActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AcceptActionUsage is an ActionUsage that specifies the acceptance of an incomingTransfer from the @@ -101,8 +102,9 @@ public AcceptActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -118,7 +120,7 @@ public AcceptActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -168,7 +170,7 @@ public AcceptActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -190,13 +192,14 @@ public AcceptActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -483,7 +486,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -704,6 +707,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -746,8 +750,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -990,6 +995,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1055,7 +1061,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// An Expression whose result is bound to the payload parameter of this AcceptActionUsage. If provided, @@ -1070,6 +1076,7 @@ bool Core.Features.IFeature.IsVariable /// base AcceptActionUsage AcceptAction from the Systems Model Library. /// [Property(xmiId: "_19_0_4_12e503d9_1642701018287_478584_4462", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591477541360_47573_933")] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] [Implements(implementation: "IAcceptActionUsage.PayloadParameter")] public IReferenceUsage payloadParameter => this.ComputePayloadParameter(); @@ -1130,7 +1137,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ActionDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ActionDefinition.cs index 16847132..e6a2038a 100644 --- a/SysML2.NET/Core/AutoGenPoco/ActionDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ActionDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ActionDefinition is a Definition that is also a Behavior that defines an Action performed by a @@ -94,6 +95,7 @@ public ActionDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -141,13 +143,14 @@ public ActionDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -678,6 +681,7 @@ public ActionDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -757,7 +761,7 @@ public ActionDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/ActionUsage.cs index b7448635..2d4a8dc4 100644 --- a/SysML2.NET/Core/AutoGenPoco/ActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ActionUsage is a Usage that is also a Step, and, so, is typed by a Behavior. Nominally, if the @@ -100,8 +101,9 @@ public ActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -117,7 +119,7 @@ public ActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -167,7 +169,7 @@ public ActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -189,13 +191,14 @@ public ActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -482,7 +485,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -703,6 +706,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -745,8 +749,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -989,6 +994,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1054,7 +1060,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1105,7 +1111,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ActorMembership.cs b/SysML2.NET/Core/AutoGenPoco/ActorMembership.cs index 55236bf8..882eb76e 100644 --- a/SysML2.NET/Core/AutoGenPoco/ActorMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ActorMembership.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Parts; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ActorMembership is a ParameterMembership that identifies a PartUsage as an actor parameter, which @@ -158,7 +159,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -181,7 +182,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ActorMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -211,7 +212,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1621464305451_983612_1421", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1557528016548_548098_110830")] [Implements(implementation: "IActorMembership.OwnedActorParameter")] - public IPartUsage ownedActorParameter => this.ComputeOwnedActorParameter(); + public IPartUsage ownedActorParameter => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership)this).ownedMemberParameter as IPartUsage; /// /// The ownedRelationships of this Element that are Annotations, for which this Element is the @@ -240,7 +241,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -248,7 +249,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -258,7 +259,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IParameterMembership.OwnedMemberParameter")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership)this).ownedMemberParameter; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -266,7 +267,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The Feature that is identified as a parameter by this ParameterMembership. @@ -275,7 +276,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [RedefinedByProperty("IActorMembership.OwnedActorParameter")] [Implements(implementation: "IParameterMembership.OwnedMemberParameter")] - IFeature Kernel.Behaviors.IParameterMembership.ownedMemberParameter => this.ownedActorParameter; + IFeature Kernel.Behaviors.IParameterMembership.ownedMemberParameter => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; /// /// The shortName of the ownedMemberElement. @@ -283,7 +284,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -362,7 +363,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/AllocationDefinition.cs b/SysML2.NET/Core/AutoGenPoco/AllocationDefinition.cs index 080b3b2c..fe13ea41 100644 --- a/SysML2.NET/Core/AutoGenPoco/AllocationDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/AllocationDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Allocations using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AllocationDefinition is a ConnectionDefinition that specifies that some or all of the @@ -120,7 +121,7 @@ public AllocationDefinition() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [RedefinedByProperty("IConnectionDefinition.ConnectionEnd")] [Implements(implementation: "IAssociation.AssociationEnd")] - List Kernel.Associations.IAssociation.associationEnd => [.. this.connectionEnd]; + List Kernel.Associations.IAssociation.associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The Usages that define the things related by the ConnectionDefinition. @@ -128,7 +129,7 @@ public AllocationDefinition() [Property(xmiId: "_19_0_2_12e503d9_1591476421094_685440_682", 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_1562477648742_24204_22901")] [Implements(implementation: "IConnectionDefinition.ConnectionEnd")] - public List connectionEnd => this.ComputeConnectionEnd(); + public List connectionEnd => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd.OfType()]; /// /// The declared name of this Element. @@ -173,6 +174,7 @@ public AllocationDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -200,7 +202,7 @@ public AllocationDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -739,6 +741,7 @@ bool Core.Types.IType.IsSufficient /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -841,7 +844,7 @@ bool Core.Types.IType.IsSufficient [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -850,7 +853,7 @@ bool Core.Types.IType.IsSufficient [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -882,7 +885,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(AllocationDefinition)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -905,7 +908,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/AllocationUsage.cs b/SysML2.NET/Core/AutoGenPoco/AllocationUsage.cs index 1ae894fe..abd5bda1 100644 --- a/SysML2.NET/Core/AutoGenPoco/AllocationUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/AllocationUsage.cs @@ -65,6 +65,7 @@ namespace SysML2.NET.Core.POCO.Systems.Allocations using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AllocationUsage is a usage of an AllocationDefinition asserting the allocation of the source @@ -109,7 +110,7 @@ public AllocationUsage() [Property(xmiId: "_19_0_4_12e503d9_1611430742949_241425_999", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1594853499656_139435_802")] [Implements(implementation: "IAllocationUsage.AllocationDefinition")] - public List allocationDefinition => this.ComputeAllocationDefinition(); + public List allocationDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Connections.IConnectionUsage)this).connectionDefinition.OfType()]; /// /// The Associations that type the Connector. @@ -118,7 +119,7 @@ public AllocationUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IConnectionUsage.ConnectionDefinition")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Systems.Connections.IConnectionUsage)this).connectionDefinition]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public AllocationUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674983_471497_43284")] [RedefinedByProperty("IAllocationUsage.AllocationDefinition")] [Implements(implementation: "IConnectionUsage.ConnectionDefinition")] - List Systems.Connections.IConnectionUsage.connectionDefinition => [.. this.allocationDefinition]; + List Systems.Connections.IConnectionUsage.connectionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The endFeatures of a Connector, which redefine the endFeatures of the associations of the Connector. @@ -152,7 +153,7 @@ public AllocationUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -199,7 +200,7 @@ public AllocationUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -227,6 +228,7 @@ public AllocationUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -262,7 +264,7 @@ public AllocationUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -532,7 +534,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -753,6 +755,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -796,7 +799,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1050,6 +1053,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1155,7 +1159,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1164,7 +1168,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1196,7 +1200,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(AllocationUsage)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -1219,7 +1223,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -1239,7 +1243,7 @@ List Root.Elements.IRelationship.Target [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/AnalysisCaseDefinition.cs b/SysML2.NET/Core/AutoGenPoco/AnalysisCaseDefinition.cs index 0c05b10b..b4486a6a 100644 --- a/SysML2.NET/Core/AutoGenPoco/AnalysisCaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/AnalysisCaseDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.AnalysisCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AnalysisCaseDefinition is a CaseDefinition for the case of carrying out an analysis. @@ -94,6 +95,7 @@ public AnalysisCaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -102,6 +104,7 @@ public AnalysisCaseDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -116,6 +119,7 @@ public AnalysisCaseDefinition() /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation => this.ComputeCalculation(); @@ -157,13 +161,14 @@ public AnalysisCaseDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -721,6 +726,7 @@ public AnalysisCaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -800,7 +806,7 @@ public AnalysisCaseDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -856,6 +862,7 @@ public AnalysisCaseDefinition() /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/AnalysisCaseUsage.cs b/SysML2.NET/Core/AutoGenPoco/AnalysisCaseUsage.cs index 8c2a7495..efaace25 100644 --- a/SysML2.NET/Core/AutoGenPoco/AnalysisCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/AnalysisCaseUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.AnalysisCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AnalysisCaseUsage is a Usage of an AnalysisCaseDefinition. @@ -97,14 +98,17 @@ public AnalysisCaseUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -121,7 +125,7 @@ public AnalysisCaseUsage() [Property(xmiId: "_19_0_2_12e503d9_1591152217935_225164_2921", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_59601fc_1590257465225_855208_512")] [Implements(implementation: "IAnalysisCaseUsage.AnalysisCaseDefinition")] - public IAnalysisCaseDefinition analysisCaseDefinition => this.ComputeAnalysisCaseDefinition(); + public IAnalysisCaseDefinition analysisCaseDefinition => ((SysML2.NET.Core.POCO.Systems.Cases.ICaseUsage)this).caseDefinition as IAnalysisCaseDefinition; /// /// The Behaviors that type this Step. @@ -130,7 +134,7 @@ public AnalysisCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Function that is the type of this CalculationUsage. Nominally, this would be a @@ -139,9 +143,10 @@ public AnalysisCaseUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] - IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Systems.Cases.ICaseUsage)this).caseDefinition; + IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function; /// /// The CaseDefinition that is the type of this CaseUsage. @@ -150,7 +155,7 @@ public AnalysisCaseUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1588213526305_899324_302")] [RedefinedByProperty("IAnalysisCaseUsage.AnalysisCaseDefinition")] [Implements(implementation: "ICaseUsage.CaseDefinition")] - ICaseDefinition Systems.Cases.ICaseUsage.caseDefinition => this.analysisCaseDefinition; + ICaseDefinition Systems.Cases.ICaseUsage.caseDefinition => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition as ICaseDefinition; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -200,7 +205,7 @@ public AnalysisCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -222,13 +227,14 @@ public AnalysisCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -316,7 +322,7 @@ public AnalysisCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(AnalysisCaseUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -532,7 +538,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -753,6 +759,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -803,8 +810,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1047,6 +1055,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1112,7 +1121,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1170,6 +1179,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1191,7 +1201,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/AnnotatingElement.cs b/SysML2.NET/Core/AutoGenPoco/AnnotatingElement.cs index 5f740862..e8c74a72 100644 --- a/SysML2.NET/Core/AutoGenPoco/AnnotatingElement.cs +++ b/SysML2.NET/Core/AutoGenPoco/AnnotatingElement.cs @@ -33,6 +33,7 @@ namespace SysML2.NET.Core.POCO.Root.Annotations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AnnotatingElement is an Element that provides additional description of or metadata on some other diff --git a/SysML2.NET/Core/AutoGenPoco/Annotation.cs b/SysML2.NET/Core/AutoGenPoco/Annotation.cs index e7ee7c05..8e8ac9cb 100644 --- a/SysML2.NET/Core/AutoGenPoco/Annotation.cs +++ b/SysML2.NET/Core/AutoGenPoco/Annotation.cs @@ -33,6 +33,7 @@ namespace SysML2.NET.Core.POCO.Root.Annotations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An Annotation is a Relationship between an AnnotatingElement and the Element that is annotated by @@ -86,7 +87,7 @@ public Annotation() [Property(xmiId: "_18_5_3_12e503d9_1543094212714_638255_18408", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAnnotation.AnnotatingElement")] - public IAnnotatingElement annotatingElement => this.ComputeAnnotatingElement(); + public IAnnotatingElement annotatingElement => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Annotation)); /// /// The declared name of this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/AssertConstraintUsage.cs b/SysML2.NET/Core/AutoGenPoco/AssertConstraintUsage.cs index fd0fa8c7..f5c80bb5 100644 --- a/SysML2.NET/Core/AutoGenPoco/AssertConstraintUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/AssertConstraintUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Constraints using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AssertConstraintUsage is a ConstraintUsage that is also an Invariant and, so, is asserted to be @@ -115,7 +116,7 @@ public AssertConstraintUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -137,7 +138,7 @@ public AssertConstraintUsage() [Property(xmiId: "_19_0_2_12e503d9_1578067546711_751168_1745", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - public IPredicate constraintDefinition => this.ComputeConstraintDefinition(); + public IPredicate constraintDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -175,7 +176,7 @@ public AssertConstraintUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -197,13 +198,14 @@ public AssertConstraintUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -291,7 +293,7 @@ public AssertConstraintUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(AssertConstraintUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -514,7 +516,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -735,6 +737,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -778,7 +781,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1021,6 +1024,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1086,7 +1090,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1104,7 +1108,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => this.constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1157,7 +1161,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/AssignmentActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/AssignmentActionUsage.cs index 8e2cdc34..26755a34 100644 --- a/SysML2.NET/Core/AutoGenPoco/AssignmentActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/AssignmentActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AssignmentActionUsage is an ActionUsage that is defined, directly or indirectly, by the @@ -100,8 +101,9 @@ public AssignmentActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -117,7 +119,7 @@ public AssignmentActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -167,7 +169,7 @@ public AssignmentActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -189,13 +191,14 @@ public AssignmentActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -482,7 +485,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -703,6 +706,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -745,8 +749,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -989,6 +994,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1054,7 +1060,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1122,7 +1128,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Association.cs b/SysML2.NET/Core/AutoGenPoco/Association.cs index b6643bca..d86e0915 100644 --- a/SysML2.NET/Core/AutoGenPoco/Association.cs +++ b/SysML2.NET/Core/AutoGenPoco/Association.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Associations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An Association is a Relationship and a Classifier to enable classification of links between things @@ -86,7 +87,7 @@ public Association() [Property(xmiId: "_18_5_3_12e503d9_1562477648742_24204_22901", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [Implements(implementation: "IAssociation.AssociationEnd")] - public List associationEnd => this.ComputeAssociationEnd(); + public List associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The declared name of this Element. @@ -150,7 +151,7 @@ public Association() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -542,7 +543,7 @@ public Association() [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -551,7 +552,7 @@ public Association() [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -583,7 +584,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Association)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -606,7 +607,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/AssociationStructure.cs b/SysML2.NET/Core/AutoGenPoco/AssociationStructure.cs index 0cf04d1a..c3f77b6e 100644 --- a/SysML2.NET/Core/AutoGenPoco/AssociationStructure.cs +++ b/SysML2.NET/Core/AutoGenPoco/AssociationStructure.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Associations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AssociationStructure is an Association that is also a Structure, classifying link objects that @@ -88,7 +89,7 @@ public AssociationStructure() [Property(xmiId: "_18_5_3_12e503d9_1562477648742_24204_22901", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [Implements(implementation: "IAssociation.AssociationEnd")] - public List associationEnd => this.ComputeAssociationEnd(); + public List associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The declared name of this Element. @@ -152,7 +153,7 @@ public AssociationStructure() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -544,7 +545,7 @@ public AssociationStructure() [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -553,7 +554,7 @@ public AssociationStructure() [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -585,7 +586,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(AssociationStructure)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -608,7 +609,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/AttributeDefinition.cs b/SysML2.NET/Core/AutoGenPoco/AttributeDefinition.cs index 8c0f9de9..04b04f0b 100644 --- a/SysML2.NET/Core/AutoGenPoco/AttributeDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/AttributeDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Attributes using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AttributeDefinition is a Definition and a DataType of information about a quality or @@ -141,6 +142,7 @@ public AttributeDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -664,6 +666,7 @@ public AttributeDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/AttributeUsage.cs b/SysML2.NET/Core/AutoGenPoco/AttributeUsage.cs index 9478814a..0f9b119c 100644 --- a/SysML2.NET/Core/AutoGenPoco/AttributeUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/AttributeUsage.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Attributes using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An AttributeUsage is a Usage whose type is a DataType. Nominally, if the type is an @@ -107,7 +108,7 @@ public AttributeUsage() [Property(xmiId: "_18_5_3_12e503d9_1565471811429_523492_20975", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IAttributeUsage.AttributeDefinition")] - public List attributeDefinition => this.ComputeAttributeDefinition(); + public List attributeDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -157,7 +158,7 @@ public AttributeUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IAttributeUsage.AttributeDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.attributeDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -185,6 +186,7 @@ public AttributeUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -403,7 +405,7 @@ public AttributeUsage() [Property(xmiId: "_19_0_4_12e503d9_1624050661138_649455_27", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IAttributeUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).isReference; /// /// Whether this Usage is a referential Usage, that is, it has isComposite = false. @@ -411,7 +413,7 @@ public AttributeUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IAttributeUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool Systems.DefinitionAndUsage.IUsage.isReference => this.isReference; + bool Systems.DefinitionAndUsage.IUsage.isReference => this.ComputeIsReference(); /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -464,7 +466,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -685,6 +687,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -961,6 +964,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1059,7 +1063,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Behavior.cs b/SysML2.NET/Core/AutoGenPoco/Behavior.cs index ff49259b..44347b73 100644 --- a/SysML2.NET/Core/AutoGenPoco/Behavior.cs +++ b/SysML2.NET/Core/AutoGenPoco/Behavior.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Behaviors using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Behavior coordinates occurrences of other Behaviors, as well as changes in objects. Behaviors can @@ -111,7 +112,7 @@ public Behavior() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The Documentation owned by this Element. @@ -486,7 +487,7 @@ public Behavior() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/BindingConnector.cs b/SysML2.NET/Core/AutoGenPoco/BindingConnector.cs index 8e0f7586..22ed8455 100644 --- a/SysML2.NET/Core/AutoGenPoco/BindingConnector.cs +++ b/SysML2.NET/Core/AutoGenPoco/BindingConnector.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Connectors using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A BindingConnector is a binary Connector that requires its relatedFeatures to identify the same @@ -83,7 +84,7 @@ public BindingConnector() [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")] [Implements(implementation: "IConnector.Association")] - public List association => this.ComputeAssociation(); + public List association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -105,7 +106,7 @@ public BindingConnector() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -196,7 +197,7 @@ public BindingConnector() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -769,7 +770,7 @@ public BindingConnector() [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -778,7 +779,7 @@ public BindingConnector() [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -810,7 +811,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(BindingConnector)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -833,7 +834,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -853,7 +854,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. this.association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/BindingConnectorAsUsage.cs b/SysML2.NET/Core/AutoGenPoco/BindingConnectorAsUsage.cs index 44b9c1f9..20080c1a 100644 --- a/SysML2.NET/Core/AutoGenPoco/BindingConnectorAsUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/BindingConnectorAsUsage.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Connections using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A BindingConnectorAsUsage is both a BindingConnector and a ConnectorAsUsage. @@ -105,7 +106,7 @@ public BindingConnectorAsUsage() [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")] [Implements(implementation: "IConnector.Association")] - public List association => this.ComputeAssociation(); + public List association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -127,7 +128,7 @@ public BindingConnectorAsUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -173,7 +174,7 @@ public BindingConnectorAsUsage() [Property(xmiId: "_19_0_2_12e503d9_1591477641252_179221_958", 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")] [Implements(implementation: "IUsage.Definition")] - public List definition => this.ComputeDefinition(); + public List definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -201,6 +202,7 @@ public BindingConnectorAsUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -236,7 +238,7 @@ public BindingConnectorAsUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -480,7 +482,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +703,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -988,6 +991,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1076,7 +1080,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1085,7 +1089,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1117,7 +1121,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(BindingConnectorAsUsage)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -1140,7 +1144,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -1160,7 +1164,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. this.association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/BooleanExpression.cs b/SysML2.NET/Core/AutoGenPoco/BooleanExpression.cs index be85d7ed..cd353fe6 100644 --- a/SysML2.NET/Core/AutoGenPoco/BooleanExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/BooleanExpression.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A BooleanExpression is a Boolean-valued Expression whose type is a Predicate. It represents a @@ -80,7 +81,7 @@ public BooleanExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -141,7 +142,7 @@ public BooleanExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -227,7 +228,7 @@ public BooleanExpression() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction IExpression.function => this.predicate; + IFunction IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(BooleanExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -722,7 +723,7 @@ public BooleanExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The Predicate that types the Expression. @@ -730,7 +731,7 @@ public BooleanExpression() [Property(xmiId: "_19_0_2_12e503d9_1578025035149_386_969", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [Implements(implementation: "IBooleanExpression.Predicate")] - public IPredicate predicate => this.ComputePredicate(); + public IPredicate predicate => ((IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/CalculationDefinition.cs b/SysML2.NET/Core/AutoGenPoco/CalculationDefinition.cs index 2e25d8aa..95f47dd5 100644 --- a/SysML2.NET/Core/AutoGenPoco/CalculationDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/CalculationDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Calculations using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A CalculationDefinition is an ActionDefinition that also defines a Function producing a @@ -95,6 +96,7 @@ public CalculationDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -109,6 +111,7 @@ public CalculationDefinition() /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation => this.ComputeCalculation(); @@ -150,13 +153,14 @@ public CalculationDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -706,6 +710,7 @@ public CalculationDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -785,7 +790,7 @@ public CalculationDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/CalculationUsage.cs b/SysML2.NET/Core/AutoGenPoco/CalculationUsage.cs index 04d81679..9af61174 100644 --- a/SysML2.NET/Core/AutoGenPoco/CalculationUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/CalculationUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Calculations using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A CalculationUsage is an ActionUsage that is also an Expression, and, so, is typed by a Function. @@ -100,8 +101,10 @@ public CalculationUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -117,7 +120,7 @@ public CalculationUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Function that is the type of this CalculationUsage. Nominally, this would be a @@ -126,8 +129,9 @@ public CalculationUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] - public IFunction calculationDefinition => this.ComputeCalculationDefinition(); + public IFunction calculationDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -177,7 +181,7 @@ public CalculationUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -199,13 +203,14 @@ public CalculationUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -293,7 +298,7 @@ public CalculationUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => this.calculationDefinition; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(CalculationUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -509,7 +514,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -730,6 +735,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -772,8 +778,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1016,6 +1023,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1081,7 +1089,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1143,7 +1151,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/CaseDefinition.cs b/SysML2.NET/Core/AutoGenPoco/CaseDefinition.cs index bef7d884..ec642a23 100644 --- a/SysML2.NET/Core/AutoGenPoco/CaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/CaseDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Cases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A CaseDefinition is a CalculationDefinition for a process, often involving collecting evidence or @@ -96,6 +97,7 @@ public CaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -104,6 +106,7 @@ public CaseDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -118,6 +121,7 @@ public CaseDefinition() /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation => this.ComputeCalculation(); @@ -159,13 +163,14 @@ public CaseDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -723,6 +728,7 @@ public CaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -802,7 +808,7 @@ public CaseDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -848,6 +854,7 @@ public CaseDefinition() /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/CaseUsage.cs b/SysML2.NET/Core/AutoGenPoco/CaseUsage.cs index bdf9f500..5dfa1506 100644 --- a/SysML2.NET/Core/AutoGenPoco/CaseUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/CaseUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Cases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A CaseUsage is a Usage of a CaseDefinition. @@ -97,14 +98,17 @@ public CaseUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -122,7 +126,7 @@ public CaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Function that is the type of this CalculationUsage. Nominally, this would be a @@ -131,9 +135,10 @@ public CaseUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] - IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => this.caseDefinition; + IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function; /// /// The CaseDefinition that is the type of this CaseUsage. @@ -141,7 +146,7 @@ public CaseUsage() [Property(xmiId: "_19_0_2_59601fc_1590257465225_855208_512", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1588213526305_899324_302")] [Implements(implementation: "ICaseUsage.CaseDefinition")] - public ICaseDefinition caseDefinition => this.ComputeCaseDefinition(); + public ICaseDefinition caseDefinition => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition as ICaseDefinition; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -191,7 +196,7 @@ public CaseUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -213,13 +218,14 @@ public CaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -307,7 +313,7 @@ public CaseUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(CaseUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -523,7 +529,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -744,6 +750,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -794,8 +801,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1038,6 +1046,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1103,7 +1112,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1152,6 +1161,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1173,7 +1183,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Class.cs b/SysML2.NET/Core/AutoGenPoco/Class.cs index 023deca2..63f43a27 100644 --- a/SysML2.NET/Core/AutoGenPoco/Class.cs +++ b/SysML2.NET/Core/AutoGenPoco/Class.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Classes using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Class is a Classifier of things (in the universe) that can be distinguished without regard to how diff --git a/SysML2.NET/Core/AutoGenPoco/Classifier.cs b/SysML2.NET/Core/AutoGenPoco/Classifier.cs index 1031c15d..1174e3b3 100644 --- a/SysML2.NET/Core/AutoGenPoco/Classifier.cs +++ b/SysML2.NET/Core/AutoGenPoco/Classifier.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Core.Classifiers using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Classifier is a Type that classifies:
  • Things (in the universe) regardless of how Features diff --git a/SysML2.NET/Core/AutoGenPoco/CollectExpression.cs b/SysML2.NET/Core/AutoGenPoco/CollectExpression.cs index fc5617fe..c50d1d33 100644 --- a/SysML2.NET/Core/AutoGenPoco/CollectExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/CollectExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A CollectExpression is an OperatorExpression whose operator is "collect", which resolves to the @@ -91,7 +92,7 @@ public CollectExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +153,7 @@ public CollectExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -237,7 +238,7 @@ public CollectExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(CollectExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -763,7 +764,7 @@ string IOperatorExpression.Operator [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Comment.cs b/SysML2.NET/Core/AutoGenPoco/Comment.cs index f369b3df..b8aa9738 100644 --- a/SysML2.NET/Core/AutoGenPoco/Comment.cs +++ b/SysML2.NET/Core/AutoGenPoco/Comment.cs @@ -33,6 +33,7 @@ namespace SysML2.NET.Core.POCO.Root.Annotations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Comment is an AnnotatingElement whose body in some way describes its annotatedElements. diff --git a/SysML2.NET/Core/AutoGenPoco/ConcernDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ConcernDefinition.cs index 0b35b6b5..1591a502 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConcernDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConcernDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConcernDefinition is a RequirementDefinition that one or more stakeholders may be interested in @@ -95,6 +96,7 @@ public ConcernDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -160,13 +162,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -725,6 +728,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -804,7 +808,7 @@ string Root.Elements.IElement.DeclaredShortName [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -862,6 +866,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -878,6 +883,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/ConcernUsage.cs b/SysML2.NET/Core/AutoGenPoco/ConcernUsage.cs index 7cdd839d..99eb4e69 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConcernUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConcernUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConcernUsage is a Usage of a ConcernDefinition. The ownedStakeholder features of the ConcernUsage @@ -98,6 +99,7 @@ public ConcernUsage() /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -125,7 +127,7 @@ public ConcernUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -145,7 +147,7 @@ public ConcernUsage() [Property(xmiId: "_19_0_4_12e503d9_1617052514912_780627_2256", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1583000408905_769743_1223")] [Implements(implementation: "IConcernUsage.ConcernDefinition")] - public IConcernDefinition concernDefinition => this.ComputeConcernDefinition(); + public IConcernDefinition concernDefinition => ((IRequirementUsage)this).requirementDefinition as IConcernDefinition; /// /// The (single) Predicate that is the type of this ConstraintUsage. Nominally, this will be a @@ -156,7 +158,7 @@ public ConcernUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [RedefinedByProperty("IRequirementUsage.RequirementDefinition")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage)this).requirementDefinition; + IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -202,7 +204,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -224,13 +226,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -327,7 +330,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(ConcernUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -543,7 +546,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -764,6 +767,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -807,7 +811,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1050,6 +1054,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1115,7 +1120,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1133,7 +1138,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1174,7 +1179,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578067546711_751168_1745")] [RedefinedByProperty("IConcernUsage.ConcernDefinition")] [Implements(implementation: "IRequirementUsage.RequirementDefinition")] - IRequirementDefinition IRequirementUsage.requirementDefinition => this.concernDefinition; + IRequirementDefinition IRequirementUsage.requirementDefinition => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition as IRequirementDefinition; /// /// An output parameter of the Expression whose value is the result of the Expression. The result of an @@ -1202,6 +1207,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -1210,6 +1216,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1239,7 +1246,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ConjugatedPortDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ConjugatedPortDefinition.cs index 6b3a4462..14989f72 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConjugatedPortDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConjugatedPortDefinition.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.Ports using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConjugatedPortDefinition is a PortDefinition that is a PortDefinition of its original @@ -150,6 +151,7 @@ public ConjugatedPortDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -344,7 +346,7 @@ public ConjugatedPortDefinition() [Property(xmiId: "_19_0_2_12e503d9_1575484364017_387810_990", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674986_474739_43306")] [Implements(implementation: "IConjugatedPortDefinition.OriginalPortDefinition")] - public IPortDefinition originalPortDefinition => this.ComputeOriginalPortDefinition(); + public IPortDefinition originalPortDefinition => ((SysML2.NET.Core.POCO.Root.Elements.IElement)this).owningNamespace as IPortDefinition; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -428,7 +430,7 @@ public ConjugatedPortDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_217766_16748")] [RedefinedByProperty("IConjugatedPortDefinition.OwnedPortConjugator")] [Implements(implementation: "IType.OwnedConjugator")] - IConjugation Core.Types.IType.ownedConjugator => this.ownedPortConjugator; + IConjugation Core.Types.IType.ownedConjugator => this.ComputeOwnedConjugator(); /// /// The ConnectorAsUsages that are ownedUsages of this Definition. Note that this list includes @@ -613,7 +615,7 @@ public ConjugatedPortDefinition() [Property(xmiId: "_19_0_2_12e503d9_1575484344901_850046_947", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1575482646809_280165_440")] [Implements(implementation: "IConjugatedPortDefinition.OwnedPortConjugator")] - public IPortConjugation ownedPortConjugator => this.ComputeOwnedPortConjugator(); + public IPortConjugation ownedPortConjugator => ((SysML2.NET.Core.POCO.Core.Types.IType)this).ownedConjugator as IPortConjugation; /// /// The ReferenceUsages that are ownedUsages of this Definition. @@ -699,6 +701,7 @@ public ConjugatedPortDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -759,7 +762,7 @@ public ConjugatedPortDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674980_717955_43271")] [RedefinedByProperty("IConjugatedPortDefinition.OriginalPortDefinition")] [Implements(implementation: "IElement.OwningNamespace")] - INamespace Root.Elements.IElement.owningNamespace => this.originalPortDefinition; + INamespace Root.Elements.IElement.owningNamespace => this.ComputeOwningNamespace(); /// /// The Relationship for which this Element is an ownedRelatedElement, if any. diff --git a/SysML2.NET/Core/AutoGenPoco/ConjugatedPortTyping.cs b/SysML2.NET/Core/AutoGenPoco/ConjugatedPortTyping.cs index 306deb62..ccd1bc31 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConjugatedPortTyping.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConjugatedPortTyping.cs @@ -36,6 +36,7 @@ namespace SysML2.NET.Core.POCO.Systems.Ports using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConjugatedPortTyping is a FeatureTyping whose type is a ConjugatedPortDefinition. (This @@ -225,7 +226,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543180501615_13273_21101")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [Implements(implementation: "IFeatureTyping.OwningFeature")] - public IFeature owningFeature => this.ComputeOwningFeature(); + public IFeature owningFeature => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IFeature; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -275,7 +276,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("IFeatureTyping.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The originalPortDefinition of the conjugatedPortDefinition of this ConjugatedPortTyping. diff --git a/SysML2.NET/Core/AutoGenPoco/Conjugation.cs b/SysML2.NET/Core/AutoGenPoco/Conjugation.cs index ff147c20..a42d7c18 100644 --- a/SysML2.NET/Core/AutoGenPoco/Conjugation.cs +++ b/SysML2.NET/Core/AutoGenPoco/Conjugation.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Conjugation is a Relationship between two types in which the conjugatedType inherits all the diff --git a/SysML2.NET/Core/AutoGenPoco/ConnectionDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ConnectionDefinition.cs index 8b8af231..141f22a1 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConnectionDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConnectionDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Connections using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConnectionDefinition is a PartDefinition that is also an AssociationStructure. The end Features of @@ -108,7 +109,7 @@ public ConnectionDefinition() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [RedefinedByProperty("IConnectionDefinition.ConnectionEnd")] [Implements(implementation: "IAssociation.AssociationEnd")] - List Kernel.Associations.IAssociation.associationEnd => [.. this.connectionEnd]; + List Kernel.Associations.IAssociation.associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The Usages that define the things related by the ConnectionDefinition. @@ -116,7 +117,7 @@ public ConnectionDefinition() [Property(xmiId: "_19_0_2_12e503d9_1591476421094_685440_682", 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_1562477648742_24204_22901")] [Implements(implementation: "IConnectionDefinition.ConnectionEnd")] - public List connectionEnd => this.ComputeConnectionEnd(); + public List connectionEnd => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd.OfType()]; /// /// The declared name of this Element. @@ -161,6 +162,7 @@ public ConnectionDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -188,7 +190,7 @@ public ConnectionDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -727,6 +729,7 @@ bool Core.Types.IType.IsSufficient /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -829,7 +832,7 @@ bool Core.Types.IType.IsSufficient [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -838,7 +841,7 @@ bool Core.Types.IType.IsSufficient [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -870,7 +873,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ConnectionDefinition)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -893,7 +896,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/ConnectionUsage.cs b/SysML2.NET/Core/AutoGenPoco/ConnectionUsage.cs index 58eb8f2d..1340142f 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConnectionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConnectionUsage.cs @@ -65,6 +65,7 @@ namespace SysML2.NET.Core.POCO.Systems.Connections using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConnectionUsage is a ConnectorAsUsage that is also a PartUsage. Nominally, if its type is a @@ -112,7 +113,7 @@ public ConnectionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IConnectionUsage.ConnectionDefinition")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. this.connectionDefinition]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -135,7 +136,7 @@ public ConnectionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674983_471497_43284")] [Implements(implementation: "IConnectionUsage.ConnectionDefinition")] - public List connectionDefinition => this.ComputeConnectionDefinition(); + public List connectionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The endFeatures of a Connector, which redefine the endFeatures of the associations of the Connector. @@ -145,7 +146,7 @@ public ConnectionUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -192,7 +193,7 @@ public ConnectionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -220,6 +221,7 @@ public ConnectionUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -255,7 +257,7 @@ public ConnectionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -525,7 +527,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -746,6 +748,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -789,7 +792,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1043,6 +1046,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1148,7 +1152,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1157,7 +1161,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1189,7 +1193,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ConnectionUsage)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -1212,7 +1216,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -1232,7 +1236,7 @@ List Root.Elements.IRelationship.Target [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Connector.cs b/SysML2.NET/Core/AutoGenPoco/Connector.cs index 6274021d..1d346433 100644 --- a/SysML2.NET/Core/AutoGenPoco/Connector.cs +++ b/SysML2.NET/Core/AutoGenPoco/Connector.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Connectors using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Connector is a usage of Associations, with links restricted according to instances of the Type in @@ -85,7 +86,7 @@ public Connector() [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")] [Implements(implementation: "IConnector.Association")] - public List association => this.ComputeAssociation(); + public List association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -107,7 +108,7 @@ public Connector() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -198,7 +199,7 @@ public Connector() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -771,7 +772,7 @@ public Connector() [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -780,7 +781,7 @@ public Connector() [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -812,7 +813,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Connector)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -835,7 +836,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -855,7 +856,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. this.association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ConstraintDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ConstraintDefinition.cs index 436806ef..cc6f3928 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConstraintDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConstraintDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Constraints using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConstraintDefinition is an OccurrenceDefinition that is also a Predicate that defines a constraint @@ -133,13 +134,14 @@ public ConstraintDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -689,6 +691,7 @@ public ConstraintDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -768,7 +771,7 @@ public ConstraintDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ConstraintUsage.cs b/SysML2.NET/Core/AutoGenPoco/ConstraintUsage.cs index aa8e0bd2..2e9c446a 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConstraintUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConstraintUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Constraints using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConstraintUsage is an OccurrenceUsage that is also a BooleanExpression, and, so, is typed by a @@ -107,7 +108,7 @@ public ConstraintUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -129,7 +130,7 @@ public ConstraintUsage() [Property(xmiId: "_19_0_2_12e503d9_1578067546711_751168_1745", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - public IPredicate constraintDefinition => this.ComputeConstraintDefinition(); + public IPredicate constraintDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -167,7 +168,7 @@ public ConstraintUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -189,13 +190,14 @@ public ConstraintUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -283,7 +285,7 @@ public ConstraintUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(ConstraintUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -499,7 +501,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -720,6 +722,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -763,7 +766,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1006,6 +1009,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1071,7 +1075,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1089,7 +1093,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => this.constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1142,7 +1146,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ConstructorExpression.cs b/SysML2.NET/Core/AutoGenPoco/ConstructorExpression.cs index e1297753..c21a67ec 100644 --- a/SysML2.NET/Core/AutoGenPoco/ConstructorExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/ConstructorExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ConstructorExpression is an InstantiationExpression whose result specializes its instantiatedType, @@ -92,7 +93,7 @@ public ConstructorExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -153,7 +154,7 @@ public ConstructorExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -238,7 +239,7 @@ public ConstructorExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(ConstructorExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -741,7 +742,7 @@ public ConstructorExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/CrossSubsetting.cs b/SysML2.NET/Core/AutoGenPoco/CrossSubsetting.cs index 1dfb0962..58ba666f 100644 --- a/SysML2.NET/Core/AutoGenPoco/CrossSubsetting.cs +++ b/SysML2.NET/Core/AutoGenPoco/CrossSubsetting.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// CrossSubsetting is a kind of Subsetting for end Features, as identified by crossingFeature, to @@ -100,7 +101,7 @@ public CrossSubsetting() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674987_236250_43311")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674967_140305_43206")] [Implements(implementation: "ICrossSubsetting.CrossingFeature")] - public IFeature crossingFeature => this.ComputeCrossingFeature(); + public IFeature crossingFeature => ((ISubsetting)this).owningFeature; /// /// The declared name of this Element. @@ -247,7 +248,7 @@ IType Core.Types.ISpecialization.General [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [RedefinedByProperty("ICrossSubsetting.CrossingFeature")] [Implements(implementation: "ISubsetting.OwningFeature")] - IFeature ISubsetting.owningFeature => this.crossingFeature; + IFeature ISubsetting.owningFeature => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IFeature; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -297,7 +298,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubsetting.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => ((SysML2.NET.Core.POCO.Core.Features.ISubsetting)this).owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/DataType.cs b/SysML2.NET/Core/AutoGenPoco/DataType.cs index af88e3f9..f31e6d27 100644 --- a/SysML2.NET/Core/AutoGenPoco/DataType.cs +++ b/SysML2.NET/Core/AutoGenPoco/DataType.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.DataTypes using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A DataType is a Classifier of things (in the universe) that can only be distinguished by how they diff --git a/SysML2.NET/Core/AutoGenPoco/DecisionNode.cs b/SysML2.NET/Core/AutoGenPoco/DecisionNode.cs index 414066bd..ec125508 100644 --- a/SysML2.NET/Core/AutoGenPoco/DecisionNode.cs +++ b/SysML2.NET/Core/AutoGenPoco/DecisionNode.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A DecisionNode is a ControlNode that makes a selection from its outgoing Successions. @@ -97,8 +98,9 @@ public DecisionNode() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -114,7 +116,7 @@ public DecisionNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -164,7 +166,7 @@ public DecisionNode() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -186,13 +188,14 @@ public DecisionNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -479,7 +482,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -700,6 +703,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -742,8 +746,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -986,6 +991,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1051,7 +1057,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1102,7 +1108,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Definition.cs b/SysML2.NET/Core/AutoGenPoco/Definition.cs index b20b8043..81315de8 100644 --- a/SysML2.NET/Core/AutoGenPoco/Definition.cs +++ b/SysML2.NET/Core/AutoGenPoco/Definition.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.DefinitionAndUsage using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Definition is a Classifier of Usages. The actual kinds of Definition that may appear in a model @@ -145,6 +146,7 @@ public Definition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -668,6 +670,7 @@ public Definition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/Dependency.cs b/SysML2.NET/Core/AutoGenPoco/Dependency.cs index 0f325936..f8f23227 100644 --- a/SysML2.NET/Core/AutoGenPoco/Dependency.cs +++ b/SysML2.NET/Core/AutoGenPoco/Dependency.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Root.Dependencies using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Dependency is a Relationship that indicates that one or more client Elements require one more diff --git a/SysML2.NET/Core/AutoGenPoco/Differencing.cs b/SysML2.NET/Core/AutoGenPoco/Differencing.cs index b5681737..fa8d6892 100644 --- a/SysML2.NET/Core/AutoGenPoco/Differencing.cs +++ b/SysML2.NET/Core/AutoGenPoco/Differencing.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Differencing is a Relationship that makes its differencingType one of the differencingTypes of its @@ -318,7 +319,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IDifferencing.TypeDifferenced")] - public IType typeDifferenced => this.ComputeTypeDifferenced(); + public IType typeDifferenced => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Differencing)); /// diff --git a/SysML2.NET/Core/AutoGenPoco/Disjoining.cs b/SysML2.NET/Core/AutoGenPoco/Disjoining.cs index e9e9380e..4d77b9d6 100644 --- a/SysML2.NET/Core/AutoGenPoco/Disjoining.cs +++ b/SysML2.NET/Core/AutoGenPoco/Disjoining.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Disjoining is a Relationship between Types asserted to have interpretations that are not shared diff --git a/SysML2.NET/Core/AutoGenPoco/Documentation.cs b/SysML2.NET/Core/AutoGenPoco/Documentation.cs index ab6a0c3d..d608ab4d 100644 --- a/SysML2.NET/Core/AutoGenPoco/Documentation.cs +++ b/SysML2.NET/Core/AutoGenPoco/Documentation.cs @@ -33,6 +33,7 @@ namespace SysML2.NET.Core.POCO.Root.Annotations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Documentation is a Comment that specifically documents a documentedElement, which must be its owner. @@ -74,7 +75,7 @@ public Documentation() [Property(xmiId: "_19_0_2_12e503d9_1594145755058_99428_86", aggregation: AggregationKind.None, lowerValue: 1, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IDocumentation.DocumentedElement")] [Implements(implementation: "IAnnotatingElement.AnnotatedElement")] - List IAnnotatingElement.annotatedElement => this.documentedElement != null ? [this.documentedElement] : []; + List IAnnotatingElement.annotatedElement => this.ComputeAnnotatedElement(); /// /// The Annotations that relate this AnnotatingElement to its annotatedElements. This includes the @@ -125,7 +126,7 @@ public Documentation() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092869879_744477_17277")] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1594145755058_99428_86")] [Implements(implementation: "IDocumentation.DocumentedElement")] - public IElement documentedElement => this.ComputeDocumentedElement(); + public IElement documentedElement => ((IAnnotatingElement)this).annotatedElement.SingleOrDefaultStrict(nameof(Documentation)); /// /// The globally unique identifier for this Element. This is intended to be set by tooling, and it must diff --git a/SysML2.NET/Core/AutoGenPoco/ElementFilterMembership.cs b/SysML2.NET/Core/AutoGenPoco/ElementFilterMembership.cs index f51f32f2..5d705459 100644 --- a/SysML2.NET/Core/AutoGenPoco/ElementFilterMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ElementFilterMembership.cs @@ -36,6 +36,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Packages using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// ElementFilterMembership is a Membership between a Namespace and a model-level evaluable @@ -83,7 +84,7 @@ public ElementFilterMembership() [Property(xmiId: "_19_0_4_12e503d9_1605762464250_876969_157", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [Implements(implementation: "IElementFilterMembership.Condition")] - public IExpression condition => this.ComputeCondition(); + public IExpression condition => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IExpression; /// /// The declared name of this Element. @@ -164,7 +165,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -186,7 +187,7 @@ string Root.Namespaces.IMembership.MemberName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - public INamespace membershipOwningNamespace => this.ComputeMembershipOwningNamespace(); + public INamespace membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ElementFilterMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -237,7 +238,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IElementFilterMembership.Condition")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => this.condition; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -245,7 +246,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The name of the ownedMemberElement. @@ -253,7 +254,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -261,7 +262,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. diff --git a/SysML2.NET/Core/AutoGenPoco/EndFeatureMembership.cs b/SysML2.NET/Core/AutoGenPoco/EndFeatureMembership.cs index 51401768..5cb2c2e2 100644 --- a/SysML2.NET/Core/AutoGenPoco/EndFeatureMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/EndFeatureMembership.cs @@ -36,6 +36,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// EndFeatureMembership is a FeatureMembership that requires its memberFeature be owned and have isEnd @@ -153,7 +154,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -176,7 +177,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(EndFeatureMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -227,7 +228,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -235,14 +236,14 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// [Property(xmiId: "_19_0_4_12e503d9_1625459277304_568293_5526", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IEndFeatureMembership.OwnedMemberFeature")] - public IFeature ownedMemberFeature => this.ComputeOwnedMemberFeature(); + public IFeature ownedMemberFeature => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -252,7 +253,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IEndFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedMemberFeature; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -260,7 +261,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -268,7 +269,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -347,7 +348,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/EnumerationDefinition.cs b/SysML2.NET/Core/AutoGenPoco/EnumerationDefinition.cs index 592f7f4c..e4c4f013 100644 --- a/SysML2.NET/Core/AutoGenPoco/EnumerationDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/EnumerationDefinition.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.Enumerations using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An EnumerationDefinition is an AttributeDefinition all of whose instances are given by an explicit @@ -138,6 +139,7 @@ public EnumerationDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -173,7 +175,7 @@ public EnumerationDefinition() [Property(xmiId: "_19_0_4_12e503d9_1606946634788_959145_265", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1590979457191_746167_951")] [Implements(implementation: "IEnumerationDefinition.EnumeratedValue")] - public List enumeratedValue => this.ComputeEnumeratedValue(); + public List enumeratedValue => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IDefinition)this).variant.OfType()]; /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -687,6 +689,7 @@ bool Systems.DefinitionAndUsage.IDefinition.IsVariation /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -817,7 +820,7 @@ bool Systems.DefinitionAndUsage.IDefinition.IsVariation [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674979_259543_43268")] [RedefinedByProperty("IEnumerationDefinition.EnumeratedValue")] [Implements(implementation: "IDefinition.Variant")] - List Systems.DefinitionAndUsage.IDefinition.variant => [.. this.enumeratedValue]; + List Systems.DefinitionAndUsage.IDefinition.variant => this.ComputeVariant(); /// /// The ownedMemberships of this Definition that are VariantMemberships. If isVariation = true, then diff --git a/SysML2.NET/Core/AutoGenPoco/EnumerationUsage.cs b/SysML2.NET/Core/AutoGenPoco/EnumerationUsage.cs index b06aa228..ba5bf3cd 100644 --- a/SysML2.NET/Core/AutoGenPoco/EnumerationUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/EnumerationUsage.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Enumerations using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An EnumerationUsage is an AttributeUsage whose attributeDefinition is an EnumerationDefinition. @@ -103,7 +104,7 @@ public EnumerationUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [RedefinedByProperty("IEnumerationUsage.EnumerationDefinition")] [Implements(implementation: "IAttributeUsage.AttributeDefinition")] - List Systems.Attributes.IAttributeUsage.attributeDefinition => this.enumerationDefinition != null ? [this.enumerationDefinition] : []; + List Systems.Attributes.IAttributeUsage.attributeDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -153,7 +154,7 @@ public EnumerationUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IAttributeUsage.AttributeDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Systems.Attributes.IAttributeUsage)this).attributeDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -181,6 +182,7 @@ public EnumerationUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -233,7 +235,7 @@ public EnumerationUsage() [Property(xmiId: "_19_0_4_12e503d9_1606946962858_570633_331", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565471811429_523492_20975")] [Implements(implementation: "IEnumerationUsage.EnumerationDefinition")] - public IEnumerationDefinition enumerationDefinition => this.ComputeEnumerationDefinition(); + public IEnumerationDefinition enumerationDefinition => ((SysML2.NET.Core.POCO.Systems.Attributes.IAttributeUsage)this).attributeDefinition.OfType().SingleOrDefaultStrict(nameof(EnumerationUsage)); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -407,7 +409,7 @@ public EnumerationUsage() [Property(xmiId: "_19_0_4_12e503d9_1624050661138_649455_27", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IAttributeUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).isReference; /// /// Whether this Usage is a referential Usage, that is, it has isComposite = false. @@ -415,7 +417,7 @@ public EnumerationUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IAttributeUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool Systems.DefinitionAndUsage.IUsage.isReference => this.isReference; + bool Systems.DefinitionAndUsage.IUsage.isReference => this.ComputeIsReference(); /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -468,7 +470,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -689,6 +691,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -965,6 +968,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1063,7 +1067,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/EventOccurrenceUsage.cs b/SysML2.NET/Core/AutoGenPoco/EventOccurrenceUsage.cs index 15308406..ae2fadb0 100644 --- a/SysML2.NET/Core/AutoGenPoco/EventOccurrenceUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/EventOccurrenceUsage.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Occurrences using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An EventOccurrenceUsage is an OccurrenceUsage that represents another OccurrenceUsage occurring as a @@ -148,7 +149,7 @@ public EventOccurrenceUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -176,6 +177,7 @@ public EventOccurrenceUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -419,7 +421,7 @@ public EventOccurrenceUsage() [Property(xmiId: "_19_0_4_12e503d9_1672526906017_786343_306", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IEventOccurrenceUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).isReference; /// /// Whether this Usage is a referential Usage, that is, it has isComposite = false. @@ -427,7 +429,7 @@ public EventOccurrenceUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IEventOccurrenceUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool Systems.DefinitionAndUsage.IUsage.isReference => this.isReference; + bool Systems.DefinitionAndUsage.IUsage.isReference => this.ComputeIsReference(); /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -480,7 +482,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +703,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -744,7 +747,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -987,6 +990,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1094,7 +1098,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ExhibitStateUsage.cs b/SysML2.NET/Core/AutoGenPoco/ExhibitStateUsage.cs index a4d333d6..32559d1f 100644 --- a/SysML2.NET/Core/AutoGenPoco/ExhibitStateUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ExhibitStateUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.States using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ExhibitStateUsage is a StateUsage that represents the exhibiting of a StateUsage. Unless it is @@ -100,9 +101,10 @@ public ExhibitStateUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [RedefinedByProperty("IStateUsage.StateDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - List Systems.Actions.IActionUsage.actionDefinition => [.. this.stateDefinition]; + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -118,7 +120,7 @@ public ExhibitStateUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. ((SysML2.NET.Core.POCO.Systems.Actions.IActionUsage)this).actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -168,7 +170,7 @@ public ExhibitStateUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -190,13 +192,14 @@ public ExhibitStateUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -269,7 +272,7 @@ public ExhibitStateUsage() [Property(xmiId: "_19_0_4_12e503d9_1622831790393_676695_195", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IPerformActionUsage.PerformedAction")] [Implements(implementation: "IEventOccurrenceUsage.EventOccurrence")] - IOccurrenceUsage Systems.Occurrences.IEventOccurrenceUsage.eventOccurrence => ((SysML2.NET.Core.POCO.Systems.Actions.IPerformActionUsage)this).performedAction; + IOccurrenceUsage Systems.Occurrences.IEventOccurrenceUsage.eventOccurrence => this.ComputeEventOccurrence(); /// /// The StateUsage to be exhibited by the ExhibitStateUsage. It is the performedAction of the @@ -278,7 +281,7 @@ public ExhibitStateUsage() [Property(xmiId: "_19_0_2_12e503d9_1577070999039_688794_260", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1567740791820_867719_18017")] [Implements(implementation: "IExhibitStateUsage.ExhibitedState")] - public IStateUsage exhibitedState => this.ComputeExhibitedState(); + public IStateUsage exhibitedState => ((SysML2.NET.Core.POCO.Systems.Actions.IPerformActionUsage)this).performedAction as IStateUsage; /// /// The ActionUsage of this StateUsage to be performed on exit to the state defined by the @@ -486,7 +489,7 @@ public ExhibitStateUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IEventOccurrenceUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool Systems.DefinitionAndUsage.IUsage.isReference => this.isReference; + bool Systems.DefinitionAndUsage.IUsage.isReference => this.ComputeIsReference(); /// /// Always true for an EventOccurrenceUsage. @@ -494,7 +497,7 @@ public ExhibitStateUsage() [Property(xmiId: "_19_0_4_12e503d9_1672526906017_786343_306", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IEventOccurrenceUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).isReference; /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -547,7 +550,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -768,6 +771,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -810,8 +814,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1054,6 +1059,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1119,7 +1125,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ActionUsage to be performed by this PerformedActionUsage. It is the eventOccurrence of the @@ -1129,7 +1135,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1622831790393_676695_195")] [RedefinedByProperty("IExhibitStateUsage.ExhibitedState")] [Implements(implementation: "IPerformActionUsage.PerformedAction")] - IActionUsage Systems.Actions.IPerformActionUsage.performedAction => this.exhibitedState; + IActionUsage Systems.Actions.IPerformActionUsage.performedAction => ((SysML2.NET.Core.POCO.Systems.Occurrences.IEventOccurrenceUsage)this).eventOccurrence as IActionUsage; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1169,7 +1175,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1575588456737_49200_1438", 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_1565500905804_589845_30779")] [Implements(implementation: "IStateUsage.StateDefinition")] - public List stateDefinition => this.ComputeStateDefinition(); + public List stateDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// The TextualRepresentations that annotate this Element. @@ -1189,7 +1195,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Expression.cs b/SysML2.NET/Core/AutoGenPoco/Expression.cs index e87772f9..1a18bfca 100644 --- a/SysML2.NET/Core/AutoGenPoco/Expression.cs +++ b/SysML2.NET/Core/AutoGenPoco/Expression.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An Expression is a Step that is typed by a Function. An Expression that also has a Function as its @@ -83,7 +84,7 @@ public Expression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -144,7 +145,7 @@ public Expression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -229,7 +230,7 @@ public Expression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(Expression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -724,7 +725,7 @@ public Expression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Feature.cs b/SysML2.NET/Core/AutoGenPoco/Feature.cs index dd33daea..3fc5bec4 100644 --- a/SysML2.NET/Core/AutoGenPoco/Feature.cs +++ b/SysML2.NET/Core/AutoGenPoco/Feature.cs @@ -37,6 +37,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Feature is a Type that classifies relations between multiple things (in the universe). The domain diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureChainExpression.cs b/SysML2.NET/Core/AutoGenPoco/FeatureChainExpression.cs index 4e76d3b8..0f94ddd7 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureChainExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureChainExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FeatureChainExpression is an OperatorExpression whose operator is ".", which resolves to the @@ -92,7 +93,7 @@ public FeatureChainExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -153,7 +154,7 @@ public FeatureChainExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -238,7 +239,7 @@ public FeatureChainExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(FeatureChainExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -764,7 +765,7 @@ string IOperatorExpression.Operator [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureChaining.cs b/SysML2.NET/Core/AutoGenPoco/FeatureChaining.cs index ee06a908..a23fd55a 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureChaining.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureChaining.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// FeatureChaining is a Relationship that makes its target Feature one of the chainingFeatures of its @@ -123,7 +124,7 @@ public FeatureChaining() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IFeatureChaining.FeatureChained")] - public IFeature featureChained => this.ComputeFeatureChained(); + public IFeature featureChained => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(FeatureChaining)); /// /// Whether this Relationship was generated by tooling to meet semantic rules, rather than being diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureInverting.cs b/SysML2.NET/Core/AutoGenPoco/FeatureInverting.cs index 915ee0b0..f3fa1881 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureInverting.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureInverting.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FeatureInverting is a Relationship between Features asserting that their interpretations diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureMembership.cs b/SysML2.NET/Core/AutoGenPoco/FeatureMembership.cs index bf8541ed..7cd91b0b 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureMembership.cs @@ -36,6 +36,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FeatureMembership is an OwningMembership between an ownedMemberFeature and an owningType. If the @@ -156,7 +157,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -179,7 +180,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(FeatureMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -230,7 +231,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => this.ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -238,7 +239,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -247,7 +248,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_18_5_3_12e503d9_1533160674993_898044_43344", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - public IFeature ownedMemberFeature => this.ComputeOwnedMemberFeature(); + public IFeature ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -255,7 +256,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -263,7 +264,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -342,7 +343,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureReferenceExpression.cs b/SysML2.NET/Core/AutoGenPoco/FeatureReferenceExpression.cs index 588cf7d1..ab80dba8 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureReferenceExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureReferenceExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FeatureReferenceExpression is an Expression whose result is bound to a referent Feature. @@ -80,7 +81,7 @@ public FeatureReferenceExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -141,7 +142,7 @@ public FeatureReferenceExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -226,7 +227,7 @@ public FeatureReferenceExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(FeatureReferenceExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -721,7 +722,7 @@ public FeatureReferenceExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureTyping.cs b/SysML2.NET/Core/AutoGenPoco/FeatureTyping.cs index 0d368bd8..70304052 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureTyping.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureTyping.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// FeatureTyping is Specialization in which the specific Type is a Feature. This means the set of @@ -216,7 +217,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543180501615_13273_21101")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [Implements(implementation: "IFeatureTyping.OwningFeature")] - public IFeature owningFeature => this.ComputeOwningFeature(); + public IFeature owningFeature => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IFeature; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -266,7 +267,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("IFeatureTyping.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/FeatureValue.cs b/SysML2.NET/Core/AutoGenPoco/FeatureValue.cs index fd49f1f6..16ab0ce3 100644 --- a/SysML2.NET/Core/AutoGenPoco/FeatureValue.cs +++ b/SysML2.NET/Core/AutoGenPoco/FeatureValue.cs @@ -37,6 +37,7 @@ namespace SysML2.NET.Core.POCO.Kernel.FeatureValues using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FeatureValue is a Membership that identifies a particular member Expression that provides the @@ -185,7 +186,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -207,7 +208,7 @@ string Root.Namespaces.IMembership.MemberName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - public INamespace membershipOwningNamespace => this.ComputeMembershipOwningNamespace(); + public INamespace membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(FeatureValue)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -258,7 +259,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureValue.Value")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => this.value; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -266,7 +267,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The name of the ownedMemberElement. @@ -274,7 +275,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -282,7 +283,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -431,7 +432,7 @@ List Root.Elements.IRelationship.Target [Property(xmiId: "_19_0_2_12e503d9_1573081851611_231043_3236", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [Implements(implementation: "IFeatureValue.Value")] - public IExpression value => this.ComputeValue(); + public IExpression value => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IExpression; /// /// Whether or not the Membership of the memberElement in the membershipOwningNamespace is publicly diff --git a/SysML2.NET/Core/AutoGenPoco/Flow.cs b/SysML2.NET/Core/AutoGenPoco/Flow.cs index 021408f5..cb10d6ba 100644 --- a/SysML2.NET/Core/AutoGenPoco/Flow.cs +++ b/SysML2.NET/Core/AutoGenPoco/Flow.cs @@ -42,6 +42,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Interactions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An Flow is a Step that represents the transfer of values from one Feature to another. Flows can take @@ -87,7 +88,7 @@ public Flow() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. this.interaction]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Behaviors that type this Step. @@ -96,7 +97,7 @@ public Flow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.interaction]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -118,7 +119,7 @@ public Flow() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -176,7 +177,7 @@ public Flow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -210,7 +211,7 @@ public Flow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -305,7 +306,7 @@ public Flow() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674983_471497_43284")] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IFlow.Interaction")] - public List interaction => this.ComputeInteraction(); + public List interaction => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The interpretations of a Type with intersectingTypes are asserted to be those in common among the @@ -789,7 +790,7 @@ public Flow() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ownedFeature of the Flow that is a PayloadFeature (if any). @@ -825,7 +826,7 @@ public Flow() [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -834,7 +835,7 @@ public Flow() [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -866,7 +867,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Flow)); /// /// The Feature that provides the items carried by the Flow. It must be a feature of the source of the @@ -897,7 +898,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The Feature that receives the values carried by the Flow. It must be a feature of the target of the @@ -925,7 +926,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/FlowDefinition.cs b/SysML2.NET/Core/AutoGenPoco/FlowDefinition.cs index 4f4032e0..c087c4f4 100644 --- a/SysML2.NET/Core/AutoGenPoco/FlowDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/FlowDefinition.cs @@ -63,6 +63,7 @@ namespace SysML2.NET.Core.POCO.Systems.Flows using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FlowDefinition is an ActionDefinition that is also an Interaction (which is both a KerML Behavior @@ -100,6 +101,7 @@ public FlowDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -119,7 +121,7 @@ public FlowDefinition() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [RedefinedByProperty("IFlowDefinition.FlowEnd")] [Implements(implementation: "IAssociation.AssociationEnd")] - List Kernel.Associations.IAssociation.associationEnd => [.. this.flowEnd]; + List Kernel.Associations.IAssociation.associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The declared name of this Element. @@ -158,13 +160,14 @@ public FlowDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -192,7 +195,7 @@ public FlowDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -217,7 +220,7 @@ public FlowDefinition() [Property(xmiId: "_2022x_2_12e503d9_1733008492358_136366_19515", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562477648742_24204_22901")] [Implements(implementation: "IFlowDefinition.FlowEnd")] - public List flowEnd => this.ComputeFlowEnd(); + public List flowEnd => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd.OfType()]; /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -723,6 +726,7 @@ public FlowDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -813,7 +817,7 @@ public FlowDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -834,7 +838,7 @@ public FlowDefinition() [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -843,7 +847,7 @@ public FlowDefinition() [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -875,7 +879,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(FlowDefinition)); /// /// The Steps that make up this Behavior. @@ -906,7 +910,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/FlowEnd.cs b/SysML2.NET/Core/AutoGenPoco/FlowEnd.cs index b7aed708..09d7f313 100644 --- a/SysML2.NET/Core/AutoGenPoco/FlowEnd.cs +++ b/SysML2.NET/Core/AutoGenPoco/FlowEnd.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Interactions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FlowEnd is a Feature that is one of the connectorEnds giving the source or target of a Flow. For diff --git a/SysML2.NET/Core/AutoGenPoco/FlowUsage.cs b/SysML2.NET/Core/AutoGenPoco/FlowUsage.cs index 18f01fa8..b1f4786f 100644 --- a/SysML2.NET/Core/AutoGenPoco/FlowUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/FlowUsage.cs @@ -67,6 +67,7 @@ namespace SysML2.NET.Core.POCO.Systems.Flows using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FlowUsage is an ActionUsage that is also a ConnectorAsUsage and a KerML Flow. @@ -104,8 +105,10 @@ public FlowUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("IFlowUsage.FlowDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -121,7 +124,7 @@ public FlowUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Kernel.Interactions.IFlow)this).interaction]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Behaviors that type this Step. @@ -130,7 +133,7 @@ public FlowUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. ((SysML2.NET.Core.POCO.Kernel.Interactions.IFlow)this).interaction]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +155,7 @@ public FlowUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -199,7 +202,7 @@ public FlowUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -221,13 +224,14 @@ public FlowUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -263,7 +267,7 @@ public FlowUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -315,9 +319,10 @@ public FlowUsage() /// Model Libraries. /// [Property(xmiId: "_19_0_4_12e503d9_1661892878973_977062_185", 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_1565500905804_589845_30779")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1661900477937_518125_727")] [Implements(implementation: "IFlowUsage.FlowDefinition")] - public List flowDefinition => this.ComputeFlowDefinition(); + public List flowDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Actions.IActionUsage)this).actionDefinition.OfType()]; /// /// The connectorEnds of this Flow that are FlowEnds. @@ -377,7 +382,7 @@ public FlowUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IFlowUsage.FlowDefinition")] [Implements(implementation: "IFlow.Interaction")] - List Kernel.Interactions.IFlow.interaction => [.. this.flowDefinition]; + List Kernel.Interactions.IFlow.interaction => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The interpretations of a Type with intersectingTypes are asserted to be those in common among the @@ -552,7 +557,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -773,6 +778,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -815,8 +821,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1070,6 +1077,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1146,7 +1154,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ownedFeature of the Flow that is a PayloadFeature (if any). @@ -1191,7 +1199,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1200,7 +1208,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1232,7 +1240,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(FlowUsage)); /// /// The Feature that provides the items carried by the Flow. It must be a feature of the source of the @@ -1263,7 +1271,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The Feature that receives the values carried by the Flow. It must be a feature of the target of the @@ -1291,7 +1299,7 @@ List Root.Elements.IRelationship.Target [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ForLoopActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/ForLoopActionUsage.cs index a36c7482..c3ef25b1 100644 --- a/SysML2.NET/Core/AutoGenPoco/ForLoopActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ForLoopActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ForLoopActionUsage is a LoopActionUsage that specifies that its bodyAction ActionUsage should be @@ -99,8 +100,9 @@ public ForLoopActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -116,7 +118,7 @@ public ForLoopActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The ActionUsage to be performed repeatedly by the LoopActionUsage. It is the second parameter of the @@ -174,7 +176,7 @@ public ForLoopActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -196,13 +198,14 @@ public ForLoopActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -498,7 +501,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -719,6 +722,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -761,8 +765,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1005,6 +1010,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1070,7 +1076,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1130,7 +1136,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ForkNode.cs b/SysML2.NET/Core/AutoGenPoco/ForkNode.cs index a480cb92..009fbe49 100644 --- a/SysML2.NET/Core/AutoGenPoco/ForkNode.cs +++ b/SysML2.NET/Core/AutoGenPoco/ForkNode.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ForkNode is a ControlNode that must be followed by successor Actions as given by all its outgoing @@ -98,8 +99,9 @@ public ForkNode() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -115,7 +117,7 @@ public ForkNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -165,7 +167,7 @@ public ForkNode() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -187,13 +189,14 @@ public ForkNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -480,7 +483,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +704,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -743,8 +747,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -987,6 +992,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1052,7 +1058,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1103,7 +1109,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/FramedConcernMembership.cs b/SysML2.NET/Core/AutoGenPoco/FramedConcernMembership.cs index 00d35574..649ad9b5 100644 --- a/SysML2.NET/Core/AutoGenPoco/FramedConcernMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/FramedConcernMembership.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Constraints; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A FramedConcernMembership is a RequirementConstraintMembership for a framed ConcernUsage of a @@ -179,7 +180,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -202,7 +203,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(FramedConcernMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -242,7 +243,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1617120590170_490370_3748", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1584048366950_985767_426")] [Implements(implementation: "IFramedConcernMembership.OwnedConcern")] - public IConcernUsage ownedConcern => this.ComputeOwnedConcern(); + public IConcernUsage ownedConcern => ((IRequirementConstraintMembership)this).ownedConstraint as IConcernUsage; /// /// The ConstraintUsage that is the ownedMemberFeature of this RequirementConstraintMembership. @@ -251,7 +252,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [RedefinedByProperty("IFramedConcernMembership.OwnedConcern")] [Implements(implementation: "IRequirementConstraintMembership.OwnedConstraint")] - IConstraintUsage IRequirementConstraintMembership.ownedConstraint => this.ownedConcern; + IConstraintUsage IRequirementConstraintMembership.ownedConstraint => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IConstraintUsage; /// /// The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of @@ -270,7 +271,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -278,7 +279,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -288,7 +289,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IRequirementConstraintMembership.OwnedConstraint")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership)this).ownedConstraint; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -296,7 +297,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -304,7 +305,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -383,7 +384,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -405,7 +406,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1617120658044_92083_3773", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1617118807597_77864_3544")] [Implements(implementation: "IFramedConcernMembership.ReferencedConcern")] - public IConcernUsage referencedConcern => this.ComputeReferencedConcern(); + public IConcernUsage referencedConcern => ((IRequirementConstraintMembership)this).referencedConstraint as IConcernUsage; /// /// The ConstraintUsage that is referenced through this RequirementConstraintMembership. It is the @@ -415,7 +416,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1617118807597_77864_3544", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IFramedConcernMembership.ReferencedConcern")] [Implements(implementation: "IRequirementConstraintMembership.ReferencedConstraint")] - IConstraintUsage IRequirementConstraintMembership.referencedConstraint => this.referencedConcern; + IConstraintUsage IRequirementConstraintMembership.referencedConstraint => this.ComputeReferencedConstraint(); /// /// The Elements that are related by this Relationship, derived as the union of the source and target diff --git a/SysML2.NET/Core/AutoGenPoco/Function.cs b/SysML2.NET/Core/AutoGenPoco/Function.cs index a78b1759..6507f2f9 100644 --- a/SysML2.NET/Core/AutoGenPoco/Function.cs +++ b/SysML2.NET/Core/AutoGenPoco/Function.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Function is a Behavior that has an out parameter that is identified as its result. A Function @@ -112,7 +113,7 @@ public Function() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The Documentation owned by this Element. @@ -506,7 +507,7 @@ public Function() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/IAcceptActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/IAcceptActionUsage.cs index a77345ff..489bb92d 100644 --- a/SysML2.NET/Core/AutoGenPoco/IAcceptActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IAcceptActionUsage.cs @@ -86,6 +86,7 @@ public partial interface IAcceptActionUsage : IActionUsage /// base AcceptActionUsage AcceptAction from the Systems Model Library. /// [Property(xmiId: "_19_0_4_12e503d9_1642701018287_478584_4462", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591477541360_47573_933")] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] IReferenceUsage payloadParameter { get; } diff --git a/SysML2.NET/Core/AutoGenPoco/IActionDefinition.cs b/SysML2.NET/Core/AutoGenPoco/IActionDefinition.cs index c773152a..dc2a991c 100644 --- a/SysML2.NET/Core/AutoGenPoco/IActionDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/IActionDefinition.cs @@ -74,6 +74,7 @@ public partial interface IActionDefinition : IBehavior, IOccurrenceDefinition /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List action { get; } } diff --git a/SysML2.NET/Core/AutoGenPoco/IActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/IActionUsage.cs index 05dbc0a6..00308f1a 100644 --- a/SysML2.NET/Core/AutoGenPoco/IActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IActionUsage.cs @@ -80,6 +80,7 @@ public partial interface IActionUsage : IStep, IOccurrenceUsage /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] List actionDefinition { get; } /// diff --git a/SysML2.NET/Core/AutoGenPoco/ICalculationDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ICalculationDefinition.cs index 9d416401..4fde4590 100644 --- a/SysML2.NET/Core/AutoGenPoco/ICalculationDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ICalculationDefinition.cs @@ -73,6 +73,7 @@ public partial interface ICalculationDefinition : IFunction, IActionDefinition /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] List calculation { get; } diff --git a/SysML2.NET/Core/AutoGenPoco/ICalculationUsage.cs b/SysML2.NET/Core/AutoGenPoco/ICalculationUsage.cs index ddc70232..05066aac 100644 --- a/SysML2.NET/Core/AutoGenPoco/ICalculationUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ICalculationUsage.cs @@ -80,6 +80,7 @@ public partial interface ICalculationUsage : IExpression, IActionUsage /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] IFunction calculationDefinition { get; } /// diff --git a/SysML2.NET/Core/AutoGenPoco/ICaseDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ICaseDefinition.cs index f6b5b8d7..1b335598 100644 --- a/SysML2.NET/Core/AutoGenPoco/ICaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ICaseDefinition.cs @@ -75,6 +75,7 @@ public partial interface ICaseDefinition : ICalculationDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List actorParameter { get; } /// @@ -89,6 +90,7 @@ public partial interface ICaseDefinition : ICalculationDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] IUsage subjectParameter { get; } } diff --git a/SysML2.NET/Core/AutoGenPoco/ICaseUsage.cs b/SysML2.NET/Core/AutoGenPoco/ICaseUsage.cs index 07ebb52f..ef0f7e62 100644 --- a/SysML2.NET/Core/AutoGenPoco/ICaseUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ICaseUsage.cs @@ -75,6 +75,7 @@ public partial interface ICaseUsage : ICalculationUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List actorParameter { get; } /// @@ -96,6 +97,7 @@ public partial interface ICaseUsage : ICalculationUsage /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] IUsage subjectParameter { get; } } diff --git a/SysML2.NET/Core/AutoGenPoco/IDefinition.cs b/SysML2.NET/Core/AutoGenPoco/IDefinition.cs index 247d09e5..1432ab09 100644 --- a/SysML2.NET/Core/AutoGenPoco/IDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/IDefinition.cs @@ -80,6 +80,7 @@ public partial interface IDefinition : IClassifier /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List directedUsage { get; } /// @@ -250,6 +251,7 @@ public partial interface IDefinition : IClassifier /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List ownedUsage { get; } /// diff --git a/SysML2.NET/Core/AutoGenPoco/IFlowUsage.cs b/SysML2.NET/Core/AutoGenPoco/IFlowUsage.cs index 2bd89208..e2ff503a 100644 --- a/SysML2.NET/Core/AutoGenPoco/IFlowUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IFlowUsage.cs @@ -79,6 +79,7 @@ public partial interface IFlowUsage : IConnectorAsUsage, IFlow, IActionUsage /// Model Libraries. /// [Property(xmiId: "_19_0_4_12e503d9_1661892878973_977062_185", 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_1565500905804_589845_30779")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1661900477937_518125_727")] List flowDefinition { get; } diff --git a/SysML2.NET/Core/AutoGenPoco/IMetadataUsage.cs b/SysML2.NET/Core/AutoGenPoco/IMetadataUsage.cs index 49b5115b..fb0b10fe 100644 --- a/SysML2.NET/Core/AutoGenPoco/IMetadataUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IMetadataUsage.cs @@ -77,6 +77,7 @@ public partial interface IMetadataUsage : IItemUsage, IMetadataFeature /// The MetadataDefinition that is the definition of this MetadataUsage. /// [Property(xmiId: "_19_0_4_12e503d9_1647727047674_847094_2563", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1606345564958_925589_327")] IMetaclass metadataDefinition { get; } diff --git a/SysML2.NET/Core/AutoGenPoco/IRequirementDefinition.cs b/SysML2.NET/Core/AutoGenPoco/IRequirementDefinition.cs index 3757fa1c..26a97e92 100644 --- a/SysML2.NET/Core/AutoGenPoco/IRequirementDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/IRequirementDefinition.cs @@ -75,6 +75,7 @@ public partial interface IRequirementDefinition : IConstraintDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List actorParameter { get; } /// @@ -117,6 +118,7 @@ public partial interface IRequirementDefinition : IConstraintDefinition /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] List stakeholderParameter { get; } /// @@ -124,6 +126,7 @@ public partial interface IRequirementDefinition : IConstraintDefinition /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] IUsage subjectParameter { get; } /// diff --git a/SysML2.NET/Core/AutoGenPoco/IRequirementUsage.cs b/SysML2.NET/Core/AutoGenPoco/IRequirementUsage.cs index 896e82a6..a5d4101e 100644 --- a/SysML2.NET/Core/AutoGenPoco/IRequirementUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IRequirementUsage.cs @@ -75,6 +75,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List actorParameter { get; } /// @@ -124,6 +125,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List stakeholderParameter { get; } /// @@ -131,6 +133,7 @@ public partial interface IRequirementUsage : IConstraintUsage /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] IUsage subjectParameter { get; } /// diff --git a/SysML2.NET/Core/AutoGenPoco/IUsage.cs b/SysML2.NET/Core/AutoGenPoco/IUsage.cs index 8b6b2481..44899a0f 100644 --- a/SysML2.NET/Core/AutoGenPoco/IUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IUsage.cs @@ -86,6 +86,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List directedUsage { get; } /// @@ -274,6 +275,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] List nestedUsage { get; } /// @@ -309,6 +311,7 @@ public partial interface IUsage : IFeature /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] IDefinition owningDefinition { get; } /// diff --git a/SysML2.NET/Core/AutoGenPoco/IfActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/IfActionUsage.cs index 4ca766d2..a7fda03b 100644 --- a/SysML2.NET/Core/AutoGenPoco/IfActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IfActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An IfActionUsage is an ActionUsage that specifies that the thenAction ActionUsage should be @@ -99,8 +100,9 @@ public IfActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -116,7 +118,7 @@ public IfActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -166,7 +168,7 @@ public IfActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -188,13 +190,14 @@ public IfActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -497,7 +500,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -718,6 +721,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -760,8 +764,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1004,6 +1009,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1069,7 +1075,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1128,7 +1134,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/IncludeUseCaseUsage.cs b/SysML2.NET/Core/AutoGenPoco/IncludeUseCaseUsage.cs index df198dfb..06dab72b 100644 --- a/SysML2.NET/Core/AutoGenPoco/IncludeUseCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/IncludeUseCaseUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.UseCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An IncludeUseCaseUsage is a UseCaseUsage that represents the inclusion of a UseCaseUsage by a @@ -100,14 +101,17 @@ public IncludeUseCaseUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -125,7 +129,7 @@ public IncludeUseCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Function that is the type of this CalculationUsage. Nominally, this would be a @@ -134,9 +138,10 @@ public IncludeUseCaseUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] - IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Systems.Cases.ICaseUsage)this).caseDefinition; + IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function; /// /// The CaseDefinition that is the type of this CaseUsage. @@ -145,7 +150,7 @@ public IncludeUseCaseUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1588213526305_899324_302")] [RedefinedByProperty("IUseCaseUsage.UseCaseDefinition")] [Implements(implementation: "ICaseUsage.CaseDefinition")] - ICaseDefinition Systems.Cases.ICaseUsage.caseDefinition => this.useCaseDefinition; + ICaseDefinition Systems.Cases.ICaseUsage.caseDefinition => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition as ICaseDefinition; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -195,7 +200,7 @@ public IncludeUseCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -217,13 +222,14 @@ public IncludeUseCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -278,7 +284,7 @@ public IncludeUseCaseUsage() [Property(xmiId: "_19_0_4_12e503d9_1622831790393_676695_195", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IPerformActionUsage.PerformedAction")] [Implements(implementation: "IEventOccurrenceUsage.EventOccurrence")] - IOccurrenceUsage Systems.Occurrences.IEventOccurrenceUsage.eventOccurrence => ((SysML2.NET.Core.POCO.Systems.Actions.IPerformActionUsage)this).performedAction; + IOccurrenceUsage Systems.Occurrences.IEventOccurrenceUsage.eventOccurrence => this.ComputeEventOccurrence(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -321,7 +327,7 @@ public IncludeUseCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(IncludeUseCaseUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -493,7 +499,7 @@ public IncludeUseCaseUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IEventOccurrenceUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool Systems.DefinitionAndUsage.IUsage.isReference => this.isReference; + bool Systems.DefinitionAndUsage.IUsage.isReference => this.ComputeIsReference(); /// /// Always true for an EventOccurrenceUsage. @@ -501,7 +507,7 @@ public IncludeUseCaseUsage() [Property(xmiId: "_19_0_4_12e503d9_1672526906017_786343_306", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IEventOccurrenceUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).isReference; /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -554,7 +560,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -775,6 +781,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -825,8 +832,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1069,6 +1077,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1134,7 +1143,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ActionUsage to be performed by this PerformedActionUsage. It is the eventOccurrence of the @@ -1144,7 +1153,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1622831790393_676695_195")] [RedefinedByProperty("IIncludeUseCaseUsage.UseCaseIncluded")] [Implements(implementation: "IPerformActionUsage.PerformedAction")] - IActionUsage Systems.Actions.IPerformActionUsage.performedAction => this.useCaseIncluded; + IActionUsage Systems.Actions.IPerformActionUsage.performedAction => ((SysML2.NET.Core.POCO.Systems.Occurrences.IEventOccurrenceUsage)this).eventOccurrence as IActionUsage; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1193,6 +1202,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1214,7 +1224,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the @@ -1241,7 +1251,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1621460964889_804779_881", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_59601fc_1590257465225_855208_512")] [Implements(implementation: "IUseCaseUsage.UseCaseDefinition")] - public IUseCaseDefinition useCaseDefinition => this.ComputeUseCaseDefinition(); + public IUseCaseDefinition useCaseDefinition => ((SysML2.NET.Core.POCO.Systems.Cases.ICaseUsage)this).caseDefinition as IUseCaseDefinition; /// /// The UseCaseUsage to be included by this IncludeUseCaseUsage. It is the performedAction of the @@ -1250,7 +1260,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1621532149711_865323_1172", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1567740791820_867719_18017")] [Implements(implementation: "IIncludeUseCaseUsage.UseCaseIncluded")] - public IUseCaseUsage useCaseIncluded => this.ComputeUseCaseIncluded(); + public IUseCaseUsage useCaseIncluded => ((SysML2.NET.Core.POCO.Systems.Actions.IPerformActionUsage)this).performedAction as IUseCaseUsage; /// /// The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = diff --git a/SysML2.NET/Core/AutoGenPoco/IndexExpression.cs b/SysML2.NET/Core/AutoGenPoco/IndexExpression.cs index a3e7e316..dc3222f4 100644 --- a/SysML2.NET/Core/AutoGenPoco/IndexExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/IndexExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An IndexExpression is an OperatorExpression whose operator is "#", which resolves to the Function @@ -91,7 +92,7 @@ public IndexExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +153,7 @@ public IndexExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -237,7 +238,7 @@ public IndexExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(IndexExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -763,7 +764,7 @@ string IOperatorExpression.Operator [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Interaction.cs b/SysML2.NET/Core/AutoGenPoco/Interaction.cs index 938ab999..b604f8dd 100644 --- a/SysML2.NET/Core/AutoGenPoco/Interaction.cs +++ b/SysML2.NET/Core/AutoGenPoco/Interaction.cs @@ -41,6 +41,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Interactions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An Interaction is a Behavior that is also an Association, providing a context for multiple objects @@ -87,7 +88,7 @@ public Interaction() [Property(xmiId: "_18_5_3_12e503d9_1562477648742_24204_22901", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [Implements(implementation: "IAssociation.AssociationEnd")] - public List associationEnd => this.ComputeAssociationEnd(); + public List associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The declared name of this Element. @@ -126,7 +127,7 @@ public Interaction() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The Documentation owned by this Element. @@ -152,7 +153,7 @@ public Interaction() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -532,7 +533,7 @@ public Interaction() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -553,7 +554,7 @@ public Interaction() [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -562,7 +563,7 @@ public Interaction() [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -594,7 +595,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Interaction)); /// /// The Steps that make up this Behavior. @@ -625,7 +626,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/InterfaceDefinition.cs b/SysML2.NET/Core/AutoGenPoco/InterfaceDefinition.cs index ce91241b..b9f8a08b 100644 --- a/SysML2.NET/Core/AutoGenPoco/InterfaceDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/InterfaceDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Interfaces using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An InterfaceDefinition is a ConnectionDefinition all of whose ends are PortUsages, defining an @@ -108,7 +109,7 @@ public InterfaceDefinition() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562476168385_824569_22106")] [RedefinedByProperty("IConnectionDefinition.ConnectionEnd")] [Implements(implementation: "IAssociation.AssociationEnd")] - List Kernel.Associations.IAssociation.associationEnd => [.. ((SysML2.NET.Core.POCO.Systems.Connections.IConnectionDefinition)this).connectionEnd]; + List Kernel.Associations.IAssociation.associationEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The Usages that define the things related by the ConnectionDefinition. @@ -117,7 +118,7 @@ public InterfaceDefinition() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1562477648742_24204_22901")] [RedefinedByProperty("IInterfaceDefinition.InterfaceEnd")] [Implements(implementation: "IConnectionDefinition.ConnectionEnd")] - List Systems.Connections.IConnectionDefinition.connectionEnd => [.. this.interfaceEnd]; + List Systems.Connections.IConnectionDefinition.connectionEnd => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd.OfType()]; /// /// The declared name of this Element. @@ -162,6 +163,7 @@ public InterfaceDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -189,7 +191,7 @@ public InterfaceDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IAssociation.AssociationEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. ((SysML2.NET.Core.POCO.Kernel.Associations.IAssociation)this).associationEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -247,7 +249,7 @@ public InterfaceDefinition() [Property(xmiId: "_18_5_3_12e503d9_1565496234915_779221_26664", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591476421094_685440_682")] [Implements(implementation: "IInterfaceDefinition.InterfaceEnd")] - public List interfaceEnd => this.ComputeInterfaceEnd(); + public List interfaceEnd => [.. ((SysML2.NET.Core.POCO.Systems.Connections.IConnectionDefinition)this).connectionEnd.OfType()]; /// /// The interpretations of a Type with intersectingTypes are asserted to be those in common among the @@ -736,6 +738,7 @@ bool Core.Types.IType.IsSufficient /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -838,7 +841,7 @@ bool Core.Types.IType.IsSufficient [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("IAssociation.RelatedType")] [Implements(implementation: "IRelationship.RelatedElement")] - List Root.Elements.IRelationship.relatedElement => [.. this.relatedType]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The types of the associationEnds of the Association, which are the relatedElements of the @@ -847,7 +850,7 @@ bool Core.Types.IType.IsSufficient [Property(xmiId: "_18_5_3_12e503d9_1533160674994_4339_43349", 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: "IAssociation.RelatedType")] - public List relatedType => this.ComputeRelatedType(); + public List relatedType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -879,7 +882,7 @@ List Root.Elements.IRelationship.Source [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IAssociation.SourceType")] - public IType sourceType => this.ComputeSourceType(); + public IType sourceType => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(InterfaceDefinition)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -902,7 +905,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674994_4339_43349")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IAssociation.TargetType")] - public List targetType => this.ComputeTargetType(); + public List targetType => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. diff --git a/SysML2.NET/Core/AutoGenPoco/InterfaceUsage.cs b/SysML2.NET/Core/AutoGenPoco/InterfaceUsage.cs index 0df9c558..10b30fe6 100644 --- a/SysML2.NET/Core/AutoGenPoco/InterfaceUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/InterfaceUsage.cs @@ -65,6 +65,7 @@ namespace SysML2.NET.Core.POCO.Systems.Interfaces using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An InterfaceUsage is a Usage of an InterfaceDefinition to represent an interface connecting parts of @@ -110,7 +111,7 @@ public InterfaceUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IConnectionUsage.ConnectionDefinition")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Systems.Connections.IConnectionUsage)this).connectionDefinition]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -134,7 +135,7 @@ public InterfaceUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674983_471497_43284")] [RedefinedByProperty("IInterfaceUsage.InterfaceDefinition")] [Implements(implementation: "IConnectionUsage.ConnectionDefinition")] - List Systems.Connections.IConnectionUsage.connectionDefinition => [.. this.interfaceDefinition]; + List Systems.Connections.IConnectionUsage.connectionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The endFeatures of a Connector, which redefine the endFeatures of the associations of the Connector. @@ -144,7 +145,7 @@ public InterfaceUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -191,7 +192,7 @@ public InterfaceUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -219,6 +220,7 @@ public InterfaceUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -254,7 +256,7 @@ public InterfaceUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -347,7 +349,7 @@ public InterfaceUsage() [Property(xmiId: "_18_5_3_12e503d9_1565499418349_431355_28798", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1594853499656_139435_802")] [Implements(implementation: "IInterfaceUsage.InterfaceDefinition")] - public List interfaceDefinition => this.ComputeInterfaceDefinition(); + public List interfaceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Connections.IConnectionUsage)this).connectionDefinition.OfType()]; /// /// The interpretations of a Type with intersectingTypes are asserted to be those in common among the @@ -532,7 +534,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -753,6 +755,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -796,7 +799,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1050,6 +1053,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1155,7 +1159,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1164,7 +1168,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1196,7 +1200,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(InterfaceUsage)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -1219,7 +1223,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -1239,7 +1243,7 @@ List Root.Elements.IRelationship.Target [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Intersecting.cs b/SysML2.NET/Core/AutoGenPoco/Intersecting.cs index 729751df..47254f20 100644 --- a/SysML2.NET/Core/AutoGenPoco/Intersecting.cs +++ b/SysML2.NET/Core/AutoGenPoco/Intersecting.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Intersecting is a Relationship that makes its intersectingType one of the intersectingTypes of its @@ -318,7 +319,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IIntersecting.TypeIntersected")] - public IType typeIntersected => this.ComputeTypeIntersected(); + public IType typeIntersected => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Intersecting)); /// diff --git a/SysML2.NET/Core/AutoGenPoco/Invariant.cs b/SysML2.NET/Core/AutoGenPoco/Invariant.cs index 632a6c26..80d9b5ff 100644 --- a/SysML2.NET/Core/AutoGenPoco/Invariant.cs +++ b/SysML2.NET/Core/AutoGenPoco/Invariant.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An Invariant is a BooleanExpression that is asserted to have a specific Boolean result value. If @@ -81,7 +82,7 @@ public Invariant() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public Invariant() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -228,7 +229,7 @@ public Invariant() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction IExpression.function => this.predicate; + IFunction IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(Invariant)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -730,7 +731,7 @@ public Invariant() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The Predicate that types the Expression. @@ -738,7 +739,7 @@ public Invariant() [Property(xmiId: "_19_0_2_12e503d9_1578025035149_386_969", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [Implements(implementation: "IBooleanExpression.Predicate")] - public IPredicate predicate => this.ComputePredicate(); + public IPredicate predicate => ((IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/InvocationExpression.cs b/SysML2.NET/Core/AutoGenPoco/InvocationExpression.cs index 1fa65737..91b14ff5 100644 --- a/SysML2.NET/Core/AutoGenPoco/InvocationExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/InvocationExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An InvocationExpression is an InstantiationExpression whose instantiatedType must be a Behavior or a @@ -95,7 +96,7 @@ public InvocationExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -156,7 +157,7 @@ public InvocationExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -241,7 +242,7 @@ public InvocationExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(InvocationExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -744,7 +745,7 @@ public InvocationExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ItemDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ItemDefinition.cs index 741b9cea..aad0177b 100644 --- a/SysML2.NET/Core/AutoGenPoco/ItemDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ItemDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Items using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ItemDefinition is an OccurrenceDefinition of the Structure of things that may themselves be @@ -140,6 +141,7 @@ public ItemDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -670,6 +672,7 @@ public ItemDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/ItemUsage.cs b/SysML2.NET/Core/AutoGenPoco/ItemUsage.cs index c2d8166f..45373c0d 100644 --- a/SysML2.NET/Core/AutoGenPoco/ItemUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ItemUsage.cs @@ -63,6 +63,7 @@ namespace SysML2.NET.Core.POCO.Systems.Items using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ItemUsage is an OccurrenceUsage whose definition is a Structure. Nominally, if the definition is @@ -147,7 +148,7 @@ public ItemUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -175,6 +176,7 @@ public ItemUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -471,7 +473,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -692,6 +694,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -735,7 +738,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -978,6 +981,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1085,7 +1089,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/JoinNode.cs b/SysML2.NET/Core/AutoGenPoco/JoinNode.cs index 98b4e343..2346a0d2 100644 --- a/SysML2.NET/Core/AutoGenPoco/JoinNode.cs +++ b/SysML2.NET/Core/AutoGenPoco/JoinNode.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A JoinNode is a ControlNode that waits for the completion of all the predecessor Actions given by @@ -98,8 +99,9 @@ public JoinNode() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -115,7 +117,7 @@ public JoinNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -165,7 +167,7 @@ public JoinNode() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -187,13 +189,14 @@ public JoinNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -480,7 +483,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +704,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -743,8 +747,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -987,6 +992,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1052,7 +1058,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1103,7 +1109,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/LibraryPackage.cs b/SysML2.NET/Core/AutoGenPoco/LibraryPackage.cs index 5ffa2f29..34c1a8b8 100644 --- a/SysML2.NET/Core/AutoGenPoco/LibraryPackage.cs +++ b/SysML2.NET/Core/AutoGenPoco/LibraryPackage.cs @@ -36,6 +36,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Packages using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A LibraryPackage is a Package that is the container for a model library. A LibraryPackage is itself diff --git a/SysML2.NET/Core/AutoGenPoco/LiteralBoolean.cs b/SysML2.NET/Core/AutoGenPoco/LiteralBoolean.cs index 138c1c85..aa43ad41 100644 --- a/SysML2.NET/Core/AutoGenPoco/LiteralBoolean.cs +++ b/SysML2.NET/Core/AutoGenPoco/LiteralBoolean.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// LiteralBoolean is a LiteralExpression that provides a Boolean value as a result. Its result @@ -81,7 +82,7 @@ public LiteralBoolean() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public LiteralBoolean() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -227,7 +228,7 @@ public LiteralBoolean() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(LiteralBoolean)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -722,7 +723,7 @@ public LiteralBoolean() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/LiteralExpression.cs b/SysML2.NET/Core/AutoGenPoco/LiteralExpression.cs index 861cecc2..4b7fde1d 100644 --- a/SysML2.NET/Core/AutoGenPoco/LiteralExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/LiteralExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A LiteralExpression is an Expression that provides a basic DataValue as a result. @@ -80,7 +81,7 @@ public LiteralExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -141,7 +142,7 @@ public LiteralExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -226,7 +227,7 @@ public LiteralExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(LiteralExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -721,7 +722,7 @@ public LiteralExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/LiteralInfinity.cs b/SysML2.NET/Core/AutoGenPoco/LiteralInfinity.cs index f32b94e7..da2627ce 100644 --- a/SysML2.NET/Core/AutoGenPoco/LiteralInfinity.cs +++ b/SysML2.NET/Core/AutoGenPoco/LiteralInfinity.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A LiteralInfinity is a LiteralExpression that provides the positive infinity value (*). It's result @@ -81,7 +82,7 @@ public LiteralInfinity() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public LiteralInfinity() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -227,7 +228,7 @@ public LiteralInfinity() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(LiteralInfinity)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -722,7 +723,7 @@ public LiteralInfinity() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/LiteralInteger.cs b/SysML2.NET/Core/AutoGenPoco/LiteralInteger.cs index 096cc4cb..4b6c02e1 100644 --- a/SysML2.NET/Core/AutoGenPoco/LiteralInteger.cs +++ b/SysML2.NET/Core/AutoGenPoco/LiteralInteger.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A LiteralInteger is a LiteralExpression that provides an Integer value as a result. Its result @@ -81,7 +82,7 @@ public LiteralInteger() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public LiteralInteger() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -227,7 +228,7 @@ public LiteralInteger() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(LiteralInteger)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -722,7 +723,7 @@ public LiteralInteger() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/LiteralRational.cs b/SysML2.NET/Core/AutoGenPoco/LiteralRational.cs index e9a125d6..f61fc358 100644 --- a/SysML2.NET/Core/AutoGenPoco/LiteralRational.cs +++ b/SysML2.NET/Core/AutoGenPoco/LiteralRational.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A LiteralRational is a LiteralExpression that provides a Rational value as a result. Its result @@ -81,7 +82,7 @@ public LiteralRational() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public LiteralRational() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -227,7 +228,7 @@ public LiteralRational() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(LiteralRational)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -722,7 +723,7 @@ public LiteralRational() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/LiteralString.cs b/SysML2.NET/Core/AutoGenPoco/LiteralString.cs index 8e75189e..498c4424 100644 --- a/SysML2.NET/Core/AutoGenPoco/LiteralString.cs +++ b/SysML2.NET/Core/AutoGenPoco/LiteralString.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A LiteralString is a LiteralExpression that provides a String value as a result. Its result @@ -81,7 +82,7 @@ public LiteralString() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -142,7 +143,7 @@ public LiteralString() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -227,7 +228,7 @@ public LiteralString() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(LiteralString)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -722,7 +723,7 @@ public LiteralString() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Membership.cs b/SysML2.NET/Core/AutoGenPoco/Membership.cs index bdf51e1e..1821d90b 100644 --- a/SysML2.NET/Core/AutoGenPoco/Membership.cs +++ b/SysML2.NET/Core/AutoGenPoco/Membership.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Root.Namespaces using SysML2.NET.Core.POCO.Root.Elements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Membership is a Relationship between a Namespace and an Element that indicates the Element is a @@ -167,7 +168,7 @@ public Membership() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - public INamespace membershipOwningNamespace => this.ComputeMembershipOwningNamespace(); + public INamespace membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Membership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. diff --git a/SysML2.NET/Core/AutoGenPoco/MembershipExpose.cs b/SysML2.NET/Core/AutoGenPoco/MembershipExpose.cs index 75cc12a9..d91ca144 100644 --- a/SysML2.NET/Core/AutoGenPoco/MembershipExpose.cs +++ b/SysML2.NET/Core/AutoGenPoco/MembershipExpose.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MembershipExpose is an Expose <> that exposes a specific importedMembership and, if isRecursive = @@ -131,7 +132,7 @@ public MembershipExpose() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IImport.ImportOwningNamespace")] - public INamespace importOwningNamespace => this.ComputeImportOwningNamespace(); + public INamespace importOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(MembershipExpose)); /// /// Whether this Relationship was generated by tooling to meet semantic rules, rather than being diff --git a/SysML2.NET/Core/AutoGenPoco/MembershipImport.cs b/SysML2.NET/Core/AutoGenPoco/MembershipImport.cs index 36886bb9..3774c53a 100644 --- a/SysML2.NET/Core/AutoGenPoco/MembershipImport.cs +++ b/SysML2.NET/Core/AutoGenPoco/MembershipImport.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Root.Namespaces using SysML2.NET.Core.POCO.Root.Elements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MembershipImport is an Import that imports its importedMembership into the importOwningNamespace. @@ -131,7 +132,7 @@ public MembershipImport() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IImport.ImportOwningNamespace")] - public INamespace importOwningNamespace => this.ComputeImportOwningNamespace(); + public INamespace importOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(MembershipImport)); /// /// Whether this Relationship was generated by tooling to meet semantic rules, rather than being diff --git a/SysML2.NET/Core/AutoGenPoco/MergeNode.cs b/SysML2.NET/Core/AutoGenPoco/MergeNode.cs index cf10cd76..943836c5 100644 --- a/SysML2.NET/Core/AutoGenPoco/MergeNode.cs +++ b/SysML2.NET/Core/AutoGenPoco/MergeNode.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MergeNode is a ControlNode that asserts the merging of its incoming Successions. A MergeNode may @@ -98,8 +99,9 @@ public MergeNode() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -115,7 +117,7 @@ public MergeNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -165,7 +167,7 @@ public MergeNode() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -187,13 +189,14 @@ public MergeNode() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -480,7 +483,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +704,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -743,8 +747,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -987,6 +992,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1052,7 +1058,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1103,7 +1109,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Metaclass.cs b/SysML2.NET/Core/AutoGenPoco/Metaclass.cs index 161cd06a..441d2a28 100644 --- a/SysML2.NET/Core/AutoGenPoco/Metaclass.cs +++ b/SysML2.NET/Core/AutoGenPoco/Metaclass.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Metadata using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Metaclass is a Structure used to type MetadataFeatures. diff --git a/SysML2.NET/Core/AutoGenPoco/MetadataAccessExpression.cs b/SysML2.NET/Core/AutoGenPoco/MetadataAccessExpression.cs index 127ff08d..cdee8bc0 100644 --- a/SysML2.NET/Core/AutoGenPoco/MetadataAccessExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/MetadataAccessExpression.cs @@ -41,6 +41,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MetadataAccessExpression is an Expression whose result is a sequence of instances of Metaclasses @@ -84,7 +85,7 @@ public MetadataAccessExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -145,7 +146,7 @@ public MetadataAccessExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -230,7 +231,7 @@ public MetadataAccessExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(MetadataAccessExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -725,7 +726,7 @@ public MetadataAccessExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/MetadataDefinition.cs b/SysML2.NET/Core/AutoGenPoco/MetadataDefinition.cs index fbb20376..8d2ed5da 100644 --- a/SysML2.NET/Core/AutoGenPoco/MetadataDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/MetadataDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Metadata using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MetadataDefinition is an ItemDefinition that is also a Metaclass. @@ -137,6 +138,7 @@ public MetadataDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -667,6 +669,7 @@ public MetadataDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/MetadataFeature.cs b/SysML2.NET/Core/AutoGenPoco/MetadataFeature.cs index aaecf614..af3c0480 100644 --- a/SysML2.NET/Core/AutoGenPoco/MetadataFeature.cs +++ b/SysML2.NET/Core/AutoGenPoco/MetadataFeature.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Metadata using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MetadataFeature is a Feature that is an AnnotatingElement used to annotate another Element with diff --git a/SysML2.NET/Core/AutoGenPoco/MetadataUsage.cs b/SysML2.NET/Core/AutoGenPoco/MetadataUsage.cs index b8b6958e..67849ec8 100644 --- a/SysML2.NET/Core/AutoGenPoco/MetadataUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/MetadataUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Metadata using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MetadataUsage is a Usage and a MetadataFeature, used to annotate other Elements in a system model @@ -166,7 +167,7 @@ public MetadataUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -194,6 +195,7 @@ public MetadataUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -476,8 +478,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565471361757_649736_20796", 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_1618943843466_158863_236")] + [RedefinedByProperty("IMetadataUsage.MetadataDefinition")] [Implements(implementation: "IItemUsage.ItemDefinition")] - public List itemDefinition => this.ComputeItemDefinition(); + List Systems.Items.IItemUsage.itemDefinition => this.ComputeItemDefinition(); /// /// Whether this Usage may be time varying (that is, whether it is featured by the snapshots of its @@ -490,7 +493,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -515,15 +518,16 @@ bool Core.Features.IFeature.IsVariable [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IMetadataUsage.MetadataDefinition")] [Implements(implementation: "IMetadataFeature.Metaclass")] - IMetaclass Kernel.Metadata.IMetadataFeature.metaclass => this.metadataDefinition; + IMetaclass Kernel.Metadata.IMetadataFeature.metaclass => this.ComputeMetaclass(); /// /// The MetadataDefinition that is the definition of this MetadataUsage. /// [Property(xmiId: "_19_0_4_12e503d9_1647727047674_847094_2563", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1606345564958_925589_327")] [Implements(implementation: "IMetadataUsage.MetadataDefinition")] - public IMetaclass metadataDefinition => this.ComputeMetadataDefinition(); + public IMetaclass metadataDefinition => ((SysML2.NET.Core.POCO.Systems.Items.IItemUsage)this).itemDefinition.OfType().SingleOrDefaultStrict(nameof(MetadataUsage)); /// /// An ownedMember of this Type that is a Multiplicity, which constraints the cardinality of the Type. @@ -728,6 +732,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -771,7 +776,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1033,6 +1038,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1140,7 +1146,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Multiplicity.cs b/SysML2.NET/Core/AutoGenPoco/Multiplicity.cs index 7a644fff..7691b588 100644 --- a/SysML2.NET/Core/AutoGenPoco/Multiplicity.cs +++ b/SysML2.NET/Core/AutoGenPoco/Multiplicity.cs @@ -37,6 +37,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Multiplicity is a Feature whose co-domain is a set of natural numbers giving the allowed diff --git a/SysML2.NET/Core/AutoGenPoco/MultiplicityRange.cs b/SysML2.NET/Core/AutoGenPoco/MultiplicityRange.cs index 60211544..46bddde8 100644 --- a/SysML2.NET/Core/AutoGenPoco/MultiplicityRange.cs +++ b/SysML2.NET/Core/AutoGenPoco/MultiplicityRange.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Multiplicities using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A MultiplicityRange is a Multiplicity whose value is defined to be the (inclusive) range of natural diff --git a/SysML2.NET/Core/AutoGenPoco/Namespace.cs b/SysML2.NET/Core/AutoGenPoco/Namespace.cs index 83904155..9bd02354 100644 --- a/SysML2.NET/Core/AutoGenPoco/Namespace.cs +++ b/SysML2.NET/Core/AutoGenPoco/Namespace.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Root.Namespaces using SysML2.NET.Core.POCO.Root.Elements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Namespace is an Element that contains other Elements, known as its members, via Membership diff --git a/SysML2.NET/Core/AutoGenPoco/NamespaceExpose.cs b/SysML2.NET/Core/AutoGenPoco/NamespaceExpose.cs index 4d844f87..daf4c259 100644 --- a/SysML2.NET/Core/AutoGenPoco/NamespaceExpose.cs +++ b/SysML2.NET/Core/AutoGenPoco/NamespaceExpose.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A NamespaceExpose is an Expose Relationship that exposes the Memberships of a specific @@ -131,7 +132,7 @@ public NamespaceExpose() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IImport.ImportOwningNamespace")] - public INamespace importOwningNamespace => this.ComputeImportOwningNamespace(); + public INamespace importOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(NamespaceExpose)); /// /// Whether this Relationship was generated by tooling to meet semantic rules, rather than being diff --git a/SysML2.NET/Core/AutoGenPoco/NamespaceImport.cs b/SysML2.NET/Core/AutoGenPoco/NamespaceImport.cs index be338355..14c8b527 100644 --- a/SysML2.NET/Core/AutoGenPoco/NamespaceImport.cs +++ b/SysML2.NET/Core/AutoGenPoco/NamespaceImport.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Root.Namespaces using SysML2.NET.Core.POCO.Root.Elements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A NamespaceImport is an Import that imports Memberships from its importedNamespace into the @@ -132,7 +133,7 @@ public NamespaceImport() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IImport.ImportOwningNamespace")] - public INamespace importOwningNamespace => this.ComputeImportOwningNamespace(); + public INamespace importOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(NamespaceImport)); /// /// Whether this Relationship was generated by tooling to meet semantic rules, rather than being diff --git a/SysML2.NET/Core/AutoGenPoco/NullExpression.cs b/SysML2.NET/Core/AutoGenPoco/NullExpression.cs index 99ab8297..a5efea85 100644 --- a/SysML2.NET/Core/AutoGenPoco/NullExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/NullExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A NullExpression is an Expression that results in a null value. @@ -80,7 +81,7 @@ public NullExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -141,7 +142,7 @@ public NullExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -226,7 +227,7 @@ public NullExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(NullExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -721,7 +722,7 @@ public NullExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ObjectiveMembership.cs b/SysML2.NET/Core/AutoGenPoco/ObjectiveMembership.cs index 673843e7..ba91b0c7 100644 --- a/SysML2.NET/Core/AutoGenPoco/ObjectiveMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ObjectiveMembership.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Systems.Cases using SysML2.NET.Core.POCO.Systems.Requirements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An ObjectiveMembership is a FeatureMembership that indicates that its ownedObjectiveRequirement is @@ -155,7 +156,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -178,7 +179,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ObjectiveMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -229,7 +230,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -237,7 +238,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -247,7 +248,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IObjectiveMembership.OwnedObjectiveRequirement")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedObjectiveRequirement; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -255,7 +256,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -263,7 +264,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The RequirementUsage that is the ownedMemberFeature of this RequirementUsage. @@ -271,7 +272,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_2_59601fc_1590258776804_538578_832", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IObjectiveMembership.OwnedObjectiveRequirement")] - public IRequirementUsage ownedObjectiveRequirement => this.ComputeOwnedObjectiveRequirement(); + public IRequirementUsage ownedObjectiveRequirement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IRequirementUsage; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -350,7 +351,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/OccurrenceDefinition.cs b/SysML2.NET/Core/AutoGenPoco/OccurrenceDefinition.cs index 1652a99b..acdd7d1d 100644 --- a/SysML2.NET/Core/AutoGenPoco/OccurrenceDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/OccurrenceDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Occurrences using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An OccurrenceDefinition is a Definition of a Class of individuals that have an independent life over @@ -140,6 +141,7 @@ public OccurrenceDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -670,6 +672,7 @@ public OccurrenceDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/OccurrenceUsage.cs b/SysML2.NET/Core/AutoGenPoco/OccurrenceUsage.cs index b85c328f..739353a5 100644 --- a/SysML2.NET/Core/AutoGenPoco/OccurrenceUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/OccurrenceUsage.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Occurrences using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An OccurrenceUsage is a Usage whose types are all Classes. Nominally, if a type is an @@ -146,7 +147,7 @@ public OccurrenceUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -174,6 +175,7 @@ public OccurrenceUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -460,7 +462,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -681,6 +683,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -724,7 +727,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -967,6 +970,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1074,7 +1078,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/OperatorExpression.cs b/SysML2.NET/Core/AutoGenPoco/OperatorExpression.cs index 5a1d2616..e8ff56f9 100644 --- a/SysML2.NET/Core/AutoGenPoco/OperatorExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/OperatorExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An OperatorExpression is an InvocationExpression whose function is determined by resolving its @@ -91,7 +92,7 @@ public OperatorExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +153,7 @@ public OperatorExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -237,7 +238,7 @@ public OperatorExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(OperatorExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -748,7 +749,7 @@ public OperatorExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/OwningMembership.cs b/SysML2.NET/Core/AutoGenPoco/OwningMembership.cs index 91067aea..eaf70380 100644 --- a/SysML2.NET/Core/AutoGenPoco/OwningMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/OwningMembership.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Root.Namespaces using SysML2.NET.Core.POCO.Root.Elements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// An OwningMembership is a Membership that owns its memberElement as a ownedRelatedElement. The @@ -151,7 +152,7 @@ IElement IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string IMembership.memberElementId => this.ownedMemberElementId; + string IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -173,7 +174,7 @@ string IMembership.MemberName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - public INamespace membershipOwningNamespace => this.ComputeMembershipOwningNamespace(); + public INamespace membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(OwningMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -223,7 +224,7 @@ string IMembership.MemberShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674986_59873_43302")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - public IElement ownedMemberElement => this.ComputeOwnedMemberElement(); + public IElement ownedMemberElement => ((IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -231,7 +232,7 @@ string IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((IMembership)this).memberElementId; /// /// The name of the ownedMemberElement. @@ -239,7 +240,7 @@ string IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -247,7 +248,7 @@ string IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. diff --git a/SysML2.NET/Core/AutoGenPoco/Package.cs b/SysML2.NET/Core/AutoGenPoco/Package.cs index f73dcb8e..8922a733 100644 --- a/SysML2.NET/Core/AutoGenPoco/Package.cs +++ b/SysML2.NET/Core/AutoGenPoco/Package.cs @@ -36,6 +36,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Packages using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Package is a Namespace used to group Elements, without any instance-level semantics. It may have diff --git a/SysML2.NET/Core/AutoGenPoco/ParameterMembership.cs b/SysML2.NET/Core/AutoGenPoco/ParameterMembership.cs index 3b20b862..d10b5638 100644 --- a/SysML2.NET/Core/AutoGenPoco/ParameterMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ParameterMembership.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Behaviors using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ParameterMembership is a FeatureMembership that identifies its memberFeature as a parameter, which @@ -156,7 +157,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -179,7 +180,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ParameterMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -230,7 +231,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -238,7 +239,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -248,7 +249,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IParameterMembership.OwnedMemberParameter")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedMemberParameter; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -256,7 +257,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The Feature that is identified as a parameter by this ParameterMembership. @@ -264,7 +265,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_18_5_3_12e503d9_1557528016548_548098_110830", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IParameterMembership.OwnedMemberParameter")] - public IFeature ownedMemberParameter => this.ComputeOwnedMemberParameter(); + public IFeature ownedMemberParameter => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; /// /// The shortName of the ownedMemberElement. @@ -272,7 +273,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -351,7 +352,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/PartDefinition.cs b/SysML2.NET/Core/AutoGenPoco/PartDefinition.cs index 8bde288c..cf1d672b 100644 --- a/SysML2.NET/Core/AutoGenPoco/PartDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/PartDefinition.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.Parts using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PartDefinition is an ItemDefinition of a Class of systems or parts of systems. Note that all parts @@ -138,6 +139,7 @@ public PartDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -668,6 +670,7 @@ public PartDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/PartUsage.cs b/SysML2.NET/Core/AutoGenPoco/PartUsage.cs index fd1e02ab..4c108c2b 100644 --- a/SysML2.NET/Core/AutoGenPoco/PartUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/PartUsage.cs @@ -63,6 +63,7 @@ namespace SysML2.NET.Core.POCO.Systems.Parts using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PartUsage is a usage of a PartDefinition to represent a system or a part of a system. At least one @@ -146,7 +147,7 @@ public PartUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -174,6 +175,7 @@ public PartUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -470,7 +472,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -691,6 +693,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -734,7 +737,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -977,6 +980,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1092,7 +1096,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/PayloadFeature.cs b/SysML2.NET/Core/AutoGenPoco/PayloadFeature.cs index 53af554a..92a6d130 100644 --- a/SysML2.NET/Core/AutoGenPoco/PayloadFeature.cs +++ b/SysML2.NET/Core/AutoGenPoco/PayloadFeature.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Interactions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PayloadFeature is the ownedFeature of a Flow that identifies the things carried by the kinds of diff --git a/SysML2.NET/Core/AutoGenPoco/PerformActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/PerformActionUsage.cs index bead4436..064827c3 100644 --- a/SysML2.NET/Core/AutoGenPoco/PerformActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/PerformActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PerformActionUsage is an ActionUsage that represents the performance of an ActionUsage. Unless it @@ -100,8 +101,9 @@ public PerformActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -117,7 +119,7 @@ public PerformActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -167,7 +169,7 @@ public PerformActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -189,13 +191,14 @@ public PerformActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -250,7 +253,7 @@ public PerformActionUsage() [Property(xmiId: "_19_0_4_12e503d9_1622831790393_676695_195", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IPerformActionUsage.PerformedAction")] [Implements(implementation: "IEventOccurrenceUsage.EventOccurrence")] - IOccurrenceUsage Systems.Occurrences.IEventOccurrenceUsage.eventOccurrence => this.performedAction; + IOccurrenceUsage Systems.Occurrences.IEventOccurrenceUsage.eventOccurrence => this.ComputeEventOccurrence(); /// /// The ownedMemberFeatures of the featureMemberships of this Type. @@ -440,7 +443,7 @@ public PerformActionUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IEventOccurrenceUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool Systems.DefinitionAndUsage.IUsage.isReference => this.isReference; + bool Systems.DefinitionAndUsage.IUsage.isReference => this.ComputeIsReference(); /// /// Always true for an EventOccurrenceUsage. @@ -448,7 +451,7 @@ public PerformActionUsage() [Property(xmiId: "_19_0_4_12e503d9_1672526906017_786343_306", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IEventOccurrenceUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).isReference; /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -501,7 +504,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -722,6 +725,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -764,8 +768,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1008,6 +1013,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1073,7 +1079,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ActionUsage to be performed by this PerformedActionUsage. It is the eventOccurrence of the @@ -1082,7 +1088,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1567740791820_867719_18017", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1622831790393_676695_195")] [Implements(implementation: "IPerformActionUsage.PerformedAction")] - public IActionUsage performedAction => this.ComputePerformedAction(); + public IActionUsage performedAction => ((SysML2.NET.Core.POCO.Systems.Occurrences.IEventOccurrenceUsage)this).eventOccurrence as IActionUsage; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1133,7 +1139,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/PortConjugation.cs b/SysML2.NET/Core/AutoGenPoco/PortConjugation.cs index 8a3819f5..f570d14e 100644 --- a/SysML2.NET/Core/AutoGenPoco/PortConjugation.cs +++ b/SysML2.NET/Core/AutoGenPoco/PortConjugation.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Systems.Ports using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PortConjugation is a Conjugation Relationship between a PortDefinition and its corresponding @@ -82,7 +83,7 @@ public PortConjugation() [Property(xmiId: "_19_0_2_12e503d9_1575484344899_880331_946", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1575482646809_778895_441")] [Implements(implementation: "IPortConjugation.ConjugatedPortDefinition")] - public IConjugatedPortDefinition conjugatedPortDefinition => this.ComputeConjugatedPortDefinition(); + public IConjugatedPortDefinition conjugatedPortDefinition => ((SysML2.NET.Core.POCO.Core.Types.IConjugation)this).owningType as IConjugatedPortDefinition; /// /// The Type that is the result of applying Conjugation to the originalType. @@ -285,7 +286,7 @@ IType Core.Types.IConjugation.OriginalType [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedByProperty("IPortConjugation.ConjugatedPortDefinition")] [Implements(implementation: "IConjugation.OwningType")] - IType Core.Types.IConjugation.owningType => this.conjugatedPortDefinition; + IType Core.Types.IConjugation.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/PortDefinition.cs b/SysML2.NET/Core/AutoGenPoco/PortDefinition.cs index 9fb5c2c5..463855e6 100644 --- a/SysML2.NET/Core/AutoGenPoco/PortDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/PortDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Ports using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PortDefinition defines a point at which external entities can connect to and interact with a @@ -147,6 +148,7 @@ public PortDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -677,6 +679,7 @@ public PortDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/PortUsage.cs b/SysML2.NET/Core/AutoGenPoco/PortUsage.cs index 5df3b23e..58a8957d 100644 --- a/SysML2.NET/Core/AutoGenPoco/PortUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/PortUsage.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Ports using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A PortUsage is a usage of a PortDefinition. A PortUsage itself as well as all its nestedUsages must @@ -144,7 +145,7 @@ public PortUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -172,6 +173,7 @@ public PortUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -458,7 +460,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -679,6 +681,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -723,7 +726,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [RedefinedByProperty("IPortUsage.PortDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. this.portDefinition]; + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -966,6 +969,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1030,7 +1034,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_18_5_3_12e503d9_1565492740124_880100_25026", 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_1618943843466_158863_236")] [Implements(implementation: "IPortUsage.PortDefinition")] - public List portDefinition => this.ComputePortDefinition(); + public List portDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Occurrences.IOccurrenceUsage)this).occurrenceDefinition.OfType()]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1081,7 +1085,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Predicate.cs b/SysML2.NET/Core/AutoGenPoco/Predicate.cs index cd142839..e2f97389 100644 --- a/SysML2.NET/Core/AutoGenPoco/Predicate.cs +++ b/SysML2.NET/Core/AutoGenPoco/Predicate.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Predicate is a Function whose result parameter has type Boolean and multiplicity 1..1. @@ -110,7 +111,7 @@ public Predicate() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The Documentation owned by this Element. @@ -504,7 +505,7 @@ public Predicate() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Redefinition.cs b/SysML2.NET/Core/AutoGenPoco/Redefinition.cs index 5fbb27b9..ff2840fa 100644 --- a/SysML2.NET/Core/AutoGenPoco/Redefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/Redefinition.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Redefinition is a kind of Subsetting that requires the redefinedFeature and the redefiningFeature to @@ -227,7 +228,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674967_140305_43206")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [Implements(implementation: "ISubsetting.OwningFeature")] - public IFeature owningFeature => this.ComputeOwningFeature(); + public IFeature owningFeature => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IFeature; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -277,7 +278,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubsetting.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ReferenceSubsetting.cs b/SysML2.NET/Core/AutoGenPoco/ReferenceSubsetting.cs index 91b5688b..051f3566 100644 --- a/SysML2.NET/Core/AutoGenPoco/ReferenceSubsetting.cs +++ b/SysML2.NET/Core/AutoGenPoco/ReferenceSubsetting.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// ReferenceSubsetting is a kind of Subsetting in which the referencedFeature is syntactically @@ -222,7 +223,7 @@ IType Core.Types.ISpecialization.General [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [RedefinedByProperty("IReferenceSubsetting.ReferencingFeature")] [Implements(implementation: "ISubsetting.OwningFeature")] - IFeature ISubsetting.owningFeature => this.referencingFeature; + IFeature ISubsetting.owningFeature => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IFeature; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -272,7 +273,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubsetting.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => ((SysML2.NET.Core.POCO.Core.Features.ISubsetting)this).owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -301,7 +302,7 @@ IType Core.Types.ISpecialization.General [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674987_236250_43311")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674967_140305_43206")] [Implements(implementation: "IReferenceSubsetting.ReferencingFeature")] - public IFeature referencingFeature => this.ComputeReferencingFeature(); + public IFeature referencingFeature => ((ISubsetting)this).owningFeature; /// /// The Elements that are related by this Relationship, derived as the union of the source and target diff --git a/SysML2.NET/Core/AutoGenPoco/ReferenceUsage.cs b/SysML2.NET/Core/AutoGenPoco/ReferenceUsage.cs index 0d7f2a49..d712c718 100644 --- a/SysML2.NET/Core/AutoGenPoco/ReferenceUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ReferenceUsage.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.DefinitionAndUsage using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ReferenceUsage is a Usage that specifies a non-compositional (isComposite = false) reference to @@ -144,7 +145,7 @@ public ReferenceUsage() [Property(xmiId: "_19_0_2_12e503d9_1591477641252_179221_958", 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")] [Implements(implementation: "IUsage.Definition")] - public List definition => this.ComputeDefinition(); + public List definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -172,6 +173,7 @@ public ReferenceUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -390,7 +392,7 @@ public ReferenceUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035133434_200283_41434", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: "true")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1624035114787_488767_41423")] [Implements(implementation: "IReferenceUsage.IsReference")] - public bool isReference => this.ComputeIsReference(); + public bool isReference => ((IUsage)this).isReference; /// /// Whether this Usage is a referential Usage, that is, it has isComposite = false. @@ -398,7 +400,7 @@ public ReferenceUsage() [Property(xmiId: "_19_0_4_12e503d9_1624035114787_488767_41423", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IReferenceUsage.IsReference")] [Implements(implementation: "IUsage.IsReference")] - bool IUsage.isReference => this.isReference; + bool IUsage.isReference => this.ComputeIsReference(); /// /// Whether all things that meet the classification conditions of this Type must be classified by the @@ -451,7 +453,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -672,6 +674,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -948,6 +951,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1046,7 +1050,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. this.definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/RenderingDefinition.cs b/SysML2.NET/Core/AutoGenPoco/RenderingDefinition.cs index 739ad9e7..e55df2ed 100644 --- a/SysML2.NET/Core/AutoGenPoco/RenderingDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/RenderingDefinition.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Systems.VerificationCases; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A RenderingDefinition is a PartDefinition that defines a specific rendering of the content of a @@ -137,6 +138,7 @@ public RenderingDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -667,6 +669,7 @@ public RenderingDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/RenderingUsage.cs b/SysML2.NET/Core/AutoGenPoco/RenderingUsage.cs index 010ac425..6281683f 100644 --- a/SysML2.NET/Core/AutoGenPoco/RenderingUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/RenderingUsage.cs @@ -63,6 +63,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Systems.VerificationCases; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A RenderingUsage is the usage of a RenderingDefinition to specify the rendering of a specific model @@ -145,7 +146,7 @@ public RenderingUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -173,6 +174,7 @@ public RenderingUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -469,7 +471,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -690,6 +692,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -733,7 +736,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -976,6 +979,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1041,7 +1045,7 @@ bool Core.Features.IFeature.IsVariable [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedByProperty("IRenderingUsage.RenderingDefinition")] [Implements(implementation: "IPartUsage.PartDefinition")] - List Systems.Parts.IPartUsage.partDefinition => this.renderingDefinition != null ? [this.renderingDefinition] : []; + List Systems.Parts.IPartUsage.partDefinition => this.ComputePartDefinition(); /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1070,7 +1074,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1596741320785_268295_6306", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591475180488_929065_121")] [Implements(implementation: "IRenderingUsage.RenderingDefinition")] - public IRenderingDefinition renderingDefinition => this.ComputeRenderingDefinition(); + public IRenderingDefinition renderingDefinition => ((SysML2.NET.Core.POCO.Systems.Parts.IPartUsage)this).partDefinition.OfType().SingleOrDefaultStrict(nameof(RenderingUsage)); /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1100,7 +1104,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/RequirementConstraintMembership.cs b/SysML2.NET/Core/AutoGenPoco/RequirementConstraintMembership.cs index 6b93624b..2bd3c0db 100644 --- a/SysML2.NET/Core/AutoGenPoco/RequirementConstraintMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/RequirementConstraintMembership.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Constraints; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A RequirementConstraintMembership is a FeatureMembership for an assumed or required ConstraintUsage @@ -163,7 +164,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -186,7 +187,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(RequirementConstraintMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -226,7 +227,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_2_12e503d9_1584048366950_985767_426", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IRequirementConstraintMembership.OwnedConstraint")] - public IConstraintUsage ownedConstraint => this.ComputeOwnedConstraint(); + public IConstraintUsage ownedConstraint => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IConstraintUsage; /// /// The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of @@ -245,7 +246,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -253,7 +254,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -263,7 +264,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IRequirementConstraintMembership.OwnedConstraint")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedConstraint; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -271,7 +272,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -279,7 +280,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -358,7 +359,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/RequirementDefinition.cs b/SysML2.NET/Core/AutoGenPoco/RequirementDefinition.cs index 623d2df5..886c08b4 100644 --- a/SysML2.NET/Core/AutoGenPoco/RequirementDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/RequirementDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A RequirementDefinition is a ConstraintDefinition that defines a requirement used in the context of @@ -95,6 +96,7 @@ public RequirementDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -160,13 +162,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -725,6 +728,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -804,7 +808,7 @@ string Root.Elements.IElement.DeclaredShortName [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -862,6 +866,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -878,6 +883,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/RequirementUsage.cs b/SysML2.NET/Core/AutoGenPoco/RequirementUsage.cs index e31051b5..5575b521 100644 --- a/SysML2.NET/Core/AutoGenPoco/RequirementUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/RequirementUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A RequirementUsage is a Usage of a RequirementDefinition. @@ -95,6 +96,7 @@ public RequirementUsage() /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -122,7 +124,7 @@ public RequirementUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -145,7 +147,7 @@ public RequirementUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [RedefinedByProperty("IRequirementUsage.RequirementDefinition")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => this.requirementDefinition; + IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -191,7 +193,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -213,13 +215,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -316,7 +319,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(RequirementUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -532,7 +535,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -753,6 +756,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -796,7 +800,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1039,6 +1043,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1104,7 +1109,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1122,7 +1127,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1162,7 +1167,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1583000408905_769743_1223", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578067546711_751168_1745")] [Implements(implementation: "IRequirementUsage.RequirementDefinition")] - public IRequirementDefinition requirementDefinition => this.ComputeRequirementDefinition(); + public IRequirementDefinition requirementDefinition => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition as IRequirementDefinition; /// /// An output parameter of the Expression whose value is the result of the Expression. The result of an @@ -1190,6 +1195,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -1198,6 +1204,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1227,7 +1234,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/RequirementVerificationMembership.cs b/SysML2.NET/Core/AutoGenPoco/RequirementVerificationMembership.cs index 762f797f..3f6a967f 100644 --- a/SysML2.NET/Core/AutoGenPoco/RequirementVerificationMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/RequirementVerificationMembership.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Systems.VerificationCases using SysML2.NET.Core.POCO.Systems.Requirements; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A RequirementVerificationMembership is a RequirementConstraintMembership used in the objective of a @@ -180,7 +181,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -203,7 +204,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(RequirementVerificationMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -244,7 +245,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [RedefinedByProperty("IRequirementVerificationMembership.OwnedRequirement")] [Implements(implementation: "IRequirementConstraintMembership.OwnedConstraint")] - IConstraintUsage Systems.Requirements.IRequirementConstraintMembership.ownedConstraint => this.ownedRequirement; + IConstraintUsage Systems.Requirements.IRequirementConstraintMembership.ownedConstraint => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IConstraintUsage; /// /// The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of @@ -263,7 +264,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -271,7 +272,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -281,7 +282,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IRequirementConstraintMembership.OwnedConstraint")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership)this).ownedConstraint; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -289,7 +290,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -297,7 +298,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -329,7 +330,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1603921329650_612380_147", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1584048366950_985767_426")] [Implements(implementation: "IRequirementVerificationMembership.OwnedRequirement")] - public IRequirementUsage ownedRequirement => this.ComputeOwnedRequirement(); + public IRequirementUsage ownedRequirement => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership)this).ownedConstraint as IRequirementUsage; /// /// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this @@ -386,7 +387,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -408,7 +409,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1617118807597_77864_3544", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IRequirementVerificationMembership.VerifiedRequirement")] [Implements(implementation: "IRequirementConstraintMembership.ReferencedConstraint")] - IConstraintUsage Systems.Requirements.IRequirementConstraintMembership.referencedConstraint => this.verifiedRequirement; + IConstraintUsage Systems.Requirements.IRequirementConstraintMembership.referencedConstraint => this.ComputeReferencedConstraint(); /// /// The Elements that are related by this Relationship, derived as the union of the source and target @@ -477,7 +478,7 @@ List Root.Elements.IRelationship.Target [Property(xmiId: "_19_0_4_12e503d9_1603921870169_98378_309", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1617118807597_77864_3544")] [Implements(implementation: "IRequirementVerificationMembership.VerifiedRequirement")] - public IRequirementUsage verifiedRequirement => this.ComputeVerifiedRequirement(); + public IRequirementUsage verifiedRequirement => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementConstraintMembership)this).referencedConstraint as IRequirementUsage; /// /// Whether or not the Membership of the memberElement in the membershipOwningNamespace is publicly diff --git a/SysML2.NET/Core/AutoGenPoco/ResultExpressionMembership.cs b/SysML2.NET/Core/AutoGenPoco/ResultExpressionMembership.cs index 742c5460..acf21a2c 100644 --- a/SysML2.NET/Core/AutoGenPoco/ResultExpressionMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ResultExpressionMembership.cs @@ -37,6 +37,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ResultExpressionMembership is a FeatureMembership that indicates that the ownedResultExpression @@ -156,7 +157,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -179,7 +180,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ResultExpressionMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -230,7 +231,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -238,7 +239,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -248,7 +249,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IResultExpressionMembership.OwnedResultExpression")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedResultExpression; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -256,7 +257,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -264,7 +265,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -294,7 +295,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_2_12e503d9_1594868945944_989058_2545", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IResultExpressionMembership.OwnedResultExpression")] - public IExpression ownedResultExpression => this.ComputeOwnedResultExpression(); + public IExpression ownedResultExpression => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IExpression; /// /// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this @@ -351,7 +352,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ReturnParameterMembership.cs b/SysML2.NET/Core/AutoGenPoco/ReturnParameterMembership.cs index 89c45be7..13e02b3b 100644 --- a/SysML2.NET/Core/AutoGenPoco/ReturnParameterMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ReturnParameterMembership.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Functions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ReturnParameterMembership is a ParameterMembership that indicates that the ownedMemberParameter is @@ -157,7 +158,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -180,7 +181,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ReturnParameterMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -231,7 +232,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -239,7 +240,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -249,7 +250,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IParameterMembership.OwnedMemberParameter")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedMemberParameter; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -257,7 +258,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The Feature that is identified as a parameter by this ParameterMembership. @@ -265,7 +266,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_18_5_3_12e503d9_1557528016548_548098_110830", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IParameterMembership.OwnedMemberParameter")] - public IFeature ownedMemberParameter => this.ComputeOwnedMemberParameter(); + public IFeature ownedMemberParameter => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; /// /// The shortName of the ownedMemberElement. @@ -273,7 +274,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -352,7 +353,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/SatisfyRequirementUsage.cs b/SysML2.NET/Core/AutoGenPoco/SatisfyRequirementUsage.cs index 9505fb55..cc41ed05 100644 --- a/SysML2.NET/Core/AutoGenPoco/SatisfyRequirementUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/SatisfyRequirementUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SatisfyRequirementUsage is an AssertConstraintUsage that asserts, by default, that a satisfied @@ -98,6 +99,7 @@ public SatisfyRequirementUsage() /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -116,7 +118,7 @@ public SatisfyRequirementUsage() [Property(xmiId: "_19_0_2_12e503d9_1581045158665_239617_9458", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("ISatisfyRequirementUsage.SatisfiedRequirement")] [Implements(implementation: "IAssertConstraintUsage.AssertedConstraint")] - IConstraintUsage Systems.Constraints.IAssertConstraintUsage.assertedConstraint => this.satisfiedRequirement; + IConstraintUsage Systems.Constraints.IAssertConstraintUsage.assertedConstraint => this.ComputeAssertedConstraint(); /// /// The owned ConstraintUsages that represent assumptions of this RequirementUsage, derived as the @@ -135,7 +137,7 @@ public SatisfyRequirementUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -158,7 +160,7 @@ public SatisfyRequirementUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [RedefinedByProperty("IRequirementUsage.RequirementDefinition")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => this.requirementDefinition; + IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -204,7 +206,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -226,13 +228,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -329,7 +332,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(SatisfyRequirementUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -552,7 +555,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -773,6 +776,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -816,7 +820,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1059,6 +1063,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1124,7 +1129,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1142,7 +1147,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1182,7 +1187,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1583000408905_769743_1223", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578067546711_751168_1745")] [Implements(implementation: "IRequirementUsage.RequirementDefinition")] - public IRequirementDefinition requirementDefinition => this.ComputeRequirementDefinition(); + public IRequirementDefinition requirementDefinition => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition as IRequirementDefinition; /// /// An output parameter of the Expression whose value is the result of the Expression. The result of an @@ -1203,7 +1208,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1583185037725_699150_2332", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1581045158665_239617_9458")] [Implements(implementation: "ISatisfyRequirementUsage.SatisfiedRequirement")] - public IRequirementUsage satisfiedRequirement => this.ComputeSatisfiedRequirement(); + public IRequirementUsage satisfiedRequirement => ((SysML2.NET.Core.POCO.Systems.Constraints.IAssertConstraintUsage)this).assertedConstraint as IRequirementUsage; /// /// The Feature that represents the actual subject that is asserted to satisfy the satisfiedRequirement. @@ -1228,6 +1233,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -1236,6 +1242,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1265,7 +1272,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/SelectExpression.cs b/SysML2.NET/Core/AutoGenPoco/SelectExpression.cs index 13d6c334..fedfe697 100644 --- a/SysML2.NET/Core/AutoGenPoco/SelectExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/SelectExpression.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Expressions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SelectExpression is an OperatorExpression whose operator is "select", which resolves to the @@ -91,7 +92,7 @@ public SelectExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +153,7 @@ public SelectExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -237,7 +238,7 @@ public SelectExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(SelectExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -763,7 +764,7 @@ string IOperatorExpression.Operator [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/SendActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/SendActionUsage.cs index 3899d91f..48f8d1a2 100644 --- a/SysML2.NET/Core/AutoGenPoco/SendActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/SendActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SendActionUsage is an ActionUsage that specifies the sending of a payload given by the result of @@ -102,8 +103,9 @@ public SendActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -119,7 +121,7 @@ public SendActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -169,7 +171,7 @@ public SendActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -191,13 +193,14 @@ public SendActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -484,7 +487,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -705,6 +708,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -747,8 +751,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -991,6 +996,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1056,7 +1062,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// An Expression whose result is bound to the payload input parameter of this SendActionUsage. @@ -1128,7 +1134,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Specialization.cs b/SysML2.NET/Core/AutoGenPoco/Specialization.cs index e2aa2a6d..edfda560 100644 --- a/SysML2.NET/Core/AutoGenPoco/Specialization.cs +++ b/SysML2.NET/Core/AutoGenPoco/Specialization.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Specialization is a Relationship between two Types that requires all instances of the specific type diff --git a/SysML2.NET/Core/AutoGenPoco/StakeholderMembership.cs b/SysML2.NET/Core/AutoGenPoco/StakeholderMembership.cs index 7f9a10c9..51544d7c 100644 --- a/SysML2.NET/Core/AutoGenPoco/StakeholderMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/StakeholderMembership.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.Parts; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A StakeholderMembership is a ParameterMembership that identifies a PartUsage as a @@ -158,7 +159,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -181,7 +182,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(StakeholderMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -232,7 +233,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -240,7 +241,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -250,7 +251,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IParameterMembership.OwnedMemberParameter")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership)this).ownedMemberParameter; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -258,7 +259,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The Feature that is identified as a parameter by this ParameterMembership. @@ -267,7 +268,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [RedefinedByProperty("IStakeholderMembership.OwnedStakeholderParameter")] [Implements(implementation: "IParameterMembership.OwnedMemberParameter")] - IFeature Kernel.Behaviors.IParameterMembership.ownedMemberParameter => this.ownedStakeholderParameter; + IFeature Kernel.Behaviors.IParameterMembership.ownedMemberParameter => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; /// /// The shortName of the ownedMemberElement. @@ -275,7 +276,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -305,7 +306,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1624034451301_6622_40822", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1557528016548_548098_110830")] [Implements(implementation: "IStakeholderMembership.OwnedStakeholderParameter")] - public IPartUsage ownedStakeholderParameter => this.ComputeOwnedStakeholderParameter(); + public IPartUsage ownedStakeholderParameter => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership)this).ownedMemberParameter as IPartUsage; /// /// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this @@ -362,7 +363,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/StateDefinition.cs b/SysML2.NET/Core/AutoGenPoco/StateDefinition.cs index bc0e69f6..72109494 100644 --- a/SysML2.NET/Core/AutoGenPoco/StateDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/StateDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.States using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A StateDefinition is the Definition of the Behavior of a system or part of a system in a certain @@ -96,6 +97,7 @@ public StateDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -143,13 +145,14 @@ public StateDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -716,6 +719,7 @@ public StateDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -795,7 +799,7 @@ public StateDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/StateSubactionMembership.cs b/SysML2.NET/Core/AutoGenPoco/StateSubactionMembership.cs index 15fd8643..c1ddce41 100644 --- a/SysML2.NET/Core/AutoGenPoco/StateSubactionMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/StateSubactionMembership.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Systems.States using SysML2.NET.Core.POCO.Systems.Actions; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A StateSubactionMembership is a FeatureMembership for an entry, do or exit ActionUsage of a @@ -76,7 +77,7 @@ public StateSubactionMembership() [Property(xmiId: "_19_0_2_12e503d9_1582974847979_606181_96", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IStateSubactionMembership.Action")] - public IActionUsage action => this.ComputeAction(); + public IActionUsage action => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IActionUsage; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -171,7 +172,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -194,7 +195,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(StateSubactionMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -245,7 +246,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -253,7 +254,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -263,7 +264,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IStateSubactionMembership.Action")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.action; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -271,7 +272,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -279,7 +280,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -358,7 +359,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/StateUsage.cs b/SysML2.NET/Core/AutoGenPoco/StateUsage.cs index 0342483a..6b60e4bd 100644 --- a/SysML2.NET/Core/AutoGenPoco/StateUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/StateUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.States using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A StateUsage is an ActionUsage that is nominally the Usage of a StateDefinition. However, other @@ -100,9 +101,10 @@ public StateUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [RedefinedByProperty("IStateUsage.StateDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - List Systems.Actions.IActionUsage.actionDefinition => [.. this.stateDefinition]; + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -118,7 +120,7 @@ public StateUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. ((SysML2.NET.Core.POCO.Systems.Actions.IActionUsage)this).actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -168,7 +170,7 @@ public StateUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -190,13 +192,14 @@ public StateUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -519,7 +522,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -740,6 +743,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -782,8 +786,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1026,6 +1031,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1091,7 +1097,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1131,7 +1137,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1575588456737_49200_1438", 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_1565500905804_589845_30779")] [Implements(implementation: "IStateUsage.StateDefinition")] - public List stateDefinition => this.ComputeStateDefinition(); + public List stateDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Actions.IActionUsage)this).actionDefinition]; /// /// The TextualRepresentations that annotate this Element. @@ -1151,7 +1157,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/Step.cs b/SysML2.NET/Core/AutoGenPoco/Step.cs index 7920bd36..90201609 100644 --- a/SysML2.NET/Core/AutoGenPoco/Step.cs +++ b/SysML2.NET/Core/AutoGenPoco/Step.cs @@ -38,6 +38,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Behaviors using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Step is a Feature that is typed by one or more Behaviors. Steps may be used by one Behavior to @@ -141,7 +142,7 @@ public Step() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -705,7 +706,7 @@ public Step() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Structure.cs b/SysML2.NET/Core/AutoGenPoco/Structure.cs index 371c09d0..307707d6 100644 --- a/SysML2.NET/Core/AutoGenPoco/Structure.cs +++ b/SysML2.NET/Core/AutoGenPoco/Structure.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Structures using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Structure is a Class of objects in the modeled universe that are primarily structural in nature. diff --git a/SysML2.NET/Core/AutoGenPoco/Subclassification.cs b/SysML2.NET/Core/AutoGenPoco/Subclassification.cs index b2953830..7362b92f 100644 --- a/SysML2.NET/Core/AutoGenPoco/Subclassification.cs +++ b/SysML2.NET/Core/AutoGenPoco/Subclassification.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Classifiers using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Subclassification is Specialization in which both the specific and general Types are Classifier. @@ -216,7 +217,7 @@ IType Core.Types.ISpecialization.General [Property(xmiId: "_18_5_3_12e503d9_1543189170642_857401_25506", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [Implements(implementation: "ISubclassification.OwningClassifier")] - public IClassifier owningClassifier => this.ComputeOwningClassifier(); + public IClassifier owningClassifier => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IClassifier; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -266,7 +267,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubclassification.OwningClassifier")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningClassifier; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/SubjectMembership.cs b/SysML2.NET/Core/AutoGenPoco/SubjectMembership.cs index 3f22188f..26c42462 100644 --- a/SysML2.NET/Core/AutoGenPoco/SubjectMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/SubjectMembership.cs @@ -40,6 +40,7 @@ namespace SysML2.NET.Core.POCO.Systems.Requirements using SysML2.NET.Core.POCO.Systems.DefinitionAndUsage; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SubjectMembership is a ParameterMembership that indicates that its ownedSubjectParameter is the @@ -158,7 +159,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -181,7 +182,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(SubjectMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -232,7 +233,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -240,7 +241,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -250,7 +251,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IParameterMembership.OwnedMemberParameter")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership)this).ownedMemberParameter; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -258,7 +259,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The Feature that is identified as a parameter by this ParameterMembership. @@ -267,7 +268,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [RedefinedByProperty("ISubjectMembership.OwnedSubjectParameter")] [Implements(implementation: "IParameterMembership.OwnedMemberParameter")] - IFeature Kernel.Behaviors.IParameterMembership.ownedMemberParameter => this.ownedSubjectParameter; + IFeature Kernel.Behaviors.IParameterMembership.ownedMemberParameter => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; /// /// The shortName of the ownedMemberElement. @@ -275,7 +276,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -305,7 +306,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_2_59601fc_1590258781117_655788_845", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1557528016548_548098_110830")] [Implements(implementation: "ISubjectMembership.OwnedSubjectParameter")] - public IUsage ownedSubjectParameter => this.ComputeOwnedSubjectParameter(); + public IUsage ownedSubjectParameter => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IParameterMembership)this).ownedMemberParameter as IUsage; /// /// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this @@ -362,7 +363,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Subsetting.cs b/SysML2.NET/Core/AutoGenPoco/Subsetting.cs index 87cbf217..9ef3522a 100644 --- a/SysML2.NET/Core/AutoGenPoco/Subsetting.cs +++ b/SysML2.NET/Core/AutoGenPoco/Subsetting.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Subsetting is Specialization in which the specific and general Types are Features. This means all @@ -221,7 +222,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674967_140305_43206")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_573157_43226")] [Implements(implementation: "ISubsetting.OwningFeature")] - public IFeature owningFeature => this.ComputeOwningFeature(); + public IFeature owningFeature => ((SysML2.NET.Core.POCO.Core.Types.ISpecialization)this).owningType as IFeature; /// /// The owningRelationship of this Element, if that Relationship is a Membership. @@ -271,7 +272,7 @@ IType Core.Types.ISpecialization.General [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674982_253967_43281")] [RedefinedByProperty("ISubsetting.OwningFeature")] [Implements(implementation: "ISpecialization.OwningType")] - IType Core.Types.ISpecialization.owningType => this.owningFeature; + IType Core.Types.ISpecialization.owningType => this.ComputeOwningType(); /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Succession.cs b/SysML2.NET/Core/AutoGenPoco/Succession.cs index d7c6602f..199351ac 100644 --- a/SysML2.NET/Core/AutoGenPoco/Succession.cs +++ b/SysML2.NET/Core/AutoGenPoco/Succession.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Connectors using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Succession is a binary Connector that requires its relatedFeatures to happen separately in time. @@ -82,7 +83,7 @@ public Succession() [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")] [Implements(implementation: "IConnector.Association")] - public List association => this.ComputeAssociation(); + public List association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -104,7 +105,7 @@ public Succession() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -195,7 +196,7 @@ public Succession() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -768,7 +769,7 @@ public Succession() [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -777,7 +778,7 @@ public Succession() [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -809,7 +810,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Succession)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -832,7 +833,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -852,7 +853,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. this.association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/SuccessionAsUsage.cs b/SysML2.NET/Core/AutoGenPoco/SuccessionAsUsage.cs index 7d36aaf1..71ba6003 100644 --- a/SysML2.NET/Core/AutoGenPoco/SuccessionAsUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/SuccessionAsUsage.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Connections using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SuccessionAsUsage is both a ConnectorAsUsage and a Succession. @@ -105,7 +106,7 @@ public SuccessionAsUsage() [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")] [Implements(implementation: "IConnector.Association")] - public List association => this.ComputeAssociation(); + public List association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -127,7 +128,7 @@ public SuccessionAsUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -173,7 +174,7 @@ public SuccessionAsUsage() [Property(xmiId: "_19_0_2_12e503d9_1591477641252_179221_958", 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")] [Implements(implementation: "IUsage.Definition")] - public List definition => this.ComputeDefinition(); + public List definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -201,6 +202,7 @@ public SuccessionAsUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -236,7 +238,7 @@ public SuccessionAsUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -480,7 +482,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +703,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -988,6 +991,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1076,7 +1080,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1085,7 +1089,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1117,7 +1121,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(SuccessionAsUsage)); /// /// The relatedElements to which this Relationship is considered to be directed. @@ -1140,7 +1144,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The TextualRepresentations that annotate this Element. @@ -1160,7 +1164,7 @@ List Root.Elements.IRelationship.Target [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. this.definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/SuccessionFlow.cs b/SysML2.NET/Core/AutoGenPoco/SuccessionFlow.cs index ac25a9c1..e294bf5c 100644 --- a/SysML2.NET/Core/AutoGenPoco/SuccessionFlow.cs +++ b/SysML2.NET/Core/AutoGenPoco/SuccessionFlow.cs @@ -42,6 +42,7 @@ namespace SysML2.NET.Core.POCO.Kernel.Interactions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SuccessionFlow is a Flow that also provides temporal ordering. It classifies Transfers that cannot @@ -88,7 +89,7 @@ public SuccessionFlow() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. this.interaction]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Behaviors that type this Step. @@ -97,7 +98,7 @@ public SuccessionFlow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.interaction]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -119,7 +120,7 @@ public SuccessionFlow() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -177,7 +178,7 @@ public SuccessionFlow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -211,7 +212,7 @@ public SuccessionFlow() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -306,7 +307,7 @@ public SuccessionFlow() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674983_471497_43284")] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IFlow.Interaction")] - public List interaction => this.ComputeInteraction(); + public List interaction => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The interpretations of a Type with intersectingTypes are asserted to be those in common among the @@ -790,7 +791,7 @@ public SuccessionFlow() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ownedFeature of the Flow that is a PayloadFeature (if any). @@ -826,7 +827,7 @@ public SuccessionFlow() [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -835,7 +836,7 @@ public SuccessionFlow() [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -867,7 +868,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(SuccessionFlow)); /// /// The Feature that provides the items carried by the Flow. It must be a feature of the source of the @@ -898,7 +899,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The Feature that receives the values carried by the Flow. It must be a feature of the target of the @@ -926,7 +927,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/SuccessionFlowUsage.cs b/SysML2.NET/Core/AutoGenPoco/SuccessionFlowUsage.cs index 6fd16105..0ae951af 100644 --- a/SysML2.NET/Core/AutoGenPoco/SuccessionFlowUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/SuccessionFlowUsage.cs @@ -67,6 +67,7 @@ namespace SysML2.NET.Core.POCO.Systems.Flows using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A SuccessionFlowUsage is a FlowUsage that is also a KerML SuccessionFlow. @@ -104,8 +105,10 @@ public SuccessionFlowUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("IFlowUsage.FlowDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -121,7 +124,7 @@ public SuccessionFlowUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IConnector.Association")] - List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Kernel.Interactions.IFlow)this).interaction]; + List Kernel.Connectors.IConnector.association => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The Behaviors that type this Step. @@ -130,7 +133,7 @@ public SuccessionFlowUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IFlow.Interaction")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. ((SysML2.NET.Core.POCO.Kernel.Interactions.IFlow)this).interaction]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -152,7 +155,7 @@ public SuccessionFlowUsage() [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 connectorEnd => this.ComputeConnectorEnd(); + public List connectorEnd => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).endFeature]; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -199,7 +202,7 @@ public SuccessionFlowUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -221,13 +224,14 @@ public SuccessionFlowUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -263,7 +267,7 @@ public SuccessionFlowUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IConnector.ConnectorEnd")] [Implements(implementation: "IType.EndFeature")] - List Core.Types.IType.endFeature => [.. this.connectorEnd]; + List Core.Types.IType.endFeature => this.ComputeEndFeature(); /// /// The Type that is related to this Feature by an EndFeatureMembership in which the Feature is an @@ -315,9 +319,10 @@ public SuccessionFlowUsage() /// Model Libraries. /// [Property(xmiId: "_19_0_4_12e503d9_1661892878973_977062_185", 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_1565500905804_589845_30779")] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1661900477937_518125_727")] [Implements(implementation: "IFlowUsage.FlowDefinition")] - public List flowDefinition => this.ComputeFlowDefinition(); + public List flowDefinition => [.. ((SysML2.NET.Core.POCO.Systems.Actions.IActionUsage)this).actionDefinition.OfType()]; /// /// The connectorEnds of this Flow that are FlowEnds. @@ -377,7 +382,7 @@ public SuccessionFlowUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IFlowUsage.FlowDefinition")] [Implements(implementation: "IFlow.Interaction")] - List Kernel.Interactions.IFlow.interaction => [.. this.flowDefinition]; + List Kernel.Interactions.IFlow.interaction => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association.OfType()]; /// /// The interpretations of a Type with intersectingTypes are asserted to be those in common among the @@ -552,7 +557,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -773,6 +778,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -815,8 +821,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1070,6 +1077,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1146,7 +1154,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The ownedFeature of the Flow that is a PayloadFeature (if any). @@ -1191,7 +1199,7 @@ bool Core.Features.IFeature.IsVariable [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 Root.Elements.IRelationship.relatedElement => [.. this.relatedFeature]; + List Root.Elements.IRelationship.relatedElement => this.ComputeRelatedElement(); /// /// The Features that are related by this Connector considered as a Relationship and that restrict the @@ -1200,7 +1208,7 @@ bool Core.Features.IFeature.IsVariable [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 relatedFeature => this.ComputeRelatedFeature(); + public List relatedFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).relatedElement.OfType()]; /// /// The short name to be used for this Element during name resolution within its owningNamespace. This @@ -1232,7 +1240,7 @@ List Root.Elements.IRelationship.Source [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(); + public IFeature sourceFeature => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(SuccessionFlowUsage)); /// /// The Feature that provides the items carried by the Flow. It must be a feature of the source of the @@ -1263,7 +1271,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674968_916334_43210")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674961_138197_43179")] [Implements(implementation: "IConnector.TargetFeature")] - public List targetFeature => this.ComputeTargetFeature(); + public List targetFeature => [.. ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Target.OfType()]; /// /// The Feature that receives the values carried by the Flow. It must be a feature of the target of the @@ -1291,7 +1299,7 @@ List Root.Elements.IRelationship.Target [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 Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Kernel.Connectors.IConnector)this).association]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/TerminateActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/TerminateActionUsage.cs index 0c3804ee..a3deda05 100644 --- a/SysML2.NET/Core/AutoGenPoco/TerminateActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/TerminateActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A TerminateActionUsage is an ActionUsage that directly or indirectly specializes the @@ -101,8 +102,9 @@ public TerminateActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -118,7 +120,7 @@ public TerminateActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -168,7 +170,7 @@ public TerminateActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -190,13 +192,14 @@ public TerminateActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -483,7 +486,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -704,6 +707,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -746,8 +750,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -990,6 +995,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1055,7 +1061,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1114,7 +1120,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/TextualRepresentation.cs b/SysML2.NET/Core/AutoGenPoco/TextualRepresentation.cs index 519f7e5a..2bacc19d 100644 --- a/SysML2.NET/Core/AutoGenPoco/TextualRepresentation.cs +++ b/SysML2.NET/Core/AutoGenPoco/TextualRepresentation.cs @@ -33,6 +33,7 @@ namespace SysML2.NET.Core.POCO.Root.Annotations using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A TextualRepresentation is an AnnotatingElement whose body represents the representedElement in a @@ -97,7 +98,7 @@ public TextualRepresentation() [Property(xmiId: "_19_0_2_12e503d9_1594145755058_99428_86", aggregation: AggregationKind.None, lowerValue: 1, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("ITextualRepresentation.RepresentedElement")] [Implements(implementation: "IAnnotatingElement.AnnotatedElement")] - List IAnnotatingElement.annotatedElement => this.representedElement != null ? [this.representedElement] : []; + List IAnnotatingElement.annotatedElement => this.ComputeAnnotatedElement(); /// /// The Annotations that relate this AnnotatingElement to its annotatedElements. This includes the @@ -288,7 +289,7 @@ public TextualRepresentation() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092869879_744477_17277")] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1594145755058_99428_86")] [Implements(implementation: "ITextualRepresentation.RepresentedElement")] - public IElement representedElement => this.ComputeRepresentedElement(); + public IElement representedElement => ((IAnnotatingElement)this).annotatedElement.SingleOrDefaultStrict(nameof(TextualRepresentation)); /// /// The short name to be used for this Element during name resolution within its owningNamespace. This diff --git a/SysML2.NET/Core/AutoGenPoco/TransitionFeatureMembership.cs b/SysML2.NET/Core/AutoGenPoco/TransitionFeatureMembership.cs index e29679a5..50879bb9 100644 --- a/SysML2.NET/Core/AutoGenPoco/TransitionFeatureMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/TransitionFeatureMembership.cs @@ -39,6 +39,7 @@ namespace SysML2.NET.Core.POCO.Systems.States using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A TransitionFeatureMembership is a FeatureMembership for a trigger, guard or effect of a @@ -164,7 +165,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -187,7 +188,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(TransitionFeatureMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -238,7 +239,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -246,7 +247,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -256,7 +257,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("ITransitionFeatureMembership.TransitionFeature")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.transitionFeature; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -264,7 +265,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -272,7 +273,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -351,7 +352,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -430,7 +431,7 @@ List Root.Elements.IRelationship.Target [Property(xmiId: "_19_0_2_12e503d9_1582975046568_736161_148", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "ITransitionFeatureMembership.TransitionFeature")] - public IStep transitionFeature => this.ComputeTransitionFeature(); + public IStep transitionFeature => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IStep; /// /// Whether or not the Membership of the memberElement in the membershipOwningNamespace is publicly diff --git a/SysML2.NET/Core/AutoGenPoco/TransitionUsage.cs b/SysML2.NET/Core/AutoGenPoco/TransitionUsage.cs index 5fd5947e..701e166a 100644 --- a/SysML2.NET/Core/AutoGenPoco/TransitionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/TransitionUsage.cs @@ -65,6 +65,7 @@ namespace SysML2.NET.Core.POCO.Systems.States using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A TransitionUsage is an ActionUsage representing a triggered transition between ActionUsages or @@ -103,8 +104,9 @@ public TransitionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -120,7 +122,7 @@ public TransitionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -170,7 +172,7 @@ public TransitionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -192,13 +194,14 @@ public TransitionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -505,7 +508,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -726,6 +729,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -768,8 +772,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1012,6 +1017,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1077,7 +1083,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1163,7 +1169,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/TriggerInvocationExpression.cs b/SysML2.NET/Core/AutoGenPoco/TriggerInvocationExpression.cs index a5c50522..8d75ce51 100644 --- a/SysML2.NET/Core/AutoGenPoco/TriggerInvocationExpression.cs +++ b/SysML2.NET/Core/AutoGenPoco/TriggerInvocationExpression.cs @@ -42,6 +42,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A TriggerInvocationExpression is an InvocationExpression that invokes one of the trigger Functions @@ -93,7 +94,7 @@ public TriggerInvocationExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => this.function != null ? [this.function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -154,7 +155,7 @@ public TriggerInvocationExpression() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// Indicates how values of this Feature are determined or used (as specified for the @@ -239,7 +240,7 @@ public TriggerInvocationExpression() [Property(xmiId: "_18_5_3_12e503d9_1543948477241_299049_20934", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [Implements(implementation: "IExpression.Function")] - public IFunction function => this.ComputeFunction(); + public IFunction function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(TriggerInvocationExpression)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -750,7 +751,7 @@ public TriggerInvocationExpression() [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/Type.cs b/SysML2.NET/Core/AutoGenPoco/Type.cs index e8d284bf..1f62531f 100644 --- a/SysML2.NET/Core/AutoGenPoco/Type.cs +++ b/SysML2.NET/Core/AutoGenPoco/Type.cs @@ -37,6 +37,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Type is a Namespace that is the most general kind of Element supporting the semantics of diff --git a/SysML2.NET/Core/AutoGenPoco/TypeFeaturing.cs b/SysML2.NET/Core/AutoGenPoco/TypeFeaturing.cs index 9c05ecfe..89ea260d 100644 --- a/SysML2.NET/Core/AutoGenPoco/TypeFeaturing.cs +++ b/SysML2.NET/Core/AutoGenPoco/TypeFeaturing.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Core.Features using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A TypeFeaturing is a Featuring Relationship in which the featureOfType is the source and the diff --git a/SysML2.NET/Core/AutoGenPoco/Unioning.cs b/SysML2.NET/Core/AutoGenPoco/Unioning.cs index 0a48fbb8..4a0d986d 100644 --- a/SysML2.NET/Core/AutoGenPoco/Unioning.cs +++ b/SysML2.NET/Core/AutoGenPoco/Unioning.cs @@ -34,6 +34,7 @@ namespace SysML2.NET.Core.POCO.Core.Types using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// Unioning is a Relationship that makes its unioningType one of the unioningTypes of its typeUnioned. @@ -307,7 +308,7 @@ List Root.Elements.IRelationship.Target [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IUnioning.TypeUnioned")] - public IType typeUnioned => this.ComputeTypeUnioned(); + public IType typeUnioned => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(Unioning)); /// /// Type that partly determines interpretations of typeUnioned, as described in Type::unioningType. diff --git a/SysML2.NET/Core/AutoGenPoco/Usage.cs b/SysML2.NET/Core/AutoGenPoco/Usage.cs index b644eb56..edc4bacd 100644 --- a/SysML2.NET/Core/AutoGenPoco/Usage.cs +++ b/SysML2.NET/Core/AutoGenPoco/Usage.cs @@ -60,6 +60,7 @@ namespace SysML2.NET.Core.POCO.Systems.DefinitionAndUsage using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A Usage is a usage of a Definition.A Usage may have nestedUsages that model features that apply in @@ -146,7 +147,7 @@ public Usage() [Property(xmiId: "_19_0_2_12e503d9_1591477641252_179221_958", 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")] [Implements(implementation: "IUsage.Definition")] - public List definition => this.ComputeDefinition(); + public List definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -174,6 +175,7 @@ public Usage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -444,7 +446,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -665,6 +667,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -941,6 +944,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1039,7 +1043,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. this.definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/UseCaseDefinition.cs b/SysML2.NET/Core/AutoGenPoco/UseCaseDefinition.cs index 62de9f59..db103d43 100644 --- a/SysML2.NET/Core/AutoGenPoco/UseCaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/UseCaseDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.UseCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A UseCaseDefinition is a CaseDefinition that specifies a set of actions performed by its subject, in @@ -96,6 +97,7 @@ public UseCaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -104,6 +106,7 @@ public UseCaseDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -118,6 +121,7 @@ public UseCaseDefinition() /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation => this.ComputeCalculation(); @@ -159,13 +163,14 @@ public UseCaseDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -731,6 +736,7 @@ public UseCaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -810,7 +816,7 @@ public UseCaseDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -856,6 +862,7 @@ public UseCaseDefinition() /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/UseCaseUsage.cs b/SysML2.NET/Core/AutoGenPoco/UseCaseUsage.cs index bb0b8c2d..5a5506ee 100644 --- a/SysML2.NET/Core/AutoGenPoco/UseCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/UseCaseUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.UseCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A UseCaseUsage is a Usage of a UseCaseDefinition. @@ -97,14 +98,17 @@ public UseCaseUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -122,7 +126,7 @@ public UseCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Function that is the type of this CalculationUsage. Nominally, this would be a @@ -131,9 +135,10 @@ public UseCaseUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] - IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Systems.Cases.ICaseUsage)this).caseDefinition; + IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function; /// /// The CaseDefinition that is the type of this CaseUsage. @@ -142,7 +147,7 @@ public UseCaseUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1588213526305_899324_302")] [RedefinedByProperty("IUseCaseUsage.UseCaseDefinition")] [Implements(implementation: "ICaseUsage.CaseDefinition")] - ICaseDefinition Systems.Cases.ICaseUsage.caseDefinition => this.useCaseDefinition; + ICaseDefinition Systems.Cases.ICaseUsage.caseDefinition => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition as ICaseDefinition; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -192,7 +197,7 @@ public UseCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -214,13 +219,14 @@ public UseCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -308,7 +314,7 @@ public UseCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(UseCaseUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -532,7 +538,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -753,6 +759,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -803,8 +810,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1047,6 +1055,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1112,7 +1121,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1161,6 +1170,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1182,7 +1192,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the @@ -1209,7 +1219,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1621460964889_804779_881", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_59601fc_1590257465225_855208_512")] [Implements(implementation: "IUseCaseUsage.UseCaseDefinition")] - public IUseCaseDefinition useCaseDefinition => this.ComputeUseCaseDefinition(); + public IUseCaseDefinition useCaseDefinition => ((SysML2.NET.Core.POCO.Systems.Cases.ICaseUsage)this).caseDefinition as IUseCaseDefinition; /// /// The Usages which represent the variants of this Usage as a variation point Usage, if isVariation = diff --git a/SysML2.NET/Core/AutoGenPoco/VariantMembership.cs b/SysML2.NET/Core/AutoGenPoco/VariantMembership.cs index b035d5a0..88976cba 100644 --- a/SysML2.NET/Core/AutoGenPoco/VariantMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/VariantMembership.cs @@ -35,6 +35,7 @@ namespace SysML2.NET.Core.POCO.Systems.DefinitionAndUsage using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A VariantMembership is a Membership between a variation point Definition or Usage and a Usage that @@ -153,7 +154,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -175,7 +176,7 @@ string Root.Namespaces.IMembership.MemberName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543092026091_693018_16749")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - public INamespace membershipOwningNamespace => this.ComputeMembershipOwningNamespace(); + public INamespace membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(VariantMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -226,7 +227,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IVariantMembership.OwnedVariantUsage")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => this.ownedVariantUsage; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -234,7 +235,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The name of the ownedMemberElement. @@ -242,7 +243,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -250,7 +251,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -281,7 +282,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_2_12e503d9_1590978683452_645414_775", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [Implements(implementation: "IVariantMembership.OwnedVariantUsage")] - public IUsage ownedVariantUsage => this.ComputeOwnedVariantUsage(); + public IUsage ownedVariantUsage => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IUsage; /// /// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this diff --git a/SysML2.NET/Core/AutoGenPoco/VerificationCaseDefinition.cs b/SysML2.NET/Core/AutoGenPoco/VerificationCaseDefinition.cs index 41ea00cd..e078decf 100644 --- a/SysML2.NET/Core/AutoGenPoco/VerificationCaseDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/VerificationCaseDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.VerificationCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A VerificationCaseDefinition is a CaseDefinition for the purpose of verification of the subject of @@ -95,6 +96,7 @@ public VerificationCaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565500809065_170841_30688", 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_b9102da_1536346067212_587255_17343")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IActionDefinition.Action")] public List action => this.ComputeAction(); @@ -103,6 +105,7 @@ public VerificationCaseDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621464609772_382176_1612", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -117,6 +120,7 @@ public VerificationCaseDefinition() /// The actions of this CalculationDefinition that are CalculationUsages. /// [Property(xmiId: "_19_0_2_12e503d9_1588214479224_101961_594", 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_1565500809065_170841_30688")] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948400639_301251_20841")] [Implements(implementation: "ICalculationDefinition.Calculation")] public List calculation => this.ComputeCalculation(); @@ -158,13 +162,14 @@ public VerificationCaseDefinition() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -722,6 +727,7 @@ public VerificationCaseDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -801,7 +807,7 @@ public VerificationCaseDefinition() [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -847,6 +853,7 @@ public VerificationCaseDefinition() /// [Property(xmiId: "_19_0_2_12e503d9_1595189932946_106647_973", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "ICaseDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/VerificationCaseUsage.cs b/SysML2.NET/Core/AutoGenPoco/VerificationCaseUsage.cs index c623d8fe..e39a86cc 100644 --- a/SysML2.NET/Core/AutoGenPoco/VerificationCaseUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/VerificationCaseUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.VerificationCases using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A VerificationCaseUsage is a Usage of a VerificationCaseDefinition. @@ -97,14 +98,17 @@ public VerificationCaseUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] + [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + List Systems.Actions.IActionUsage.actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// The parameters of this CaseUsage that represent actors involved in the case. /// [Property(xmiId: "_19_0_4_12e503d9_1621464633171_380461_1655", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -122,7 +126,7 @@ public VerificationCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Function that is the type of this CalculationUsage. Nominally, this would be a @@ -131,9 +135,10 @@ public VerificationCaseUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1588213526305_899324_302", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] + [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1565500905804_589845_30779")] [RedefinedByProperty("ICaseUsage.CaseDefinition")] [Implements(implementation: "ICalculationUsage.CalculationDefinition")] - IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => this.caseDefinition; + IFunction Systems.Calculations.ICalculationUsage.calculationDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function; /// /// The CaseDefinition that is the type of this CaseUsage. @@ -141,7 +146,7 @@ public VerificationCaseUsage() [Property(xmiId: "_19_0_2_59601fc_1590257465225_855208_512", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1588213526305_899324_302")] [Implements(implementation: "ICaseUsage.CaseDefinition")] - public ICaseDefinition caseDefinition => this.ComputeCaseDefinition(); + public ICaseDefinition caseDefinition => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition as ICaseDefinition; /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -191,7 +196,7 @@ public VerificationCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -213,13 +218,14 @@ public VerificationCaseUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -307,7 +313,7 @@ public VerificationCaseUsage() [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("ICalculationUsage.CalculationDefinition")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Systems.Calculations.ICalculationUsage)this).calculationDefinition; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(VerificationCaseUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -523,7 +529,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -744,6 +750,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -794,8 +801,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1038,6 +1046,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1103,7 +1112,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1152,6 +1161,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595190279083_51021_1128", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "ICaseUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1173,7 +1183,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the diff --git a/SysML2.NET/Core/AutoGenPoco/ViewDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ViewDefinition.cs index 629e2669..83a3a4d1 100644 --- a/SysML2.NET/Core/AutoGenPoco/ViewDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ViewDefinition.cs @@ -61,6 +61,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Systems.VerificationCases; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ViewDefinition is a PartDefinition that specifies how a view artifact is constructed to satisfy a @@ -139,6 +140,7 @@ public ViewDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -669,6 +671,7 @@ public ViewDefinition() /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); diff --git a/SysML2.NET/Core/AutoGenPoco/ViewRenderingMembership.cs b/SysML2.NET/Core/AutoGenPoco/ViewRenderingMembership.cs index 517daddd..017fce03 100644 --- a/SysML2.NET/Core/AutoGenPoco/ViewRenderingMembership.cs +++ b/SysML2.NET/Core/AutoGenPoco/ViewRenderingMembership.cs @@ -37,6 +37,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Root.Namespaces; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ViewRenderingMembership is a FeatureMembership that identifies the viewRendering of a @@ -154,7 +155,7 @@ IElement Root.Namespaces.IMembership.MemberElement [Property(xmiId: "_19_0_4_12e503d9_1651721199802_246768_242", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedByProperty("IOwningMembership.OwnedMemberElementId")] [Implements(implementation: "IMembership.MemberElementId")] - string Root.Namespaces.IMembership.memberElementId => this.ownedMemberElementId; + string Root.Namespaces.IMembership.memberElementId => this.ComputeMemberElementId(); /// /// The name of the memberElement relative to the membershipOwningNamespace. @@ -177,7 +178,7 @@ string Root.Namespaces.IMembership.MemberName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674971_696758_43228")] [RedefinedByProperty("IFeatureMembership.OwningType")] [Implements(implementation: "IMembership.MembershipOwningNamespace")] - INamespace Root.Namespaces.IMembership.membershipOwningNamespace => this.owningType; + INamespace Root.Namespaces.IMembership.membershipOwningNamespace => ((SysML2.NET.Core.POCO.Root.Elements.IRelationship)this).Source.OfType().SingleOrDefaultStrict(nameof(ViewRenderingMembership)); /// /// The short name of the memberElement relative to the membershipOwningNamespace. @@ -228,7 +229,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_819490_43195")] [RedefinedByProperty("IFeatureMembership.OwnedMemberFeature")] [Implements(implementation: "IOwningMembership.OwnedMemberElement")] - IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature; + IElement Root.Namespaces.IOwningMembership.ownedMemberElement => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberElement; /// /// The elementId of the ownedMemberElement. @@ -236,7 +237,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721234828_904219_244", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721199802_246768_242")] [Implements(implementation: "IOwningMembership.OwnedMemberElementId")] - public string ownedMemberElementId => this.ComputeOwnedMemberElementId(); + public string ownedMemberElementId => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).memberElementId; /// /// The Feature that this FeatureMembership relates to its owningType, making it an ownedFeature of the @@ -246,7 +247,7 @@ string Root.Namespaces.IMembership.MemberShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_501750_43196")] [RedefinedByProperty("IViewRenderingMembership.OwnedRendering")] [Implements(implementation: "IFeatureMembership.OwnedMemberFeature")] - IFeature Core.Types.IFeatureMembership.ownedMemberFeature => this.ownedRendering; + IFeature Core.Types.IFeatureMembership.ownedMemberFeature => ((SysML2.NET.Core.POCO.Root.Namespaces.IOwningMembership)this).ownedMemberElement as IFeature; /// /// The name of the ownedMemberElement. @@ -254,7 +255,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1648181616390_323441_387", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674964_35293_43192")] [Implements(implementation: "IOwningMembership.OwnedMemberName")] - public string ownedMemberName => this.ComputeOwnedMemberName(); + public string ownedMemberName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberName; /// /// The shortName of the ownedMemberElement. @@ -262,7 +263,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1651721262092_909505_246", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1651721174176_601088_238")] [Implements(implementation: "IOwningMembership.OwnedMemberShortName")] - public string ownedMemberShortName => this.ComputeOwnedMemberShortName(); + public string ownedMemberShortName => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).MemberShortName; /// /// The relatedElements of this Relationship that are owned by the Relationship. @@ -293,7 +294,7 @@ string Root.Namespaces.IMembership.MemberShortName [Property(xmiId: "_19_0_4_12e503d9_1617134244546_130200_6000", aggregation: AggregationKind.Composite, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674993_898044_43344")] [Implements(implementation: "IViewRenderingMembership.OwnedRendering")] - public IRenderingUsage ownedRendering => this.ComputeOwnedRendering(); + public IRenderingUsage ownedRendering => ((SysML2.NET.Core.POCO.Core.Types.IFeatureMembership)this).ownedMemberFeature as IRenderingUsage; /// /// The owner of this Element, derived as the owningRelatedElement of the owningRelationship of this @@ -350,7 +351,7 @@ string Root.Namespaces.IMembership.MemberShortName [SubsettedProperty(propertyName: "_19_0_4_12e503d9_1651076866524_738482_486")] [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674965_193857_43197")] [Implements(implementation: "IFeatureMembership.OwningType")] - public IType owningType => this.ComputeOwningType(); + public IType owningType => ((SysML2.NET.Core.POCO.Root.Namespaces.IMembership)this).membershipOwningNamespace as IType; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to diff --git a/SysML2.NET/Core/AutoGenPoco/ViewUsage.cs b/SysML2.NET/Core/AutoGenPoco/ViewUsage.cs index ad3c9003..a205031b 100644 --- a/SysML2.NET/Core/AutoGenPoco/ViewUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ViewUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Systems.VerificationCases; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ViewUsage is a usage of a ViewDefinition to specify the generation of a view of the members of a @@ -147,7 +148,7 @@ public ViewUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -175,6 +176,7 @@ public ViewUsage() /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -480,7 +482,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -701,6 +703,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -744,7 +747,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -987,6 +990,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1052,7 +1056,7 @@ bool Core.Features.IFeature.IsVariable [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565471361757_649736_20796")] [RedefinedByProperty("IViewUsage.ViewDefinition")] [Implements(implementation: "IPartUsage.PartDefinition")] - List Systems.Parts.IPartUsage.partDefinition => this.viewDefinition != null ? [this.viewDefinition] : []; + List Systems.Parts.IPartUsage.partDefinition => this.ComputePartDefinition(); /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1112,7 +1116,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the @@ -1166,7 +1170,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1596644438889_580287_734", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591475180488_929065_121")] [Implements(implementation: "IViewUsage.ViewDefinition")] - public IViewDefinition viewDefinition => this.ComputeViewDefinition(); + public IViewDefinition viewDefinition => ((SysML2.NET.Core.POCO.Systems.Parts.IPartUsage)this).partDefinition.OfType().SingleOrDefaultStrict(nameof(ViewUsage)); /// /// The RenderingUsage to be used to render views defined by this ViewUsage, which is the diff --git a/SysML2.NET/Core/AutoGenPoco/ViewpointDefinition.cs b/SysML2.NET/Core/AutoGenPoco/ViewpointDefinition.cs index 94ffce6f..33292f30 100644 --- a/SysML2.NET/Core/AutoGenPoco/ViewpointDefinition.cs +++ b/SysML2.NET/Core/AutoGenPoco/ViewpointDefinition.cs @@ -62,6 +62,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Systems.VerificationCases; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ViewpointDefinition is a RequirementDefinition that specifies one or more stakeholder concerns @@ -94,6 +95,7 @@ public ViewpointDefinition() /// [Property(xmiId: "_19_0_4_12e503d9_1621564041941_652319_2722", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -159,13 +161,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IBehavior.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Definition that are directedFeatures. /// [Property(xmiId: "_18_5_3_12e503d9_1565495064714_974634_26150", 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")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -724,6 +727,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_18_5_3_12e503d9_1565479686637_967933_23236", 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_226999_43167")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IDefinition.OwnedUsage")] public List ownedUsage => this.ComputeOwnedUsage(); @@ -803,7 +807,7 @@ string Root.Elements.IElement.DeclaredShortName [Property(xmiId: "_18_5_3_12e503d9_1543948010065_362066_20413", 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: "IBehavior.Parameter")] - public List parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -861,6 +865,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_4_12e503d9_1624033010374_29375_40166", 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_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -877,6 +882,7 @@ string Root.Elements.IElement.DeclaredShortName /// [Property(xmiId: "_19_0_2_12e503d9_1595189007408_784255_586", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1543948010065_362066_20413")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_48981_27786")] [Implements(implementation: "IRequirementDefinition.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); diff --git a/SysML2.NET/Core/AutoGenPoco/ViewpointUsage.cs b/SysML2.NET/Core/AutoGenPoco/ViewpointUsage.cs index b3192031..16c3ae1d 100644 --- a/SysML2.NET/Core/AutoGenPoco/ViewpointUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/ViewpointUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Views using SysML2.NET.Core.POCO.Systems.VerificationCases; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A ViewpointUsage is a Usage of a ViewpointDefinition. @@ -95,6 +96,7 @@ public ViewpointUsage() /// [Property(xmiId: "_19_0_4_12e503d9_1621564075474_350859_2735", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.ActorParameter")] public List actorParameter => this.ComputeActorParameter(); @@ -122,7 +124,7 @@ public ViewpointUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IExpression.Function")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function != null ? [((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function] : []; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The Feature that are chained together to determine the values of this Feature, derived from the @@ -145,7 +147,7 @@ public ViewpointUsage() [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578025035149_386_969")] [RedefinedByProperty("IRequirementUsage.RequirementDefinition")] [Implements(implementation: "IConstraintUsage.ConstraintDefinition")] - IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage)this).requirementDefinition; + IPredicate Systems.Constraints.IConstraintUsage.constraintDefinition => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; /// /// The second chainingFeature of the crossedFeature of the ownedCrossSubsetting of this Feature, if it @@ -191,7 +193,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -213,13 +215,14 @@ string Root.Elements.IElement.DeclaredShortName [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -316,7 +319,7 @@ string Root.Elements.IElement.DeclaredShortName [RedefinedProperty(propertyName: "_18_5_3_b9102da_1536346315176_954314_17388")] [RedefinedByProperty("IBooleanExpression.Predicate")] [Implements(implementation: "IExpression.Function")] - IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Functions.IBooleanExpression)this).predicate; + IFunction Kernel.Functions.IExpression.function => ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior.OfType().SingleOrDefaultStrict(nameof(ViewpointUsage)); /// /// The Memberships in this Namespace that result from the ownedImports of this Namespace. @@ -532,7 +535,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -753,6 +756,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -796,7 +800,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + public List occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -1039,6 +1043,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1104,7 +1109,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1122,7 +1127,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1543948477241_299049_20934")] [RedefinedByProperty("IConstraintUsage.ConstraintDefinition")] [Implements(implementation: "IBooleanExpression.Predicate")] - IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition; + IPredicate Kernel.Functions.IBooleanExpression.predicate => ((SysML2.NET.Core.POCO.Kernel.Functions.IExpression)this).function as IPredicate; /// /// The full ownership-qualified name of this Element, represented in a form that is valid according to @@ -1163,7 +1168,7 @@ bool Core.Features.IFeature.IsVariable [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1578067546711_751168_1745")] [RedefinedByProperty("IViewpointUsage.ViewpointDefinition")] [Implements(implementation: "IRequirementUsage.RequirementDefinition")] - IRequirementDefinition Systems.Requirements.IRequirementUsage.requirementDefinition => this.viewpointDefinition; + IRequirementDefinition Systems.Requirements.IRequirementUsage.requirementDefinition => ((SysML2.NET.Core.POCO.Systems.Constraints.IConstraintUsage)this).constraintDefinition as IRequirementDefinition; /// /// An output parameter of the Expression whose value is the result of the Expression. The result of an @@ -1191,6 +1196,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1624032823963_328647_40107", 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_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.StakeholderParameter")] public List stakeholderParameter => this.ComputeStakeholderParameter(); @@ -1199,6 +1205,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_2_12e503d9_1595189397261_941898_844", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1595189174990_213826_657")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IRequirementUsage.SubjectParameter")] public IUsage subjectParameter => this.ComputeSubjectParameter(); @@ -1228,7 +1235,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the @@ -1273,7 +1280,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_19_0_2_12e503d9_1596649684798_569222_3524", aggregation: AggregationKind.None, lowerValue: 0, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1583000408905_769743_1223")] [Implements(implementation: "IViewpointUsage.ViewpointDefinition")] - public IViewpointDefinition viewpointDefinition => this.ComputeViewpointDefinition(); + public IViewpointDefinition viewpointDefinition => ((SysML2.NET.Core.POCO.Systems.Requirements.IRequirementUsage)this).requirementDefinition as IViewpointDefinition; /// /// The PartUsages that identify the stakeholders with concerns framed by this ViewpointUsage, which are diff --git a/SysML2.NET/Core/AutoGenPoco/WhileLoopActionUsage.cs b/SysML2.NET/Core/AutoGenPoco/WhileLoopActionUsage.cs index 86ab9ff4..464fd5c3 100644 --- a/SysML2.NET/Core/AutoGenPoco/WhileLoopActionUsage.cs +++ b/SysML2.NET/Core/AutoGenPoco/WhileLoopActionUsage.cs @@ -64,6 +64,7 @@ namespace SysML2.NET.Core.POCO.Systems.Actions using SysML2.NET.Core.POCO.Systems.Views; using SysML2.NET.Collections; using SysML2.NET.Decorators; + using SysML2.NET.Extensions; /// /// A WhileLoopActionUsage is a LoopActionUsage that specifies that the bodyAction ActionUsage should be @@ -101,8 +102,9 @@ public WhileLoopActionUsage() /// [Property(xmiId: "_18_5_3_12e503d9_1565500905804_589845_30779", 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_b9102da_1536346315176_954314_17388")] + [RedefinedProperty(propertyName: "_19_0_4_12e503d9_1618943843466_158863_236")] [Implements(implementation: "IActionUsage.ActionDefinition")] - public List actionDefinition => this.ComputeActionDefinition(); + public List actionDefinition => [.. ((SysML2.NET.Core.POCO.Kernel.Behaviors.IStep)this).behavior]; /// /// Various alternative identifiers for this Element. Generally, these will be set by tools. @@ -118,7 +120,7 @@ public WhileLoopActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IStep.Behavior")] - List Kernel.Behaviors.IStep.behavior => [.. this.actionDefinition]; + List Kernel.Behaviors.IStep.behavior => this.ComputeBehavior(); /// /// The ActionUsage to be performed repeatedly by the LoopActionUsage. It is the second parameter of the @@ -176,7 +178,7 @@ public WhileLoopActionUsage() [RedefinedProperty(propertyName: "_18_5_3_12e503d9_1533160674969_376003_43216")] [RedefinedByProperty("IOccurrenceUsage.OccurrenceDefinition")] [Implements(implementation: "IUsage.Definition")] - List Systems.DefinitionAndUsage.IUsage.definition => [.. this.occurrenceDefinition]; + List Systems.DefinitionAndUsage.IUsage.definition => [.. ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).type.OfType()]; /// /// The interpretations of a Type with differencingTypes are asserted to be those of the first of those @@ -198,13 +200,14 @@ public WhileLoopActionUsage() [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1533160674959_326391_43166")] [RedefinedByProperty("IStep.Parameter")] [Implements(implementation: "IType.DirectedFeature")] - List Core.Types.IType.directedFeature => [.. this.parameter]; + List Core.Types.IType.directedFeature => this.ComputeDirectedFeature(); /// /// The usages of this Usage that are directedFeatures. /// [Property(xmiId: "_19_0_2_12e503d9_1591217699198_66279_508", 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")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.DirectedUsage")] public List directedUsage => this.ComputeDirectedUsage(); @@ -491,7 +494,7 @@ bool Core.Features.IFeature.IsVariable [Property(xmiId: "_2022x_2_12e503d9_1737227200362_771035_69", aggregation: AggregationKind.None, lowerValue: 1, upperValue: 1, isOrdered: false, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_2022x_2_12e503d9_1725998273002_23711_212")] [Implements(implementation: "IUsage.MayTimeVary")] - public bool mayTimeVary => this.ComputeMayTimeVary(); + public bool mayTimeVary => ((SysML2.NET.Core.POCO.Core.Features.IFeature)this).IsVariable; /// /// The set of all member Elements of this Namespace, which are the memberElements of all memberships of @@ -712,6 +715,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565472757327_162097_21259", 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_226999_43167")] + [SubsettedProperty(propertyName: "_19_0_2_12e503d9_1591217543254_26688_475")] [Implements(implementation: "IUsage.NestedUsage")] public List nestedUsage => this.ComputeNestedUsage(); @@ -754,8 +758,9 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_19_0_4_12e503d9_1618943843466_158863_236", aggregation: AggregationKind.None, lowerValue: 0, upperValue: int.MaxValue, isOrdered: true, isReadOnly: false, isDerived: true, isDerivedUnion: false, isUnique: true, defaultValue: null)] [RedefinedProperty(propertyName: "_19_0_2_12e503d9_1591477641252_179221_958")] + [RedefinedByProperty("IActionUsage.ActionDefinition")] [Implements(implementation: "IOccurrenceUsage.OccurrenceDefinition")] - public List occurrenceDefinition => this.ComputeOccurrenceDefinition(); + List Systems.Occurrences.IOccurrenceUsage.occurrenceDefinition => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition.OfType()]; /// /// All features related to this Type by FeatureMemberships that have direction out or inout. @@ -998,6 +1003,7 @@ bool Core.Features.IFeature.IsVariable /// [Property(xmiId: "_18_5_3_12e503d9_1565479686638_420576_23237", 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_1533160674965_592215_43200")] + [SubsettedProperty(propertyName: "_18_5_3_12e503d9_1565498571495_18876_27787")] [Implements(implementation: "IUsage.OwningDefinition")] public IDefinition owningDefinition => this.ComputeOwningDefinition(); @@ -1063,7 +1069,7 @@ bool Core.Features.IFeature.IsVariable [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 parameter => this.ComputeParameter(); + public List parameter => [.. ((SysML2.NET.Core.POCO.Core.Types.IType)this).directedFeature]; /// /// The kind of temporal portion (time slice or snapshot) is represented by this OccurrenceUsage. If @@ -1114,7 +1120,7 @@ bool Core.Features.IFeature.IsVariable [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("IUsage.Definition")] [Implements(implementation: "IFeature.Type")] - List Core.Features.IFeature.type => [.. ((SysML2.NET.Core.POCO.Systems.DefinitionAndUsage.IUsage)this).definition]; + List Core.Features.IFeature.type => this.ComputeType(); /// /// The interpretations of a Type with unioningTypes are asserted to be the same as those of all the