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]

This page identifies a possible issue, inconsistency, concern, error, or bug!
One of the ways Webel IT Australia helps promote tools, technologies, and languages is by donating a lot of time identifying, tracking, and reporting potential issues, in order to help vendors and developers improve the tools and technologies. In some cases, we also offer workarounds and advice for users. All issues tracked on our public site are offered most constructively and with sincerest gratitude to the tool vendors and technology developers.
DISCLAIMER: Vendors do not officially endorse issue analysis by Webel IT Australia.
Icon class
icon_class
far fa-sticky-note
icon_class_computed
far fa-sticky-note
Note kind
Policy level
Specification keywords
SysMLv2 keywords
Keywords

This is not necessarily a Cameo bug, but it isn't so clear how to achieve displaying values assigned to attributes for quantities with units in custom table columns.

Refer to the example under Cameo Help > Other Documentation > SysMLv2 Plugin UserGuide and the section Views customizations' (p.354 as of Cameo 2026xHF2). That example with this part does not work for feature values with units:

 ... as SysML::Systems::AttributeUsage).ownedRelationship as
    KerML::Kernel::FeatureValue).value
The table on reload displays nothing! It works fine with values without units. Note that values with units ARE shown correctly in this Generic Table column:
 view 'Owned Element' : ColumnByFeatureView :> column {
  ref item :>> columnFeature = ownedElement meta Feature;
}
Under the hood a value assigned to a ScalarQuantityValue attribute is an OperatorExpression. There is likely some way of leveraging the following test to access the evaluated expression (where getLength is the callback returning a FeatureValue.value):
if getLength(rowElement) @KerML::Kernel::OperatorExpression ?
  (getLength(rowElement) as KerML::Kernel::OperatorExpression).result 
   else ...
The test hits, but accessing .result still does not display the value with units. If you HACK that test and try to return say 1.11 [m] it only display the magnitude part 1.11 anyway.
TBD
Relates to
Related notes
Related notes (backlinks)
Related snippets (extracts)
Visit also
Visit also (backlinks)