I've struggled in the past with designing data(bases) around gene-identifiers that evolve over time. For example, UniProt and Ensembl change their identifiers for certain proteins/genes and the IDs go stale after a while (years). HGNC seems possibly better for this? What I'd like is to have a single unique identifier for each human gene that will remain stable for many years. I know genes get re-classified occasionally, but you shouldn't end-up with a new identifier for the same locus.