Motivation
Many automotive organizations use formal requirements tooling and ReqIF for supplier/OEM exchange of requirements and downstream traceability. RDX already targets ISO/SAE 21434 traceability (damage→goals→controls), but there is no machine-tested pathway to export RDX cybersecurity goals, derived cybersecurity requirements, and allocated controls as ReqIF artifacts for handoff to requirements management tools (DOORS Next, Polarion, Jama). A standardized ReqIF profile reduces friction in supplier/OEM workflows and supports Whole Vehicle TARA composition.
Proposed change
-
New "ReqIF profile" module (non-breaking)
- Add a new document in
methodology/ named ReqIF-Profile.md that defines a canonical 1:1 mapping from RDX objects → ReqIF artifacts. The profile specifies:
- RDX objects exported:
riskSet.securityGoals (if present), riskSet.cybersecurityRequirements[] (new array — optional), controls[], riskTreatmentDecisions[], itemDefinition.components[] (if present).
- Mapping rules for fields: e.g. RDX
id -> ReqIF identifier, title -> longName, description -> description, rationale -> specification element. Include mapping of relationships as ReqIF relations.
- Recommended ReqIF
type definitions for common RDX elements (SecurityGoal, CyberReq, Control, TARA-Trace).
- Versioning strategy: include
documentId -> ReqIF source meta and schemaVersion in the ReqIF header; export should include export timestamp and exporter identity.
-
Schema / examples
- Add
examples/rdx-reqif-export-example.json and examples/rdx-reqif-export-example.reqif.xml (human-readable ReqIF export produced by a small tooling script) showing:
- Export of a securityGoal derived from a damageScenario.
- Allocation of
cybersecurityRequirement to a control with verificationMethod and evidenceRef.
- Include a small CLI tool
tools/rdx_to_reqif.py demonstrating export (standalone, optional) using stdlib only or a minimal dependency.
-
Import guidance
- To support bidirectional workflows, document recommended import rules: when importing ReqIF back into RDX, create RDX objects with
externalIds referencing the originating ReqIF identifier, and set createdBy to the importer tool. Define conflict resolution rules (prefer newest lastModified unless documentId matches).
-
Backwards compatibility
- No changes to core schema required. The profile is an export/import mapping and uses
additionalProperties/externalIds for linking; RDX consumers that ignore ReqIF outputs are unaffected.
References
Acceptance criteria
- Methodology:
methodology/ReqIF-Profile.md added with explicit 1:1 mapping tables and import rules (including conflict resolution) and an example mapping for at least: SecurityGoal → ReqIF Requirement, CybersecurityRequirement → ReqIF Requirement with attributes, Control → ReqIF Requirement/Spec.
- Examples:
examples/rdx-reqif-export-example.json (RDX source) and examples/rdx-reqif-export-example.reqif.xml (resulting ReqIF) are included and validate syntactically as ReqIF XML.
- Tooling:
tools/rdx_to_reqif.py minimal exporter exists and is described in CLAUDE.md with usage instructions.
- Documentation: Update
REQUIREMENTS.md to reference the new interoperability pathway and map this feature to existing RDX requirements: RDX-103 (bidirectional conversion support to legacy formats), RDX-075 (whole vehicle TARA composition), and RDX-004 (data quality & governance). If cybersecurityRequirements[] is introduced by a follow-on change, mark it as a new requirement (new requirement).
Generated by tools/ai_idea_scout.py via the AI Idea Scout workflow.
Review the proposal, refine the title/body/labels, and close if not desired.
Motivation
Many automotive organizations use formal requirements tooling and ReqIF for supplier/OEM exchange of requirements and downstream traceability. RDX already targets ISO/SAE 21434 traceability (damage→goals→controls), but there is no machine-tested pathway to export RDX cybersecurity goals, derived cybersecurity requirements, and allocated controls as ReqIF artifacts for handoff to requirements management tools (DOORS Next, Polarion, Jama). A standardized ReqIF profile reduces friction in supplier/OEM workflows and supports Whole Vehicle TARA composition.
Proposed change
New "ReqIF profile" module (non-breaking)
methodology/namedReqIF-Profile.mdthat defines a canonical 1:1 mapping from RDX objects → ReqIF artifacts. The profile specifies:riskSet.securityGoals(if present),riskSet.cybersecurityRequirements[](new array — optional),controls[],riskTreatmentDecisions[],itemDefinition.components[](if present).id-> ReqIFidentifier,title->longName,description->description,rationale->specificationelement. Include mapping of relationships as ReqIF relations.typedefinitions for common RDX elements (SecurityGoal, CyberReq, Control, TARA-Trace).documentId-> ReqIFsourcemeta andschemaVersionin the ReqIF header; export should include export timestamp and exporter identity.Schema / examples
examples/rdx-reqif-export-example.jsonandexamples/rdx-reqif-export-example.reqif.xml(human-readable ReqIF export produced by a small tooling script) showing:cybersecurityRequirementto a control withverificationMethodandevidenceRef.tools/rdx_to_reqif.pydemonstrating export (standalone, optional) using stdlib only or a minimal dependency.Import guidance
externalIdsreferencing the originating ReqIFidentifier, and setcreatedByto the importer tool. Define conflict resolution rules (prefer newestlastModifiedunlessdocumentIdmatches).Backwards compatibility
additionalProperties/externalIds for linking; RDX consumers that ignore ReqIF outputs are unaffected.References
Acceptance criteria
methodology/ReqIF-Profile.mdadded with explicit 1:1 mapping tables and import rules (including conflict resolution) and an example mapping for at least: SecurityGoal → ReqIF Requirement, CybersecurityRequirement → ReqIF Requirement with attributes, Control → ReqIF Requirement/Spec.examples/rdx-reqif-export-example.json(RDX source) andexamples/rdx-reqif-export-example.reqif.xml(resulting ReqIF) are included and validate syntactically as ReqIF XML.tools/rdx_to_reqif.pyminimal exporter exists and is described in CLAUDE.md with usage instructions.REQUIREMENTS.mdto reference the new interoperability pathway and map this feature to existing RDX requirements: RDX-103 (bidirectional conversion support to legacy formats), RDX-075 (whole vehicle TARA composition), and RDX-004 (data quality & governance). IfcybersecurityRequirements[]is introduced by a follow-on change, mark it as a new requirement (new requirement).Generated by
tools/ai_idea_scout.pyvia the AI Idea Scout workflow.Review the proposal, refine the title/body/labels, and close if not desired.