All three are examples of undocumented ad-hoc product classes designed to work in a particular way in particular versions of canned product databases. They're not meant to be stable across releases; it's a matter of somebody in the template section telling somebody in the language/core code section that his/her life would be a lot easier if there was a hook to do X in language Y. Testing only extends as far as making that one particular application work, and there's no guarantee that they'll do what you want them to do in your app (or that your fire suppression equipment is up to handling whatever unforeseen side-effects using the classes out of their normal context may have).
Julian Robichaux reverse-engineered most of NotesCSEventOwnerDocument; you can find the results of that here: http://www.nsftools.com/blog/blog-10-2004.htm#10-17-04
I haven't seen any similar work done on the other undocumented classes.