Свифт парсер с открытым исходным кодом ISO 20022

Я работаю над проектом с использованием Java и ищу библиотеку с открытым исходным кодом для анализа быстрых сообщений: ISO 15022 и 20022. для 15022 я уже нашел решение, которое является Prowidesoftware, но для 20022 я ничего не нашел. есть идеи? Благодарю.

2 ответа

Решение

Мы много лет искали это около года назад, но не смогли найти, поэтому мы создали свой собственный парсер с использованием XPath. Это утомительная работа, но она поможет лучше понять структуру.

Я один из авторов Prowide Core. В версии с открытым исходным кодом поддержка MX в настоящее время ограничена следующим:

Внутри MxParser:

  • Преобразование сообщения XML в дерево MxNode. Это общее структурированное представление всего содержимого, которое может использоваться для получения определенных элементов с помощью xpath. Он анализирует полное дерево, включая как полезную нагрузку, так и служебную информацию (обертки, если таковые имеются, заголовок приложения и содержимое тела).
  • Комплексный анализатор и модель для дополнительных заголовков. Обратите внимание, что заголовок приложения в основном используется для идентификации конкретного сообщения, и поддерживаются две версии; старый SWIFT ApplicationHeader и ISO BusinessApplicationHeaderV01.
  • Вспомогательный API для определения определенного типа сообщения Mx, анализа структуры полезной нагрузки и извлечения частей документа или заголовка из XML простым и эффективным способом.

Тогда иерархия AbstractSwiftMessage представляет собой модель, предназначенную для бесперебойного сохранения сообщений MT и MX. Модель хранит сообщение в необработанном формате + метаданные. В следующей версии классы этой модели также содержат соответствующие аннотации JPA.

Комплексная модель и анализатор для каждого сообщения MX реализованы в подклассах AbstractMX в библиотеке Prowide Integrator. Не с открытым исходным кодом, хотя.

Наконец, если у вас есть доступ к XSD типов MX, которые вам нужно обработать, вы можете сгенерировать свой собственный анализатор с помощью jaxb.

Другие вопросы по тегам