Lo siento, me faltó un pedazo:
Respecto al idioma, me parece que está mal planteado el diseño. Yo hubiese puesto una tabla "DESCRIPCION" donde guardar las diferentes versiones según un ID de idioma puesto como parte de la PK, pero bueno, es tu modelo...