@staticmethod
def _get_new_obj(model_cls, id_gen, field, tag):
    """Generate a new model object for associated data for
        an audio tag.
        """
    val = getattr(tag, field, None)
    if val is None:
        raise AttributeError('Invalid tag field {0} for {1}'.format(field,
            tag.path))
    obj = model_cls()
    obj.id = id_gen(val)
    obj.name = val
    return obj
