add fallback to use other field when text is empty