ReqIF and SysML v2 Mapping
In ReqIF exchange documents, all elements have unique identifiers. SysML v2 currently does not have a standard way to assign unique identifiers to SysML v2 elements in textual notation that do not rely on qualified names and thus survive element renames or moves to another parent.
To preserve these unique ReqIF identifiers for round-trip conversions, the ReqIF
module relies on SysML v2’s metadata for persistence. Every imported element carries a
@reqif metadata tag with its original ReqIF IDENTIFIER and LAST-CHANGE; some
attributes also carry @reqif_* markers for tracking datatype references. This
metadata comes from SysideReqIF.sysml library that syside reqif init drops into
the workspace.
Note
SysML v2 is a significantly more expressive language and exchange format than ReqIF, which can lead to some semantic data loss when exporting SysML v2 content to ReqIF.
The mapping breaks down into three groups: datatypes and attributes, type templates, and the specifications/objects/relations authored against those templates.
Datatypes and Attributes
ReqIF |
SysML v2 |
Notes |
|---|---|---|
Scalar |
No standalone element. Carried as an |
SysML v2 has no ergonomic way to define custom scalar datatypes, so the
datatype’s identity and per-kind props ( |
|
|
|
|
|
Tagged with |
|
|
A default value is written as |
|
|
Uses the binding form |
Type Templates
ReqIF *Type elements act as templates for the specifications, objects, relations and
groups that reference them. Each becomes a SysML v2 definition tagged with the
kind-specific prefix from the SysideReqIF library.
ReqIF |
SysML v2 |
Notes |
|---|---|---|
|
|
Document template. |
|
|
Requirement template. |
|
|
Traceability-relation template. Concrete (not |
|
|
Traceability-context template. |
Specifications, Objects and Relations
These are the elements actually authored against the templates above.
ReqIF |
SysML v2 |
Notes |
|---|---|---|
|
|
Hosts the top-level |
|
|
Hosts any nested |
|
|
Distributing the nodes across their parent |
|
|
Owns the |
|
|
Source/target |