Merge / Compare Addon
7 min read
last updated: 02/05/2024
Tool for comparing and merging ReqIF/ReqIFz files. Can be used to compare two versions of the same file or merge attributes from one specification to another.
Note: this add-on works only on imported or ReqEdit created ReqIF files.
Note: the Compare / Merge tool synchronize at startup the settings of ReqEdit about the HTML validation. To set the HTML Validation status in ReqEdit in the Settings/User menu. After set the value to the desired, please restart the Compare / Merge tool to get the settings synchronized.

The tool works in two modes:
- Direct Compare mode
Users can automatically jump to the source of the compared objects - Standalone mode
Compare ReqIF files
The easiest way to compare two documents is to use the Direct Compare mode, follow the steps described below.
Open the two ReqIF files for comparison, select one of the documents,Click Add-ons > Direct Compare

A question window will let the user choose the pair of the document for second file as NEW or OLD, Press YES or No to configure the comparison members

Compare overview window will show the compare statistics, then press Compare

A new window will let the user select additional attributes for quick comparison, and then press OK
NOTE: main attributes are completely compared all the time, like the footer note displays
NOTE: the additional attributes are displayed in a single column as a text message

Display logic for additional attributes:
- Html attributes will be compared as HTML but displayed as a text and limited to first 50 characters
- Strings will be limited to 50 first characters
- Dates will be converted to German date format
- Boolean values will be displayed as text
- Enumerations will be displayed as a string
Render Short Description
Compares and displays the ReqIF.Name attribute (in case of DNG export this will be a copy of ReqIF.Text, and should be excluded from comparison for nicer overview)
Display External ID
Shows ReqIF.ForeignID attribute as a separate column
Ignore Main column changes
Ignores the changes made in the Main column of the Reqif/Reqifz file. ReqIF.ChapterName; ReqIF.Name; and ReqIF.Text
If the Render short description box is unchecked, the Short description box in this area cannot be chosen.
The Comparison Window
Displays the result of the comparison in a two sided window.
Right clicking any object the ReqIF.ID and External.ID (ReqIF.ForeignID) can be copied into the clipboard

Column description
ObjectNumber | Hierarchical numbering by Headers similar to chapter structure, optional # character shows text objects under the given chapter, the background color suggests the type of change |
External ID | Shows the contents of the ReqIF.ForeignID attribute |
Main Column | Displays the content of the objects with changes, green is the new content (right side), red on is the removed or changed content (left side) |
Other attributes | Displays the concatenated additional attribute changes with green and changed with red (on the left) see above Display logic for additional attributes |
Status | Displays the status description: new, changed, moved from source, moved and changed, deleted (only left), referenced |
Highlight colors
Structural changes
GREEN | NEW |
BLUE | MOVED |
ORANGE | CHANGED, CHANGED & MOVED |
RED | DELETED |
Referenced, is the source of the moved / changed objects |
Content changes
GREEN | New content |
RED | Removed content |
Display unchanged rows
By default all content is displayed, to show only the changes uncheck the [Display unchanged rows] checkbox at the top
Jump to source

To see the selected changed object, must change the window view.
HTML Report
Users can save the result of the comparison as a HTML report. Pressing the Open results in browser at the bottom will save the file and open the default browser.

The HTML report is a scripted web-page with couple functions:
Highlighting objects/rows
Users clicking any row in the report will be highlighted and if possible, the pair will be shown and also highlighted
Clicking the ObjectNumber or the row to jump to corresponding object pair. Highlighting is similar to the comparison window.

Filter change type
The number of the different types of change are shown at the bottom of the page and can be toggled to be visible or hidden

Show only changes
Show only the rows that are changed, moved, new or deleted, including the reference to changes.

Mark as read
Users can track the progress of the validation of the changes by marking each row as read with the checkbox.

NOTE: this feature uses browser internal WebStorage mechanism, all markers are saved to localStorage. All modern browsers have this feature but can be limited by security policies.
Show only unread
The button will toggle the display of only the rows which are not yet marked as read

Settings
Customize an additional logo and optional HTML content to include in the HTML report, open the Administration > Settings menu.

NOTE: The logo image can only replaced with another one, there must always be a logo
Print to PDF
HTML report can be saved as PDF by printing the result to a PDF document within the browser. To get a better viewing experience set the pdf size to A3 landscape or adjust the print scaling and enable background colors.
Notices
In IE11 or other older browsers if “Mark as read” cannot be used it will be hidden. An ActiveX script execution popup will ask to run the scripts inside the html report. Choose Allow Blocked Content to enable the features.
Mark as read is saved inside the browser, moving the html report will not affect the read markings.
Tested on:
- Edge Version 91.0.864.41 (Official build) (64-bit)
- Chrome Version 91.0.4472.77 (Official Build) (64-bit)
Mark as read cannot be exported or transferred, its indented to be used only on one PC.
Standalone mode
Comparison between two unopened files in ReqEdit
Note: Opened files will be locked, other applications (ex: ReqEdit) will not be able to open the files until closed


- Open the old ReqIF file on the left and the new on the right side
- Press Compare in the top menu
- Select the row with the files to be compared and press Compare documents
- Configure comparison option and attributes for compare in the wizard window
- Press Compare documents to display the result.
- Click on Open result in browser or Close button depending on your choice
NOTE: Closing the file will release the exclusive lock and can be used by other applications
NOTE: In Standalone mode cannot jump directly to the changes in the file by right-clicking on the changed cell and choosing the Open in ReqEdit option
Compare limitations
- Compare works only on ReqIF files that can be opened in ReqEdit
- HTML element property changes will be ignored (class, id, style) except attachments (object data tags)
- String and HTML attributes outside of the main column will be shortened the display to 50 characters
- Sometimes if the content comparison is too complex will highlight more new changes than necessary, but will never miss any change
- Opened files are exclusively locked until closed (no other app can open the files)
Merge ReqIF files
Merge attributes one at a time from a ReqIF file to another ReqIF file. Can only be used in standalone mode, meaning the files cannot be opened in other applications.

Open files on each side then select the attributes that needs to be merged and press Merge menu item in the top menu. The merge options will be displayed.

Merge direction: left to right or right to left, depending on which side of the wizard window are the new and old files
Force update: copies also the empty values from source
After the merge the attributes will be highlighted with green, repeat the merge process for other attributes as well

Save the merge results
Clicking the SAVE icon next to the file location will write the merged content into that file, depending on the direction of the merge.
Data management
All files generated by the tool can be managed from the Administration menu.

Open Logs – will show the daily logs folder
Open HTML reports – will show the folder of the comparison results
Cleanup HTML reports – will delete all the comparison results
Cleanup temp files – will delete all generated files
Merge Limitations
- Only spec objects with the same ID can be merged
- Only the same type of attributes can be merged
- Opened files are exclusively locked until closed (no other app can open the files)
Logging
The application will produce a debug log containing all the performed actions Log is saved in daily files.
Contents of log files
- Opening files
- Errors
- Attribute type mismatches
- No matches found
- No attributes selected
- Compare statistics
- Merge execution with details
- Updated values
- Skip merging causes
- identical values
- empty values