Nie wykorzystywałem do tej pory ACL w stopniu większym niż implementacja na poziomie komponentu, ale teraz mam taką sprawę:
0. Robię komponent który umożliwia dodawanie treści od front-endu
1. Są dwie grupy użytkowników - grupa A i grupa B
2. Grupa A:
- może dodawać swoje pozycje (items)
- członkowie grup A i B mogą widzieć wpisy innych członków grupy A
- edytować pozycje mogą tylko właściciele pozycji
3. Grupa B:
- może dodawać swoje pozycje (items)
- edytować pozycje mogą tylko właściciele pozycji
- inni tylko z grupy B (warunkowo) mogą widzieć wpisy innych członków grupy A

Dodałem więc w dwie podgrupy do grupy Registered:
Registered
|...
|-Grupa A
|-Grupa B

Stworzyłem dwa poziomy dostępu
Poziom A - Grupa A
Poziom B - Grupa B

Określając uprawnienia:
- core.create
- core.edit
- core.edit.state
- core.edit.own
dla komponentu, zarówno dla grupy A jak i dla grupy B mam taki efekt, że członkowie grupy A mogą edytować pozycje B i odwrotnie. Co jest zresztą logicznie.

Zastanawiam się więc jak rozdzielić te uprawnienia. Przeglądając:
https://docs.joomla.org/Adding_ACL_r...your_component
doszedłem do wniosku, że trzeba wprowadzić kategorie, do kategorii przyporządkować uprawnienia Grupy A i Grupy B (aby nadpisać uprawnienia z komponentu) i każdy wpis dokonywany przez członków grupy A oraz grupy B przypisywać (np. na podstawie konfiguracji komponentu) do określonej kategorii.

I tu pojawia się moje pytanie. Czy to ma sens i tak powinno być zrobione? Z góry dziękuję za odpowiedź.