Table of Contents
Last updated: 2024-06-26

Unit of Information


What is a Unit of Information?


A "Unit of Information" (UoI) is the complete set of metadata about a "Managed Object" in ShareAspace. Examples of Managed Objects are Parts, Documents, Requirements, etc. Taking Part as an example, the UoI of a Part includes information about that Part and all its versions. All Managed Objects (UoIs) can be "SoftTyped". UoIs can have references to other UoIs. The reference itself is contained within the UoI that is referring to another UoI.

UoI

Example:
A Master contains a set of Versions and each Version may contain one or more Definitions. An instance of a Master with all its contained objects (including identifiers, names, descriptions, versions, other attributes, references etc.) is considered a UoI.

UoI Instance

A UoI can reference other UoIs, the referring UoI contains the reference but not the referenced UoI.

UoI Reference

Update and Creation Metadata

A UoI and the entries that form a part of the UoI e.g. identifiers, names, descriptions, versions, definitions, references, etc. have metadata. The metadata is information about the instance itself, such as when it was created and possibly updated as well as who was the creator or who did the update.

The creation date and the creator is set when a UoI or entry is created and it will never change. At that point no data is set for the update date and updater. When a new entry is created it is added as a child to an existing entry or UoI, the action will lead to the parent entry or UoI getting a new update date and a new updater. When anything is updated the entry or UoI update date and updater will change and also the parent if it the updated item is not an UoI. The update date and updater data will propagate up to the next pivot object i.e. Master, Version or Definition.

Example A UoI is created by adam.brown@eurostep.com at 2001-01-01 but has not been updated. All entries and the UoI will have adam.brown@eurostep.com as creator and all entries and the UoI will have 2001-01-01 as creation date.

Unit of Information with no reference

A reference is then added to the definition by beth.smith@eurostep.com at 2015-12-01. The creator will remain for the UoI and the pre-existing entries but for the new reference beth.smith@eurostep.com will be the creator with creation date set to 2015-12-01. The definition will get its updater set to beth.smith@eurostep.com and the update date will be set to 2015-12-01. The version and master metadata are not changed.

Unit of Information with new reference

The reference is then updated by adam.brown@eurostep.com at 2018-06-01 and the updater of the reference and the definition is changed to adam.brown@eurostep.com and also is the update date for the reference and the definition changed to 2018-06-01. The version and master metadata is not changed.

Unit ofInformation with updated reference

If the reference had been created on the version the metadata propagation would have gone up to the version but not to the master nor the definition. The pattern is the same for a reference created/updated on the master.

Delete UoI


A Unit of Information (UoI) can be deleted. However, it is not completely deleted. Instead it enters a status called tombstone where all links and data are removed from the UoI but there remains a small remnant of the UoI left so that objects that previously referred to the removed UoI will not be left with invalid references.

Before and after delete

There is a status on each UoI called "Availability" and it can have the following values:

  • None: The UoI status is unknown.
  • NoAccess: There is no access to the UoI.
  • Active: This is the default state of a UoI, it is searchable and operational.
  • SoftDeleted: The UoI is soft-deleted, removed from end user access. No longer part of uniqueness checks. Can only be found via navigation to the object. Cannot be reactivated.
  • Deleted: The UoI is hard-deleted. The internal data are removed. Only entry related meta data partially remain to maintain external reference integrity. This is also called a "tombstone." Cannot be reactivated.
  • Destroyed: The UoI has been removed in its entirety and can never be reactivated. Not implemented and would not be visible.

The capability to "Delete" a UoI is now available In the "Model Browser" window. There you will find the button "Remove" that allows you to "delete" a UoI and thereby set the "availability" to "Deleted":

Remove button

The result is that a "deleted" UoI cannot be updated/read/deleted from the SoftType engine. It also will not be returned by queries. It can only be used internally for external reference and it will be able to be fetched by oid from the DataStore before the purge step. Referring to its entry is possible in SoftType update but not in SoftType create.

Deletion example


Before deletion of the UoI you can see that all the references are pointing to a complete UoI:

Before deletion

However, after the deletion of the UoI, you see only a tombstone left.

tombstone

Then if you click on the tombstone you see nothing inside the UoI and the "availability" is set to "Deleted".

empty

Outside of the "Model Browser" you should never be able to see the instance any more except from within an "update" dialog.

Generic module


In the "Generic Module" you can add the action "Delete" as well as "Multi-Edit-Delete".