How do I create groups and items in runtime mode, display them in the user´s interface (basic UI perhaps), and control their events (also in runtime)? Is it possible?

So, there’s no way to add an item or group in runtime mode.
Ex: The user wants to create a new scenario, and wants to give the name “Good evening”. But it does not have this scenario planned, it is not written in the files ‘rule’ or ‘sitemap’. There is no ‘Good_evening’ group or items associated with this group either.
This will never be possible in OpenHAB: create a group through the Basic UI, associate items with this new group, indicate how each of these items should work, without changing the rule and sitemap files.
Is correct?
I read about Virtual Item. I understood it as being a resource to use as an item without having to present it in the UI (this is optional). It is like using a Switch as a boolean variable, but with the advantage of persistence and the use of triggers (it’s is an exemple).
Anyway, I would have to declare it on some item file. What I’m looking for is not having to declare on an item file, because I just do not know what the user is going to want to do. What I want is to create mechanisms to create scenarios, by the UI, without declaring items in the files.
Something similar to my idea was discussed here:
https://community.openhab.org/t/configurable-scenarios/10140/7
The difference is that all items and all groups are declared. But what if the user wants to add another scenario? I would have to rewrite the rules, items and sitemap files. What I’m looking for is an alternative to do this without rewrite. So I mentioned hashmap, where I can create lists, new items and new groups in memory, but I still do not know how to present these new things, because in essence, OpenHab only presents what is explicitly described on item and sitemap files.