can extract by field/subfield value
now handles empty fields gracefully