The ARXML is a file format used to store AUTOSAR® configuration data. It is a specialisation of the XML format. The data stored in the ARXML files are tree-like structures, relations between objects contained in these files are defined by AUTOSAR® metamodel.
The problem
Unfortunately most of the tools handling and generating ARXML files are based on a library called ARTop, are Eclipse based and are written in Java. They are internally using unordered collections (Java sets) for the data. The result of this approach is often, that if an ARXML file is read, then slightly modified and written again, the order of the elements in the new file is different than in the original one. This different order has no semantic impact on the whole model (as long the collection containing the data is marked as unordered in the metamodel), but it makes the files practically not comparable and not mergable by typical compare/merge tools, that are comparing the data line-by-line.
REMARK: The above doesn't mean, the other compare/merge tools are bad! They are often great, but they are simply not designed for this kind of data.
What's making the problem even worse: There are more possible differences between two files without any semantic impact:
- All objects in an ARXML file have timestamps attribute. Some tools are filling these attributes, the different timestamps will be detected as a difference by line-by-line compare tools.
- The same problem can happen with checksum fields - a tools could write anything there, but it makes no sense to compare these fields. (this problem is rather theoretical - not a single tool is filling this field).
- The numerical values can have different formats (integer, float) and different bases (decimal, binary, octal, hexadecimal). The common compare tools are comparing strings, but not their actual, numerical value.
- The boolean values can be stores as "true" and "false" strings, or as 0 and 1 integer values.
The solution
The MAXAR2 ARXML Merge Tool doesn't compare ARXML files as lists of lines, but as AUTOSAR® object trees.
- Order changes in not-ordered collections are ignored.
- Attributes without semantic meaning are ignored.
- Effective values of numerical and boolean attributes are compared, not their textual representations.
This way, you can see only the relevant differences, these with impact on semantic of the model.
Typical use cases
-
Typically, a project receives some ARXML files from the OEM, i.e. the EcuExtract or DiagExtract files. These files are large, and finding all the changes in the new version can be time consuming. The MAXAR2 ARXML Merge Tool can quickly show you all and only relevant changes in the new file.
-
Some ARXML files are central for a project and must be changed by many developers, possibly at the same time. Merging such files during integration of the changes can be challenging. The MAXAR2 ARXML Merge Tool can simplify the merging and make it much less error prone.
- If you are using the MAXAR2 AUTOSAR® EA Addin, you have to use the MAXAR2 ARXML Merge Tool if you want to update content of the ARXML file already present in the EA model – it is the only method to update the representation of an ARXML file in an EA project without destroying existing diagrams in the model.
Features of the MAXAR2 ARXML Merge Tool
- All 4.x AUTOSAR® versions are supported, up to the latest version 24-11.
- All available cores/threads of the processor are used to speed up the comparison.
- 32- and 64-bit versions of the tool available.
- 30-day evaluation period can be started immediately.
- Fully compatible with the MAXAR2 AUTOSAR® EA Addin.
- Can be used as an external compare/merge tool for Git (2-way merge).


You can download an evaluation version of the MAXAR2 ARXML Merge Tool as a part of the MAXAR2 Automotive Tools package. If Sparx Enterprise Architect is installed on your computer - please check if it is the 64-bit or the 32-bit version. Then select the appropriate version of the MAXAR2 Automotive Tools package. If you have both versions of EA installed at the same time, you can also install both versions of the MAXAR2 Automotive Tools package. If you are not using the EA, please take the 64-bit version.
Download pages for MAXAR2 Automotive Tools package containing MAXAR2 ARXML Merge Tool: