looking for an easy and usable solution for the following scenario. Users must be able to create their own multi-level Country Groups to be used as checkbox-tree filters later on in an application. One could safely assume that a user already knows the structure they are going to need, but you can’t base a solid UI and user expectation based on assumptions.
Logic would read that they create the parent levels first, and then end up with the deepest level category and apply items on it, eg:
Parent cat > Child cat > items => Europe > Northern Europe > Countries
However, if you users are not somehow restricted, they could also apply items to a top-level category, eg:
Europe > Greece, Italy, France...
So if someone creates a (future-to-be top-level) region, applies countries on it and afterwards decides to create sub-regions with their countries, this would create a serious UX when selecting the filters..
Assuming the following structure with countries also directly applied on a top-level – the top-level checkbox toggle would a) toggle children sub-regions and/or b) toggle its own countries. A paradox, considering that a top-level region might already contain countries of its sub-regions.
☑ - Europe (Greece, Italy, France...) ⌊ ☑ Southern Europe (Greece, Italy...) ⌊ ☑ Northern Europe (France...)
The common way to design things would be to create the structure top-down, assume (and hope) that users don’t apply directly countries on a region and then create sub-regions and select previously created categories as parents.
I thought about following a different approach – when creating a region, force users to either select between
Sub-regions before populating the rest of the form, however, this would assume that the structure is created bottom-up (you need to create sub-regions first) which isn’t very intuitive.
Another solution would be to completely ignore countries directly applied on any region, or sub-region that is not the deepest level, however, I don’t really like the solution. This could also mean that users might apply countries several times.
So, the question is, how would you guide users using an easy UI to create this structure without having to explain anything and so that everything is intuitive and flows naturally?