This issue points out that Quantity is a distinct concept from either Unit or
Dimension, even though SysML currently defines stereotypes only for Unit,
Dimension, and a ValueType to type values that may have a unit and/or
dimension.
To resolve these issues, and to clarify terminology to be used in a consistent way
not only for SysML, but for its alignment and close partnership with MARTE, an
extensive effort has been made to model the underlying concepts as defined by
the most recent and authoritative sources. A new Annex C.5 provides a
comprehensive model, expressed in terms of SysML blocks, for the interrelated
concepts pertaining to quantities, units of measure, conversions among units,
and dimensional analysis within systems of quantities.
The new Annex C.5 is non-normative and is intended to fill two basic roles. One
is a detailed conceptual model of the quantities domain, that, with the aid of
examples built as instances of the blocks in this model, thoroughly expresses
and defines the concepts which the SysML quantities-related stereotypes were support for capturing and documenting systems of units and quantities
comprehensively in a form suitable for dimensional analysis.
SysML 1.0 deliberately provided only minimal stereotypes to identify and name
units and/or dimensions associated with value types. It did not provide further
support for defining and documenting them including their relationships to each
other. Practical use of this modest capability has shown that comprehensive
documentation of units and related concepts is an important requirement for
quantity values to be defined unambiguously and used in consistent ways.
Although Annex C.5 provides much more comprehensive support for defining
and organizing unit and quantity-related concepts in reusable domain-specific
libraries than SysML 1.0 did, minimal changes are made to the normative parts of
SysML 1.x for incorporating the new concepts. The principal change is to
rename the current SysML stereotype “Dimension” to “QuantityKind.” The
current definition of Dimension in SysML 1.1 as ”a kind of quantity that may be
stated by means of defined units,” closely matches the QuantityKind concept in
Annex C.5, while Dimension is reserved for a more specialized relationship
between quantity kinds in the context of a system of quantities. To align with this
terminology and avoid any misleading implications of the current name, this
resolution makes a single name change from the SysML 1.1 Dimension
stereotype to QuantityKind and relaxes the restrictive constraints on Dimension
that no longer apply to the QuantityKind concept.
In addition to issue 12219, this resolution addresses two issues previously
deferred in SysML 1.1:
Issue 11600, “SysML dimensions,” pointed out inconsistencies in Unit,
Dimension, and ValueType constraints and statements. The relaxation of
constraints on Dimension (now renamed QuantityKind), Unit, and ValueType,
and related changes to the text included in the resolution for this issue should
resolve those inconsistencies. The resolution for Issue 11600 is therefore being
merged into the resolution for this issue.
Issue 12128, “8.3.2.9 Unit, 8.3.2.10 ValueType,” proposed a new metamodel
based on a class hierarchy for Unit and ValueType to express “the underlying
physical and mathematical principles of a dimensioned quantity represented by a
value subject to chosen units.” Since the resolution for this issue includes an
overall roadmap for the same goals and includes changes to Unit, ValueType,
and QuantityKind with optional support for defining systems of units and
quantities, the resolution of this issue encompasses a resolution for Issue 12128
as well. Although the present resolution does not adopt the solution proposed in Issue 12128, the scope of issue 12219 subsumes that of 12128 and provides
multiple ways to support the key concepts requested in 12128, as part of
incremental and compatible changes for SysML 1.x.