FeatureValue
FeatureValue
is defined in KerML specification on
page 254.
Excerpt from the machine readable specification:
A
FeatureValue
is aMembership
that identifies a particular memberExpression
that provides the value of theFeature
that owns theFeatureValue
. The value is specified as either a bound value or an initial value, and as either a concrete or default value. AFeature
can have at most oneFeatureValue
.The result of the
value
Expression
is bound to thefeatureWithValue
using aBindingConnector
. IfisInitial = false
, then thefeaturingType
of theBindingConnector
is the same as thefeaturingType
of thefeatureWithValue
. IfisInitial = true
, then thefeaturingType
of theBindingConnector
is restricted to itsstartShot
.If
isDefault = false
, then the above semantics of theFeatureValue
are realized for the givenfeatureWithValue
. Otherwise, the semantics are realized for any individual of thefeaturingType
of thefeatureWithValue
, unless another value is explicitly given for thefeatureWithValue
for that individual.
The following diagram shows the inheritance hierarchy of FeatureValue
according to the specification:
![// Class: FeatureValue
digraph {
FeatureValue [label="FeatureValue (KerML)" shape=plaintext]
OwningMembership -> FeatureValue
OwningMembership [label="OwningMembership (KerML)" shape=plaintext]
Membership -> OwningMembership
Membership [label="Membership (KerML)" shape=plaintext]
Relationship -> Membership
Relationship [label="Relationship (KerML)" shape=plaintext]
Element -> Relationship
Element [label="Element (KerML)" shape=plaintext]
}](../../../_images/graphviz-7cb95ac6d46a9b52a376ba733fb771ed047a6afb.png)
The following table shows all attributes defined for
FeatureValue
according to the specification together with
the documentation from the machine readable specification. Note
that in SysIDE API, we use snake case for attribute names
instead of Pascal case used in the specification.
Attribute |
Documentation from machine readable specification |
Attributes defined in |
|
The Feature to be provided a value. The |
|
Whether this |
|
Whether this |
|
The Expression that provides the value as a result. The |
|
Attributes defined in |
|
The |
|
The |
|
The |
|
The |
|
Attributes defined in |
|
The |
|
The |
|
The name of the |
|
The short name of the |
|
The |
|
|
Whether or not the |
Attributes defined in |
|
Whether this Relationship was generated by tooling to meet semantic rules, rather than being directly created by a modeler. |
|
The relatedElements of this Relationship that are owned by the Relationship. |
|
The relatedElement of this Relationship that owns the Relationship, if any. |
|
The Elements that are related by this Relationship, derived as the union
of the |
|
The
|
|
The |
|
Attributes defined in |
|
The declared name of this |
|
An optional alternative name for the |
|
The Documentation owned by this Element. |
|
The globally unique identifier for this Element. This is intended to be set by tooling, and it must not change during the lifetime of the Element. |
|
Whether all necessary implied Relationships have been included in the
|
|
Whether this Element is contained in the ownership tree of a library model. |
|
The name to be used for this |
|
The |
|
The Elements owned by this Element, derived as the ownedRelatedElements of the ownedRelationships of this Element. |
|
The Relationships for which this Element is the owningRelatedElement. |
|
The owner of this Element, derived as the |
|
The |
|
The |
|
The Relationship for which this Element is an ownedRelatedElement, if any. |
|
The full ownership-qualified name of this |
|
The short name to be used for this |
|
The |
The following table lists SysIDE specific attributes available for
class FeatureValue
:
Python Attribute |
- class FeatureValue
-
- STD: tuple[type[syside.FeatureValue], ...] = ()
- property feature_with_value: syside.Feature | None
- property value: syside.Expression | None