Prima ho scritto un po' di fretta e mi sono incasinato.
Allora, io voglio associare piu parole chiave ad un file ed avere la possibilita' che una parola chiave si possa riferire a file diversi.

Se non ho capito male con l'HashMap posso fare la prima parte, ovvero avere piu parole chiave (diverse) che si riferiscono ad un valore; ma questa non ha la funzionalita' che una di queste parole chiave possa riferirsi a piu valori, cioe' nell'HashMap le chiavi devono essere tutte diverse.

Poi la ricerca puo' essere effettuata SOLO sulle chiavi, cioe' tu mi dai una chiave ( o un insieme di chiavi ) e io ti do la lista di tutti i file che queste riferiscono.

Se non erro in C++ questa struttura dati si chiama MultiMap.

Spero di nn essermi incasinato ancora una volta, sono discorsi un po' contorti :-)