Scope evaluation

Read this topic to understand how Save Offline and Delete (SOAD) scopes are evaluated.

Each SOAD scope is evaluated as follows:

  1. Any specified object is included in the initial object list. If the specified object does not exist, the evaluation stops with an error message.
  2. Any query expression is evaluated with any scope-specific exclusion query included. The objects found are added to the object list.
  3. If the object list is empty, the evaluation quits with an error message.
  4. Each applicable expansion rule is applied to each object in the query list. If an expansion rule is type-specific, that rule is executed only if the object being expanded has that type. To avoid infinite recursion or duplicate expansions, the expansion tracks which objects are expanded. When a query-based expansion rule is executed, any scope-specific exclusion query is added to the query expression. This action does not apply to ACcent-based expansion rules.
  5. For each object in the object list, any object whose type is one of the global excluded types, such as a model object, is removed from the list.
  6. If an object in the object list is being saved offline and does not have other versions of the same instance, it is removed from the list.
  7. The scope-specific exclusion rules are applied by evaluating each rule, in order, against the objects remaining in the list that match that type. If any of the objects returned by the query are not in the object list, the object being evaluated is removed from the list.
  8. For each object remaining in the list, a query for projects using that object is performed. If an object has a parent project that is not on the object deletion list, it is removed.
  9. Finally, if the user is not in the ccm_admin role, any object that is not modifiable by the user is removed from the list. When the object is removed from the list, non-administrators can use SOAD for deleting their own working, checkpoint, visible, public, or prep versions.

At the end of this evaluation, the object list contains all the objects targeted for deletion and optional saving offline.

To obtain detailed scope evaluation information, select the Verbose check box in the Save Offline and Delete dialog box or use the -verbose option on the command line. However, turning on this type of tracing slows the operation.

The following are scope evaluation features that change the object list after the initial object specification or query is evaluated:


Feedback