I think !url should throw, to give the earliest errors. (I guess the spec will define this)