Every title has the same archive problem in a different shape. Copy migrated through three CMS generations, each with its own tag scheme. Photography sits in a DAM with captions but no subject codes. Broadcast footage is logged by programme and date, not by who appears in it. The material exists; the index does not.
We fix the index rather than the storage. Models read each item, whether article, image or clip, and propose tags drawn from a controlled vocabulary: your house taxonomy, IPTC Media Topics and IPTC Photo Metadata fields, and a people-and-places authority list. Alongside the tags, each item gets an embedding so the archive can be searched by meaning: “council housing disputes in the 1990s” finds stories that never used those words.
Tags are proposals until the archive team accepts the rules. Low-confidence suggestions, and anything naming a living person in a sensitive context, go to a review queue rather than straight into the record.