Separating messages into external resources and documenting change