Constraints¶
SysML constraint def declarations in src/.
memo::architecture::functional::constraints¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
LockoutIntervalConstraint |
constraint def |
Constraint that checks lockout interval constraint. | architecture/functional/constraints/memo_constraints.sysml |
MaxResponseTimeConstraint |
constraint def |
Constraint that checks max response time constraint. | architecture/functional/constraints/memo_constraints.sysml |
memo::core::common¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
MemoConstraint |
constraint def |
General constraint foundation. Executable consistency rules and reusable quantitative constraints are both native constraint defs. | core/common/memo_common.sysml |
memo::core::consistency_rules¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
MemoConsistencyRule |
constraint def |
Constraint that checks memo consistency rule. | core/consistency_rules/consistency_rules.sysml |
memo::rules::closure¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
AssetThreatLinkRule |
constraint def |
Constraint that checks asset threat link rule. | rules/closure/closure_rules.sysml |
BenefitRiskWeighedRule |
constraint def |
Constraint that checks benefit risk weighed rule. | rules/closure/closure_rules.sysml |
BoundsDetectionConfirmedRule |
constraint def |
Automatic boundary detection proposes; a reviewer disposes. An unconfirmed machine guess must never reach a design review looking like an engineering decision. | rules/closure/closure_rules.sysml |
ChangeApprovalRule |
constraint def |
Constraint that checks change approval rule. | rules/closure/closure_rules.sysml |
ChangeImpactRule |
constraint def |
Constraint that checks change impact rule. | rules/closure/closure_rules.sysml |
ChangeTraceRule |
constraint def |
Constraint that checks change trace rule. | rules/closure/closure_rules.sysml |
CharacteristicReachesHazardRule |
constraint def |
Constraint that checks characteristic reaches hazard rule. | rules/closure/closure_rules.sysml |
ControlInvokesFunctionRule |
constraint def |
Interactive UI is where use error happens (IEC 62366-1), so a control that reaches no system function is either dead UI or unmodelled UI. The interactive-form restriction lives in the predicate because it spans several enum values. | rules/closure/closure_rules.sysml |
EvidenceProductionRule |
constraint def |
Constraint that checks evidence production rule. | rules/closure/closure_rules.sysml |
FunctionInChainRule |
constraint def |
A function that no edge reaches is not in the chain. This was a TypeScript rule (BV-002) applying to every action usage in the model, which reported a scenario and a flow step as defects for not being wired like a function.… | rules/closure/closure_rules.sysml |
HazardHasSituationRule |
constraint def |
Written from the classification in plans/memo-rules-domain-trace-and-editor.md (Step 5): each checks a property the model carries, and each traces to the clause it enforces. | rules/closure/closure_rules.sysml |
HazardMitigationRule |
constraint def |
Constraint that checks hazard mitigation rule. | rules/closure/closure_rules.sysml |
HazardSeverityRule |
constraint def |
Constraint that checks hazard severity rule. | rules/closure/closure_rules.sysml |
InitialRiskMatrixRule |
constraint def |
Constraint that checks initial risk matrix rule. | rules/closure/closure_rules.sysml |
LogicalFunctionAllocationRule |
constraint def |
Constraint that checks logical function allocation rule. | rules/closure/closure_rules.sysml |
LogicalInterfaceDirectionRule |
constraint def |
Constraint that checks logical interface direction rule. | rules/closure/closure_rules.sysml |
MisuseReachesSituationRule |
constraint def |
ISO 14971 clauses 5.2, 5.3 and 7.4 on the links the model already has: a misuse is not an item of the risk chain, so it reaches the chain by causes (the risk can start at any element: an operational flow, an FMEA row, a use error, a misuse); a safety-related characteristic r… |
rules/closure/closure_rules.sysml |
ResidualRiskAcceptabilityRule |
constraint def |
Constraint that checks residual risk acceptability rule. | rules/closure/closure_rules.sysml |
ResidualRiskEvaluatedRule |
constraint def |
Constraint that checks residual risk evaluated rule. | rules/closure/closure_rules.sysml |
RiskAcceptabilityRule |
constraint def |
Constraint that checks risk acceptability rule. | rules/closure/closure_rules.sysml |
RiskControlVerificationRule |
constraint def |
Constraint that checks risk control verification rule. | rules/closure/closure_rules.sysml |
RiskEstimateRule |
constraint def |
Constraint that checks risk estimate rule. | rules/closure/closure_rules.sysml |
SafetyClassCVerificationRule |
constraint def |
Constraint that checks safety class cverification rule. | rules/closure/closure_rules.sysml |
ScreenCaptureProvenanceRule |
constraint def |
A screenshot with no build behind it is undated design intent, not evidence of what the device does. | rules/closure/closure_rules.sysml |
SituationLeadsToHarmRule |
constraint def |
Constraint that checks situation leads to harm rule. | rules/closure/closure_rules.sysml |
SoupAnomaliesRule |
constraint def |
Constraint that checks soup anomalies rule. | rules/closure/closure_rules.sysml |
SoupIdentifiedRule |
constraint def |
Constraint that checks soup identified rule. | rules/closure/closure_rules.sysml |
SoupRequirementRule |
constraint def |
Constraint that checks soup requirement rule. | rules/closure/closure_rules.sysml |
SwComponentReqRule |
constraint def |
Constraint that checks sw component req rule. | rules/closure/closure_rules.sysml |
SwComponentSafetyClassRule |
constraint def |
Constraint that checks sw component safety class rule. | rules/closure/closure_rules.sysml |
SwReqTraceRule |
constraint def |
Constraint that checks sw req trace rule. | rules/closure/closure_rules.sysml |
SysReqTraceRule |
constraint def |
Constraint that checks sys req trace rule. | rules/closure/closure_rules.sysml |
ThreatMitigationRule |
constraint def |
Constraint that checks threat mitigation rule. | rules/closure/closure_rules.sysml |
UiElementDesignRecordRule |
constraint def |
The load-bearing traceability rule. A UI element that is not chrome must reach a design record — a requirement it satisfies, or an action it triggers. Chrome must be DECLARED decoration; an element left unclassified fails rather than passing as scenery. |
rules/closure/closure_rules.sysml |
UnitDecompositionRule |
constraint def |
Constraint that checks unit decomposition rule. | rules/closure/closure_rules.sysml |
UserNeedIdentifiesUserRule |
constraint def |
A user need names the user whose need it is. IEC 62366-1's user profile is typed on the User element — population, impairments, training, qualification — so the need points at that element rather than restating any of it in prose, which is what userPopulationReference was do… |
rules/closure/closure_rules.sysml |
VerificationCaseMethodRule |
constraint def |
Constraint that checks verification case method rule. | rules/closure/closure_rules.sysml |
VerificationCaseTargetRule |
constraint def |
Constraint that checks verification case target rule. | rules/closure/closure_rules.sysml |
memo::rules::crosslayer¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
ReqToArchTraceRule |
constraint def |
Constraint that checks req to arch trace rule. | rules/crosslayer/cross_layer_rules.sysml |
RiskToReqTraceRule |
constraint def |
Constraint that checks risk to req trace rule. | rules/crosslayer/cross_layer_rules.sysml |
memo::rules::ontology¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
AllocatedToSourceKindRule |
constraint def |
Constraint that checks allocated to source kind rule. | rules/ontology/ontology_invariants.sysml |
AllocatedToTargetKindRule |
constraint def |
Constraint that checks allocated to target kind rule. | rules/ontology/ontology_invariants.sysml |
AlternateScenarioHasBaseRule |
constraint def |
The predicate here named three features that do not exist — variantKind, baseScenario, variationPoint — so it could never fail, and a rule that cannot fail is coverage on paper only.… |
rules/ontology/ontology_invariants.sysml |
BindingEndsAgreeInDirectionRule |
constraint def |
A port says in or out (or inout), and a ~ conjugates it. That is the only place direction is written: an exchange's own direction was the same fact a second time, and nothing checked the two agreed.… |
rules/ontology/ontology_invariants.sysml |
BindsToInterfaceEndKindRule |
constraint def |
Constraint that checks binds to interface end kind rule. | rules/ontology/ontology_invariants.sysml |
CausesCauseKindRule |
constraint def |
Causes' ends are untyped because its CauseKind spans parts and items (memo_fmea.sysml). These carry what the types cannot. | rules/ontology/ontology_invariants.sysml |
CausesEffectKindRule |
constraint def |
Constraint that checks causes effect kind rule. | rules/ontology/ontology_invariants.sysml |
ComponentExchangeSourceEndpointKindRule |
constraint def |
Constraint that checks component exchange source endpoint kind rule. | rules/ontology/ontology_invariants.sysml |
ComponentExchangeTargetEndpointKindRule |
constraint def |
Constraint that checks component exchange target endpoint kind rule. | rules/ontology/ontology_invariants.sysml |
ComponentFunctionAllocatedRule |
constraint def |
What makes ComponentFunction a definition of its own rather than an enum member on SystemFunction. An enum value cannot change a multiplicity, and "answerable to exactly one component" is the whole content of the concept. | rules/ontology/ontology_invariants.sysml |
ComposesChildKindRule |
constraint def |
Constraint that checks composes child kind rule. | rules/ontology/ontology_invariants.sysml |
ComposesParentKindRule |
constraint def |
Constraint that checks composes parent kind rule. | rules/ontology/ontology_invariants.sysml |
ContainmentAcyclicRule |
constraint def |
Constraint that checks containment acyclic rule. | rules/ontology/ontology_invariants.sysml |
CriticalTaskValidatedRule |
constraint def |
Constraint that checks critical task validated rule. | rules/ontology/ontology_invariants.sysml |
CrossesTrustBoundaryEndKindRule |
constraint def |
Constraint that checks crosses trust boundary end kind rule. | rules/ontology/ontology_invariants.sysml |
DerivationGapRule |
constraint def |
Constraint that checks derivation gap rule. | rules/ontology/ontology_invariants.sysml |
ExchangeHasFlowRule |
constraint def |
Constraint that checks exchange has flow rule. | rules/ontology/ontology_invariants.sysml |
ExchangeLeavesOutEntersInRule |
constraint def |
Constraint that checks exchange leaves out enters in rule. | rules/ontology/ontology_invariants.sysml |
FunctionDecomposesIntoFunctionsRule |
constraint def |
Constraint that checks function decomposes into functions rule. | rules/ontology/ontology_invariants.sysml |
LogicalContainsLogicalRule |
constraint def |
Constraint that checks logical contains logical rule. | rules/ontology/ontology_invariants.sysml |
ModelDeclaresSystemRule |
constraint def |
Constraint that checks model declares system rule. | rules/ontology/ontology_invariants.sysml |
NestedPartConnectedRule |
constraint def |
Constraint that checks nested part connected rule. | rules/ontology/ontology_invariants.sysml |
PatientContactCharacterizedRule |
constraint def |
Constraint that checks patient contact characterized rule. | rules/ontology/ontology_invariants.sysml |
PerformsPerformerKindRule |
constraint def |
Constraint that checks performs performer kind rule. | rules/ontology/ontology_invariants.sysml |
PhysicalContainsPhysicalRule |
constraint def |
Constraint that checks physical contains physical rule. | rules/ontology/ontology_invariants.sysml |
PrecedesEndKindRule |
constraint def |
Constraint that checks precedes end kind rule. | rules/ontology/ontology_invariants.sysml |
ReleaseSelectionConsistentRule |
constraint def |
Constraint that checks release selection consistent rule. | rules/ontology/ontology_invariants.sysml |
ReleaseSelectsOneVariantRule |
constraint def |
Every variation point of the item a record is a release of is resolved to ONE variant, and no variation point anywhere has two. Two halves, one rule: at most one -- any record, any status: a record that selects the features of two variants of one point describes no product.… | rules/ontology/ontology_invariants.sysml |
ReleaseSelectsProposedVariantRule |
constraint def |
A release record selects features (#SelectsFeature), and through them the variants that realize them (#RealizesFeature, variant to feature).… |
rules/ontology/ontology_invariants.sysml |
RuntimeTracesToModuleRule |
constraint def |
Constraint that checks runtime traces to module rule. | rules/ontology/ontology_invariants.sysml |
SafetyCriticalFunctionVerifiedRule |
constraint def |
Constraint that checks safety critical function verified rule. | rules/ontology/ontology_invariants.sysml |
SafetyCriticalStepVerifiedRule |
constraint def |
A flow's step is its own position of a function (action step :> fn;), and evidence is scoped to the position: a test of the function, or of another step, does not count for it. So a step whose function is safety-critical needs a verification case of its own.… |
rules/ontology/ontology_invariants.sysml |
SatisfiedBySourceKindRule |
constraint def |
Constraint that checks satisfied by source kind rule. | rules/ontology/ontology_invariants.sysml |
SatisfiedByTargetKindRule |
constraint def |
Constraint that checks satisfied by target kind rule. | rules/ontology/ontology_invariants.sysml |
SoftwareContainsSoftwareRule |
constraint def |
CR-ONT-075 above is this rule for functions; these are the same shape for the other families. The invariant is FAMILY homogeneity, not type homogeneity: a System containing a Subsystem containing a LogicalComponent is correct decomposition even though all three types differ, a… | rules/ontology/ontology_invariants.sysml |
SosUseCaseIncludesSystemUseCaseRule |
constraint def |
A use case is at the level of its subject: one whose subject is a SystemOfSystems is a clinical procedure, one whose subject is a System is a system use case. There is no kind for either; the level is read from the subject, and the subject from hasSubject.… |
rules/ontology/ontology_invariants.sysml |
UseErrorTracesToHazardRule |
constraint def |
Constraint that checks use error traces to hazard rule. | rules/ontology/ontology_invariants.sysml |
VerifiedByTargetKindRule |
constraint def |
Constraint that checks verified by target kind rule. | rules/ontology/ontology_invariants.sysml |
memo::rules::quantitative¶
| Name | SysML kind | Description | Source |
|---|---|---|---|
HazardMaxControlsRule |
constraint def |
Constraint that checks hazard max controls rule. | rules/quantitative/quantitative_rules.sysml |
ModelConstraintHoldsRule |
constraint def |
The require, assume and assert constraints a model declares are claims about its own values. A function evaluates them (validator/model-constraints.ts): names resolve from the owning element, its package, then a unique short name, and a quantity compares as a quantity.… |
rules/quantitative/quantitative_rules.sysml |
SoftwareComponentWcetWithinDeadlineRule |
constraint def |
Constraint that checks software component wcet within deadline rule. | rules/quantitative/quantitative_rules.sysml |
SwComponentMaxInterfacesRule |
constraint def |
Constraint that checks sw component max interfaces rule. | rules/quantitative/quantitative_rules.sysml |