Document Import (PDF & Word)
Turn an existing specification — a PDF or Word (.docx) file — into ROPARC items. Unlike the spreadsheet and ReqIF flows in Import & Export, this reads a whole prose document, splits it into blocks, and classifies each block with rules you control. Open it from the items list header: Import → Document (PDF/Word).
The engine is deterministic and AI-optional: rules decide what every block becomes, so the same document always imports the same way. AI is an optional assistant that only ever writes rules for you — it never imports anything directly, so turning AI off removes no capability.
How it works
The file is parsed into ordered blocks (paragraphs, headings, list items), each carrying formatting signals — Word style name, font size, bold, numbering prefix, outline level, and whether the parser detected it as a heading. Rules test those signals to decide each block’s fate. The original file is stored as a git attachment, and every created item keeps a traceable reference back to the block it came from.
The wizard has three steps.
1. Upload
Drop or pick a .pdf or .docx file. Parsing reads styles and structure only — no AI — and lands you on the Rules step with a live preview.
2. Rules & preview
The left pane is a colour-coded preview of every block; the right pane is the rule list. Edits re-classify the preview instantly. The stats bar at the top is clickable — click a count or type to filter the preview to just those blocks.
Rules are evaluated top to bottom, first match wins, so order matters (use the arrows to reorder). Each block shows a coloured Rule N badge for the rule that claimed it. A block matching no rule falls through to the Default (see below).
Rule actions
Every rule has one or more conditions (matched with all or any) and an action:
- Create item — start a new item of a chosen type from the block.
- Append to current item — merge this block into the item the most recent Create item rule started, instead of making a new one. Use it for a requirement whose description spans several paragraphs, or for a separate
Rationale:/Verification:line. Choose which field it folds into (Description, or a custom field), and optionally give a regex to strip a label — capture group 1 (e.g.^Rationale:\s*(.+)$stores just the value). A heading ends the run, so later blocks don’t merge across it. These blocks appear indented with a → field badge. - Heading — treat the block as document structure (re-numbered by ROPARC); pick a level or let it follow the detected one.
- Ignore — drop the block (page headers/footers, a table of contents, boilerplate).
Conditions
A condition tests one signal — styleName, fontSize, bold, numberingPrefix, outlineLevel, isHeading, the block text, and more — with operators like equals, contains, starts with, matches (regex), or greater/less than. Prefer a general signal (a Word style, a numbering prefix, a ^REQ-\d+ regex) over an exact sentence, so one rule covers similar blocks across the whole document.
Field-mappings
A Create item rule can extract custom-field values from the same block via regex (capture group 1 is the value), with an optional value map that remaps the extracted text to an enum option (e.g. ASIL B → the asilb option). Matched spans are highlighted in the preview. To pull a value from a separate following block, use an Append rule instead.
Default
The Default setting at the bottom of the rule list decides what unmatched blocks become — any item type, or Ignore (drop unmatched) to keep only what your rules explicitly classified. Consecutive unmatched blocks can optionally merge into a single item.
3. Options
Choose whether to wrap the imported items in a new document (preserving the heading structure) or create loose items, set the document title and the commit message, then confirm. The import is a single git commit; the result screen summarises what was created.
Reusable profiles
Once a rule set works, save it as a profile for next time. Profiles are stored in git at a scope you choose — workarea, group, or global — and resolve through the same cascade as the rest of your configuration: a global profile is visible everywhere, a workarea profile only in that workarea. Pick a saved profile from the dropdown to load its rules, or update/delete it from there. (Saving to group or global scope requires workarea-admin permission.)
Suggesting rules with AI
When AI is enabled on your plan, Suggest rules with AI drafts a rule set for you. It only ever produces editable rules that run through the same engine, so you stay in control — review, tweak, and re-preview before importing. Suggested rules are badged so you can tell them apart, and any rule that matches nothing in the document is pruned automatically. There are three ways to ask:
- Suggest rules with AI — a cold start from the whole document plus your workarea’s real item types, fields, and enum options, so it targets types that actually exist.
- Refine with AI — a free-text instruction against the current rules (e.g. “map ASIL to the enum”, “too much is going to description”).
- Mark + comment — tick blocks in the preview and describe them (“these are requirements”, “ignore these footers”); the AI infers rules that generalise that intent across the document.
Note: AI suggestions spend plan credits and are unavailable when a plan sets AI to zero. The deterministic rules above work with no AI at all.