We're updating the issue view to help you get more done.Learn more

Separate LOCATABLE path functions into PATHABLE class

Currently there are a number of functions corresponding to path-handling
in the LOCATABLE class, including the parent property. However, some classes
in the RM, such as EVENT_CONTEXT, ISM_TRANSITION and INSTRUCTION_DETAILS do
not inherit from LOCATABLE, but still need to be able to handle paths, since
they contain ITEM_STRUCTURE attributes. In general, there is a need to
make classes all the way down to the ultimate leaves, which are data types
and primitive types, path-enabled.

Status

Assignee

JeffJ

Reporter

JeffJ

Change Description

Changes made: - move the parent property and path functions from LOCATABLE into a new class PATHABLE, from which LOCATABLE inherits. - add the new functions items_at_path(), path_unique() to PATHABLE - define the semantics of the functions item_at_path() and items_at_path() to return respectively, a single item for a path that only matches one item and multiple items that match a 'non-unique' path - rename valid_path() to path_exists() in PATHABLE - change parent attribute to be of type PATHABLE - change the argument type of path_of_item to be PATHABLE - make EVENT_CONTEXT inherit from PATHABLE - make ISM_TRANSITION and INSTRUCTION_DETAILS inherit from PATHABLE.

Approved By

PG

Fix versions

Priority

Trivial