Merge / Compare Addon

ReqEdit Online Documentation

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.

XHTML validation in Settings/User menu in ReqEdit.

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

ReqEdit Add-ons, highlighted is the Direct Compare tool

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

ReqEdit Compare Add-on question popup

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

ReqEdit Compare Add-on overview window

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

ReqEdit Compare Add-on displaying additional attributes list to include in the comparison result

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

ReqEdit Comparison Add-on displaying the Comparison Window, with External ID and additional attributes

Column description

ObjectNumberHierarchical 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 IDShows the contents of the ReqIF.ForeignID attribute
Main ColumnDisplays 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 attributesDisplays the concatenated additional attribute changes with green and changed with red (on the left) see above Display logic for additional attributes
StatusDisplays the status description: new, changed, moved from source, moved and changed, deleted (only left), referenced

Highlight colors

Structural changes

GREENNEW
BLUEMOVED
ORANGECHANGED, CHANGED & MOVED
REDDELETED
Referenced, is the source of the moved / changed objects

Content changes

GREENNew content
REDRemoved 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

Jump to source by right-clicking an object in the comparison window, will select the object in the source document

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.

ReqEdit Compare tool generated HTML report

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.

Compare Add-on settings window

NOTE: The logo image can only replaced with another one, there must always be a logo

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

ReqEdit compare add-on in standalone mode
  1. Open the old ReqIF file on the left and the new on the right side
  2. Press Compare in the top menu
  3. Select the row with the files to be compared and press Compare documents
  4. Configure comparison option and attributes for compare in the wizard window
  5. Press Compare documents to display the result.
  6. 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.

ReqEdit merge add-on displayin the options window and the merge details

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.

Compare and Merge AddOn 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