Type
Type
is defined in KerML specification on
page 52.
Excerpt from the machine readable specification:
A
Type
is aNamespace
that is the most general kind ofElement
supporting the semantics of classification. AType
may be aClassifier
or aFeature
, defining conditions on what is classified by theType
(see also the description ofisSufficient
).
The following diagram shows the inheritance hierarchy of Type
according to the specification:
![// Class: Type
digraph {
Type [label="Type (KerML)" shape=plaintext]
Namespace -> Type
Namespace [label="Namespace (KerML)" shape=plaintext]
Element -> Namespace
Element [label="Element (KerML)" shape=plaintext]
}](../../../_images/graphviz-6c79d15b8b7a2ca916098f07db369e1a766c1572.png)
The following table shows all attributes defined for
Type
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 interpretations of a |
|
The |
|
All |
|
The |
|
The |
|
All the |
|
All |
|
All |
|
The interpretations of a |
|
Indicates whether instances of this |
|
Indicates whether this |
|
Whether all things that meet the classification conditions of this
(A |
|
An |
|
All |
|
A |
|
The |
|
The |
|
All |
|
The |
|
The |
|
The |
|
The |
|
The |
|
The interpretations of a |
|
Attributes defined in |
|
The set of all member |
|
All |
|
The |
|
The owned |
|
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 Type
:
Python Attribute |
- class Type
-
- STD: tuple[type[syside.Type], ...] = ()
- property owned_specializations: syside.LazyIterator[syside.Specialization]
- property owned_feature_memberships: syside.LazyIterator[syside.FeatureMembership]
- property owned_features: syside.LazyIterator[syside.Feature]
- property feature_memberships: syside.LazyIterator[syside.FeatureMembership]
- property features: syside.LazyIterator[syside.Feature]
- property owned_inputs: syside.LazyIterator[syside.Feature]
- property inputs: syside.LazyIterator[syside.Feature]
- property owned_outputs: syside.LazyIterator[syside.Feature]
- property outputs: syside.LazyIterator[syside.Feature]
- property inherited_memberships: syside.LazyIterator[syside.Membership]
- property owned_end_features: syside.LazyIterator[syside.Feature]
- property end_features: syside.LazyIterator[syside.Feature]
- property owned_conjugator: syside.Conjugation | None
- property inherited_features: syside.LazyIterator[syside.Feature]
- property multiplicity: syside.Multiplicity | None
- property declared_multiplicity: syside.MultiplicityRange | None
- property declared_multiplicity_member: syside.OwnedMultiplicityAccessor
- property owned_unionings: syside.LazyIterator[syside.Unioning]
- property unioning_types: syside.LazyIterator[syside.Type]
- property owned_intersectings: syside.LazyIterator[syside.Intersecting]
- property intersecting_types: syside.LazyIterator[syside.Type]
- property owned_disjoinings: syside.LazyIterator[syside.Disjoining]
- property disjoining_types: syside.LazyIterator[syside.Type]
- property owned_differencings: syside.LazyIterator[syside.Differencing]
- property differencing_types: syside.LazyIterator[syside.Type]
- property owned_directed_features: syside.LazyIterator[syside.Feature]
- property directed_features: syside.LazyIterator[syside.Feature]
- property heritage: syside.Heritage
- property type_relationships: syside.TypeRelationships
- conforms(arg: syside.Type, /) bool
- specializes(arg: syside.Type, /) bool
- direction_of(arg: syside.Feature, /) syside.FeatureDirectionKind | None
- property prefixes: syside.NamespacePrefixes
- property children: syside.NamespaceBody
- property owned_memberships: syside.LazyIterator[syside.Membership]
- property owned_members: syside.LazyIterator[syside.Element]
- property memberships: syside.LazyIterator[syside.Membership]
- property members: syside.LazyIterator[syside.Element]
- property owned_imports: syside.LazyIterator[syside.Import]
- __getitem__(arg: str, /) syside.Element
- get_membership(arg: str, /) syside.Membership | None
- get_membership(arg0: str, arg1: syside.Membership, /) syside.Membership
- get_member(arg: str, /) syside.Element | None
- get_member(arg0: str, arg1: syside.Element, /) syside.Element
- property sema_state: syside.SemaState
- property qualified_name: syside.QualifiedName | None
- property owning_membership: syside.OwningMembership | None
- property owned_relationships: syside.LazyIterator[syside.Relationship]
- property owning_relationship: syside.Relationship | None
- property owning_namespace: syside.Namespace | None
- property owner: syside.Element | None
- property scoped_owner: syside.Element | None
- property owned_elements: syside.LazyIterator[syside.Element]
- property documentation: syside.LazyIterator[syside.Documentation]
- property owned_annotations: syside.LazyIterator[syside.Annotation]
- property comments: syside.LazyIterator[syside.Comment]
- property textual_representations: syside.LazyIterator[syside.TextualRepresentation]
- property metadata: syside.LazyIterator[syside.MetadataFeature | syside.MetadataUsage]
- isinstance(type: tuple[syside.AstNode.isinstance.type[syside.TNode], ...]) TypeGuard[syside.TNode]
- try_cast(type: tuple[syside.AstNode.try_cast.type[syside.TNode], ...]) syside.TNode | None
- cast(type: tuple[syside.AstNode.cast.type[syside.TNode], ...]) syside.TNode
- property parent: syside.Element | None
- property document: syside.Document
- property cst_node: syside.CstNode | None