ReqIF tools
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 theSysideReqIF.sysmllibrary 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 andlast_changetimestamps 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:
Working with ReqIF: Suggested way of working with ReqIF imports and exports
Preconditions: What the module expects for a successful import or export
ReqIF and SysML v2 mapping: How ReqIF concepts map to SysML v2
Linking an existing ontology: Mapping ReqIF onto an ontology you already have
Known limitations: What is still missing from the functionality
API reference: Full
syside.reqifPython API reference (deprecated, see below)
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.