Advertising

Import Format & AI Integration

Projects

The ETRM allows for the import of complete project structures. This is particularly useful when creating complex requirement catalogs with AI support (e.g., via Google Gemini) or migrating data from third-party systems.

Migrating from IBM DOORS Next Generation, Polarion, Jama, or Codebeamer? There's a dedicated ReqIF import for that.


JSON File Structure

The file is divided into four main sections: Project Metadata, Structure Definition, Tag Definitions, and the actual Requirement List.

1. Project Metadata

  • name: The name of the target project.
  • description: An optional short description of the project.

2. Structure Definition (structure)

Here you define how your requirements should be arranged hierarchically. Structure elements can be subordinated to one another, allowing even complex tree structures to be represented. Creating a structure is optional.

3. Tag Definitions (tags)

Define in advance which labels should be available in the project and which color each tag should have (the font color is always white). The use of tags is optional.

4. Requirements (requirements)

Each object in the array represents a requirement. The requirement has an ID, a title, a description, an assignment to a structure element, assigned tags, and a reference to possible parent elements. Providing structure elements and relationships is optional.

Optionally, you can set "artifact_type": "note" to create a free-form note block instead of a numbered requirement (e.g. for explanatory context between requirements). Notes do not receive a #N number and should not be referenced as a parent element. If the field is omitted, "requirement" is assumed – existing JSON files without this field continue to work unchanged.

Images attached to a requirement are currently not imported or exported via this interface – they must be uploaded directly in the requirements list after import.


AI Prompt Example

Copy this example into your prompt for Google Gemini, ChatGPT, or any other AI agent.

{
  "name": "Project Name",
  "description": "Short description of the project",
  "structure": [
    { "id": 1, "name": "Element 1", "structure_code": "1" },
    { "id": 2, "name": "Sub-element to 1", "structure_code": "1.1", "parent_id": 1 }
  ],
  "tags": [
    { "name": "Tag 1", "color": "#468ece" },
    { "name": "Tag 2", "color": "#38c27b" }
  ],
  "requirements": [
    {
      "local_id": 1,
      "title": "Title of the first requirement",
      "description": "Description of the first requirement.",
      "structure_code": "1.1",
      "tags": ["Tag 1"],
      "parent_local_ids": []
    },
    {
      "local_id": 2,
      "title": "Title of the second requirement",
      "description": "This requirement is a child of the first requirement.",
      "structure_code": "1.1",
      "tags": ["Tag 1"],
      "parent_local_ids": [1]
    },
    {
      "artifact_type": "note",
      "title": "Note for this chapter",
      "description": "Free-form explanatory text, e.g. constraints or context - appears without a # number.",
      "structure_code": "1.1"
    }
  ]
}

Practical Tip: If you frequently work on project variants using the same structures and tags, you can prepare these elements in a JSON file and import them into a new project as needed.



Back to overview