Javi, yo me refería más a esto (como ejemplo), que es a nivel de base de datos:
https://github.com/NeoRazorX/facturacion_base/blob/master/model/table/albaranescli.xml#L289
La cosa de esta restricción, es que hay que aplicarla a todos los XMLs que hagan uso del campo referencia de artículos, para evitar dejar cualquier tipo de incoherencia. Así es la propia base de datos, la que se encarga de propagar el cambio, y no nosotros a nivel de código.
A mi, a priori, se me ocurre eso como mejor solución, pero entiendo que si no se ha hecho de serie, es por algo, y es lo que desconozco.