Learn about Webel's comprehensive SysMLv2 Workshop Seminar course!
Webel now has a SysMLv2 Online Self-Study course with self-test Quizzes!

Webel's "super-relational" Note pages!

A Note is a short categorised statement, claim, policy, tip, or issue tracker Throughout this site, content is often related to supporting Notes, and each Note page links back to the content pages that reference it! The Note and Snippet concepts are very closely related and they support each other.
Look for "super-relational" Note page links at the bottom of most content pages!
Note kind Note Spec tag UML keywords SysML keywords Keywords
DISPLAY, MODELLING, PATTERN, STYLE, TIP Webel Best Practice: SysMLv2: PortDefinition naming: DO NOT include the word 'Port'! Use prefix 'P_Role' OR for ports with directed features for flows use 'F_Thing' or 'F_Stuff' where Thing or Stuff indicates the a flowing discrete packet or substance. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ANTI-PATTERN, DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: "Trust the Type" and use short or acronym feature names instead of verbose feature name that just repeat the Type name but as lowerCase! ANTIPATTERN: veryLongName:VeryLongName SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP Webel Best Practice: SysMLv2: Prefer Views that DO NOT rely on specific packaging structures EXCEPT for dedicated package overview diagrams (and then prefer just list members in a compartment). Use of package symbols for GRAPHICAL containment can break! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE, MODELLING SysML2.0: INCONSISTENCY: Multiple SysMLv2 spec and Annex examples and SysMLv2 PILOT GitHub samples have a «viewpoint» or «viewpoint def» with a subject that is not a «view» (or no declared subject) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
ISSUE, LIMITATION, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: Does not seem to be able to interpret _inline_ filter import syntax SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
DISPLAY, MODELLING, TIP SysMLv2: Cameo: TIP: To list aliases and filter imports in the members compartment DISABLE Symbol Style > Show Only Owned SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, MODELLING, TIP SysMLv2: Cameo: Unlike SysMLv1 Stereotype tagged values, SysMLv2 Metadata values won't display in compartment listings. But for parameters you can display metadata values on boundary "pin" symbols or the metadata kind and values on a full feature symbol. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
CAVEAT, COMPLICATION, EXPLANATION, MODELLING SysMLv2: Webel: The challenge of the twice-performed action (or twice exhibited state) when combining "logical" functional analysis breakdown using performed actions with allocations to "physical" components SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice, functional analysis
ANTI-PATTERN, MODELLING, TIP Webel Best Practice: “There is nothing worse than a sharp image of a fuzzy concept.” (Ansell Adams, photographer) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice, SysMLv1
MODELLING, PATTERN, TIP SysMLv2: Webel Best Practice: Prefer use performed actions and exhibited states as the primary mechanism for "logical" layer/zone systems engineering functional analysis breakdown (not SysMLv2 allocations). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice, functional analysis
MODELLING, PATTERN, TIP SysMLv2: Webel Best Practice: If you have as many allocation definitions as allocation usages in your final model you might not be using them effectively! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
MODELLING, PATTERN, TIP SysMLv2: Webel Best Practice: An allocation definition should be of a specific "nature" (possibly related to a formal systems engineering methodology, and optionally with the "nature" further distilled using custom Metadata). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE, LIMITATION, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: Does not seem to automatically bind by default the subject of an included use case to its the subject of its owning use case SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
CONVENTION, MODELLING, PATTERN, STYLE, TIP Webel Best Practice: SysMLv2: "Trust the Type": When redefining a subject (within any element kind) ALWAYS also include the :Type in the redefinition declaration (even if it's a bit tedious and a bit WET). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE SysMLv2 GitHub (2026-06-04): ISSUE: TRIVIAL: Use Case Usage Example.sysml: «part def» 'Fuel Station' declared twice (already in imported 'Use Case Definition Example') SysMLv2
ANTI-PATTERN, DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel: SysMLv2: Cameo: Modelling Best Practice: Links to examples of _DELIBERATELY_ very large Views (diagrams) that are candidates for "Divide & Conquer" strategies. Some linked examples are AntiPatterns! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, FEATURE, TIP, TOOL SysMLv2: Cameo 2026xHF2: TIP: A requirement verification usage of the objective of a verification cases lists under the require constraints compartment SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
ISSUE, LIMITATION, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: Does not seem to automatically bind by default the subject of a verification case to its objective or the subject of the objective to its requirement verification usages SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
TOOL Quick guide to SysMLv2 support in the Cameo (CATIA Magic) tool family for Model-Based Systems Engineering SysML-1.7, SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, MSOSA
TIP, TOOL MSOSA = Magic Systems of Systems Architect (acronym popular in the USA for the CATIA Magic product bundle with systems engineering methodology and systems architecture standards extensions under Dassault branding) SysML-1.7, SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, MSOSA
ISSUE, LIMITATION, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: Sometimes struggles to parse doc /* .. */ embedded in an expression SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
TIP SysMLv2: TIP: When specializing TradeStudies::TradeStudy you can redefine the 'selectedAlternative' result (out) parameter if you wish to specify a feature :Type but DO NOT change the = binding to studyAlternatives->selectOne {...}! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
GOTCHA, ISSUE, TOOL ISSUE: Cameo 2026xHF2 SysMLv2 Evaluation Plugin: Seems to ignore assumed constraints in evaluations (only recognises required constraints) SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2
CONVENTION, MODELLING SysMLv2 Specification and GitHub examples: CONSISTENCY TRACKER: Links to examples where action (usage or definition) in parameters are redefined but the out parameter is not. SysMLv2
DISPLAY, FEATURE, MODELLING, TIP, TOOL SysMLv2: Cameo: TIP: A subject (which should always be declared using the subject syntax in code) will also display as the 1st parameter in the parameters compartment but without the 'in' feature direction kind displayed. It is nevertheless an 'in'. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
ISSUE SysMLv2 GitHub (2026-06-03): TRIVIAL: 33. Analysis: Analysis Case Definition Example.sysml: Redundant import of 'Calculation Definitions'::* SysMLv2
DISPLAY, ISSUE, TOOL, WORKAROUND SysMLv2: Cameo: ISSUE: Sometimes does not show a reference subsetting relationship from a «perform action» using Display > Display Specializations if the target is a nested «action» symbol (but is traced ok under Go To > Performed Action) [HAS WORKAROUND] SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
ISSUE, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: Does not catch the subject declared using a satisfy by when the target (by subject) is declared as a feature path. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, ISSUE, LIMITATION, MODELLING, TOOL, WORKAROUND SysMLv2: Cameo 2026xHF2: LIMITATION: Does not a show an «assert constraint» or «constraint» in a compartment of a «state» or «action» (workaround drag n' drop from the containment browser tree to create a symbol so you can show the constraint expression) SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
MODELLING Webel Best Practice: SysMLv2: States: Instead of an "empty" entry action (that does nothing) with a succession to an initial state prefer a start:StateAction with a transition to the initial state EXCEPT where conditional successions are needed. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
CAPABILITY, DISPLAY, FEATURE, MODELLING, TIP, TOOL SysMLv2: Cameo: TIP: A «constraint» usage that is not an «assert constraint» won't list in a compartment of a part, but you can display it as a symbol using Display > Display Features (Nested-view or Tree-view) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
CAPABILITY, DISPLAY, FEATURE, MODELLING, TIP, TOOL SysMLv2: Cameo: TIP: For parameters the Show Value symbol style is only enabled by default for parameters listed in compartments but you can enable it also on the little parameter "pin" symbols (on the boundary of the owner symbol). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, GOTCHA, ISSUE, LIMITATION, MODELLING, TOOL Cameo SysMLv2 Plugin: LIMITATION: Does not display an «assert constraint» in a compartment of an «action def» (but you can show it as a symbol using nested view or tree view) SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
DISPLAY, GOTCHA, ISSUE, LIMITATION, MODELLING, TOOL Cameo SysMLv2 Plugin: LIMITATION: Does not have a parameters compartment for an «assert constraint» or «assert» constraint reference and does not show the constraint out expression (but you can display it as a symbol use drag n drop from the browser) SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
CAPABILITY, DISPLAY, FEATURE, MODELLING, TIP, TOOL SysMLv2: Cameo: TIP: The Show Value symbol style is only enabled by default for attributes and parameters (in compartments), but you can Show Value on nearly any feature kind (whether listed in a compartment or displayed as a symbol). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
CAPABILITY, DISPLAY, FEATURE, MODELLING, TIP, TOOL SysMLv2: Cameo: TIP: If you need to display something that is "hidden" (buried in the complex underlying SysMLv2 machinery) you can often access it in the model tree by DISABLING Show Essential Elements Only with Show Implied Relationships ENABLED. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, MODELLING, TIP, TOOL SysMLv2: Cameo: The special result parameter of a calculation (which is an out parameter) won't display as a parameter symbol on its owner's symbol boundary but you can still list it in the parameters compartment (it will appear as an out) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
TIP SysMLv2: Cameo: Although you can use return in SysMLv2 code for the out parameter of a calculation it will display as an out in the parameters compartment. Note that the special parameter is called 'result' but the code keyword is return and it's an out. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
TIP SysMLv2: TIP: You can import ISQ «attribute def» and «attribute» elements via ISQ::* instead of via individual ISQ library packages SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, MODELLING, OPTION, PATTERN, STYLE, TOOL Webel: SysMLv2: Modelling OPTION: Links to examples of heavily compartment-oriented views (compare with relationship-oriented views). Often combined with the Symbol Style option to display inherited features. Consider for non-SysMLv2 fluent stakeholders. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE SysMLv2 GitHub (2026-06-01): TYPO: Car Mass Rollup Example 2.sysml: Package name ''Car Mass Rollup 1'' should probably be 'Car Mass Rollup Example 2' SysMLv2
MODELLING, PATTERN, STYLE, TIP Webel Best Practice: SysMLv2: "Trust the Type" functional analysis: When referencing a performed action or exhibited state ALWAYS also include the :Type in the declaration (even if it's a bit tedious and a bit WET). Helps avoid also verbose usage names! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
MODELLING SysML2.0: Links to specification, Annex, and SysMLv2 GitHub PILOT code examples that directly use an ISQ «attribute def» as attribute type (an opposed to subsetting the ISQ «attribute» equivalent). SysMLv2
ISSUE SysMLv2 GitHub (2026-06-01): TYPO: 24. States: State Decomposition-2.sysml: Package name 'State Decomposition-1' causes clash (suggest use 'State Decomposition-2') SysMLv2
ASSERTION, ISSUE, PROPOSAL SysML2.0: Webel: Suggest the entire description in the specification of whether and when usages MUST redefine inherited parameters needs an overhaul (and the SysML2.0 spec examples, Annex problem, and SysMLv2 GitHub examples are inconsistent anyway). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
MODELLING Webel Best Practice: SysMLv2: Prefer transition (not succession) from start:StateAction SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE SysMLv2 GitHub (2026-06-01): TYPO: 21. Asynchronous Messaging: Messaging with Ports.sysml: Package name 'Messaging Example' causes clash (suggest use 'Messaging with Ports') SysMLv2
DISPLAY, MODELLING, STYLE Webel: SysMLv2: Modelling: When parameters are bound using = binding without flow connectors the "pin" boundary symbols end up "floating". If you instead list all parameters in a compartment do still also show any actually connected ones as "pin" symbols. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel: SysMLv2: OPTION: If using = binding shorthand (instead of binding connectors) from/to context boundary parameters try listing the parameters in compartments with their bound values (rather than as parameter boundary "pin" symbols). Saves space! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE, PROPOSAL SysMLv2: Webel: Redefining a parameter or port (or a directed feature of such) in a binding connector's context provides a "clean" binding target (as opposed to binding to an inherited feature). BUT It's not 100% clear whether it's necessary [TBD] SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: Prefer graphically clearer explicit binding connectors from/to context boundary parameters over parameter = binding shorthand. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE, PROPOSAL SysML2.0: Webel: Suggest it needs to be clarified whether binding to a parameter or port (or a directed feature of such) that has NOT been redefined in the binding connector context (is just inherited) is valid SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
ISSUE, PROPOSAL SysML2.0: Webel: Suggest it needs to be clarified whether a regular connection (that is not an interface) may be used between ports. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: Avoid naming features after their owner where it is clear what owns them. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: Where port usages aren't connected just list them in compartments (do not show them as port boundary symbols). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: "Trust the Type" feature name hiding. In many Views, there is no benefit, at all, in showing feature names (especially if they are needlessly verbose and just repeat the Type name but lowerCase) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
GOTCHA, MODELLING, PATTERN, TIP GOTCHA: New to SysMLv2? The graphical open-headed arrow SYMBOL and the SysMLv2 code shorthand :> for subclassification (specialization between definition level elements) and subsetting (specialization between usage level elements) are the same! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
GOTCHA, ISSUE, LIMITATION, MODELLING, TOOL SysMLv2: Cameo 2026xHF2: GOTCHA: On Textual Editor sync removes (strips) // note text from the SysMLv2 code (see KerML1.0 p.76: SINGLE_LINE_NOTE = '//' LINE_TEXT) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, ISSUE, LIMITATION, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: It is not clear how to show the alias name on an alias relationship symbol (see SysML2.0 p26 Table 3. Packages – Representative Notation) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, ISSUE, LIMITATION, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: It is not clear how to show the Package with «alias» member (unowned) notation (see SysML2.0 p25 Table 3. Packages – Representative Notation) SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, ISSUE, TOOL SysMLv2: Cameo 2026xHF2: ISSUE: Sometimes the alias name does not appear in the members compartment line item even though Symbol Style Show > Only Owned is set to false and there is definitely a members compartment line item for it. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
ISSUE, LIMITATION, TOOL, WARNING SysMLv2: Cameo 2026xHF2: LIMITATION: Wrap symbol style does not work on the constraint expression (out) of constraint symbols SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
ISSUE, LIMITATION, TOOL, WARNING SysMLv2: Cameo 2026xHF2: LIMITATION: Display Others does not always  show membership relations when owner is basic ref SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
ISSUE, LIMITATION, TOOL, WARNING SysMLv2: Cameo 2026xHF2: LIMITATION: Does not list nested attribute usages in the attributes compartment of a «variation attribute def» SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
DISPLAY, ISSUE, MODELLING, TOOL SysMLv2: Cameo 2026xHF2: Does not display «variation part» or «variant part» (just «part») [compare with figure SysML2.0 p.38] SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Cameo v2026xHF2
ISSUE SysMLv2 GitHub (2026-06-01): TYPO: 14. Action Definitions: Action Succession Example-2.sysml: Package name 'Action Definition Example' causes clash (suggest use 'Action Succession Example-2') SysMLv2
ISSUE, LIMITATION, TOOL, WARNING SysMLv2: Cameo: LIMITATION: Does not list owned requirement usages (subrequirements) under the assert constraints compartment. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering
ISSUE SysML2.0: Inconsistent use of the term 'composite' used to describe BOTH elements that own usages of the corresponding kind AND for usages with isComposite=true (as opposed to referential usages with isComposite=false). Suggest use instead 'composed'. SysMLv2
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: OPTION: Use Webel convention role-based parameter names with actions for indicating transformations together with Webel display conventions (not any verbose parameter names). To find out how attend the Webel SysMLv2 course! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: VERY STRONG RECOMMENDATION: Prefer Webel "Trust the Type" i/o parameter naming and Webel display conventions over verbose parameter names. To find out how attend the Webel SysMLv2 course! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ASSERTION, DISPLAY, NAMING, STYLE Webel: SysMLv2: IMPORTANT! Specification documents and the namings used in their supporting examples have a specific purpose and the examples play specific roles. They are NOT tutorials on how to model practically in a specific tool on real projects!!! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: VERY STRONG RECOMMENDATION: Prefer Webel "Trust the Type" i/o port naming and Webel display conventions over verbose port usage names and verbose directed feature names. To find out how attend the Webel SysMLv2 course! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, TIP, TOOL Webel: SysMLv2: Cameo: Modelling Best Practice: EITHER display a feature in a compartment (preferred for non-structured) OR display the symbol of the feature (may be necessary if structured) but NOT both (except for special educational illustration). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
NAMING Webel: SysMLv2: Terminology: in some Webel slides and diagrams the little rectangular parameter boundary symbols with directed feature arrows are INFORMALLY called "pins" (borrowing terminology from SysMLv1) but this is NOT a formal SysMLv2 term. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, TIP, TOOL Webel: SysMLv2: Cameo: Modelling Best Practice: For parameters prefer compartment view (where available) over boundary symbols UNLESS you need to show relationships from the symbols OR have special reasons (such as educational illustration). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, TIP, TOOL Webel: SysMLv2: Cameo: TIP: You can move parameter symbols (the little boxes with arrows) around the boundary of their owner's symbol to save space and improve readability. Parameters displayed on the left (default Cameo layout) take up a lot of space. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, TIP, TOOL Webel: SysMLv2: Cameo: Modelling Best Practice: For non-structured features prefer compartment views with feature values over symbols UNLESS you need to show relationships from feature symbols OR have special reasons (such as educational illustration). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
MODELLING, PATTERN, TIP, TOOL Webel: SysMLv2: Cameo: Modelling Best Practice: Adopt a tight packing strategy leveraging the Cameo grid (but DO NOT obscure the ends of relationship arrow symbols). SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, PATTERN, STYLE, TIP, TOOL Webel: SysMLv2: Cameo: Modelling Best Practice: Links to examples of appropriate and effective use of outline colours for special highlighting with specializations and hierarchies. BUT does not always work well if overdone! SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, TIP, TOOL, WARNING Webel: SysMLv2: Prefer member ownership relationship symbols over Package symbol member containment (which can break if you change the packaging). [POSSIBLE EXCEPTION: Modelling readonly library packages.] SysMLv2 SysML, SysMLv2, Systems Modeling Language, Model-Based Systems Engineering, Cameo Systems Modeler, CATIA Magic, Webel Best Practice
MODELLING, PROPOSAL Dr Darren's SysMLv2 dream: Just 'att' instead of 'attribute' as code keyword. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE ISSUE: SysMLv2 GitHub samples (2026-06-01): Multiple cases: ShapeItem Cylinder does not (currently) have a 'radius', it inherits a 'semiMinorAxis' and 'semiMajorAxis' which are not redefined. (It DOES have a 'height'). SysMLv2
ISSUE ISSUE: SysMLv2 GitHub examples (2026-06-01): QuadCopter: Multiple inconsistencies in geometry SysMLv2
ISSUE SysMLv2.0: Possible spec inconsistency concerning private default for imports. Is an explicit import always needed? SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
DISPLAY, MODELLING, TIP, TOOL Webel Best Practice: SysMLv2: Cameo: Where the aim is show details of structured attributes and/or to show relationships from attributes (such as for educational reasons) they may be displayed as symbols. But in general, prefer the compartments display. SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, TIP, TOOL Webel Best Practice: SysMLv2: Cameo: TIP: Show EITHER a specialization relationship from a symbol OR show the specialization in the symbol header using Display Styles -> Show Specialization. Prefer NOT show both modes in one View. SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
DISPLAY, MODELLING, STYLE, TIP, TOOL Webel Best Practice: SysMLv2: STRONGLY recommend black on white style with colours (best only for symbol outlines) only used for special highlighting. [READ FOR INSTRUCTIONS for b/w in Cameo SysMLv2] SysMLv2 SysML2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, Cameo Systems Modeler, Cameo SysMLv2 Plugin, model-based engineering, Webel Best Practice
ISSUE, LIMITATION, MODELLING, TOOL Cameo SysMLv2 Plugin: LIMITATION: Does not have a compartment for basic refs (no kind) so one has to use symbols, which takes up some modelling real estate - even when there's no need to show their structured contents or relationships from them! SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Model-Based Systems Engineering, MBSE
CONVENTION, DISPLAY, MODELLING, STYLE Webel SysMv2 modelling convention for tutorials and training. Metaclasses and elements from the KerML and SysMLv2 machinery are white on black or white on strong "darker" colours (blue, magenta, purple etc.) to distinguish them from user model elements SysMLv2, Systems Modeling Language, Model-Based Systems Engineering, Webel Best Practice
ISSUE, TOOL ISSUE: Cameo 2026x: SysMLv2 Plugin: macOS Ventura to Sequoia: Sometimes Cameo application is unresponsive after screen saver on for a while, have to kill and restart SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2, macOS, macOS Ventura, macOS Sequoia, Cameo 2026xHF2
ISSUE, TOOL ISSUE[MAYBE]: Cameo 2026xHF2: SysMLv2 Plugin: Using import without a visibility indicator fails in the textual representation editor (but should be supported with default private according to _SOME_ SysML2.0 spec examples) SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2, Cameo v2026x, Cameo v2026xHF2
ISSUE, TOOL ISSUE: Cameo 2026xHF2: SysMLv2 Plugin: HF2 upgrade has broken representation of Metadata and metadata feature values on some kinds of annotated element symbols (worked fine in Cameo 2026x before the HF2 upgrade) SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2, Cameo v2026x, Cameo v2026xHF2
ISSUE SysMLv2.0: Spec inconsistency: Some of the spec examples for view definition (including ptc-25-04-31.sysml) have no subject at all OR a subject that is not a view SysMLv2
ISSUE, TOOL ISSUE: Cameo SysMLv2 Plugin (2026xHF2): mac OS 15.7.5 Sequoia: Sometimes hangs showing 'Finalising Textual Editor' on wake after machine sleeps. Have to kill Cameo and rerun (mostly but not always recovers project) SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE, macOS, macOS Sequoia
GOTCHA, ISSUE, TOOL CHALLENGE: Cameo SysMLv2 Plugin (2026xHF2): : FeatureValue.value representation in a ColumnByExpressionView does not seem to work when the feature value of an attribute has units: Example length = 1.2 [m] SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
TOOL Cameo SysMLv2 Plugin: TRACKER: Progress towards more GUI support for customised query view tables (and less need for customisation using fiddly textual representation code) SysMLv2 Cameo SysMLv2 Plugin, Cameo Systems Modeler, SysMLv2, Systems Modeling Language, SysML, Model-Based Systems Engineering, MBSE
GOTCHA, TOOL GOTCHA: Cameo 2026x: SysMLv2 Evaluation Plugin: DISABLE/CLEAR Model Evaluation mode before synchronising the project model with the textual representation editor or it will write numerical values into attribute names in the textual representation! SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2
ISSUE, TOOL, WORKAROUND ISSUE: Cameo 2026x: SysMLv2 Plugin: macOS Ventura: On project recovery after crash (or kill) the application of styles does not work. WORKAROUND: Save recovered project and restart Cameo. SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2, macOS, macOS Ventura
ISSUE, TOOL ISSUE: Cameo 2026x: SysMLv2 Plugin: macOS Ventura to Sequoia: Sometimes hangs on 'Textual Editor operations finalizing...' SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2, macOS, macOS Ventura, macOS Sequoia
GOTCHA, ISSUE, TOOL ISSUE: Cameo 2026x: SysMLv2 Plugin: "Permits" application of metadata restricted via annotatedElement subsetting to any element (maybe a planned validation engine will catch it). SysMLv2 Cameo Systems Modeler, Cameo SysMLv2 Plugin, Cameo SysMLv2 Evaluation Plugin, Systems Modeling Language, SysMLv2