Main Content

changeStereotype

Change currently applied stereotype to new stereotype in its stereotype hierarchy

Since R2024a

    Description

    changeStereotype(element,stereotype,Name=Value) changes the currently applied stereotype on an architectural element to another stereotype in its stereotype hierarchy with an optional name-value argument. Changing stereotypes retains shared property values.

    example

    Examples

    collapse all

    Change stereotypes applied to a component by going down the hierarchy of stereotypes you define in the profile.

    Create a model with a component called Component.

    model = systemcomposer.createModel("archModel");
    systemcomposer.openModel("archModel");
    arch = get(model,"Architecture");
    comp = addComponent(arch,"Component");

    Create a new profile and apply the profile to your model.

    profile = systemcomposer.profile.Profile.createProfile("SoftwareProfile");
    model.applyProfile("SoftwareProfile")

    Create an inheritance hierarchy among the stereotypes in the profile, then save the profile and model.

    baseComp = profile.addStereotype('BaseComponent');
    swComp = profile.addStereotype('SoftwareComponent',...
    'Parent',baseComp.FullyQualifiedName);
    profile.addStereotype('AppSWComponent',...
    'Parent',swComp.FullyQualifiedName);
    profile.addStereotype('DeviceSWComponent',...
    'Parent',swComp.FullyQualifiedName);
    profile.addStereotype('HardwareComponent',...
    'Parent',baseComp.FullyQualifiedName);
    
    profile.save; model.save

    Apply the BaseComponent stereotype to the Component component.

    comp.Architecture.applyStereotype("SoftwareProfile.BaseComponent")

    Change the BaseComponent stereotype on the Component component to the AppSWComponent stereotype. Then, get all stereotypes applied to the Component component.

    comp.Architecture.changeStereotype("SoftwareProfile.AppSWComponent")
    stereotypes = getStereotypes(comp)
    stereotypes =
      1×1 cell array
        {'SoftwareProfile.AppSWComponent'}

    Input Arguments

    collapse all

    Name of the stereotype, specified as a character vector or string in the form "<profile>.<stereotype>". The profile must already be imported into the model.

    Data Types: char | string

    Name-Value Arguments

    Specify optional pairs of arguments as Name1=Value1,...,NameN=ValueN, where Name is the argument name and Value is the corresponding value. Name-value arguments must appear after other arguments, but the order of the pairs does not matter.

    Example: comp.Architecture.changeStereotype("SoftwareProfile.AppSWComponent",Source="SoftwareProfile.BaseComponent")

    Stereotype to change, specified as a character vector pr string in the form "<profile>.<stereotype>".

    Data Types: char | string

    Option to force the stereotype to change even if there is a loss of data, specified as 1 (true) or 0 (false).

    Data Types: logical

    More About

    collapse all

    Definitions

    TermDefinitionApplicationMore Information
    architecture

    A System Composer™ architecture represents a system of components and how they interface with each other structurally and behaviorally.

    Different types of architectures describe different aspects of systems. You can use views to visualize a subset of components in an architecture. You can define parameters on the architecture level using the Parameter Editor.

    root

    A root is at the top of an architecture hierarchy. A root architecture has a boundary defined by its architecture ports that surround the system of interest.

    The root architecture has a system boundary surrounding your architecture model. You can add architecture ports that define interfaces across the boundary.

    Compose Architectures Visually

    model

    A System Composer model is the file that contains architectural information, such as components, ports, connectors, interfaces, and behaviors.

    Perform operations on a model:

    • Extract root-level architecture.

    • Apply profiles.

    • Link interface data dictionaries.

    • Generate instances from model architecture.

    A System Composer model is stored as an SLX file.

    Create Architecture Model with Interfaces and Requirement Links
    component

    A component is a replaceable part of a system that fulfills a clear function in the context of an architecture. A component defines an architectural element, such as a function, another system, hardware, software, or other conceptual entity. A component can also be a subsystem or subfunction.

    Represented as a block, a component is a part of an architecture model that can be separated into reusable artifacts. Transfer information between components with:

    Compose Architectures Visually

    port

    A port is a node on a component or architecture that represents a point of interaction with its environment. A port permits the flow of information to and from other components or systems.

    • Component ports are interaction points on the component to other components.

    • Architecture ports are ports on the boundary of the system, whether the boundary is within a component or the overall architecture model. The root architecture has a boundary defined by its ports.

    Compose Architectures Visually

    connector

    Connectors are lines that provide connections between ports. Connectors describe how information flows between components or architectures.

    A connector allows two components to interact without defining the nature of the interaction. Set an interface on a port to define how the components interact.

    Compose Architectures Visually

    TermDefinitionApplicationMore Information
    stereotype

    Stereotypes provide a mechanism to extend the core language elements and add domain-specific metadata.

    Apply stereotypes to core element types. An element can have multiple stereotypes. Stereotypes allow you to style different elements. Stereotypes provide elements with a common set of properties, such as mass, cost, and power.

    property

    A property is a field in a stereotype. You can specify property values for each element to which the stereotype is applied.

    Use properties to store quantitative characteristics, such as weight or speed, that are associated with a model element. Properties can also be descriptive or represent a status. You can view and edit the properties of each element in the architecture model using the Property Inspector. For more information, see Use Property Inspector in System Composer.

    profile

    A profile is a package of stereotypes.

    You can use profiles to create a domain of specialized element types. Author profiles and apply profiles to a model using the Profile Editor. You can store stereotypes for a project in one or several profiles. When you save profiles, they are stored in XML files.

    Version History

    Introduced in R2024a