SysML, UAF, UML, and UPDM Profiles > SysML profile > SysML items > Constraint block (SysML item)
Constraint block (SysML item)
A Constraint Block defines Constraint Parameters that can be applied to a Block's Block Properties of type Value. A Constraint Block can use other Constraint Blocks in its definition.
Create a Constraint Block through a Modeler explorer pane or a Block Definition Diagram:
In a Modeler pane, right-click the Model or Package that is to own the Constraint Block, point to New, point to SysML, point to Structure, and then click Constraint Block.
In a Modeler pane, right-click the Block or Constraint Block that is to own the Constraint Block, point to New, point to SysML, and then click Constraint Block.
On a Block Definition Diagram, click the Constraint Block button, and then click in free space.
When you create a Constraint Block, Modeler creates an owned Constraint that is applied to the Constraint Block.
A Constraint Block can own Constraint Properties and Constraint Parameters: to create a Constraint Property or Constraint Parameter, right-click the Constraint Block, point to New, point to SysML, and then click Constraint Property or Constraint Parameter.
A Constraint Block can be used as a type for a Constraint Property.
To set up a Constraint Block as abstract: right-click the Constraint Block, point to Set, and then click Is Abstract. From the dialog, select TRUE.
To set up a Constraint Block as an objective function: apply the «objectiveFunction» stereotype to the Constraint Block: right-click the Constraint Block, and select Links > Stereotypes, and then click objectiveFunction.
When shown on a Block Definition Diagram, a Constraint Block's notation is as follows.
A Constraint Block is a UML Class that is stereotyped by the «constraint» stereotype from the SysML profile.
The following sections provide information about how a Constraint Block is used in the model. For more information about a SysML diagram or item - click it.
Owned by
Model (UML item)
Package (UML item)
Owns
Allocate - the Allocate is owned jointly by the Constraint Block and the associated item. The access permissions you have to an Allocate are determined by the access permissions you have to the item that is allocated from - you require write access to both items to create or delete an Allocate.
Association (UML item) - the Association (only as Aggregation or Composition) is owned jointly by the Constraint Block and the associated item. The access permissions you have to an Association are determined by the access permissions you have to the item at the start end of the Association.
Generalization (UML item) - the Generalization is owned jointly by the two Constraint Blocks it links. The access permissions you have to a Generalization are determined by the access permissions you have to the sub Constraint Block.
Refine (UML Standard profile) - the Refine relationship is owned jointly by the Constraint Block and the associated item. The access permissions you have to a Refine relationship are determined by the access permissions you have to the refined item.
Satisfy - the Satisfy relationship is owned jointly by the Constraint Block and the associated Requirement. The access permissions you have to a Satisfy relationship are determined by the access permissions you have to the Constraint Block.
Trace (UML Standard profile) - the Trace relationship is owned jointly by the Constraint Block and the associated item. The access permissions you have to a Trace relationship are determined by the access permissions you have to the item that is traced from.
Verify - the Verify relationship is owned jointly by the Constraint Block and the associated Requirement. The access permissions you have to a Verify relationship are determined by the access permissions you have to the Constraint Block.
Shown on these diagrams
SysML Properties
allocatedFrom - lists source items that are linked through Allocate relationships (on Allocated tab when item is allocated).
allocatedTo - lists target items that are linked through Allocate relationships (on Allocated tab when item is allocated).
constraintsParameters - lists Constraint Parameters that the Constraint Block owns.
constraintsProperties - lists Constraint Properties that the Constraint Block owns. Constraint Properties created through Associations are not listed.
constraints - lists Constraints that the Interface Block owns.