-
Key: SYSML21-712
-
Status: open
-
Source: Diversitas Systems Engineering Ltd ( Geoffrey Tullener)
-
Summary:
CaseDefinition::deriveCaseDefinitionObjectiveRequirement: objectiveRequirement navigates properties that do not exist Where: SysML 2.0 (formal/2026-03-02), ยง8.3.22.2 CaseDefinition (also 8.3.22.3 CaseUsage), PDF p.399 (printed 367) Published OCL: objectiveRequirement = let objectives: OrderedSet(RequirementUsage) = featureMembership->selectByKind(ObjectiveMembership).ownedRequirement in if objectives->isEmpty() then null else objectives->first().ownedObjectiveRequirement endif Correction: objectiveRequirement = let objectives : OrderedSet(RequirementUsage) = featureMembership->selectByKind(ObjectiveMembership).ownedObjectiveRequirement->asOrderedSet() in if objectives->isEmpty() then null else objectives->first() endif Proof of fault: ObjectiveMembership has no ownedRequirement, and RequirementUsage has no ownedObjectiveRequirement: neither navigation exists. Likely cause: Original error, replicated across a family. CaseDefinition and CaseUsage rules are identical, both navigating the non-existent properties. Nearest rule: CaseUsage::deriveCaseUsageObjectiveRequirement (SysML 2.0 PDF p.401 (printed 369)): objectiveRequirement = let objectives: OrderedSet(RequirementUsage) = featureMembership->selectByKind(ObjectiveMembership).ownedRequirement in if objectives->isEmpty() then null else objectives->first().ownedObjectiveRequirement endif Same defect in: CaseDefinition::deriveCaseDefinitionObjectiveRequirement, CaseUsage::deriveCaseUsageObjectiveRequirement Basis of fix: The prose names the one property that exists (ownedObjectiveRequirement).
Provenance: found by deterministic checks of the OCL against the metamodel and OMG's reference implementation; the argument was reviewed and challenged by the reporter before filing. Further information on these methods is available on request.
Not blocking: we are proceeding with the correction above in our own implementation.
-
Reported: SysML 2.0 — Tue, 27 Oct 2026 18:44 GMT
-
Updated: Fri, 30 Oct 2026 21:27 GMT
SYSML21 — objectiveRequirement navigates properties that do not exist
- Key: SYSML21-712
- OMG Task Force: Systems Modeling Language (SysML) 2.1 RTF