Icon class icon_class far fa-sticky-note icon_class_computed far fa-sticky-note Note kind POLICY Specification keywords SysML-1.6 UML keywords Port SysMLv1.x keywords ~InterfaceBlock conjugation [HISTORICAL] HOWTO easily "hack" the SysML-1.6 ~InterfaceBlock conjugation and «~interfaceBlock» keywords in MagicDraw/Cameo. [NOW SUPPORTED 2024x Golden] 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) [HISTORICAL] MagicDraw/Cameo 19SP3: Does NOT yet support ~InterfaceBlock [NOW SUPPORTED in 2024x Golden] MagicDraw/Cameo 19SP3 still supports the DEPRECATED UML Port conjugation (but it is recommended here that you DO NOT use it, even though there might be future migration for such directly conjugated Ports). Until tool support for ~InterfaceBlock comes you have to make a decision: (1) Bake your own «~InterfaceBlock» then deal with clashes when tool support comes; (2) stick with the DEPRECATED UML conjugation (not nested-port friendly) and await migration. Relates to [HISTORICAL] UML-STYLE: Hybrid SUV example: Ports with required/provided Interfaces (Block Definition Diagram) [HISTORICAL] UML-STYLE: Hybrid SUV example: Ports with required/provided Interfaces (Internal Definition Diagram) REFERENCE: A.5 Humidifier: Webel: Block overview Overview of flowing quantities and Port types with flows IBD: Context for SimpleDomesticInverterAirCon - detailed Conjugation in SysML-1.7 is Type-based: InterfaceBlock, ~InterfaceBlock, and DirectedFeature Related notes [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) [TIP, WORKAROUND]{INFORMATIVE} [HISTORICAL] HOWTO easily "hack" the SysML-1.6 ~InterfaceBlock conjugation and «~interfaceBlock» keywords in MagicDraw/Cameo. [NOW SUPPORTED 2024x Golden] Related notes (backlinks) [ASSERTION, MODELLING, PATTERN, TIP]{EXPERIMENTAL} Webel: SysML1.7: Port contract matching is Feature-based, not Type-based. There's nothing particularly magical or special about use of an ~InterfaceBlock on a "conjugating" SysML Port, it's just a convenient way of managing one-to-one Feature matching! [ISSUE, MODELLING]{STRONG} SysPhS-1.1: Annex A.5: Humidifier: Use of UML-style direct Port conjugation not permitted since SysML-1.6, prefer ~InterfaceBlock type-based conjugation (example requires migration) [ASSERTION, MODELLING, NAMING, TIP]{INFORMATIVE} [HISTORICAL] SysML: Some users employed the ~ tilde prefix for a conjugated Port type long before it was introduced for ~InterfaceBlock and you MAY use it to name a regular Block that is not an ~InterfaceBlock [ISSUE, WARNING] In SysML the NOW DEPRECATED (since SysML-1.6) direct UML Port conjugation does not work consistently with SysML DirectedFeature and SysML FlowProperty on nested ports! [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) [TOOL, WARNING] MagicDraw/Cameo 19SP3 still supports the DEPRECATED UML Port conjugation (but it is recommended here that you DO NOT use it, even though there might be future migration for such directly conjugated Ports). [WARNING] Until tool support for ~InterfaceBlock comes you have to make a decision: (1) Bake your own «~InterfaceBlock» then deal with clashes when tool support comes; (2) stick with the DEPRECATED UML conjugation (not nested-port friendly) and await migration. [CAVEAT, TOOL]{INFORMATIVE} [HISTORICAL] MagicDraw/Cameo 19SP3: Does NOT yet support ~InterfaceBlock [NOW SUPPORTED in 2024x Golden] [WARNING] The mechanism for conjugated Ports has been changed in SysML 1.6, it now conjugates the Type! If you are using an InterfaceBlock to type a Port you can conjugate that 'original' on another Port by typing it with an ~InterfaceBlock. Related snippets (extracts) Visit also Visit also (backlinks) Flags