I think the first half of this makes sense, but I don't think the idea of reifying all the symbols of a collections, still less all the collections. The Oracle collection has 1963 messages in it, and who even knows if Oracle provides a way to navigate through them. If we keep them just names, we are completely free to let them be used by any system, whether we have an overview of it or not.
By the same token, I think it's better to keep the localization either on the C side or the Scheme side. If it turns out that the C system can't do localized messages, that you use <
https://github.com/johnwcowan/r7rs-work/blob//master/GettextCowan.md> or something like it. If the string is already localized, then attempts to localize it again will not change it anyhow.