doRule no longer will throw with bad rule data