Wir nähern uns der Sache langsam
Ja, ich schreibe im Property eines Zeilenrecords im VTV die "RIGHTS" rein. Wobei das Wort "Rights" aus Anfangszeiten stammt und offenbar verwirrend ist. Es müsste eher "Childs" heissen
Nochmal kurz die Relationen:
A) Kategorien (das, was man im VTV sieht (s.o))
CATID DESCRIPTION PARENT RIGHTS(CHILDS)
B) Adressen (die einer Kategorie zugeordnet, aber nicht im VTV sichtbar sind)
ID CATID NAME .....
C) User (Relation UserID zu Kategorien-ID)
USERID CATID
Wenn jetzt ein User mit entsprechender Berechtigung aus (C) "seine" Adressen auflisten lassen möchte, dann erfolgt dies (pseudosql) mit "SELECT B.* FROM B.Adressen WHERE B.id IN (A.RIGHTS)"
Was Du als "Berechtigung" bezeichnet hast, sind die untergeordneten Node-IDs in Form eines kommaseparierten Strings, also die Sub-Kategorien-ID.
Gruß Igotcha