Use file if identify not available
Add file= data= and improve error msgs