well, it's not really trying to be xml. When I save the command tree as xml I mimic the layout of the tree, but the way that information gets attached to the words themselves and then returned to me by the engine based on what you say is a bit sticky. Any given value has to be attached to something. So you need to have a phrase at the beginning of your command. The command actually gets attached to (or associated with) the phrase.
I would like to use the tree only for the groups and command nodes, and then have a custom editor for each command, where I can do much more complex things, including macros, and have dropdown pre-wired commands and modifiers etc. to make it easier to edit. Then I would store all that in a hash table and just get the speech engine to return the hash key and the payloads to me. I've been thinking about it a lot, and I 'll do it eventually but I haven't got the time. Plus I haven't been coding in windows for very long and everything is a bit of a struggle. One that I enjoy, but sometimes it is slow going.
Yes, it doesn't hurt to do a little training, especially if you want to use payload dictation as a payload, which is where you can say almost anything in the english dictionary. And if you say complete sentences, some of the context logic kicks in, where it considers all the words together to make its best guess. Don't OVERtrain it though. I think that can cause some problems.
I am intrigued by that ps3 eye mic. I love my ps3 remote. Was it hard to set up drivers for it? You are on win7x86 correct? I wonder if x64 would let me... I like the idea of an array microphone, especially at that price. My wifes laptop has a 2 element array on it, but it sucks. Speech accuracy is way better when the "beam forming" is turned off (i.e. not acting as an array).