Show TOC

Function documentationDelete Operations

 

You have the following options for a delete operation:

  • A delete operation may be triggered for multiple selected elements and always refers to the subtrees with the selected root elements.

  • A delete operation may be triggered by the context menu in the browser view, list view, search result view or where-used-list.

Delete an Element

A delete operation always refers to the entire subtrees for all selected subtree root elements. The effect of a delete operation for an element depends on its change status:

  • An element in a changeable production branch will be immediately deleted finally by a successful delete operation.

  • An element with the change status Created will be immediately deleted finally by a successful delete operation.

  • An element with any other change status (Unchanged, Changed or Conflict) will be marked for deletion which then is performed in the parent branch if the deleted element if released. This deletion has the following results:

    • The element gets the change status Deleted.

    • If the element has been changed before in the branch (change status Changed or Conflict) the branch changes are removed before marking the element for deletion. The removed branch changes cannot be restored again.

A subtree which is deleted may contain elements with different change status values.

The deletion of an element has the following effects:

  • An element is deleted finally in a changeable production branch (i.e. no maintenance branch exists) by a delete.

    • The element does not appear as deleted element after the delete.

  • An element with change status Created is deleted finally by a delete.

    • The element does not appear as deleted element after the delete.

  • An element with any other change status (Unchanged, Changed or Conflict) is only marked for deletion.

    • The element appears as deleted element after the delete.

  • Any changes in the branch to an element are removed finally by a delete.

    • The attribute values of a deleted element are those of the element in the parent branch.

    • The location of a deleted element is the location of the element in the parent branch.

    • The target element of a deleted reference element is the target element of the reference element in the parent branch.

Illegal Delete Operations

A delete operation may not be allowed for a specific selection of elements. This delete operation is forbidden if a selected element to be deleted is still used by other elements. There are two kinds of usages which have to be considered:

  • An element cannot be deleted if it is used as reference target of a reference element. Such a usage may occur in the same branch where the delete operation is checked or in any child branch of it.

  • An element cannot be deleted in a branch if in any child branch the subtree rooted by the element has been modified.

The illegal delete operation of an element has the following rules:

  • An attempt to delete an element that is used as reference target in the current branch or a child branch is not allowed and an error message is issued.

  • An attempt to delete an element that is changed in a child branch is not allowed and an error message is issued.

Visibility of Deletions

Elements which have been marked for deletion are visible as deleted elements in the branch of the deletion. In order to display the deleted elements the user setting Display Deleted Elements has to be active. If this setting is active all elements that have been marked for deletion are visible in the Solution Documentation in all views (browser view, list view, search result, where-use-list, change list) as read-only elements. In a child branch of a deletion the deletion is done immediately and the elements marked for deletion are not visible anymore independently of the user setting Display Deleted Elements.

The visibility of deletions has the following rules:

  • If the user setting Display Deleted Elements is active then all elements that are marked for deletion are displayed in the UI in read-only mode and can be found by a search.

  • If the user setting Display Deleted Elements is inactive then no element that is marked for deletion is displayed or can be found by a search.

  • No element that is marked for deletion in the parent branch is displayed or can be found by a search in the child branch (independently of the user setting Display Deleted Elements).

Operations on Deleted Elements

The operations on deleted elements are limited to the lifecycle operations. Deleted elements cannot be edited or used otherwise in the solution documentation. A deleted element must not be used as a target element of a reference element.

Operations on deleted elements have the following rules:

  • A deleted element is only available in read-only mode. The edit mode is not available in the attributes panel.

  • The context menu does not provide any changing operation for a deleted element:

    • The operations Delete, Change, Change Target, Copy and Move are not available.

  • A deleted subtree may not be extended:

    • The operation New is not available in the context menu in the browser for a deleted parent element.

    • If a deleted structure element without children is selected in the browser then no empty child column is displayed (as in read-only mode).

    • The operation New is not available in the context menu in the assignments list for a deleted parent element.

    • If a deleted element without children is selected in the assignment list then no + tab is provided in the assignments list header.

    • The child area of a deleted element does not provide the operations Insert or Insert Copy.

  • The lifecycle operations are available for deleted elements:

    • The operations Start of the navigation path Element Changes Next navigation step Discard Changes End of the navigation path and Start of the navigation path Subtree Changes Next navigation step Discard Changes End of the navigation path are available for all root deleted elements in the context menu.

    • The operations Start of the navigation path Element Changes Next navigation step Discard Changes End of the navigation path and Start of the navigation path Subtree Changes Next navigation step Discard Changes End of the navigation path are not available for any non-root deleted element in the context menu.

    • The operations Start of the navigation path Element Changes Next navigation step Release Changes End of the navigation path and Start of the navigation path Subtree Changes Next navigation step Release Changes End of the navigation path are available for all deleted elements in the context menu.

  • It is not possible to select a deleted element as reference target:

    • Deleted elements are not available as targets in a Start of the navigation path New Next navigation step <Reference Type> End of the navigation path or Change Target operation.

    • The deleted elements are not found by the provided search functions in these operations.

    • This rule refers to all references types, for example: Process Step <Ref.>, Interface <Ref.>, Process <Ref.>, x<Exec.Ref.>, Alerting <Ref.>.

Inconsistencies caused by Deleted Elements

Even if all rules for deletions are met there may be situations where inconsistencies may arise in a branch caused by deleted elements. There are two possible cases for an inconsistency in a child branch caused by a deleted element:

  • Dangling References

    A child branch may contain a reference element with a deleted target element if the reference element has been created in the parent branch after the deletion of the target element. The creation of the reference element may be done by an explicit New operation, a Discard Changes operation or a Release Changes operation from a parallel child branch.

  • Orphan Elements:

    A child branch may contain an orphan elements with a deleted parent element if the orphan element has been created in the parent branch after the deletion of the parent element. The creation of the orphan element in the parent branch may be done by an explicit New operation, an Insert (Copy) operation, a Discard Changes operation or a Release Changes operation from a parallel child branch.

It is possible to display and edit Solution Documentation even if it contains inconsistencies.

Release Changes for Deletions

A deletion in a child branch marks elements for deletion. Such deleted elements have to be released in order to perform the deletion in the parent branch. Release changes for deletions have the following rules:

  • The release of deleted elements has the same effect in the parent branch as if the deletion is performed in the parent branch directly.

  • An element in the parent branch is deleted finally if it is the production branch by a release of a deletion. The element does not appear as deleted element after the release of a deletion.

  • An element in the parent branch with change status Created is deleted finally by a delete. The element does not appear as deleted element after the release of a deletion.

  • An element in the parent branch with any other change status (Unchanged, Changed or Conflict) is only marked for deletion. The element appears as deleted element after the release of the deletion.

  • Any changes in the parent branch to an element are removed finally by a release of a deletion.

    • The attribute values of a deleted element are those of the element in the next level parent branch.

    • The location of a deleted element is the location of the element in the next level parent branch.

    • The target element of a deleted reference element is the target element of the reference element in the next level parent branch.

Illegal Release Changes for Deletions

A release changes operation cannot be performed successfully if the release changes operation would cause illegal deletions in the parent branch. Such illegal delete operations are described in the corresponding chapter above. Illegal release changes for deletions have the following rules:

  • The release of deleted elements has the same effect in the parent branch as if the deletion is performed in the parent branch directly.

  • The release is only allowed if the corresponding deletion is allowed in the parent branch.

    • An attempt to delete an element in the parent branch that is used as reference target in the parent branch or a child branch is not allowed and the system shows an error message.

    • An attempt to delete an element in the parent branch that is changed in a child branch of the parent branch is not allowed and the system shows an error message.

Discard Changes for Deletions

The discard changes operation remove any marks for deletion for a deleted element. After a successful discard changes operation the selected elements do no longer contain any deleted elements. Each deleted element is replaced by the unchanged element from the parent branch. Discard changes for deletions have the following rules:

  • The Start of the navigation path Element Changes Next navigation step Discard Changes End of the navigation path and the Start of the navigation path Subtree Changes Next navigation step Discard Changes End of the navigation path operation is available for all root deleted elements in the context menu.

  • A successful discard changes operation of a deleted element removes the mark for deletion and thus makes the parent branch version visible again in the branch.

  • After a successfully discarding the changes of a deleted element the change status of all elements in the subtree rooted by then element is Unchanged.

Illegal Discard Changes for Deletions

A discard changes operation cannot be performed successfully for a deleted element if the discard changes operation would lead to dangling references in the solution documentation. There are two possible situations:

  • A discard changes operation is not allowed for a deleted reference element in the branch if the deleted reference element has a deleted element as reference target and the affected reference target element is not contained in the selection for the discard changes operation.

  • A discard changes operation is not allowed for a deleted element in the branch if the deleted element has a deleted parent element that is not contained in the selection for the discard changes operation. Illegal discard changes for deletions have the following rules:

    • For a child element of a deleted element the context menu does not provide the operationsStart of the navigation path Element Changes Next navigation step Discard Changes End of the navigation path or Start of the navigation path Subtree Changes Next navigation step Discard Changes End of the navigation path

    • The discard changes of a deleted reference element is not allowed if the target element is marked for deletion but not contained in the selection of the discard changes operation.