Import/Export ReqIF

Requirements viewpoint cannot export ReqIF by itself, however there seems to be ongoing work on Atica4Capella - Requirement management toolbox – an extension of Requirements VP that provides ReqIF export from Capella.

I’ve had the same error as the OP when importing ReqIF to Capella, it was caused by invalid XHTML issues like:

  • presence of data-XXX attributes in <a> tags
  • presence of <u> tags
  • nesting of <ul> and <ol> without wrapper <li> tags

All of these are valid in plain old HTML and were caused by copy & paste from a PDF, but they are not allowed in XHTML. Capella’s ReqIF importer should be more robust, or at least give a meaningful error message instead of confusing “no Module”.

I found the XHTML issues using VSCode with RedHat XML extension that validates ReqIF against XML schema. It works automatically if the ReqIF header contains at least this:

<REQ-IF
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://www.omg.org/spec/ReqIF/20110401/reqif.xsd"
    xmlns:xhtml="http://www.w3.org/1999/xhtml"
    xsi:schemaLocation="http://www.omg.org/spec/ReqIF/20110401/reqif.xsd http://www.omg.org/spec/ReqIF/20110401/reqif.xsd">

(the namespace prefix xhtml can be named differently depending on the exporting RM tool)

Another thing that breaks Capella’s fragile ReqIF importer is when the ReqIF.ForeignID attribute (defined as <ATTRIBUTE-DEFINITION-STRING>) values contain any non-numeric characters – it fails with “Load ReqIF resource - class java.lang.String cannot be cast to class java.math.BigInteger”. Tools like ReqView have a special checkbox for that in their ReqIF export for Capella.