require metadata to be present