Currently to put a document in the trash, we change its lifecycle state to deleted. This has several unfortunate consequences:
- the lifecycles have to have a 'deleted' state
- the lifecycles have to be designed with appropriate transitions to the 'deleted' state
- putting a document in the trash loses its previous lifecycle information, so we have to guess a lifecycle state if the document is restored (removed from the trash).
To avoid this, we should use a specific system property boolean ecm:isTrashed instead of the lifecycle state to denote trashed documents.
The will be Java and NXQL APIs to access this boolean.