ReqIF tools

Labs

Syside Automator provides a ReqIF module for converting requirements between ReqIF and SysML v2 models.

Note

The ReqIF module ships as an optional [reqif] extra and is not installed by default. Add it with pip install 'syside[reqif]' (or, with uv, uv pip install 'syside[reqif]'); see Install Automator for the surrounding install steps. Running syside reqif <subcmd> without the extra exits with a message pointing back to the same install command, so the failure mode is self-healing.

The module is accessible through syside reqif CLI and contains the following commands:

  • init: Initialize the current workspace by extracting the SysideReqIF.sysml library required for ReqIF interoperability. Re-run it to upgrade an existing copy to the library shipped with the current Syside release.

  • import: Import a ReqIF exchange document into a SysML v2 model. Either creates new elements or merges changes into existing ones.

  • lock: Assign stable identifiers and last_change timestamps to newly-authored ReqIF elements so they survive the round-trip back to ReqIF.

  • check: Run validation checks against a ReqIF document or the current SysML v2 workspace without producing any output.

  • link: Map a ReqIF document’s type-level concepts onto already-existing SysML v2 elements, instead of generating a model from the document. See Linking an existing ontology.

  • export: Write the workspace’s ReqIF-tagged elements out as a ReqIF or ReqIFz exchange document.

Learn about:

Deprecated since version 0.11.0: The syside.reqif Python API is deprecated in favour of the syside reqif CLI. Every public name in the module now emits a DeprecationWarning when read, and all of them will be removed in 0.12.0 or 1.0.0, whichever comes first. Scripted use should invoke the CLI as a subprocess.