Add category based variables to built-in variables in order to be able to Filter categories, inheritances and hidden categories:
- Added categories, not only from new_wikitext's variable but also from transclusions with models. (added_category)
- Removed categories, not only from old_wikitext's variable but also from transclusions with models. (removed_category)
- Old_category / new_category
- Added/removed categories depending on category's inheritances (supra or deep from another category even not called in page)
- added/removed_parent/children_category
Example :
Article : https://fr.wikipedia.org/wiki/Paris
Main hidden cats :
- Catégorie:Portail:Communes de France/Articles liés
- Catégorie:Portail:Paris/Articles liés
Expected filter: block newly added categories which are children from a parent category like Catégorie:Portail:France
Draft/example of blocking filter :
!"user" in user_groups match 1 = "Portail:France" & (added_children_category //(from)// parent_category irlike match1 | removed_category is children_category //(from)// parent_category irlike match1 )
Which should mean :
User can't :
- add a category which is a child from a parent_category whose name is similar to match1
- remove categories if they are children categories from parent_category whose name is similar to match1
It would be good features for enforcing conventions such as fr:WP:OVERCAT and fr:WP:BDP.