Definition SysML

class Definition

Implementation of Definition defined in the SysML specification.

Specification:

A Definition is a Classifier of Usages. The actual kinds of Definition that may appear in a model are given by the subclasses of Definition (possibly as extended with user-defined SemanticMetadata).

Normally, a Definition has owned Usages that model features of the thing being defined. A Definition may also have other Definitions nested in it, but this has no semantic significance, other than the nested scoping resulting from the Definition being considered as a Namespace for any nested Definitions.

However, if a Definition has is_variation = true, then it represents a variation point Definition. In this case, all of its members must be variant Usages, related to the Definition by VariantMembership Relationships. Rather than being features of the Definition, variant Usages model different concrete alternatives that can be chosen to fill in for an abstract Usage of the variation point Definition.

For language description, see section 7.6 of the SysML specification. For more details on the model, see section 8.3.6.2 of the SysML specification.

%3 Definition Definition syside.Definition Classifier Classifier syside.Classifier Classifier->Definition Type Type syside.Type Type->Classifier Namespace Namespace syside.Namespace Namespace->Type Element Element syside.Element Element->Namespace AstNode AstNode syside.AstNode AstNode->Element
Children
Members defined in Definition (34 members)

STD

R

directed_usages

R SysML

Implementation of directed_usage defined in the SysML specification.

is_variation

RW SysML

Implementation of is_variation defined in the SysML specification.

owned_actions

R SysML

Implementation of owned_action defined in the SysML specification.

owned_allocations

R SysML

Implementation of owned_allocation defined in the SysML specification.

owned_analysis_cases

R SysML

Implementation of owned_analysis_case defined in the SysML specification.

owned_attributes

R SysML

Implementation of owned_attribute defined in the SysML specification.

owned_calculations

R SysML

Implementation of owned_calculation defined in the SysML specification.

owned_cases

R SysML

Implementation of owned_case defined in the SysML specification.

owned_concerns

R SysML

Implementation of owned_concern defined in the SysML specification.

owned_connections

R SysML

Implementation of owned_connection defined in the SysML specification.

owned_constraints

R SysML

Implementation of owned_constraint defined in the SysML specification.

owned_enumerations

R SysML

Implementation of owned_enumeration defined in the SysML specification.

owned_flows

R SysML

Implementation of owned_flow defined in the SysML specification.

owned_interfaces

R SysML

Implementation of owned_interface defined in the SysML specification.

owned_items

R SysML

Implementation of owned_item defined in the SysML specification.

owned_metadata

R SysML

Implementation of owned_metadata defined in the SysML specification.

owned_occurrences

R SysML

Implementation of owned_occurrence defined in the SysML specification.

owned_parts

R SysML

Implementation of owned_part defined in the SysML specification.

owned_ports

R SysML

Implementation of owned_port defined in the SysML specification.

owned_references

R SysML

Implementation of owned_reference defined in the SysML specification.

owned_renderings

R SysML

Implementation of owned_rendering defined in the SysML specification.

owned_requirements

R SysML

Implementation of owned_requirement defined in the SysML specification.

owned_states

R SysML

Implementation of owned_state defined in the SysML specification.

owned_transitions

R SysML

Implementation of owned_transition defined in the SysML specification.

owned_usages

R SysML

Implementation of owned_usage defined in the SysML specification.

owned_use_cases

R SysML

Implementation of owned_use_case defined in the SysML specification.

owned_verification_cases

R SysML

Implementation of owned_verification_case defined in the SysML specification.

owned_viewpoints

R SysML

Implementation of owned_viewpoint defined in the SysML specification.

owned_views

R SysML

Implementation of owned_view defined in the SysML specification.

usages

R SysML

Implementation of usage defined in the SysML specification.

variant_memberships

R SysML

Implementation of variant_membership defined in the SysML specification.

variants

R SysML

Implementation of variant defined in the SysML specification.

try_set_is_variation

Try setting is_variation. For types that are implicitly variations, this will return False instead of throwing TypeError when using is_variation setter.

Members inherited from Classifier (2 members)

owned_subclassification_types

R

The Classifiers related to this Classifier by owned_subclassifications.

owned_subclassifications

R SysML

Implementation of owned_subclassification defined in the KerML specification.

Members inherited from Type (37 members)

declared_multiplicity

R

The owned multiplicity that is declared before the children block in the textual syntax.

declared_multiplicity_member

R

Syside specific accessor for manipulating declared_multiplicity.

differencing_types

R SysML

Implementation of differencing_type defined in the KerML specification.

directed_features

R SysML

Implementation of directed_feature defined in the KerML specification.

disjoining_types

R

The types that related to this Type through owned_disjoinings.

end_features

R SysML

Implementation of end_feature defined in the KerML specification.

feature_memberships

R SysML

Implementation of feature_membership defined in the KerML specification.

features

R SysML

Implementation of feature defined in the KerML specification.

heritage

R

The specializations and conjugations owned by this Type.

inherited_features

R SysML

Implementation of inherited_feature defined in the KerML specification.

inherited_memberships

R SysML

Implementation of inherited_membership defined in the KerML specification.

inputs

R SysML

Implementation of input defined in the KerML specification.

intersecting_types

R SysML

Implementation of intersecting_type defined in the KerML specification.

is_abstract

RW SysML

Implementation of is_abstract defined in the KerML specification.

is_abstract_explicitly

R

Returns True if this Type was declared as abstract in the textual syntax.

is_conjugated

R SysML

Implementation of is_conjugated defined in the KerML specification.

is_sufficient

RW SysML

Implementation of is_sufficient defined in the KerML specification.

is_sufficient_explicitly

R

Returns True if this Type was declared as sufficient in the textual syntax.

multiplicity

R SysML

Implementation of multiplicity defined in the KerML specification.

outputs

R SysML

Implementation of output defined in the KerML specification.

owned_conjugator

R SysML

Implementation of owned_conjugator defined in the KerML specification.

owned_differencings

R SysML

Implementation of owned_differencing defined in the KerML specification.

owned_directed_features

R

The directed_features that are owned by this Type.

owned_disjoinings

R SysML

Implementation of owned_disjoining defined in the KerML specification.

owned_end_features

R SysML

Implementation of owned_end_feature defined in the KerML specification.

owned_feature_memberships

R SysML

Implementation of owned_feature_membership defined in the KerML specification.

owned_features

R SysML

Implementation of owned_feature defined in the KerML specification.

owned_inputs

R

The inputs that are owned by this Type.

owned_intersectings

R SysML

Implementation of owned_intersecting defined in the KerML specification.

owned_outputs

R

The outputs that are owned by this Type.

owned_specializations

R SysML

Implementation of owned_specialization defined in the KerML specification.

owned_unionings

R SysML

Implementation of owned_unioning defined in the KerML specification.

type_relationships

R

The other type, feature relationships and FeatureChainings owned by this Type.

unioning_types

R SysML

Implementation of unioning_type defined in the KerML specification.

conforms

Returns True if this Type directly or indirectly specializes another Type while following FeatureChainings.

direction_of

Returns the direction of a Feature in this Type.

specializes

Returns True if this Type directly or indirectly specializes another Type while ignoring FeatureChainings.

Members inherited from Namespace (11 members)

children

R

The elements enclosed by curly brackets in textual syntax.

imported_memberships

R SysML

Implementation of imported_membership defined in the KerML specification.

members

R SysML

Implementation of member defined in the KerML specification.

memberships

R SysML

Implementation of membership defined in the KerML specification.

owned_imports

R SysML

Implementation of owned_import defined in the KerML specification.

owned_members

R SysML

Implementation of owned_member defined in the KerML specification.

owned_memberships

R SysML

Implementation of owned_membership defined in the KerML specification.

prefixes

R

Metadata prefixes, prefixed with # in textual syntax.

__getitem__

Access owned named members by name. Throws KeyError if a member with such name does not exist.

get_member

Non-throwing variant of __getitem__. Returns None if a named member was not found.

get_membership

Access owned memberships by name. Returns None if an owned member or membership with such name does not exist.

Members inherited from Element (25 members)

alias_ids

R SysML

Implementation of alias_ids defined in the KerML specification.

comments

R

The owned Comments related by owned_relationships.

declared_name

RW SysML

Implementation of declared_name defined in the KerML specification.

declared_short_name

RW SysML

Implementation of declared_short_name defined in the KerML specification.

documentation

R SysML

Implementation of documentation defined in the KerML specification.

element_id

RW SysML

Implementation of element_id defined in the KerML specification.

is_implied_included

R SysML

Implementation of is_implied_included defined in the KerML specification.

is_library_element

R SysML

Implementation of is_library_element defined in the KerML specification.

metadata

R

The owned metadata related by owned_relationships.

name

R SysML

Implementation of name defined in the KerML specification.

owned_annotations

R SysML

Implementation of owned_annotation defined in the KerML specification.

owned_elements

R SysML

Implementation of owned_element defined in the KerML specification.

owned_relationships

R SysML

Implementation of owned_relationship defined in the KerML specification.

owner

R SysML

Implementation of owner defined in the KerML specification.

owning_membership

R SysML

Implementation of owning_membership defined in the KerML specification.

owning_namespace

R SysML

Implementation of owning_namespace defined in the KerML specification.

owning_relationship

R SysML

Implementation of owning_relationship defined in the KerML specification.

path

R

Return a unique description of the location of this Element in the containment structure rooted in a root Namespace. In most cases the segments will be identical to QualifiedName.

qualified_name

R SysML

Implementation of qualified_name defined in the KerML specification.

scoped_owner

R

The owner of this Element as the parent of owning_membership or owning_relationship otherwise.

sema_state

RW

The state of semantic resolution for this Element. Based on this, sema may skip elements to avoid duplicate work, e.g. when resolving elements in a group of related documents.

short_name

R SysML

Implementation of short_name defined in the KerML specification.

textual_representations

R SysML

Implementation of textual_representation defined in the KerML specification.

__str__

matches_qualified_name

Check if the qualified name of this Element matches the provided segments of a qualified name.

Members inherited from AstNode (7 members)

cst_node

R

document

R

parent

R

__hash__

cast

isinstance

try_cast

Attributes

STD: tuple[type[syside.Definition], ...] = ()
property directed_usages: syside.LazyIterator[syside.Usage]

Implementation of directed_usage defined in the SysML specification.

Specification:

The usages of this Definition that are directed_features.

See section 8.3.6.2 of the SysML specification for more details.

property is_variation: bool

Implementation of is_variation defined in the SysML specification.

Specification:

Whether this Definition is for a variation point or not. If true, then all the memberships of the Definition must be VariantMemberships.

See section 8.3.6.2 of the SysML specification for more details.

The setter will throw TypeError on types that are implicitly variations already, e.g. EnumerationDefinition. Use try_set_is_variation instead for a non-throwing behaviour.

property owned_actions: syside.LazyIterator[syside.ActionUsage | syside.FlowUsage]

Implementation of owned_action defined in the SysML specification.

Specification:

The ActionUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_allocations: syside.LazyIterator[syside.AllocationUsage]

Implementation of owned_allocation defined in the SysML specification.

Specification:

The AllocationUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_analysis_cases: syside.LazyIterator[syside.AnalysisCaseUsage]

Implementation of owned_analysis_case defined in the SysML specification.

Specification:

The AnalysisCaseUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_attributes: syside.LazyIterator[syside.AttributeUsage]

Implementation of owned_attribute defined in the SysML specification.

Specification:

The AttributeUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_calculations: syside.LazyIterator[syside.CalculationUsage]

Implementation of owned_calculation defined in the SysML specification.

Specification:

The CalculationUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_cases: syside.LazyIterator[syside.CaseUsage]

Implementation of owned_case defined in the SysML specification.

Specification:

The code>CaseUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_concerns: syside.LazyIterator[syside.ConcernUsage]

Implementation of owned_concern defined in the SysML specification.

Specification:

The ConcernUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_connections: syside.LazyIterator[syside.ConnectorAsUsage]

Implementation of owned_connection defined in the SysML specification.

Specification:

The ConnectorAsUsages that are owned_usages of this Definition. Note that this list includes BindingConnectorAsUsages, SuccessionAsUsages, and FlowUsages because these are ConnectorAsUsages even though they are not ConnectionUsages.

See section 8.3.6.2 of the SysML specification for more details.

property owned_constraints: syside.LazyIterator[syside.ConstraintUsage]

Implementation of owned_constraint defined in the SysML specification.

Specification:

The ConstraintUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_enumerations: syside.LazyIterator[syside.EnumerationUsage]

Implementation of owned_enumeration defined in the SysML specification.

Specification:

The EnumerationUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_flows: syside.LazyIterator[syside.FlowUsage]

Implementation of owned_flow defined in the SysML specification.

Specification:

The FlowUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_interfaces: syside.LazyIterator[syside.InterfaceUsage]

Implementation of owned_interface defined in the SysML specification.

Specification:

The InterfaceUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_items: syside.LazyIterator[syside.ItemUsage]

Implementation of owned_item defined in the SysML specification.

Specification:

The ItemUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_metadata: syside.LazyIterator[syside.MetadataUsage]

Implementation of owned_metadata defined in the SysML specification.

Specification:

The MetadataUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_occurrences: syside.LazyIterator[syside.OccurrenceUsage]

Implementation of owned_occurrence defined in the SysML specification.

Specification:

The OccurrenceUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_parts: syside.LazyIterator[syside.PartUsage | syside.ConnectionUsage]

Implementation of owned_part defined in the SysML specification.

Specification:

The PartUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_ports: syside.LazyIterator[syside.PortUsage]

Implementation of owned_port defined in the SysML specification.

Specification:

The PortUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_references: syside.LazyIterator[syside.ReferenceUsage]

Implementation of owned_reference defined in the SysML specification.

Specification:

The ReferenceUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_renderings: syside.LazyIterator[syside.RenderingUsage]

Implementation of owned_rendering defined in the SysML specification.

Specification:

The RenderingUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_requirements: syside.LazyIterator[syside.RequirementUsage]

Implementation of owned_requirement defined in the SysML specification.

Specification:

The RequirementUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_states: syside.LazyIterator[syside.StateUsage]

Implementation of owned_state defined in the SysML specification.

Specification:

The StateUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_transitions: syside.LazyIterator[syside.TransitionUsage]

Implementation of owned_transition defined in the SysML specification.

Specification:

The TransitionUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_usages: syside.LazyIterator[syside.Usage]

Implementation of owned_usage defined in the SysML specification.

Specification:

The Usages that are owned_features of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_use_cases: syside.LazyIterator[syside.UseCaseUsage]

Implementation of owned_use_case defined in the SysML specification.

Specification:

The UseCaseUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_verification_cases: syside.LazyIterator[syside.VerificationCaseUsage]

Implementation of owned_verification_case defined in the SysML specification.

Specification:

The VerificationCaseUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_viewpoints: syside.LazyIterator[syside.ViewpointUsage]

Implementation of owned_viewpoint defined in the SysML specification.

Specification:

The ViewpointUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property owned_views: syside.LazyIterator[syside.ViewUsage]

Implementation of owned_view defined in the SysML specification.

Specification:

The ViewUsages that are owned_usages of this Definition.

See section 8.3.6.2 of the SysML specification for more details.

property usages: syside.LazyIterator[syside.Usage]

Implementation of usage defined in the SysML specification.

Specification:

The Usages that are features of this Definition (not necessarily owned).

See section 8.3.6.2 of the SysML specification for more details.

property variant_memberships: syside.LazyIterator[syside.VariantMembership]

Implementation of variant_membership defined in the SysML specification.

Specification:

The owned_memberships of this Definition that are VariantMemberships. If is_variation = true, then this must be all owned_memberships of the Definition. If is_variation = false, then variant_membershipmust be empty.

See section 8.3.6.2 of the SysML specification for more details.

property variants: syside.LazyIterator[syside.Usage]

Implementation of variant defined in the SysML specification.

Specification:

The Usages which represent the variants of this Definition as a variation point Definition, if is_variation = true. If is_variation = false, the there must be no variants.

See section 8.3.6.2 of the SysML specification for more details.

Methods

try_set_is_variation(arg: bool, /) bool

Try setting is_variation. For types that are implicitly variations, this will return False instead of throwing TypeError when using is_variation setter.

Used in