Synchronize model with DOORS surrogate module


rmi.doorssync(model_name, settings)
current_settings = rmi.doorssync(model_name, 'settings')
current_settings = rmi.doorssync(model_name, [])
default_settings = rmi.doorssync([])


rmi.doorssync(model_name) opens the DOORS synchronization settings dialog box. Select the options for synchronizing model_name with an IBM® Rational® DOORS® surrogate module and click Synchronize.

Synchronizing a Simulink® model with a DOORS surrogate module is a user-initiated process that creates or updates a surrogate module in a DOORS database. A surrogate module is a DOORS formal module that is a representation of a Simulink model hierarchy. When you first synchronize a model, the DOORS software creates a surrogate module. Depending on your synchronization settings, the surrogate module contains a representation of the model.

rmi.doorssync(model_name, settings) synchronizes model_name with a DOORS surrogate module using the options that settings specifies.

current_settings = rmi.doorssync(model_name, 'settings') returns the current settings for model_name, but does not synchronize the model with the DOORS surrogate module.

current_settings = rmi.doorssync(model_name, []) performs synchronization with current settings known for model_name. If the RMI has not synchronized the model previously, rmi.doorssync uses the default settings.

default_settings = rmi.doorssync([]) returns a settings object with the default values.

Input Arguments


Name or handle of a Simulink model


Structure with the following fields.


Path to a DOORS project in the form '/PROJECT/FOLDER/MODULE'.)

The default, './$ModelName$', resolves to the given model name under the current DOORS project.


Saves the model after synchronization.

Default: 1


Saves the modified surrogate module.

Default: 1


Copies links from Simulink to the surrogate module.

Default: 0


Copies links from the surrogate module to Simulink.

If both doorsToSl and slToDoors are set to 1, an error occurs.

Default: 0


Removes unmatched links in Simulink (ignored if doorsToSl is set to 0).

rmi.doorssync ignores purgeSimulink if doorsToSl is set to 0.

Default: 0


Removes unmatched links in the surrogate module (ignored if slToDoors is set to 0).

Default: 0


Specifies which objects with no links to DOORS to include in the surrogate module.

Valid values are 1 through 6. 1 includes only objects with requirements, for fast synchronization. 6 includes all model objects, for complete model representation in the surrogate.

Default: 1

Output Arguments


The current values of the synchronization settings


The default values of the synchronization settings


Before running this example:

  1. Start the DOORS software.

  2. Create a new DOORS project or open an existing DOORS project.

After you complete the preceding steps, open the slvnvdemo_fuelsys_officereq model, specify to copy the links from the model to DOORS, and synchronize the model to create the surrogate module:

settings = rmi.doorssync('slvnvdemo_fuelsys_officereq', ...
settings.slToDoors = 1;
setting.purgeDoors = 1;
rmi.doorssync('slvnvdemo_fuelsys_officereq', settings);


Instead of using rmi.doorssync, you can synchronize your Simulink model with a DOORS surrogate module from the Simulink Editor:

  1. Open the model.

  2. Select Analysis > Requirements > Synchronize with DOORS.

  3. In the DOORS synchronization settings dialog box, select the desired synchronization settings.

  4. Click Synchronize.

See Also

Was this topic helpful?