DSL customization is inherited when a stereotype is inherited. So, it is not necessary to create new DSL customization. For example, to create your own subtype of SysML «Requirement», named, let's say, Performance Requirement, it is enough to define a new stereotype «Performance Requirement» and add a generalization between the SysML «Requirement» stereotype and the «Performance Requirement» stereotype. As a result, all predefined symbol properties (style) and semantic rules of SysML «Requirement» will be reused on elements stereotyped by «Performance Requirement». In the case where the custom stereotype has its own customization, its properties can be overwritten, inherited, or merged.
«Performance Requirement» stereotype inherits the customization of the SysML «Requirement» through a generalization.
The rules for inheriting/merging/overwriting customization properties are provided in the table below:
Empty customizations | Customizations with overwritten values | |||||
---|---|---|---|---|---|---|
Original | Stereotype and customization are inherited | Stereotype is inherited, customization is not inherited | Stereotype is not inherited, customization is inherited | Stereotype and customization are inherited | Stereotype is inherited, customization is not inherited | Stereotype is not inherited, customization is inherited |
customizationTarget | - | - | - | - | - | - |
hideMetatype | Inherited | Inherited | Overwritten | Overwritten | Overwritten | |
keyword | - | - | ||||
representationText | ||||||
standardExpertConfiguration | Inherited | Inherited | ||||
usedUMLProperties | Merged | |||||
applyToSource | Inherited | |||||
applyToTarget | ||||||
superTypes | ||||||
allowedRelationships | ||||||
disallowedRelationships | ||||||
typesForSource | ||||||
typesForTarget | ||||||
connectionRule | - | - | - | - | - | |
quickApplyingFor | Inherited | Inherited | Overwritten | Merged | Overwritten | |
hiddenOwnedDiagrams |
| Overwritten | ||||
hiddenOwnedTypes | ||||||
suggestedOwnedDiagrams | ||||||
suggestedOwnedTypes | ||||||
inShortcutMenu | ||||||
showPropertiesWhenNotApplied | ||||||
possibleOwners | ||||||
multiLineTextProperties | ||||||
category | ||||||
checkSpelling | Inherited | Merged | ||||
defaultShapeSize | - | Overwritten | ||||
doNotSuggestAsType | Inherited | |||||
helpID | - | - | - | |||
preferredMetatype | Inherited | Inherited | Inherited | Inherited | ||
showPropertiesWhenNotAppliedLimitedByProfileApplication |
| Overwritten | ||||
showPropertiesWhenNotAppliedLimitedByElementType | ||||||
allowedDragAndDrops | ||||||
abbreviation | ||||||
additionalContent | Inherited | |||||
subElementContentsIncluded | ||||||
doNotSuggestNameAutoCompletion | ||||||
symbolStandardExpertConfiguration | - |