Also die Struktur sollte so aussehen:
device.channel.state
device[.folder.[folder...].channel[.folder[.folder...].state
device[.folder[.folder...].state
folder[.folder...].state
Unterhalb von channel sollte kein device mehr kommen
Folder können beliebig dazwischen sein.
Auch Strukturen die nur folder aufweisen sind voll ok
Falls mal kein State am Ende exstiert ist das auch ok (z.B weil ein Adapter eine Struktur aufbaut aber (noch) kein Gerät verbunden ist dass da was als state ablegen will.
Grund für diese Struktur ist dass sich VISsen damit leichter tun zu erkennen um was es geht.
Was NICHT erlaubt ist und unbedingt vermieden werden sollte sind States die Kinder haben. (Sorry für diese Geburtenkontrolle). Diese Situation gibt es zwar in seltenen Fällen (technisch und oder historisch bedingt) sollte aber bei Neuen Adapterns bzw im Userbereich unbedingt vermieden werden. Dies ist jedenfalls als Ausnahme zu sehen. Und dies kann auch in zukünftigen Versionen zu Warnings / Fehlern führen.