FEATURE: Required fields configuration
Is your feature request related to a problem? Please describe. The problem is Creating a data standards for separate collection or the whole Aleph instances. Real-world example: I am trying to teach people, who use our instance of Aleph to set up a SourceURL and always have a codes for vessels and vehicles. But they constantly forgetting this point. In case it would be mandatory field to fill - there won't be a place for mistake.
Describe the solution you'd like Providing an interface for collection's admins to manage required fields for a different entities. So I propose:
- to extend collection configuration panel with Advanced tab.
- to allow user pick an entity of interest and specify mandatory fields.
The question is whether this should be a collection-wised or Aleph-wised or should be sticked to collection types.
Describe alternatives you've considered The first thing I though was making changes to the followthemoney lib, but it can lead to versions split and much complicated maintenance process.
This sounds like it could be quite a useful feature. @sunu Do you have a feel for the complexity here? I'd assume we would need to beef up what we can do with collections/investigations in order to have this working right?
Yes, it sounds useful. My initial thoughts on the proposed solution:
- Aleph currently doesn't have an interface for global configuration management. All global settings are managed with environment variables. So we'll need to make them configurable through an UI and store them in the db.
- We don't have the concept of a collection admin. We only deal with read/write permissions. So admin permission needs to be introduced.
- Since we will have collection specific validation rules, we may need to implement appropriate apis inside the followthemoney lib to provide additional validation constraints without the need to change the underlying schemata.