Should we throw an exception here if the user is doing something we can not handle?