thought i could create listener to set the parent document if user set it to a string, but not working.  probably need to set the parent in the factory create method.
refactored for a factoryinterface