Here I would maybe go to different direction than DS has started. Default functionality is somehow connected to will to hide design data and to multiple steps of approval. Not very finished though. Instead of maturity states In_Work-Private-Shared-Released-Obsolete I would see that most common for everyone (best as template) would be much simpler. So my proposal for default maturity states are:
1) IN_WORK - New data, something that is not ready yet, not to be manufactured (yet). Can be modified freely.
2) RELEASED - Locked data, that can not be modified, since it has aleady entered to manufacturing phase. To 'unfreeze' (Unrelease) one should be required ot make a new version.
3) OBSOLETE - Data that is no longer available for new projects, for new item manufacturing.
More about how lifecycle of these should work in last mail, where I try to draft some basic rules.