aleph icon indicating copy to clipboard operation
aleph copied to clipboard

FEATURE: Required fields configuration

Open ozhyrenkov opened this issue 3 years ago • 2 comments

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.

ozhyrenkov avatar Jun 14 '22 12:06 ozhyrenkov

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?

Rosencrantz avatar Jun 14 '22 13:06 Rosencrantz

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.

sunu avatar Jun 28 '22 05:06 sunu