Bundt Scripting Reference · Bundt Scripting Language version 1.0.1.0

alter semiassociation statement

Alters an existing semi-association and puts it in context.

The class owning the semi-association and the owner association are also put in context.

Syntax

alter semiassociation [SemiAssociationName] as
    [name Name]
    [: Cardinality [^] [role Role] OppositeClass]
    [[!] whole] [[!] strong] [( AspectList )]
    [definition Definition]
    [comments Comments]
    [tagged
      [without WithoutTagList]
      [with WithTagList]
    ]

Element Type Optionality Notes
SemiAssociationName Semi-association name Optional. If no semi-association name is specified, the semi-association in context is used. If no semi-association is in context, an error occurs. Specifies the existing semi-association to be altered.
Name Expression<Identifier> or Expression<Dictionary<Identifier>> Optional. If no name is specified, the current one is maintained. Specifies the new name of the semi-association, either as an identifier or in multilingual dictionary format.
Cardinality Cardinality Optional. If no cardinality is specified, the current one is maintained. Specifies the new cardinality of the semi-association.
^ Optional. If omitted, the current one is maintained. Specifies whether the semi-association must be sorted.
Role Expression<Identifier> or Expression<Dictionary<Identifier>> Optional. If omitted, the current one is maintained. Specifies the new role of the semi-association, either as an identifier or in multilingual dictionary format.
OppositeClass Class name Optional. If included, it must coincide with the current one. The opposite class cannot be changed.
whole Optional. If omitted, the current one is maintained. Specifies whether the semi-association must be whole.
strong Optional. If omitted, the current one is maintained. Specifies whether the semi-association must be strong.
AspectList Marker list Optional. Specifies the aspects used by the semi-association. Accepted markers are S for subjective, K for constant, and T for temporal, optionally prefixed by ! to negate them.
Definition Expression<Text> or Expression<Dictionary<Text>> Optional. If no definition is specified, the current one is maintained. Specifies the new definition of the semi-association.
Comments Expression<Text> or Expression<Dictionary<Text>> Optional. If no commments are specified, the current ones are maintained. Specifies the new commments for the semi-association.
WithoutTagList Element name list Optional. If no tags are specified, no tags are removed. Specifies the tags to remove from the semi-association.
WithTagList Element name list Optional. If no tags are specified, no tags are added. Specifies the tags to add to the semi-association.

Returns

The semi-association just altered.

Examples

Intent Code
Alter a semi-association to change its cardinality and role alter semiassociation Building.IsLocatedOn as : 0..1 role Location Town;
Alter a semi-association to make it temporal and not subjective alter semiassociation Building.IsOwnedBy as (!S, T);
Alter the context semi-association to make it whole alter semiassociation as whole;
Alter the context semi-association to add a tag alter semiassociation as tagged with ToRevise;

See Also


Contents distributed under a Creative Commons Attribution 4.0 International License · About · Terms of Use · Contact Us · last updated on 08 October 2020