MagicDraw and Cameo potential issue Note pages

One of the ways Webel IT Australia promotes the MagicDraw® UML, MagicDraw SysML Plugin, Magic Cyber-Systems Engineer ® (Cameo Systems Modeler®), and Magic Model Analyst® (Cameo Simulation Toolkit®) tools is by donating a lot of time identifying, tracking, and reporting potential issues, as well as in many cases offering workarounds. We are dedicated to helping the vendor make the tools better and to teaching users how to use them best! All information on issues tracked on our public site, tutorial trails, and videos, is offered most constructively, and with sincerest gratitude to the developers and vendor.
DISCLAIMER: The vendor does not officially endorse issue analysis by Webel IT Australia.
You can also search the MagicDraw and Cameo TIPS pages or search for content by UML/SysML keyword or SysPhS keyword.
Learn how to best use the MagicDraw and Cameo tools for Systems Modeling Language v1 (SysML®) from the experts by attending our IT Training course:
Title
ISSUE: Cameo Simulation Toolkit: v2024x: Although does not respect inheritance of attributes of Signals on SendSignalAction or un-marshalling AcceptEventAction DOES require them on 'effect' Behaviors.
SysMLv1: Cameo Simulation Toolkit: GOTCHA: Do not use Associations with Signal attributes, they will become null when fed as argument values for Parameters of 'effect' Behaviors of Transitions
SysMLv1.7/fUMLv1.4: Cameo Simulation Toolkit v2024x: Using an extending Enumeration literal as a parameter argument value runs but a WARN is issued.
ISSUE: Cameo Simulation Toolkit: v2024x: Does not show argument Pins corresponding to inherited attributes of Signal on SendSignalAction or an un-marshalling AcceptEventAction. No known UML2.5.1 or fUML-1.4 constraint; no obvious tool display option.
Webel: SysMLv1: MagicDraw/Cameo: CON: Using anonymous property and/or action names is not ideal for Element Compartment and Note callout displays when Usage level allocation is used. But allocation table and matrix views are better anyway.
UML/SysML: MagicDraw/Cameo: Edit Compartments: ActivityParameterNode: Can't select the 'parameter::multiplicity'? Run the synchronisation between the Activity in the direction Synchronize Activity Parameter Nodes by Activity Parameter then try again!
ISSUE/GOTCHA: MagicDraw/Cameo v2022x: UML/SysML: If you "rename" an ActivityParameterNode symbol on the frame of an Activity Diagram it actually renames the underlying Parameter (only) NOT the name of the ActivityParameterNode element!
Webel: SysML4Mathematica: Cameo Systems Modeler: Can perform calculations with a custom Quantity ValueType (for Mathematica) directly, but DOES NOT perform units-aware algebra (no automatic conversions)
ISSUE: MagicDraw/Cameo: v2022x Golden, v2022xRefresh1: Comment can't connect anchor to another Comment as annotatedElement
[FIXED in v2022Refresh1]: BUG: MagicDraw/Cameo: 19SP3/v2022xGolden: Activity Diagrams: Pin display mode 'Position of Labels' does not stick, label positions in Diagrams have sometimes moved after re-opening a project [and "FIX"]
MagicDraw SysML: [v2022xGolden,v2022xRefresh1]: ISSUE: Automatic assignment of the Type of the 'result' of a ReadStructuralFeatureAction not working with drag & drop.
MagicDraw/Cameo: 2022xGolden: TIP/GOTCHA: Mac: HOWTO Load the available plugins in the Resource/Plugin Manager
GOTCHA/BUG: Cameo Simulation Toolkit v2021xR1 + Mathematica: Delegation to Mathematica from ConstraintBlocks FAILS if any of the input or output parameters are larger than 99999 because they get interpreted as 1.0e5 and that trips something! Aarrrggggh!
Cameo Simulation Toolkit: v19SP3: GOTCHA/BUG: When a Property is typed by an abstract Block an instance of a concrete specialising Block (where available) will automatically be created and assigned even when the lower multiplicity is 0
MagicDraw/Cameo 19SP3/v2022xGolden: [FIXED in v2022xRefresh1]: Activity Diagrams: Pin display mode 'Position of Labels' does not work correctly for 'Name And Type Labels Inside', only shows the Name inside (not the Label) [and WORKAROUND]
UML/SysML: MagicDraw/Cameo: 19SP3: Instance Table Diagram sometimes does not display the values for nested value properties
MagicDraw/Cameo: 19SP3: Although a 0..* or 1..* Property can carry more than one value, the interface only permits assignment of a single Property::defaultValue through the specification dialog
UML: Cameo Simulation Toolkit 19SP3: GOTCHA: CreateObjectAction ignores an Artifact as 'classifier' even though Artifact is a Classifier
UML/SysML: Cameo Simulation Toolkit 19SP3: A parent Activity with a DecisionNode that uses a Activity as a decisionInput Behavior terminates immediately after the decisionInput terminates (but OpaqueBehavior works)
UML/SysML: Cameo Simulation Toolkit 19SP3: GOTCHA: Will not evaluate a guard using a token from a decisionInputFlow UNLESS a decisionInput Behaviour is explicitly defined (but Alf does)
UML/SysML: MagicDraw/Cameo: WARNING: If you assign a value to a Slot for an untyped Property then assign a ValueType later it will DELETE your assigned value! Assign a type first .
The SysML1.6 derived /tracedTo is only available on AbstractRequirement (but in MagicDraw/Cameo you can use derived relationships to achieve the same thing on other kinds of NamedElement).
MagicDraw/Cameo v19SP3: The display of units can't be disabled on the initialValues compartment for context-specific values, which can lead to inconsistencies when an OpaqueExpression that references value property names is used.
MagicDraw/Cameo v19SP3: vs SysPhS-1.1: OpaqueExpression for Slot value exports to Modelica as 'null' if only uses a single variable. WORKAROUND/HACK prefix the variable with '1 *' [FIXED in v2021x]
MagicDraw/Cameo v19SP3: vs SysPhS-1.1: Modelica export: Direct binding from a PhSVariable value property within a FlowProperty of a Port to an inner value property does not flatten. WORKAROUND: Use an intermediate constraint property.
MagicDraw/Cameo v19SP3: Does not support display of context-specific values on a FlowProperty symbol within a Port in an IBD
MagicDraw/Cameo v19SP3+SysPhS-1.1: On export to Modelica sometimes repeats parts of an equation into an extending model.
MagicDraw/Cameo v19SP3+SysPhS-1.1: Does not cleanly export INLINE Modelica 'if/then/else' statements (a.k.a. "switching" form)
MagicDraw/Cameo v19SP3+SysPhS-1.1: Does not cleanly export Modelica 'when/then' statements
SysPhS: MagicDraw/Cameo v19SP3: Export to Modelica does not interpret as 'start' the default on a PhSVariable assigned via ElementValue to a PhSConstant
MagicDraw/Cameo: GOTCHA: When applying a numerical default to a value property make sure the value property has already been typed by Real or Integer (or a ValueType that extends one of them) otherwise it will assign a LiteralString as default.
MagicDraw/Cameo v19SP3: SysPhS: If you have a custom ValueType it MUST extend Real either directly or indirectly or it will not be seen on export to Modelica.
Cameo Simulation Toolkit v19SP3: The "hover" feature for showing values of objects may show duplicates if there are redefined value properties.
Webel: Cameo Simulation Toolkit v19SP3/v2024x: Could not get ReclassifyObjectAction to work (yet)
MagicDraw/Cameo v19SP3 vs SysML&SysPhS: Export to Modelica: The exported layout annotations appear to be completely broken (at least vs Wolfram SystemModeler) just de-select generation of them on export.
GOTCHA: MagicDraw SysML/Cameo 19SP3: Export to Modelica: The name of a redefining Property must be exactly the same as the Property it redefines or it will not export properly!
MagicDraw SysML/Cameo 19SP3: Sometimes on application of an ItemFlow to a Connector with Ports typed by Blocks or InterfaceBlocks that have a FlowProperty of the same type (but different direction) it shows two ItemFlow arrows
MagicDraw/Cameo v19SP3 vs SysML&SysPhS: The sample project for the Humidifier example uses DEPRECATED FlowPorts (and sets values directly on them in the StateMachines).
MagicDraw/Cameo v19SP3 vs SysML&SysPhS: GOTCHA: Will NOT correctly export a SysML-1.6 «~interfaceBlock» to Modelica (but does cope with a tilde ~ prefix in the name of a plain InterfaceBlock)
MagicDraw/Cameo vs SysML&SysPhS: GOTCHA: Will NOT export a non-normative System «system» block to Modelica, it only recognises a plain Block «block»!
MagicDraw/Cameo: v19SP3: Property created by dragging onto a Class or Block a symbol of a Classifier named with a single letter capital name 'N' has a poor name 'N:N'
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: RealVectorSignalIn2Element extends RealVectorSignalElement not RealVectorSignalInElement, RealVectorSignalOut2Element extends RealVectorSignalElement not RealVectorSignalOutElement (and so on)
MDSysML/Cameo 19SP3: Showing stereotype keywords on FlowProperty rows is UNSUPPORTED
MDSysML/Cameo 19SP3: The SysPhS versions of Conductance, Frequency, siemens, and hertz, are not explicitly provided in the MagicDraw/Cameo model library
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Does not represent the elements in 'Figure 32: Elements for signal flows of electrical quantities'
SysPhS-1.1: Use of 'Criteria = u2~=0' for Simulink for Real.Routing.Switch::u2 inconsistent with BooleanInput of control port Modelica.Blocks.Logical.Switch::u2
SysPhS-1.1 (and MDSysML/Cameo 19SP3 SysPhSLibrary): Use of RealSignalInElement for Real.Routing.Switch::u2 inconsistent with BooleanInput of control port Modelica.Blocks.Logical.Switch::u2
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: SourceAndSink.Constant: Wrong Real (UML version not SysML version) has been used for 'k', so sorts in the 'properties' compartment instead of the 'values' compartment
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Mathematical.Subtraction: Wrong Real (UML version not SysML version) has been used for 'k2', so sorts in the 'properties' compartment instead of the 'values' compartment
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Mathematical.Gain: Wrong Real (UML version not SysML version) has been used for 'gain', so sorts in the 'properties' compartment instead of the 'values' compartment
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: SPELLING/TYPO: VariableDelay: parameter 'maxDelay' should be 'delayMax'
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: Continuous.Integrator is missing the 'init' PhSConstant (maps to y_start in Modelica)
MDSysML/Cameo 19SP3: SysPhSLibrary vs SysPhS-1.1: NonLinear.Saturation: Wrong Real (UML version not SysML version) has been used for 'lower' and 'upper', so sorts in the 'properties' compartment instead of the 'values' compartment
MDSysML/Cameo 19SP3 vs SysPhS-1.1: The Continuous.TransferFunction and Discrete.TransferFunction have Ports 'u : RealVectorSignalInElement [1]' or '[*]' and 'y : RealVectorSignalInElement [1]' or '[*] instead of RealSignalInElement/RealSignalOutElement
GOTCHA: MagicDraw SysML/Cameo 19SP3: Export to Modelica: 'entry', 'doActivity', or 'exit' Behaviors of a State must be directly owned (not just "wrapped") or they won't be seen on export!
MDSysML/Cameo: 19SP3: SysPhSLibrary: Has value properties with aggregation kind 'none'
MDSysML19SP3: Validation engine does not report value properties with AggregationKind other than composite
MagicDraw SysML/Cameo: 19SP3: Does not seem to support export to Modelica from a Package [use a SysML Block as root instead]
MagicDraw SysML/Cameo: 19SP3: Export to Modelica from TestBed (for SignalProcessor) sample does not validate in Wolfram SystemModeler
MagicDraw SysML/Cameo: 19SP3: Export to Modelica from SysPhS sample for HumidifierSystem does not execute in Wolfram SystemModeler Simulation Centre
BUG: Cameo Simulation Toolkit 19SP3: StateMachine: Crashes with an irrelevant "memory error" report if you fire a signal Trigger during execution of an 'entry' Activity with a timer
UML-2.5.1 does NOT permit a trigger or guard on a Transition from an initial pseudostate in a StateMachine but Cameo/MagicDraw does (please avoid).
MagicDraw/Cameo: The tagged values HTML editor can't handle overlines or all macrons.
MagicDraw/Cameo: HOWTO share a "Block-to-Block" ItemFlow - that was created by 'Between Part Types' mode - between two Connectors. (FYI only, not a Webel-recommended technique.)
SysMLv1: MagicDraw/Cameo: If redisplay of an Association with an InformationFlow or ItemFlow creates a strange extra dashed line with «ItemFlow» keywords (separate from the Association) just remove (only) that extra dashed line from the diagram.
MagicDraw/Cameo: The ordering of feature in a SysML IBD :features compartment may differ from that in its defining Block (and there are no corresponding display options for controlling sorting).
MagicDraw/Cameo: BUG: Sometimes the 'Show Inherited' display feature does not work immediately on Class and Block compartments or SysML IBD :features compartments unless you toggle a compartment (close then re-open it).
MagicDraw/Cameo: The display option 'Show Value Type Units' does not seem to work on the Slots of an InstanceSpecification in a BDD
MagicDraw/Cameo v19SP3: uses the Block compartment name 'signal receptions' instead of just 'receptions'. [CLAIMED FIXED in v2021x]
MagicDraw/Cameo 19SP3: Stakeholder: Has 'concern' NOT derived and /concernList derived; SysML-1.6 has /concern derived and concernList NOT derived.
MagicDraw/Cameo: The apparent grouping of member elements under an ElementGroup node in the model tree can cause complications for searching and for the Cameo Collaborator exports.
MagicDraw/Cameo 19SP3: The property path in callout does always correspond to the SysML spec examples.
MagicDraw/Cameo 19SP3: uses PascalCase instead of lowerCamelCase on some SysML compartment names
MagicDraw/Cameo 19SP3: Validation of required and provided Interfaces proxied between a ProxyPort and a part with a compatible contract fails
MagicDraw/Cameo 19SP3: Does not yet handle Property-wise Type compatibility validation of FlowProperty contracts (it only handles them at the level of entire Block types). Webel asserts the spec is inconsistent w.r.t. ProxyPort connection compatibility.
MagicDraw UML/SysML/Cameo 19SP3: Sometimes on application of a named Association as the Type of a Connector that already has an InformationFlow (or ItemFlow) applied, the direction of the InformationFlow (or ItemFlow) indicator swaps.
MagicDraw/Cameo does not seem to offer the display option Apply SysML Callout Style on CentralBufferNode
MagicDraw/Cameo: DOES NOT support the Namespace compartment on Block
MagicDraw/Cameo 19SP3: can't assign Statemachine submachine as principal of AdjunctProperty via validation warning dialog (confirmed bug). WORKAROUND: Set principal using the specification dialog.
MagicDraw/Cameo 19SP3: Can't seem to show {control} notation on control Pin
MagicDraw/Cameo: Has ControlValue not ControlValueKind (due to known SysML spec issue)
MagicDraw/SysML 19SP3: does not support ObjectNode notation shown in SysML-1.6 in Figure 11-6 and Figure 11-7 because does not support ObjectNode notation properly
MagicDraw/Cameo 19SP3: enumeration 'FeatureDirection' should be 'FeatureDirectionKind' (reflects known error in older SysML specification versions)
MagicDraw/Cameo: the keyword for PropertySpecificType is «PropertySpecificType» not «pst»
MagicDraw/Cameo: 19SP3: Callout of allocatedFrom on Connector vs ObjectFlow shows «decisionInputFlow» not «objectFlow» keyword
MagicDraw/Cameo 19SP3: Can't callout from ItemFlow on Connector, the Note handle pulls from the Connector not the ItemFlow
MagicDraw/Cameo: HOWTO redisplay the name and type of a SysML ItemFlow on a Connector if it vanishes (such as when the Connector is redrawn)
MagicDraw/Cameo 19SP3: If Continuous or Discrete are applied to the underlying Parameter of an InputPin or an OutputPin the keywords «continuous» or «discrete» can't be displayed
In the Webel trail versions of the SysML-1.6 spec sample Figure D.38, the alignment of ObjectNode symbols over the ActivityParameterNode boundaries is completely contrived, please DO NOT mimic it; please use explicit Pins instead!
MagicDraw/Cameo 19SP3: Continuous and Discrete have metaclass [ActivityEdge, ObjectNode, Parameter] not just [ActivityEdge, Parameter] (via Rate), so may be applied directly to Pin and ActivityParameterNode
Webel recommends when using MagicDraw/Cameo: AVOID the "elided Pin" abstract ObjectNode notation on Activity Diagrams, use explicit Pins!
MagicDraw/Cameo: DO NOT use the ObjectNode menu item on Activity Diagrams ever!
[BUG: FIXED]: MagicDraw/Cameo SP193: Offers the display option to show the name and type label inside a Pin symbol, but it does not seem to work. [FIXED since 2022xRefresh2]
MagicDraw/Cameo: ERROR: Incorrectly uses 2 ObjectFlow edges and a CentralBufferNode in place of "elided Pin notation" instead of an abstract ObjectNode symbol and 2 arrow symbols (that are supposed to represent together 2 Pins and 1 ObjectFlow edge)
MagicDraw/Cameo 19SP3: Does not seem to directly support compartment for decomposition of Views as properties of Views (but one can create properties in an IBD and they will show in the 'attributes compartment')
MagicDraw/Cameo 19SP3: Does not yet handle Feature-wise validation of provided/required DirectedFeature contracts (it only handles them at the level of entire Block types). Webel asserts the spec is inconsistent w.r.t. ProxyPort connection compatibility.
MagicDraw/Cameo: There are lots of spelling mistakes in the ISO-80000 ModelLibrary
MD SysML and Cameo 19SP3 can't yet validate provided/required Feature subsets (such as Features of one Block against Features of multiple Ports)
BUG: An unmarshalled AcceptEventAction fails in Cameo Simulation Toolkit 19SP3 as soon as use Generalization with a redefined property!