Is there any way to set a retention period for a document or a folder; so it can not be deleted efore the period expired?
This feature is currently not implemented in the default platform. It could probably be implemented programmatically (e.g. with an operation or a Seam component + new tab with a JSF template or both) by setting a local ACL at the document level that deny the “Remove” permission to anybody. It would be best be combined with a dedicated custom schema & facet + layout that stores and display the “Retention Period” metadata (e.g.: date, user id of the person who put the retention period, comment explaining the legal or organizational reason for the retention period) on the document when setting the ACL.
An other component such as an event listener that reacts to a scheduled daily event could then query the repository for any document whose retention period as expired, remove the local ACL