Main Content

createView

Create architecture view

Since R2021a

    Description

    view = createView(model,name) creates a new architecture view view for the System Composer™ model model with the specified name name.

    To delete a view, use the deleteView function.

    view = createView(___,Name=Value) creates a new view with additional options.

    example

    Examples

    collapse all

    Open the keyless entry system example and create a view. Specify the color as light blue and the query as all components, and group by the review status.

    import systemcomposer.query.*
    
    openProject("scKeylessEntrySystem");
    
    model = systemcomposer.loadModel("KeylessEntryArchitecture");
    view = model.createView("All Components Grouped by Review Status",...
        Color="lightblue",Select=AnyComponent,...
        GroupBy="AutoProfile.BaseComponent.ReviewStatus");

    Open the Architecture Views Gallery to see the new view named All Components Grouped by Review Status.

    model.openViews
    

    Input Arguments

    collapse all

    Architecture model, specified as a systemcomposer.arch.Model object.

    Name of view, specified as a character vector or string.

    Example: "All Components Grouped by Review Status"

    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.

    Before R2021a, use commas to separate each name and value, and enclose Name in quotes.

    Example: view = model.createView("All Components Grouped by Review Status",Color="lightblue",Select=AnyComponent(),GroupBy="AutoProfile.BaseComponent.ReviewStatus")

    Selection query to use to populate the view, specified as a systemcomposer.query.Constraint object.

    A constraint can contain a subconstraint that can be joined with another constraint using AND or OR. A constraint can be negated using NOT.

    Query Objects and Conditions for Constraints

    Query ObjectCondition
    PropertyA non-evaluated value for the given property or stereotype property.
    PropertyValueAn evaluated property value from a System Composer object or a stereotype property.
    HasConnectorA component has a connector that satisfies the given subconstraint.
    HasPortA component has a port that satisfies the given subconstraint.
    HasInterfaceA port has an interface that satisfies the given subconstraint.
    HasInterfaceElementAn interface has an interface element that satisfies the given subconstraint.
    HasStereotypeAn architecture element has a stereotype that satisfies the given subconstraint.
    IsInRangeA property value is within the given range.
    AnyComponentAn element is a component and not a port or connector.
    IsStereotypeDerivedFrom A stereotype is derived from the given stereotype.

    Example: view = model.createView("All Components Grouped by Review Status",Select=HasStereotype(IsStereotypeDerivedFrom("AutoProfile.HardwareComponent")))

    Grouping criteria, specified as a cell array of character vectors or an array of strings in the form "<profile>.<stereotype>.<property>". The order of the cell array dictates the order of the grouping.

    Example: view = model.createView("All Components Grouped by Review Status",GroupBy=["AutoProfile.MechanicalComponent.mass","AutoProfile.MechanicalComponent.cost"])

    Data Types: char | string

    Whether to search for reference architectures, specified as 1 (true) or 0 (false).

    Example: view = model.createView("All Components Grouped by Review Status",IncludeReferenceModels=false)

    Data Types: logical

    Color of view, specified as a character vector or string that contains the name of the color or an RGB hexadecimal value.

    Example: view = model.createView("All Components Grouped by Review Status",Color="blue")

    Example: view = model.createView("All Components Grouped by Review Status",Color="#FF00FF")

    Data Types: char | string

    Output Arguments

    collapse all

    Architecture view, returned as a systemcomposer.view.View object.

    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
    view

    A view shows a customizable subset of elements in a model. Views can be filtered based on stereotypes or names of components, ports, and interfaces, along with the name, type, or units of an interface element. Create views by adding elements manually. Views create a simplified way to work with complex architectures by focusing on certain parts of the architectural design.

    You can use different types of views to represent the system. Switch between a component diagram, component hierarchy, or architecture hierarchy. For software architectures, you can switch to a class diagram view. A viewpoint represents a stakeholder perspective that specifies the contents of the view.

    element group

    An element group is a grouping of components in a view.

    Use element groups to programmatically populate a view.

    query

    A query is a specification that describes certain constraints or criteria to be satisfied by model elements.

    Use queries to search elements with constraint criteria and to filter views.

    Find Elements in Model Using Queries
    component diagram

    A component diagram represents a view with components, ports, and connectors based on how the model is structured.

    Component diagrams allow you to programmatically or manually add and remove components from the view.

    Inspect Components in Custom Architecture Views
    hierarchy diagram

    You can visualize a hierarchy diagram as a view with components, ports, reference types, component stereotypes, and stereotype properties.

    System Composer has two types of hierarchy diagrams:

    • Component hierarchy diagrams display components in tree form with parents above children. In a component hierarchy view, each referenced model is represented as many times as it is used.

    • Architecture hierarchy diagrams display unique component architecture types and their relationships using composition connections. In an architecture hierarchy view, each referenced model is represented only once.

    Display Component Hierarchy and Architecture Hierarchy Using Views

    Version History

    Introduced in R2021a