Maybe we should pass along the document too?  It seems like this method  could be used for some kind of format enhancement (e.g. "the format says it is a book, but it has an epub field too, so we'll call it a digital-book") or sanity check (e.g. "It says it's an image, but it is missing some required fields")