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 Sort descending Spec tag UML keywords SysML keywords Keywords
CAVEAT fUML-1.4 EXCLUDES Classifier::powerTypeExtent fUML-1.4 Classifier, Classifier::powerTypeExtent fUML
CAVEAT fUML-1.4 EXCLUDES Classifier::redefinedClassifier fUML-1.4 Classifier, Classifier::redefinedClassifier fUML
CAVEAT fUML-1.4 EXCLUDES Classifier::representation fUML-1.4 Classifier, Classifier::representation fUML
CAVEAT fUML-1.4 EXCLUDES Classifier::substitution fUML-1.4 Classifier, Classifier::substitution fUML
CAVEAT fUML-1.4 EXCLUDES Classifier::useCase fUML-1.4 Classifier, Classifier::useCase fUML
CAVEAT fUML-1.4 EXCLUDES Collaboration fUML-1.4 Collaboration fUML
CAVEAT fUML-1.4 EXCLUDES Component fUML-1.4 Component fUML
CAVEAT fUML-1.4 EXCLUDES Connector and StructuredClassifier fUML-1.4 Connector, StructuredClassifier fUML
CAVEAT fUML-1.4 EXCLUDES Constraint fUML-1.4 Constraint fUML
CAVEAT fUML-1.4 EXCLUDES DataType::ownedOperation fUML-1.4 DataType, DataType::ownedOperation fUML
CAVEAT fUML-1.4 EXCLUDES EncapsulatedClassifier fUML-1.4 EncapsulatedClassifier fUML
CAVEAT fUML-1.4 EXCLUDES Exception fUML-1.4 Exception fUML
CAVEAT fUML-1.4 EXCLUDES ExceptionHandler fUML-1.4 ExceptionHandler fUML
CAVEAT fUML-1.4 EXCLUDES Expression fUML-1.4 Expression fUML
CAVEAT fUML-1.4 EXCLUDES InstanceSpecification::specification fUML-1.4 InstanceSpecification, InstanceSpecification::specification fUML
CAVEAT fUML-1.4 EXCLUDES Interface fUML-1.4 Interface fUML
CAVEAT fUML-1.4 EXCLUDES InterfaceRealization fUML-1.4 InterfaceRealization fUML
CAVEAT fUML-1.4 EXCLUDES InterruptibleRegion fUML-1.4 InterruptibleRegion fUML
CAVEAT fUML-1.4 EXCLUDES Interval, TimeConstraint, DurationConstraint fUML-1.4 Interval, TimeConstraint, DurationConstraint fUML
CAVEAT fUML-1.4 EXCLUDES InvocationAction::onPort fUML-1.4 InvocationAction::onPort fUML
CAVEAT fUML-1.4 EXCLUDES JoinNode::joinSpec fUML-1.4 JoinNode, JoinNode::joinSpec fUML
CAVEAT fUML-1.4 EXCLUDES Model fUML-1.4 Model fUML
CAVEAT fUML-1.4 EXCLUDES ObjectNode::inState fUML-1.4 ObjectNode, ObjectNode::inState fUML
CAVEAT fUML-1.4 EXCLUDES ObjectNode::transformation and ObjectNode::selection fUML-1.4 ObjectNode, ObjectNode::transformation, ObjectNode::selection fUML
CAVEAT fUML-1.4 EXCLUDES ObjectNode::upperBound fUML-1.4 ObjectNode, ObjectNode::upperBound fUML
CAVEAT fUML-1.4 EXCLUDES OpaqueAction fUML-1.4 OpaqueAction fUML
CAVEAT fUML-1.4 EXCLUDES OpaqueExpression and OpaqueExpression fUML-1.4 OpaqueExpression
CAVEAT fUML-1.4 EXCLUDES Operation::datatype Operation, Operation::datatype fUML
CAVEAT fUML-1.4 EXCLUDES Operation::interface fUML-1.4 Operation, Operation::interface fUML
CAVEAT fUML-1.4 EXCLUDES Operation::precondition, Operation::postcondition and Operation::bodyCondition fUML-1.4 Operation, Operation::precondition, Operation::postcondition and Operation::bodyCondition fUML
CAVEAT fUML-1.4 EXCLUDES Operation::raisedException fUML-1.4 Operation, Operation::raisedException fUML
CAVEAT fUML-1.4 EXCLUDES Operation::templateParameter fUML-1.4 Operation, Operation::templateParameter fUML
CAVEAT fUML-1.4 EXCLUDES PackageMerge fUML-1.4 PackageMerge fUML
CAVEAT fUML-1.4 EXCLUDES Parameter::defaultValue fUML-1.4 Parameter, Parameter::defaultValue fUML
CAVEAT fUML-1.4 EXCLUDES Parameter::parameterSet fUML-1.4 Parameter, Parameter::parameterSet fUML
CAVEAT fUML-1.4 EXCLUDES Port fUML-1.4 Port fUML
CAVEAT fUML-1.4 EXCLUDES Profile fUML-1.4 Profile fUML
CAVEAT fUML-1.4 EXCLUDES Property::defaultValue fUML-1.4
CAVEAT fUML-1.4 EXCLUDES Property::redefinedProperty fUML-1.4 Property::redefinedProperty
CAVEAT fUML-1.4 EXCLUDES Property::subsettedProperty fUML-1.4
CAVEAT fUML-1.4 EXCLUDES ProtocolStateMachine StateMachine, ProtocolStateMachine
CAVEAT fUML-1.4 EXCLUDES QualifierValue fUML-1.4 QualifierValue fUML
CAVEAT fUML-1.4 EXCLUDES RaiseExceptionAction fUML-1.4 RaiseExceptionAction fUML
CAVEAT fUML-1.4 EXCLUDES ReadLinkObjectEndAction, ReadLinkObjectEndQualifierAction and CreateLinkObjectAction fUML-1.4 ReadLinkObjectEndAction, ReadLinkObjectEndQualifierAction, CreateLinkObjectAction fUML
CAVEAT fUML-1.4 EXCLUDES ReadVariableAction, WriteVariableAction (and its subclasses) and ClearVariableAction fUML-1.4 ReadVariableAction, WriteVariableAction, ClearVariableAction fUML
CAVEAT fUML-1.4 EXCLUDES SendObjectAction fUML-1.4 SendObjectAction
CAVEAT fUML-1.4 EXCLUDES SequenceNode fUML-1.4 SequenceNode fUML
CAVEAT fUML-1.4 EXCLUDES StateMachine fUML-1.4 StateMachine, ProtocolStateMachine fUML
CAVEAT fUML-1.4 EXCLUDES Stereotype and Class::extension fUML-1.4 Stereotype, Class::extension fUML
CAVEAT fUML-1.4 EXCLUDES StringExpression fUML-1.4 StringExpression fUML
CAVEAT fUML-1.4 EXCLUDES StructuredActivityNode::variables fUML-1.4 StructuredActivityNode::variables fUML
CAVEAT fUML-1.4 EXCLUDES templates: TemplateSignature, TemplateParameter, TemplateableElement, ParameterableElement fUML-1.4 TemplateSignature, TemplateParameter, TemplateableElement, ParameterableElement fUML
CAVEAT fUML-1.4 EXCLUDES TimeEvent fUML-1.4 TimeEvent fUML
CAVEAT fUML-1.4 EXCLUDES UnmarshallAction fUML-1.4 UnmarshallAction fUML
CAVEAT fUML-1.4 EXCLUDES UseCase fUML-1.4 UseCase fUML
CAVEAT fUML-1.4 EXCLUDES ValuePin fUML-1.4 ValuePin fUML
CAVEAT fUML-1.4 EXCLUDES Variable fUML-1.4 Variable fUML
CONSTRAINT fUML-1.4 guards are NOT allowed on an ActivityEdge from a ForkNode fUML-1.4 ActivityEdge, ActivityEdge::guard, ForkNode fUML
GOTCHA, LIMITATION, WARNING fUML1.4: Cameo Simulation Toolkit: LIMITATION: CreateObjectAction is not allowed to instantiate a UML DataType or a SysMLValueType, only a Class as the CreateObjectAction::classifier! WORKAROUND: Use a ValueSpecificationAction instead with an instance. fUML-1.3, fUML-1.4 Class, CreateObjectAction, CreateObjectAction::classifier, DataType, AddStructuralFeatureValueAction, ValueSpecificationAction ValueType fUML, Foundational UML, execution, Magic Model Analyst [Cameo Simulation Toolkit]
TIP Fun fact: The normal boiling point of water isn't exactly 100 °C (at least not since 2019 when the definition of the Kelvin scale was changed to use the Boltzmann constant and decoupled from the triple point of water) thermodynamics, temperature, celsius, kelvin, Kelvins, water, boiling point, Boltzmann constant
GOTCHA, ISSUE, TOOL 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! Constraint ConstraintBlock, MD:ConstraintParameter, constraint parameter SysML, MD SysML, Mathematica, Wolfram, Cameo Systems Modeler, SysML Parametrics, calculation, CATIA Magic:v2021xR1
ANTI-PATTERN, ISSUE GOTCHA: A SysML/SysPhS Connector (or Modelica connection) in an electronics model is NOT a wire! It's a contract between connected Ports. SysPhS-1.1 Connector ItemFlow SysPhS, SysML, antipattern
TIP, TOOL GOTCHA: Cameo: If you run a parametrics calculation from an instance symbol in a diagram it will just show computed values in the simulation window; if you run from an Instance Table diagram it will populate the instance Slots with the computed values. SysML Parametric Diagram Magic Model Analyst [Cameo Simulation Toolkit], Cameo Systems Modeler, calculation, simulation
WARNING GOTCHA: Just because an InitialNode MAY have more than one outgoing ControlFlow and offers tokens on every outgoing ControlFlow does NOT mean that every outgoing edge takes a control token; InitialNode does NOT act like an implicit fork! InitialNode, implicit fork
ISSUE, MODELLING, TIP, WARNING 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! SysML-1.6, SysML-1.7, SysPhS-1.1, UML-2.5.1 State, State::entry, State::doActivity, State::exit, Behavior Modelica, MD SysML, MagicDraw SysML, Cameo Systems Modeler, SysPhS
GOTCHA, ISSUE, MODELLING, TIP, WARNING 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! SysML-1.6, SysML-1.7, SysPhS-1.1, UML-2.5.1 Property::redefinedProperty, Property, Generalization Modelica, MD SysML, MagicDraw SysML, Cameo Systems Modeler, SysPhS
GOTCHA, TOOL, WARNING GOTCHA: MagicDraw/Cameo: SysMLv1/UML: If you can extract model info using an OpaqueBehavior and you can see that in the Evaluation Mode in the Expression Editor it might not appear in a column in the Generic Table Diagram because the final Type is not set SysML-1.6, SysML-1.7 OpaqueBehavior MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, CATIA, MagicDraw derived property
GOTCHA, TOOL, WARNING GOTCHA: MagicDraw/Cameo: SysMLv1/UML: The 'name' of a Derived Property is parsed and sometimes displayed quite differently in column names. Be careful when mixing lower case and UPPER CASE in the middle of Derived Property names. SysML-1.6, SysML-1.7 MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, CATIA, MagicDraw derived property
GOTCHA, TOOL, WARNING GOTCHA: MagicDraw/Cameo: SysMLv1/UML: The argument context required to see results in Evaluation Mode for custom OpaqueBehavior scripts might not be the same as required for use in an Operation From Model for a Derived Property on a table column SysML-1.6, SysML-1.7 OpaqueBehavior MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, CATIA, MagicDraw derived property
CAVEAT, GOTCHA, TIP, WARNING GOTCHA: Mathematica v13.2+: Operations on "DegreesFahrenheit" °F and "DegreesCelsius" °C are now performed using Kelvins (K). CASE: Naive percentage operation gives answer relative to Kelvins. Use "DegreesCelsiusDifference"/"DegreesFahrenheitDifference"! Wolfram, Wolfram Language, Mathematica, temperature, celsius, Fahrenheit, kelvin, Kelvins, units, unit conversion
COMPLICATION, GOTCHA, TIP GOTCHA: Mathematica: Specific enthalpy conversion J/kg to Btu/lb: Does not consider a possible "total" enthalpy reference offset vs 0 °C or 0 °F respectively enthalpy, specific enthalpy, unit conversion, SI unit, Imperial unit, Btu, British Thermal Unit, Mathematica, Wolfram, HVAC&R, water condensation, humid air, air, air conditioner, Psychrometrics, US customary measurement system
COMPLICATION, TIP, WARNING GOTCHA: MD SysML/Cameo 19SP3 vs SysPhS-1.1: Export to Modelica does not see a 'doActivity' on a State (does not write it to a Modelica algorithm), you MUST use an 'entry'! SysML-1.6, SysML-1.7, SysPhS-1.1 State::doActivity, State::entry, State SysML, SysPhS, Systems Modeling Language, Cameo Systems Modeler, MD SysML, MagicDraw SysML
GOTCHA, TOOL GOTCHA: UML/SysML: Cameo Simulation Toolkit 19SP3: A [true] or [false] guard on an ActivityEdge MUST be a LiteralBoolean, not just characters typed in, or the evaluation may give unexpected or ill-defined results fUML-1.3, fUML-1.4, SysML-1.6, SysML-1.7, UML-2.5.1 ActivityEdge, ActivityEdge::guard, LiteralBoolean, LiteralBoolean::true, LiteralBoolean::false UML, SysML, Cameo Systems Modeler, Unified Modeling Language, Systems Modeling Language, Alf, fUML, Foundational UML
TIP How to prounce Guillemet, those French-looking sideways double chevron quote thingies UML and SysML use to indicate a stereotype «keyword» (amongst other things). Stereotype, «keyword» Systems Modeling Language, SysML, Unified Modeling Language, UML, Guillemet, language, English, American English, British English, pronunciation
EXPLANATION, GOTCHA, MODELLING HOWTO "cheat" with two-level white-boxing and tracking stereotypes because you just don't want that darn "extra" logical subsystem (conceptual subsystem) Block the systems engineers reckon you are supposed to use (and why it's easier to actually use one) SysML-1.6, SysML-1.7 Activity SysML Activity Diagram SysML, Systems Modeling Language, MBSE, SysMLv1, Webel::SE:«blackbox», Webel::SE:«whitebox», Webel::«whitebox:logical», functional analysis, Webel::logical handler, logical subsystem
QUESTION, TIP, TOOL HOWTO access custom (user-defined) Mathematica functions using Mathematica v13.2 as an external maths engine for SysML Parametrics (ConstraintBlocks) in Magic Model Analyst (Cameo Simulation Toolkit) versions 2021x, 2021xR1, 2022xR1 Constraint ConstraintBlock, SysML Parametric Diagram Wolfram, JLink, Mathematica, MagicDraw SysML, SysML, MD SysML, SysML Parametrics, mathematics, CATIA Magic, Magic Model Analyst [Cameo Simulation Toolkit], CATIA Magic:v2021x, CATIA Magic:v2021xR1, JDK, Java Development Kit, Java, CATIA Magic:v2022xGolden, CATIA Magic:v2022xRefresh1
TIP HOWTO get at and display "standard" Ports that have been unnecessarily hidden and suppressed in MD SysML 19SP3 and Cameo 19SP3 SysML-1.6 Port "standard" Port MD SysML, Cameo Systems Modeler, Systems Modeling Language, SysML
TIP HOWTO set a ValueSpecificationAction to use the * LiteralUnlimitedNatural to drive an 'insertAt' InputPin on an AddStructuralFeatureValueAction in Cameo Simulation Toolkit and Cameo Systems Modeler UML-2.5.1 InputPin, AddStructuralFeatureValueAction, AddStructuralFeatureValueAction::insertAt, ValueSpecification, ValueSpecificationAction, LiteralUnlimitedNatural Cameo Systems Modeler, Magic Model Analyst [Cameo Simulation Toolkit]
TIP, TOOL HOWTO use Mathematica v12.3.2 as an external maths engine for SysML Parametrics (ConstraintBlocks) in Magic Model Analyst (Cameo Simulation Toolkit) versions 2021x, 2021xR1, 2022xR1 Constraint ConstraintBlock, SysML Parametric Diagram Wolfram, JLink, Mathematica, MagicDraw SysML, SysML, MD SysML, SysML Parametrics, mathematics, CATIA Magic, Magic Model Analyst [Cameo Simulation Toolkit], CATIA Magic:v2021x, CATIA Magic:v2021xR1, JDK, Java Development Kit, Java
TIP, TOOL HOWTO: MagicDraw/Cameo: v2022Refresh1: JDK 11 download compatible with the modelling tools AND Apple Silicon (ARM) machines (such as M1 Max) Constraint ConstraintBlock, SysML Parametric Diagram MagicDraw SysML, CATIA Magic, Magic Model Analyst [Cameo Simulation Toolkit], CATIA Magic:v2021x, CATIA Magic:v2021xR1, JDK, Java Development Kit, Java, ARM Architecture, M1 Max, Apple Silicon, CATIA Magic:v2022xGolden, CATIA Magic:v2022xRefresh1
CAVEAT, DISPLAY, TOOL HSUV trail slide: Figure D.4: IBD: Could not show Connector typed by an anonymous Association as 'connectorName:' with trailing colon Association, Connector, Type HSUV sample problem Cameo Systems Modeler, MagicDraw SysML, MagicDraw UML, anonymous
ASSERTION Humans work well with natural language: Many stakeholders – including those who are not necessarily familiar with UML or SysML modelling symbols and diagrams - benefit enormously from having plain text in diagrams side-by-side with graphics. Requirement Webel Parsing Analysis, parsing analysis, WPA:«document», WPA:«snippet»
ASSERTION, TIP If an abstract Block or Class in a domain model has Associations to Blocks or Classes that are not also abstract, it's often a hint that you have not identified a correct abstraction layer. Association, Class, Classifier::isAbstract Block Webel Best Practice
TIP If instances of Blocks “communicate” with each other use an Association between them. Association Block Webel Best Practice
CONVENTION, NAMING If using "French style" post-adjective naming in English use a trailing underscore after the noun and before the adjective or qualifier: Vin_rouge, Cable_digital. Can be combined with TLA acronyms: Player_DVD. NamedElement::name, Class Block Webel Best Practice
TIP If you are using Blocks (not InterfaceBlocks) to Type your Ports just use "manual" feature-by feature direction inversion to achieve type conjugation (and you can even use a ~ tilde prefix) Port, TypedElement, TypedElement::type conjugation, Block
ASSERTION In a control loop, the 'got' (sensed) value is not in necessarily exactly the same as the actual, physical value being controlled! Typically it will be limited to a certain performance accuracy (and an intrinsic accuracy limit due to the number of bits). control loop, aim value, got value
DISPLAY, TIP In a SysML Activity Diagram a control flow may be notated with a dashed line and stick arrowhead; this helps distinguish a ControlFlow from an ObjectFlow symbol. SysML-1.6 ControlFlow SysML control flow notation, SysML Activity Diagram
TIP In general, the SysML DirectedFeature approach is more powerful and the notation is cleaner than UML provided/required Interfaces. Prefer SysML DirectedFeatures unless you have a really good reason to use Interfaces! SysML-1.6 provided Interface, required Interface, ball-and-socket, lollipop DirectedFeature, FeatureDirectionKind::provided, FeatureDirectionKind::required, FeatureDirectionKind::providedrequired Webel Best Practice
TOOL In MagicDraw SysML or Cameo Systems Modeler if you drag a Classifier onto an Association or Connector, it will in fact create a SysML ItemFlow not a UML InformationFlow InformationFlow, InformationFlow::conveyed ItemFlow MagicDraw SysML, Cameo Systems Modeler
CAPABILITY, FEATURE, TIP, TOOL In MagicDraw/Cameo an assigned stereotype of a Classifier that types an instance-like element (such as a part Property) "shines through" unless it has an instance-level stereotype assigned. This is sometimes called a "secondary stereotype". Diagram, Property, symbol, Stereotype part property MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler, translucency, secondary stereotype, SysML, Systems Modeling Language, UML, Unified Modeling Language
CAPABILITY, FEATURE, TIP In MagicDraw/Cameo if the Type of a Property has a Composite Structure Diagram or Internal Block Diagram defined it will act as the default hyperlink target for the Property Diagram, Property, symbol part property MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler
CAPABILITY, TOOL In MagicDraw/Cameo one can "call-out" many element properties (and metamodel properties) into a Note using the Edit Compartments context menu item Note MagicDraw SysML, MagicDraw UML, Cameo Systems Modeler
CAPABILITY, TOOL In MagicDraw/Cameo one can display many element properties (and metamodel properties) directly in compartments on most element symbols Note MagicDraw SysML, MagicDraw UML, Cameo Systems Modeler
CAPABILITY, FEATURE, TIP In MagicDraw/Cameo one can just drag the IBD or BDD of a Block from the model browser onto parts that are typed by that Block to make them the default hyperlink target for that part (so one can just "open the parts up" recursively to navigate the system). Diagram, Property, symbol part property MagicDraw UML, MagicDraw SysML, Cameo Systems Modeler
TOOL In MagicDraw/Cameo the dashed line symbol from a UML Comment or SysMLv1.x ElementGroup to an annotatedElement is called an 'anchor'. Comment, Comment::annotatedElement, MD:anchor
CAPABILITY, DISPLAY, STYLE In MagicDraw/Cameo the name and any stereotype keywords of a Classifier subject of a UseCase may be shown in the top-middle (not just top-left) UseCase::subject MagicDraw SysML, MagicDraw UML
CAVEAT, TOOL, WARNING In MagicDraw/Cameo the ProfileApplication relationship is only available in Profile Diagram menus ProfileApplication MagicDraw SysML, Cameo Systems Modeler
CONVENTION, STYLE In most Webel examples, the default is chosen to be 'out' if there is a single FlowProperty, so a Port with the type applied will act as a source. If an InterfaceBlock is used, then a Port typed by the conjugating ~InterfaceBlock will act as a sink. Webel Best Practice
DISPLAY, STYLE, TOOL In Package Diagrams and Block Definition Diagrams use the owner indicator display option for Classifier symbol headers to indicate the owner (except where a containment operator suffices). The mode 'Below Element Name' is preferred. Element::owner, owner path display SysML Block Definition Diagram, SysML Package Diagram Webel Best Practice, Cameo Systems Modeler, MagicDraw SysML