One of the nice thing about KConfig is that all the keys used by the application are listed in an XML file with labels and default value.
Example:
<entry name="menuItems" type="StringList"> <label>The menu tabs to show.</label> <default>bookmark:t,application:t,computer:t,used:t,oftenUsed:f,leave:t</default> </entry>
This allows to generate documentation for those configuration files. In Kiosk, we only have bool KAuthorized::authorize(const QString &action), so we can't really enforce the documentation of the various existing keys, since there is no way to list all the existing keys, and we don't have any descriptions.
Forcing the keys to be listed in an XML files will break the existing API, but maybe we could investigate doing it for KF6.
I'm not and KConfig or Kiosk expert, so I could be wrong but I think this could allow generating documentation but also create an admin GUI for Kiosk and other fancy stuff ;)