Usage SysML

class Usage

Implementation of Usage defined in the SysML specification.

Specification:

A Usage is a usage of a Definition.

A Usage may have nested_usages that model features that apply in the context of the owning_usage. A Usage may also have Definitions nested in it, but this has no semantic significance, other than the nested scoping resulting from the Usage being considered as a Namespace for any nested Definitions.

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

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

%3 Usage Usage syside.Usage Feature Feature syside.Feature Feature->Usage Type Type syside.Type Type->Feature Namespace Namespace syside.Namespace Namespace->Type Element Element syside.Element Element->Namespace AstNode AstNode syside.AstNode AstNode->Element
Children
Members defined in Usage (39 members)

STD

R

definitions

R SysML

Implementation of definition defined in the SysML specification.

directed_usages

R SysML

Implementation of directed_usage defined in the SysML specification.

is_reference

RW SysML

Implementation of is_reference defined in the SysML specification.

is_reference_explicitly

R

Returns True if this Usage was explicitly declared as ref in the textual syntax.

is_variation

RW SysML

Implementation of is_variation defined in the SysML specification.

may_time_vary

R SysML

Implementation of may_time_vary defined in the SysML specification.

nested_actions

R SysML

Implementation of nested_action defined in the SysML specification.

nested_allocations

R SysML

Implementation of nested_allocation defined in the SysML specification.

nested_analysis_cases

R SysML

Implementation of nested_analysis_case defined in the SysML specification.

nested_attributes

R SysML

Implementation of nested_attribute defined in the SysML specification.

nested_calculations

R SysML

Implementation of nested_calculation defined in the SysML specification.

nested_cases

R SysML

Implementation of nested_case defined in the SysML specification.

nested_concerns

R SysML

Implementation of nested_concern defined in the SysML specification.

nested_connections

R SysML

Implementation of nested_connection defined in the SysML specification.

nested_constraints

R SysML

Implementation of nested_constraint defined in the SysML specification.

nested_enumerations

R SysML

Implementation of nested_enumeration defined in the SysML specification.

nested_flows

R SysML

Implementation of nested_flow defined in the SysML specification.

nested_interfaces

R SysML

Implementation of nested_interface defined in the SysML specification.

nested_items

R SysML

Implementation of nested_item defined in the SysML specification.

nested_metadata

R SysML

Implementation of nested_metadata defined in the SysML specification.

nested_occurrences

R SysML

Implementation of nested_occurrence defined in the SysML specification.

nested_parts

R SysML

Implementation of nested_part defined in the SysML specification.

nested_ports

R SysML

Implementation of nested_port defined in the SysML specification.

nested_references

R SysML

Implementation of nested_reference defined in the SysML specification.

nested_renderings

R SysML

Implementation of nested_rendering defined in the SysML specification.

nested_requirements

R SysML

Implementation of nested_requirement defined in the SysML specification.

nested_states

R SysML

Implementation of nested_state defined in the SysML specification.

nested_transitions

R SysML

Implementation of nested_transition defined in the SysML specification.

nested_usages

R SysML

Implementation of nested_usage defined in the SysML specification.

nested_use_cases

R SysML

Implementation of nested_use_case defined in the SysML specification.

nested_verification_cases

R SysML

Implementation of nested_verification_case defined in the SysML specification.

nested_viewpoints

R SysML

Implementation of nested_viewpoint defined in the SysML specification.

nested_views

R SysML

Implementation of nested_view defined in the SysML specification.

owning_definition

R SysML

Implementation of owning_definition defined in the SysML specification.

owning_usage

R SysML

Implementation of owning_usage 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.

Members inherited from Feature (44 members)

basic_feature

R

The last_chaining_feature if one exists, otherwise this Feature.

chaining_features

R SysML

Implementation of chaining_feature defined in the KerML specification.

cross_feature

R SysML

Implementation of cross_feature defined in the KerML specification.

direction

RW SysML

Implementation of direction defined in the KerML specification.

end_owning_type

R SysML

Implementation of end_owning_type defined in the KerML specification.

explicit_direction

R

Returns the direction this Feature has been declared with in the textual syntax.

feature_target

R SysML

Implementation of feature_target defined in the KerML specification.

feature_value

R

The FeatureValue owned by this Feature if any.

feature_value_expression

R

The feature value Expression of this Feature if any.

feature_value_member

R

Syside specific accessor for manipulating feature_value.

featuring_types

R SysML

Implementation of featuring_type defined in the KerML specification.

first_chaining_feature

R

The related Feature related by the first owned_feature_chaining if any.

is_composite

RW SysML

Implementation of is_composite defined in the KerML specification.

is_composite_explicitly

R

Returns True if this Feature has been declared composite in the textual syntax.

is_constant

RW SysML

Implementation of is_constant defined in the KerML specification.

is_constant_explicitly

R

Returns True if this Feature has been declared constant in the textual syntax.

is_derived

RW SysML

Implementation of is_derived defined in the KerML specification.

is_end

RW SysML

Implementation of is_end defined in the KerML specification.

is_end_explicitly

R

Returns True if this Feature has been declared end in the textual syntax.

is_nonunique

RW

is_ordered

RW SysML

Implementation of is_ordered defined in the KerML specification.

is_portion

RW SysML

Implementation of is_portion defined in the KerML specification.

is_read_only

RW

Alias for is_constant.

is_unique

RW SysML

Implementation of is_unique defined in the KerML specification.

is_variable

RW SysML

Implementation of is_variable defined in the KerML specification.

is_variable_explicitly

R

Returns True if this Feature has been declared variable in the textual syntax.

last_chaining_feature

R

The related Feature related by the last owned_feature_chaining if any.

owned_cross_feature

R

The member Feature that is declared before any prefixes in the textual syntax.

owned_cross_feature_member

R

Syside specific accessor for either owned crossing_feature or crossing_multiplicity. This is the member Feature that is declared before any prefixes in the textual syntax.

owned_cross_subsetting

R SysML

Implementation of owned_cross_subsetting defined in the KerML specification.

owned_feature_chainings

R SysML

Implementation of owned_feature_chaining defined in the KerML specification.

owned_feature_invertings

R SysML

Implementation of owned_feature_inverting defined in the KerML specification.

owned_redefinitions

R SysML

Implementation of owned_redefinition defined in the KerML specification.

owned_reference_subsetting

R SysML

Implementation of owned_reference_subsetting defined in the KerML specification.

owned_subsettings

R SysML

Implementation of owned_subsetting defined in the KerML specification.

owned_type_featurings

R SysML

Implementation of owned_type_featuring defined in the KerML specification.

owned_typings

R SysML

Implementation of owned_typing defined in the KerML specification.

owning_feature_membership

R SysML

Implementation of owning_feature_membership defined in the KerML specification.

owning_type

R SysML

Implementation of owning_type defined in the KerML specification.

referenced_feature

R

Returns the Feature this Feature references through ReferenceSubsetting if any.

referenced_feature_target

R

Returns the feature_target of referenced_feature, i.e. referenced_feature.feature_target.

types

R SysML

Implementation of type defined in the KerML specification.

find_owned_cross_feature

Find the owned cross feature by potentially checking children. This is needed for spec that defined owned cross feature as the first member feature that is not a MetadataFeature or Multiplicity of an end feature. Since SysML does not allow member features (member keyword in KerML), this is equivalent to owned_cross_feature in SysML.

try_set_is_variable

Non-raising variant of is_variable setter that returns False on Usages without modifying is_variable.

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.Usage], ...] = ()
property definitions: syside.LazyIterator[syside.Classifier]

Implementation of definition defined in the SysML specification.

Specification:

The Classifiers that are the types of this Usage. Nominally, these are Definitions, but other kinds of Kernel Classifiers are also allowed, to permit use of Classifiers from the Kernel Model Libraries.

See section 8.3.6.4 of the SysML specification for more details.

property directed_usages: syside.LazyIterator[syside.Usage]

Implementation of directed_usage defined in the SysML specification.

Specification:

The usages of this Usage that are directed_features.

See section 8.3.6.4 of the SysML specification for more details.

property is_reference: bool

Implementation of is_reference defined in the SysML specification.

Specification:

Whether this Usage is a referential Usage, that is, it has is_composite = false.

See section 8.3.6.4 of the SysML specification for more details.

property is_reference_explicitly: bool

Returns True if this Usage was explicitly declared as ref in the textual syntax.

property is_variation: bool

Implementation of is_variation defined in the SysML specification.

Specification:

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

See section 8.3.6.4 of the SysML specification for more details.

property may_time_vary: bool

Implementation of may_time_vary defined in the SysML specification.

Specification:

Whether this Usage may be time varying (that is, whether it is featured by the snapshots of its owning_type, rather than being featured by the owning_type itself). However, if is_constant is also true, then the value of the Usage is nevertheless constant over the entire duration of an instance of its owning_type (that is, it has the same value on all snapshots).

The property may_time_vary redefines the KerML property Feature::is_variable, making it derived. The property is_constant is inherited from Feature.

See section 8.3.6.4 of the SysML specification for more details.

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

Implementation of nested_action defined in the SysML specification.

Specification:

The ActionUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_allocations: syside.LazyIterator[syside.AllocationUsage]

Implementation of nested_allocation defined in the SysML specification.

Specification:

The AllocationUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_analysis_cases: syside.LazyIterator[syside.AnalysisCaseUsage]

Implementation of nested_analysis_case defined in the SysML specification.

Specification:

The AnalysisCaseUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_attributes: syside.LazyIterator[syside.AttributeUsage]

Implementation of nested_attribute defined in the SysML specification.

Specification:

The code>AttributeUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_calculations: syside.LazyIterator[syside.CalculationUsage]

Implementation of nested_calculation defined in the SysML specification.

Specification:

The CalculationUsage that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_cases: syside.LazyIterator[syside.CaseUsage]

Implementation of nested_case defined in the SysML specification.

Specification:

The CaseUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_concerns: syside.LazyIterator[syside.ConcernUsage]

Implementation of nested_concern defined in the SysML specification.

Specification:

The ConcernUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_connections: syside.LazyIterator[syside.ConnectorAsUsage]

Implementation of nested_connection defined in the SysML specification.

Specification:

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

See section 8.3.6.4 of the SysML specification for more details.

property nested_constraints: syside.LazyIterator[syside.ConstraintUsage]

Implementation of nested_constraint defined in the SysML specification.

Specification:

The ConstraintUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_enumerations: syside.LazyIterator[syside.EnumerationUsage]

Implementation of nested_enumeration defined in the SysML specification.

Specification:

The code>EnumerationUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_flows: syside.LazyIterator[syside.FlowUsage]

Implementation of nested_flow defined in the SysML specification.

Specification:

The code>FlowUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_interfaces: syside.LazyIterator[syside.InterfaceUsage]

Implementation of nested_interface defined in the SysML specification.

Specification:

The InterfaceUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_items: syside.LazyIterator[syside.ItemUsage]

Implementation of nested_item defined in the SysML specification.

Specification:

The ItemUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_metadata: syside.LazyIterator[syside.MetadataUsage]

Implementation of nested_metadata defined in the SysML specification.

Specification:

The MetadataUsages that are nested_usages of this of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_occurrences: syside.LazyIterator[syside.OccurrenceUsage]

Implementation of nested_occurrence defined in the SysML specification.

Specification:

The OccurrenceUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

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

Implementation of nested_part defined in the SysML specification.

Specification:

The PartUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_ports: syside.LazyIterator[syside.PortUsage]

Implementation of nested_port defined in the SysML specification.

Specification:

The PortUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_references: syside.LazyIterator[syside.ReferenceUsage]

Implementation of nested_reference defined in the SysML specification.

Specification:

The ReferenceUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_renderings: syside.LazyIterator[syside.RenderingUsage]

Implementation of nested_rendering defined in the SysML specification.

Specification:

The RenderingUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_requirements: syside.LazyIterator[syside.RequirementUsage]

Implementation of nested_requirement defined in the SysML specification.

Specification:

The RequirementUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_states: syside.LazyIterator[syside.StateUsage]

Implementation of nested_state defined in the SysML specification.

Specification:

The StateUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_transitions: syside.LazyIterator[syside.TransitionUsage]

Implementation of nested_transition defined in the SysML specification.

Specification:

The TransitionUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_usages: syside.LazyIterator[syside.Usage]

Implementation of nested_usage defined in the SysML specification.

Specification:

The Usages that are owned_features of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_use_cases: syside.LazyIterator[syside.UseCaseUsage]

Implementation of nested_use_case defined in the SysML specification.

Specification:

The UseCaseUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_verification_cases: syside.LazyIterator[syside.VerificationCaseUsage]

Implementation of nested_verification_case defined in the SysML specification.

Specification:

The VerificationCaseUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_viewpoints: syside.LazyIterator[syside.ViewpointUsage]

Implementation of nested_viewpoint defined in the SysML specification.

Specification:

The ViewpointUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property nested_views: syside.LazyIterator[syside.ViewUsage]

Implementation of nested_view defined in the SysML specification.

Specification:

The ViewUsages that are nested_usages of this Usage.

See section 8.3.6.4 of the SysML specification for more details.

property owning_definition: syside.Definition | None

Implementation of owning_definition defined in the SysML specification.

Specification:

The Definition that owns this Usage (if any).

See section 8.3.6.4 of the SysML specification for more details.

property owning_usage: syside.Usage | None

Implementation of owning_usage defined in the SysML specification.

Specification:

The Usage in which this Usage is nested (if any).

See section 8.3.6.4 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 Usage (not necessarily owned).

See section 8.3.6.4 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 Usage that are VariantMemberships. If is_variation = true, then this must be all memberships of the Usage. If is_variation = false, then variant_membershipmust be empty.

See section 8.3.6.4 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 Usage as a variation point Usage, if is_variation = true. If is_variation = false, then there must be no variants.

See section 8.3.6.4 of the SysML specification for more details.

Used in