Main Content

updateFromDocument

Class: slreq.Reference
Namespace: slreq

Update referenced requirements from external requirements document

Description

[status,changeList] = updateFromDocument(topRef) updates the referenced requirements under the import node topRef. The function returns the update status and a list of updated requirements.

example

[status,changeList] = updateFromDocument(topRef,docURI) updates the referenced requirements under the import node from the external requirements document specified by docURI. Use this syntax to update referenced requirements when the name or path of the external requirements document has changed.

example

Input Arguments

expand all

Import node, specified as an slreq.Reference object.

Resource identifier for the external requirements document, specified as a string scalar or character vector.

Example: [status,changelist] = updateFromDocument(topRef,"myDoc.docx")

Output Arguments

expand all

Requirement set update status, returned as a character vector.

List of updated referenced requirements, returned as a character vector. The list includes the properties of each referenced requirement changed by the function.

Examples

expand all

This example shows how to check if the import node has an available update and update the referenced requirements.

Load the crs_req requirement set.

rs = slreq.load("crs_req");

Get a handle to the import node of the requirement set.

topRef = children(rs);

Check if the import node has an available update.

tf = hasNewUpdate(topRef)
tf = logical
   1

A result of 1 means that topRef has been updated since the last time it was imported. Update the referenced requirements under the import node.

[status,changelist] = updateFromDocument(topRef)
status = 
'Update completed. Refer to Comments on Import1.'
changelist = 
    'Updated: CC003_01. Properties: description
     Updated: CC003_02. Properties: description
     Updated: CC003_03. Properties: description
     Updated: CC003_04. Properties: description
     Updated: Cruise Control SET Indicator Light. Properties: description
     Updated: Cruise control buttons. Properties: description
     Updated: Cruise control mode indicator. Properties: description
     Deleted: Cruise control modes
     Updated: Dashboard image. Properties: description
     Inserted: Dashboard image_1
     Updated: Deactivating cruise control. Properties: description
     Deleted: Disabling cruise control
     Updated: Enabling cruise control. Properties: description
     Updated: Other inputs. Properties: description
     Updated: ROM. Properties: description
     Updated: Resuming cruise control. Properties: description
     Inserted: Simulink_requirement_item_1
     Inserted: Simulink_requirement_item_10
     Inserted: Simulink_requirement_item_11
     Inserted: Simulink_requirement_item_12
     Inserted: Simulink_requirement_item_13
     Inserted: Simulink_requirement_item_14
     Inserted: Simulink_requirement_item_15
     Inserted: Simulink_requirement_item_2
     Inserted: Simulink_requirement_item_3
     Inserted: Simulink_requirement_item_4
     Inserted: Simulink_requirement_item_5
     Inserted: Simulink_requirement_item_6
     Inserted: Simulink_requirement_item_7
     Inserted: Simulink_requirement_item_8
     Inserted: Simulink_requirement_item_9
     Updated: System Inputs. Properties: description
     Updated: System outputs. Properties: description
     Updated: Throttle value calculation. Properties: description
     Inserted: When the vehicle is started. Cru
     Inserted: boolean
     Inserted: boolean_1
     Inserted: boolean_2
     Inserted: boolean_3
     Inserted: boolean_4
     Inserted: boolean_5
     Inserted: single
     Inserted: single_1
     Inserted: single_2
     Inserted: uint8
     Inserted: uint8_1
     '

This example shows how to update referenced requirements from an external requirements document with a different name than the original requirements document.

Load the crs_req requirement set.

rs = slreq.load("crs_req");

Get a handle to the import node of the requirement set.

topRef = children(rs);

Get the name of the external requirements document that the requirements were imported from.

oldDoc = topRef.Artifact
oldDoc = 
'crs_req.docx'

Update the referenced requirements from the document with the name crs_req_new.docx.

[status,changelist] = updateFromDocument(topRef,"crs_req_new.docx")
status = 
'Update completed. Refer to Comments on Import1.'
changelist = 
    'Updated: CC003_01. Properties: description
     Updated: CC003_02. Properties: description
     Updated: CC003_03. Properties: description
     Updated: CC003_04. Properties: description
     Updated: Cruise Control SET Indicator Light. Properties: description
     Updated: Cruise control buttons. Properties: description
     Updated: Cruise control mode indicator. Properties: description
     Deleted: Cruise control modes
     Updated: Dashboard image. Properties: description
     Inserted: Dashboard image_1
     Updated: Deactivating cruise control. Properties: description
     Deleted: Disabling cruise control
     Updated: Enabling cruise control. Properties: description
     Updated: Other inputs. Properties: description
     Updated: ROM. Properties: description
     Updated: Resuming cruise control. Properties: description
     Inserted: Simulink_requirement_item_1
     Inserted: Simulink_requirement_item_10
     Inserted: Simulink_requirement_item_11
     Inserted: Simulink_requirement_item_12
     Inserted: Simulink_requirement_item_13
     Inserted: Simulink_requirement_item_14
     Inserted: Simulink_requirement_item_15
     Inserted: Simulink_requirement_item_2
     Inserted: Simulink_requirement_item_3
     Inserted: Simulink_requirement_item_4
     Inserted: Simulink_requirement_item_5
     Inserted: Simulink_requirement_item_6
     Inserted: Simulink_requirement_item_7
     Inserted: Simulink_requirement_item_8
     Inserted: Simulink_requirement_item_9
     Updated: Successive Target Speed Increment. Properties: description
     Updated: System Inputs. Properties: description
     Updated: System outputs. Properties: description
     Updated: Target Speed Increment. Properties: description
     Updated: Target speed decrement. Properties: description
     Updated: Throttle value calculation. Properties: description
     Inserted: When the vehicle is started. Cru
     Inserted: boolean
     Inserted: boolean_1
     Inserted: boolean_2
     Inserted: boolean_3
     Inserted: boolean_4
     Inserted: boolean_5
     Updated: crs_req_new. Properties: summary
     Inserted: single
     Inserted: single_1
     Inserted: single_2
     Inserted: uint8
     Inserted: uint8_1
     '

Tips

  • When your requirement set contains requirements imported from multiple external requirements documents, update only the referenced requirements from the specified external requirements document by using the updateReferences method.

  • To change the stored name and path of the external requirements document without updating the imported referenced requirements, use the updateSrcFileLocation method.

Version History

Introduced in R2019a

expand all