Another set of simple functions or language constructs is a membership type. As with my other comments, there are more formal ways of defining this we are trying to keep it simple for people to understand. Everybody has drawers of things, items that are made up of other things, or just various collections that have items in them. As an example, at work, we have an organized set of drawers, perhaps 100 of them... They're nicely labeled using a label maker. However, we still can never find anything, or it takes a long time to locate even the simplest thing. When we go to get a micro USB cable, I don't know where the cable drawer is off-hand. I spent my time looking for the label, hoping I’m thinking of the correct word. This is especially true if I don't use the type of item very often or the term I’m thinking is too generic. We don't have that many drawers, but we do have many items and potentially more than one type per drawer. At home, it's comparable, but less organized and more of it.
So what? So we want a mechanism that eliminates this problem and does so naturally. Natural language processing! Of course!
It’s easy. Take our 100 drawers and label them with numbers. You could still have named labels if desired for the old school people. Then, to define or add something to a drawer a user could say “micro usb cable is in drawer 38" or “adding micro usb cable to drawer 38”. Now we know a piece of membership. Another user, at some later point, could then ask “where are micro usb cables?”. The voice-enabled device says “micro usb cables are in drawer 38". Done!! Clearly, a person may make a request to locate a cable or to know where to put them as well.
Like any system, it's only as good as the people placing things in or removing them. But that’s true even if named label. Using voice for interaction also allows us to, if desired, ask who took out an item or defined an item. The system can be extended to keep track of the numbers of items in a drawer. A user could say “how many micro USB cables are there?”. An answer would come back with the number. Procedures could be set up to have users say ”I'm removing a micro USB cable” and then it would be debited, and the person's voice would be recorded, or we could request their name if not provided.
The simple membership can be extended to MANY things and is extremely useful. The membership ‘things’ also do not have to be physical objects. They could be semantic or abstract, for example, an organization chart.
The key is natural language processing. Easy to add/remove and easy to find with voice.