kilt,
This could be a tough question. UserString support for various objects has always been a bit uncertain to me. As you mention, FDK and ES docs only list the property for a couple of object types, but it seems to work in many places when used with the FDK.
ES seems different and perhaps it's a bug. It does seem certain that ES does not support the property on a table object, but I don't know if that is by design. The documentation suggests that it is. If so, it would seem that you got lucky with the FDK but that luck ran out with ES.
You said these are structured documents. Any particular reason that you can't use the element object instead? The UserString property seems to work reliably with those.
Russ