Input formats
REQCHECKER™ car read requirement statements and coverages from several data sources.
An Java API is provided to develop your own data source. Contact support team to get it.
Format features
The table below presents the format that are managed and for each format the available features.
- Track Change: the track change is available and the text is read after applying the change.
- Page Number: the page or slide number is available.
- Heading Number: the positions detail the chapter heading number. Such format allows to create requirement directly from chapter heading number.
- Table cell: the text is extracted from tables. Cell Text feature is available for custom tags (see GUI Custom Tags).
- Style filter: the style names are extracted.
Microsoft Office formats
| Format | Track Change | Page Number | Heading Number | Table cell | Style filter |
|---|---|---|---|---|---|
| Microsoft WORD >2007 (.docx .docm) | NO | NO | YES | YES | YES |
| Microsoft WORD 97 (2) (.doc) | YES | NO | YES | NO | NO |
| Microsoft EXCEL 2007 (.xlsx .xlsm) | N/A | N/A | N/A | YES (1) | NO |
| Microsoft POWERPOINT 2007 (.pptx) | N/A | YES | N/A | NO | NO |
| Microsoft EXCEL 97 (2) (.xls) | N/A | N/A | N/A | YES (1) | NO |
Note
(1) Each cell is read as a new line
(2) MS Word or MS Excel must be installed
Google Document formats
| Format | Track Change | Page Number | Heading Number | Table cell | Style filter |
|---|---|---|---|---|---|
| Google Docs (.gdoc) | NO | NO | YES | YES | YES |
Note
(1) You must allow the REQCHECKER Reader Google application to access the reading of your Google documents. The authorization page opens during the first calculation.
(2) Please read the REQCHECKER privacy policy
Other documents
| Format | Track Change | Page Number | Heading Number | Table cell | Style filter |
|---|---|---|---|---|---|
| Adobe PDF (.pdf) | N/A | YES | YES (1) | YES (1) | NO |
| OpenOffice WRITER (2) (.odt) | NO | YES | YES | NO | YES |
| Markdown (basic support) (.md) | NO | NO | NO | NO | NO |
Note
(1) Only some PDF heading number patterns are supported. The experimental heuristic algorithm automatically detects headings. The table of content is ignored. Standard patterns like "1.1 1.2.1.." and "1. A. 1. B.." are supported. Only some PDF structures are supported. The table cell recognition for PDF is an experimental feature.
(2) OpenOffice WRITER must be installed
"Database" formats
The required columns are described here
| Format | Track Change | Page Number | Heading Number | Table cell | Style filter |
|---|---|---|---|---|---|
| REQCHECKER XLSX reports (.xlsx) | NO | NO | NO | N/A | NO |
Confluence reader
Atlassian Confluence Software is a collaborative workspace and knowledge management platform designed to support organizations throughout the lifecycle of their documentation—from capturing requirements and specifications to sharing procedures, project information and release notes. Key features include structured page creation with templates, real-time collaborative editing, hierarchical organization of content, and native traceability with Jira issues and project artifacts. The solution provides rich content capabilities with macros, embedded diagrams, tables, multimedia support and dynamic reports that offer real-time visibility into project progress, decisions and documentation quality. Confluence is designed for organizations looking to centralize their documentation, enhance collaboration, maintain traceability with project work and support Agile or traditional processes with a powerful, integrated knowledge management platform.
The .confluence file format is a text file that defines connection properties. It allows XQUAL to be integrated as a content management system into a larger project that implements other sources of requirements and traceability.
Main use case
To retrieve the list of page as requirements, you have to:
- Go to the Conluence page
- Copy the full URL from the browser address bar. Its format is something like:
https://<domain>/..../wiki - Create a new empty connection file (e.g. with Notepad)
- Add new line in the connection file to define your project page
url: <your URL> - Add new line in the connection file to define your Jira login
login: <your login> - On the Web site, click on your Account > Settings > Password > API token > Create and manage API tokens and click on the Create API Token button and copy it
- Add new line in the connection file to define your Jira APi key
pass: <your API token> - Save the text connection file with the
.confluenceextension, e.g.myproject.confluence - Go to Data Sources tab > Add File button and select your connection file.
- In the list Statement retrieval from:, select
Database - Run your project and check that the tickets are correctly imported
File format
The syntax is for example as follow. The fieldMapping value are optional.
url: https://<your domain>/.../<name>
[login: <your login>]
[pass: <your API key>]
Where:
[]means the item is facultative<your domain>is your company or project in Atlassian URL<your login>is your Atlassian login<your API key>is your API key
The following ticket attributes are automatically mapped to the requirement system attributes:
| Field ID | Type | Description |
|---|---|---|
| Page ID | Text | mapped to requirement ID |
| Page Title | Text | mapped to requirement Title |
| Page Content | Text | mapped to requirement Text |
| Page Version | Number | mapped to requirement Version |
Example
The syntax is for example as follow.
url: https://confluence.atlassian.com/doc/confluence-data-center-and-server-documentation-135922.html
Jira reader
Atlassian Jira Software is a widely adopted work management and issue-tracking platform designed to support organizations across the full lifecycle of their projects—from requirement definition and backlog creation to development, testing and release. Key features include product and requirement management through epics, stories and tasks, configurable workflows supporting Agile, Scrum, Kanban or custom processes, and native traceability between issues, sprints and releases. The solution provides powerful planning and tracking capabilities with boards, roadmaps, dashboards and reporting tools that give real-time visibility into progress, velocity, quality and bottlenecks. Jira is suited for organizations looking to centralize work tracking, ensure transparency, enhance collaboration and support Agile or hybrid delivery models with strong integration and workflow customization capabilities.
The .jira file format is a text file that defines connection properties. It allows JIRA to be integrated as a content management system into a larger project that implements other sources of requirements and traceability.
Main use case
To retrieve the list of ticket as requirements, you have to:
- Go to the ticket list of your Jira project
- Clic on
JQLthen define your filters, your sort options and launch the query. - Copy the full URL from the browser address bar. Its format something like:
https://<domain>/..../issues/?jql=project%20%3D%20%22.... - Create a new connection file (e.g. with Notepad) and create a first line to define the value of
url:, e.g.url: https://<domain>/..../issues/?jql=project%20%3D%20%22... - Go to the API token management of your Atlassian account to create an API token
- Add new line in the connection file to define your Jira login
login: <your login> - Add new line in the connection file to define your Jira APi key
pass: <your API key> - Save the text connection file with the
.jiraextension, e.g.tickets.jira - Go to Data Sources tab > Add File button and select your connection file.
- In the list Statement retrieval from:, select
Database - Run your project and check that the tickets are correctly imported
Note
Saved issue list are supported as well. Go to the issue management of your projects : https://<domain>/issues, create and save a predefined issue list.
File format
The syntax is for example as follow. The fieldMapping value are optional.
url: https://<your domain>/...?[filter=<your filter>]&[jql=<your JQL>]
login: <your login>
pass: <your API key>
[limit: <maximum number of ticket to retrieve ; default is 2000>]
[fieldMapping:
- from: <field id>
to: <REQCHECKER custom field>
...
]
Where:
[]means the item is facultative<your domain>is your company or project in Atlassian URL<your filter> is your filter ID<your JQL>is your custom query copied from the Internet browser address<your login>is your Atlassian login, leave empty to use an API token<your API key>is your password (Basic authentication) or you API token (Bearer authentication)<field id>is a field ID (see below)<REQCHECKER custom field>is an associated to a custom field that presents the Jira custom field. The custom field is autmatically created and displayed in reports.
The following ticket attributes are automatically mapped to the requirement system attributes:
| Field ID | Type | Description |
|---|---|---|
| key | Text | mapped to requirement ID |
| summary | Text | mapped to requirement Title |
| description | Text | mapped to requirement Text |
| updated | Time | mapped to requirement Version with format YYMMDD.hhmm |
| issue link | URL | mapped to requirement position |
The following ticket attributes can be mapped to custom fields.
| Field ID | Type | Description |
|---|---|---|
| status | Text | Ticket status |
| priority | Text | Ticket priority |
| assignee | Text | Name of assignee |
| reporter | Text | Name of reporter |
| duedate | Date | Ticket Due date |
| issuetype | Text | Ticket type |
| project | Text | Project name |
| created | Date | Creation date |
The list of all field is provided by Jira REST API: https://<jira-url>/rest/api/latest/field
Example
The syntax is for example as follow.
For some project, clicking the View all issues and filters button will open a compliant link that can be copied.
url: https://issues.apache.org/jira/browse/LOGGING-180?jql=project%20%3D%20LOGGING%20AND%20resolution%20%3D%20Unresolved%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC
Custom fields can be captured with fieldMapping.
url: https://issues.redhat.com/browse/WFLY-20536?jql=project%20%3D%20WFLY%20AND%20resolution%20%3D%20Unresolved%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC
fieldMapping:
- from: status
to: TICKET_STATUS
- from: updated
to: UPDATED
- from: Priority
to: PRIORITY
- from: Labels
to: LABELS
- from: Resolution
to: RESOLUTION
If you are using an API token, you do not need to provide a user name; simply enter the token in the password field.
To create an API token, open Jira, go to Profile / Personal Access Tokens menu then Create Token button.
# You can also insert comments.
url: https://jira.thewebcompany.com/issues/?filter=12345
pass: 0tI0EzYawMNz6kIBHCD76QaTrlKpJyzHpxeAJsWbcdmB
Redmine reader
Redmine is an open-source project management and issue-tracking platform designed to support teams throughout the lifecycle of their projects—from requirement definition and planning to execution, tracking and delivery. Key features include project, requirement and task management through customizable issue types, support for Gantt charts, calendars and version planning, and native traceability across issues, time entries and project milestones. The solution offers flexible workflow configuration, role-based access control, and real-time visibility into progress, workloads and project status through dashboards and reports. Redmine is ideal for organizations seeking an open, highly configurable platform to centralize project tracking, support collaborative workflows and maintain end-to-end visibility across tasks, requirements and releases.
The .redmine file format is a text file that defines connection properties. It allows REDMINE to be integrated as a content management system into a larger project that implements other sources of requirements and traceability.
Main use case
To retrieve the list of ticket as requirements, you have to:
- Go to the Issues tag of the Redmine project
- Define your filters and sort options
- Save the custom query. Its name does not matter.
- Create a new text file (e.g. with Notepad) and write
url= - Copy the value of the query in the URL bar of your browser.
- Paste the value of the URL in the text file. The result looks like
url=http://myredmine/projects/myproject/issues?query_id=1 - If your Redmine project is not public, add your login and password in the query definition. The result looks like
url=http://login:password@myredmine/projects/myproject/issues?query_id=1 - Save the text file with the
.redmineextension, e.g.myprojectquery.redmine - Add this file in your Reqchecker project in Data Sources tab > Add File button.
- In the list Statement retrieval from:, select
Database - Run your project and check that the tickets are correctly imported
Warning
If your Redmine project is not public, you must check that REST API is enabled: go to Redmine Administration > Settings > API > Enable REST API.
File format
The syntax is
url: HTTP://LOGIN:PASS@SERVER:PORT/projects/PROJECTID/issues?query_id=QUERYID
fieldMapping:
- from: REDMINE_FIELD_ID
to: REQUIREMENT_ATTRIBUTE
- from: ...
to: ...
Where:
HTTPis either HTTP or HTTPSLOGIN:PASS@(facultative for public projects) is a text that defines the user login and the user password, or the API key.SERVERis the IP or DNS name of the serverPORT(facultative if 80) is the portPROJECTIDis the Redmine project identifier defined in the project page > Settings > Project > Identifier.QUERYIDis the query number (integer) that is visible at the end of the URL in the browserREDMINE_FIELD_IDis a system or custom field ID in RedmineREQUIREMENT_ATTRIBUTEis the name of the target requirement attribute
Note
The query can be tested if you paste it in the URL bar of your browser. This is a way to test that there is no error in your Redmine file.
The following information are automatically mapped to the requirement system attributes:
| Field ID | Type | Description |
|---|---|---|
| id | Text | mapped to requirement ID |
| subject | Text | mapped to requirement Title |
| description | Text | mapped to requirement Text |
| journal size | Integer | mapped to requirement Version |
| issue link | URL | mapped to requirement position |
List of system field IDs
The following field IDs can be used as "from" values to be mapped as requirement attribute.
| Field ID | Type | Description |
|---|---|---|
| projectName | Text | project name |
| tracker | Text | tracker name |
| issueCategory | Text | category |
| createdOn | Date | Creation date |
| startDate | Date | Start date |
| dueDate | Date | End date |
| updatedOn | Date | last update date |
| closedOn | Date | issue closed on date |
| assigneeName | String | name of assignee |
| authorName | Text | name of author |
| priorityText | Text | Priority (text value) |
| statusName | Text | status (text value) |
| targetVersion | Text | target version |
| doneRatio | Integer | Progress rate percentage |
| estimatedHours | Float | Task estimated hours |
| spentHours | Float | Task spent hours |
| privateIssue | Boolean | issue is private |
| parentId | Integer | ID of parent issue |
Examples
The following are examples of the contents of Redmine data import files (file with .redmine extension).
Connection without login and with some mapping
query: https://www.redmine.org/projects/redmine/issues?query_id=84
field:
- from: estimatedHours
to: HOURS
- from: dueDate
to: DUE DATE
- from: Resolution
to: Resolution
- from: authorName
to: AUTHOR
- from: issueCategory
to: CATEGORY
- from: priorityText
to: PRIORITY
- from: tracker
to: TRACKER
- from: projectName
to: PROJECT
- from: statusName
to: STATUS
- from: parentId
to: PARENT
Connection with login and password
query=http://johndoe:apassword@myredmine/projects/myproject/issues?query_id=2
Connection with API key
To avoid writing your password in a project file that is shared with other users, you can identify yourself with your API key.
In Redmine, go to My Account, on the right pane click on API access key > Show and copy the value.
for example, the result is something likea89987536fcd37d69ed887ec80adda144b48d329.
query=http://a89987536fcd37d69ed887ec80adda144b48d329@myredmine/projects/myproject/issues?query_id=2
Source Code
This plugin reads the statements and/or coverage in the source code comments.
Main use case
It allows requirements or user stories to be covered directly in the software source code, which is required to comply with certain non-rules such as the DO-178C LEVEL C.
For example:
/*
* Security management
* This class manages ...
* <<REQ_SEC_02>>
*/
File format
| Language | File extension |
|---|---|
| C/C++ source code | .cpp .hpp .c .h .inc |
| Java source code | .java |
| JavaScript source code | .js |
| C# source code | .cs |
| XML file | .xml |
| Python source file | .py .pyw |
| Windows batch script | .bat |
| Linux shell script | .sh |
| Kotlin source file | .kt |
| Groovy source file | .groovy .gvy .gy .gsh |
| PHP source file, two single line markers | .php |
| TypeScript source file | .ts |
| YAML source file | .yaml .yml |
| Objective-C source file | .mm .m |
| ASP (Active Server Pages) source file | .asp |
| Swift source file | .swift |
XQual reader
XQual is a comprehensive Application Life-Cycle Management (ALM) solution designed to support organizations throughout the entire lifecycle of their products and projects—from requirements and specifications through testing, release and quality assurance. Key features include requirements and specification management (covering user stories, use cases or formal specifications), full bidirectional traceability between requirements, tests and releases, and support for manual, exploratory and automated testing. The solution provides campaign and session orchestration for test planning and execution, real-time visibility of test coverage, progress and quality metrics, and prediction of test campaign completion times. XQual is tailored for enterprises seeking to unify requirements, test management, release tracking and quality governance in a single platform, drive traceability, improve visibility and support agile, DevOps or V-Model workflows with robust automation support.
The .xqual file format is a text file that defines connection properties. It allows XQUAL to be integrated as a content management system into a larger project that implements other sources of requirements and traceability.
Main use case
To retrieve the list of ticket as requirements, you have to:
- Open the XQual WEB project.
- Copy the full URL from the browser address bar. Its format something like:
https://myproject.myxqual.com/xqual/xstudio.web. - Create a new connection file (e.g. with Notepad) and create a first line to define the value of
url:, e.g.url: https://myproject.myxqual.com/xqual/xstudio.web - Add new line in the connection file to define your Jira login
login: <your login> - Add new line in the connection file to define your Jira APi key
pass: <your API key> - Save the text connection file with the
.xqualextension, e.g.tests.xqual - Go to Data Sources tab > Add File button and select your connection file.
- In the list Statement retrieval from:, select
Database - Run your project and check that the tickets are correctly imported
File format
The syntax is for example as follow. The fieldMapping value are optional.
url: https://<your domain>/xqual/xstudio.web
login: <your login>
pass: <your password>
[limit: <your_limit>]
[filterIdRegex: <your_filter>]
[fieldMapping:
- from: <field id>
to: <REQCHECKER custom field>
...
]
Where:
[]means the item is facultative<your domain>is your company or project<your login>is your XQual login, leave empty to use an API token<your password>is your password (Basic authentication) or you API token (Bearer authentication)<your_limit>is the maximum number of artifacts to retrieve. If the field does not exist, default is 2000.<your_filter>is the regular expression that the retrieved artifacts must match, for example 'T_.*'. If the field does not exist, no filter is applied.<field id>is a field ID (see below)<REQCHECKER custom field>is an associated to a custom field that presents the Jira custom field. The custom field is autmatically created and displayed in reports.
Note
The limit is in place to prevent the application from crashing in the event of an error in the request. However, the user must ensure that the value is above the number of artefacts to be loaded, otherwise some of the artefacts may not be identified.
The following artifact attributes are automatically mapped to the requirement system attributes:
| Field | Type | Description |
|---|---|---|
| testId | Text | mapped to requirement ID |
| name | Text | mapped to requirement Title |
| description | Text | mapped to requirement Text |
| revision | Text | mapped to requirement Version |
| (issue link) | URL | mapped to requirement position |
The following ticket attributes can be mapped to custom fields.
| Field ID | Type | Description |
|---|---|---|
| prerequisites | Text | Test prerequisites |
| type | Text | Test type |
| status | Text | Test status |
| priority | Text | Test priority |
| linkedrequirements | Array | List of linked requirements ID |
Example
# This connection example retrieves only system attributes.
url: https://reqchecker.myxqual.com/xqual/xstudio.web
login: mylogin
pass: mypassword
# Some additional fields can be captured with `fieldMapping`.
url: https://reqchecker.myxqual.com/xqual/xstudio.web
login: mylogin
pass: mypassword
fieldMapping:
- from: prerequisites
to: Prerequisites
- from: type
to: TestType
- from: status
to: TestStatus
- from: priority
to: Priority