Я понимаю часть локализации ICU — форматы даты, времени и валюты, сопоставление и т. д. Когда дело доходит до перевода сообщений, я вижу людей, заявляющих, что ICU не предоставляет функции для перевода сообщений — проверьте, например, этот вопрос SOF.
Однако при проверке документов ICU мы обнаруживаем, что он предоставляет пакеты ресурсов, и документация, похоже, намекает на их использование для перевода сообщений:
Например, в международной документации PHP:
Локализованным программным продуктам часто требуются наборы данных, которые должны быть настроены в зависимости от текущей локали, например: сообщения, метки, шаблоны форматирования. Механизм ресурсов ICU позволяет определять наборы ресурсов, которые приложение может загружать в зависимости от локали, при этом получая к ним доступ унифицированным, независимым от локали способом.
Документация здесь: http://userguide.icu-project.org/locale/resources описывает функциональность, аналогичную хранилищу ключей и значений, с текстовыми источниками, которые можно скомпилировать в двоичный формат.
Мой вопрос заключается в том, предназначены ли пакеты ресурсов ICU (включая функции доступа и формат хранения) для — или это часть их цели — для использования для перевода сообщений — например, как файлы gettext и .po. Если да, есть ли какие-либо ресурсы или учебные пособия, в которых обсуждается это использование.
Или перефразируя: в целях дизайна, предназначен ли ICU для использования в сочетании с отдельным средством перевода сообщений, или он сам стремится обеспечить такую функциональность, или возможны оба варианта.