How to change filter settings for slxmlcomp.compare?

8 views (last 30 days)
I am using the slxmlcomp.compare function to compare two Simulink models programmatically. However, when there is a change to the Description parameter of a model (i.e. Model Properties > Description), it does not show up in the Edits object. This is because the Nonfunctional Changes filter is on. How can I turn it off?
  2 Comments
Hannes Siegl
Hannes Siegl on 25 Sep 2020
I tried this visdiff as well. However, it is not clear for me, how to set the filters and how to get the Edits object to workspace by an API call. visdiff returns a SimulinkModelComparison object.
Monika Jaskolka
Monika Jaskolka on 25 Sep 2020
Edited: Monika Jaskolka on 25 Sep 2020
To change the filters with visdiff you can do:
comparison = visdiff('test1','test2');
filter(comparison, 'unfiltered');
The results can be viewed using the publish function, which by default publishes the results as an HTML file.
file = publish(comparison);
web(file)
I don't think there is a way to convert from a SimulinkModelComparison object to an Edits object.
At this point, if you want to programmatically parse the SimulinkModelComparison results, you probably need to parse the HTML directly, using command such as these.
Otherwise, I wrote the Model Comparison Utililty that can query the Edits object.

Sign in to comment.

Accepted Answer

Monika Jaskolka
Monika Jaskolka on 1 Aug 2020
I contacted MathWorks support. It is currently not possible to change filters from the command line using the slxmlcomp.compare function. The only alternative is to use the visdiff function instead, which produces different output.

More Answers (0)

Categories

Find more on Programmatic Model Editing in Help Center and File Exchange

Products


Release

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!