Products & Services Solutions Academia Support User Community Company

Learn more about Simulink Verification and Validation   

rmi - Interact programmatically with Requirements Management Interface

Syntax

rmi setup
reqlinks = rmi('createempty')
reqlinks = rmi('get', object)
reqlinks = rmi('get', object, group)
rmi('report', object)
rmi('set', object, reqlinks)
rmi('set', object, reqlinks, group)
rmi('cat', object, reqlinks)
cnt = rmi('count', object)
rmi('clearall', object)
rmi('clearAll', object, 'deep')
rmi register linktypename
rmi unregister linktypename
rmi linktypelist
cmdstr = rmi('navcmd', object)
[cmdstr, titlestr] = rmi('navcmd', object)
guidstr = rmi('guidget', object)
object = rmi('guidlookup', model, guidstr)
rmi('highlightModel', object)
rmi('unhighlightModel', object)
rmi('view', object, index)
dialog = rmi('edit', object)
rmi('copyObj', object)

Description

rmi setup configures RMI for use with your computer and installs the interface for use with the Telelogic® DOORS® software, if needed.

reqlinks = rmi('createempty') creates an empty instance of the requirement links data structure.

reqlinks = rmi('get', object) returns the requirement links data structure for object. object is the name or handle of a Simulink or Stateflow object with which requirements can be associated.

reqlinks = rmi('get', object, group) returns the requirement links data structure for the Signal Builder group specified by the index group. In this case, object is the name or handle of a Signal Builder block whose signal groups are associated with requirements.

rmi('report', object) creates an HTML report that describes the requirements in object.

rmi('set', object, reqlinks) sets the requirement links data structure reqlinks to object.

rmi('set', object, reqlinks, group) sets the requirement links data structure reqlinks to the Signal Builder group specified by the index group. In this case, object is the name or handle of a Signal Builder block whose signal groups you want to associate with requirements.

rmi('cat', object, reqlinks) appends the requirement links data structure reqlinks to the end of the existing structure associated with object. If no structure exists, RMI sets reqlinks to object.

cnt = rmi('count', object) returns the number of requirement links associated with object.

rmi('clearall', object) removes the requirement links data structure associated with object, deleting its requirements.

rmi('clearAll', object, 'deep') deletes all requirements links in the model containing object.

rmi register linktypename registers the custom link type specified by the function linktypename.

rmi unregister linktypename removes the custom link type specified by the function linktypename.

rmi linktypelist displays a list of the currently registered link types. The list indicates whether each link type is built-in or custom, and provides the path to the function used for its registration.

cmdstr = rmi('navcmd', object) returns the MATLAB command string used to navigate to object.

[cmdstr, titlestr] = rmi('navcmd', object) returns the MATLAB command string cmdstr and the title string titlestr that provides descriptive text for object.

guidstr = rmi('guidget', object) returns the globally unique identifier for object. A globally unique identifier is created for object if it lacks one.

object = rmi('guidlookup', model, guidstr) returns the object name in model that has the globally unique identifier guidstr.

rmi('highlightModel', object) highlights all of the objects in the parent model of object that have requirement links.

rmi('unhighlightModel', object) removes highlighting of objects in the parent model of object that have requirement links.

rmi('view', object, index) accesses the requirement numbered index in the requirements document associated with object. index is an integer that represents the nth requirement linked to object.

dialog = rmi('edit', object) displays the Requirements dialog box for object and returns the handle of the dialog box.

rmi('copyObj', object) resets the globally unique identifier for object, preserving its requirement links.

Input Arguments

group

Signal Builder group index

guidstr

Globally unique model identifier

index

Integer that represents the nth requirement linked to object

object

Name or handle of a Simulink or Stateflow object with which requirements can be associated.

reqlinks

Requirement links are represented using a MATLAB structure array with the following fields:

doc

String identifying requirements document

id

String defining location in requirements document. The first character specifies the identifier type:

First
Character
IdentifierExample

?

Search text, the first occurrence of which is located in requirements document

'?Requirement 1'

@

Named item, such as bookmark in a Microsoft Word file or an anchor in an HTML file

'@my_req'

#

Page or item number

'#21'

>

Line number

'>3156'

$

Worksheet range in a spreadsheet

'$A2:C5'

linked

Boolean value specifying whether the requirement link is accessible for report generation and highlighting:

1 (default). Highlight model object and include requirement link in reports.
0
description

String describing the requirement

keywords

Optional string supplementing description

reqsys

String identifying the link type registration name; 'other' for built-in link types

Output Arguments

cmdstr

MATLAB command string

cnt

Number of requirement links associated with object

dialog

Handle for object

guidstr

Globally unique model identifier

object

Name or handle of a Simulink or Stateflow object with which requirements can be associated.

reqlinks

Requirement links are represented using a MATLAB structure array. See Input Arguments for details.

titlestr

Descriptive text for object

Examples

Get a requirement associated with a block in the slvnvdemo_fuelsys_htmreq model, change its description, and save the requirement back to that block:

slvnvdemo_fuelsys_htmreq;
blk_with_req =  ['slvnvdemo_fuelsys_htmreq/fuel rate' 10 'controller/...
   Airflow calculation'];
reqts = rmi('get', blk_with_req);
reqts.description = 'Mass airflow estimation';
rmi('set', blk_with_req, reqts);
rmi('get', blk_with_req);
 

Add a new requirement to the block in the previous example:

new_req = rmi('createempty');
new_req.doc = 'fuelsys_requirements2.htm';
new_req.description = 'A new requirement';
rmi('cat',blk_with_req, new_req);
 

Create an HTML requirements report for the slvnvdemo_fuelsys_htmreq model:

rmi('report', 'slvnvdemo_fuelsys_htmreq');

How To

  


Related Products & Applications

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.

 © 1984-2010- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS