code: public static InternalQName getName(ValueData valueData) throws RepositoryException
     {
        if (valueData instanceof TransientValueData)
        {
           return getName(((TransientValueData)valueData).delegate);
        }
        
        try
        {
           return ((AbstractValueData)valueData).getName();
        }
        catch (IllegalNameException e)
        {
           throw new RepositoryException(e.getMessage(), e);
        }
     }
docs: Returns <code>String</code> value.