Elements
graph TD;
%% REQVIRE-AUTOGENERATED-DIAGRAM
%% Graph styling
classDef userRequirement fill:#D1C4E9,stroke:#7E57C2,stroke-width:2px;
classDef systemRequirement fill:#E1D8EE,stroke:#673AB7,stroke-width:1.5px;
classDef verification fill:#DCEDC8,stroke:#4CAF50,stroke-width:2px;
classDef folder fill:#FAFAFA,stroke:#9E9E9E,stroke-width:3px;
classDef file fill:#FFF8E1,stroke:#FFCA28,stroke-width:2px;
classDef default fill:#F5F5F5,stroke:#424242,stroke-width:1.5px;
subgraph 91eede421faaa553["📁 requirements/Functional/Operations"]
subgraph efce051cd2e037ec["📄 Constraints.md"]
3e506d76554b3740["Merge Type Compatibility Constraint"];
class 3e506d76554b3740 default;
click 3e506d76554b3740 "Constraints.html#merge-type-compatibility-constraint";
1dc0e8b76789ffce["Target Location Constraint"];
class 1dc0e8b76789ffce default;
click 1dc0e8b76789ffce "Constraints.html#target-location-constraint";
end
end
Merge Type Compatibility Constraint
Type compatibility rules for merging elements.
Details
Main Type Categories:
- Requirement types:
requirement, user-requirement
- Verification types:
test-verification, analysis-verification, inspection-verification, demonstration-verification
- Refinement types:
constraint, behavior, specification
- Other: Any element type not in above categories
Compatibility Rules:
- Source and target must be in the same main type category
- Subtype differences within a category are allowed (e.g.,
user-requirement can merge into requirement)
- Merging across categories is forbidden (e.g., requirement cannot merge into verification)
Error Messages:
- When incompatible: “Cannot merge {source_type} into {target_type}: type mismatch”
Metadata
Relations
Target Location Constraint
Validation rules for target paths in element operations.
Path Validation:
- Path not excluded by .gitignore/.reqvireignore
- Maximum 10 subdirectory nesting depth
- Path must be accessible and writable
Auto-creation:
- Create missing target files with
# Elements header
Error Reporting:
- Clear message indicating which constraint was violated
Metadata
Relations