Можно ли настроить тип данных элемента Json в соответствии со схемой Json? - PullRequest
1 голос
/ 17 октября 2019

Преобразование XML в JSON с помощью синтаксического анализатора StAXON, существует несоответствие типов данных между схемой Json (ожидается) и фактическим ответом JSON

Например: согласно схеме Swagger мы ожидаем « String * 1004». * »Значение для поля, но синтаксический анализатор XML в JSON дает нам« Integer », что не соответствует документу Swagger / Schema.

В типе accountId Swagger / Json Schema упоминается как String.

"accountId" : {
            "type" : "string",
            "description" : "The Id of the account",
            "readOnly" : true
          }

Значение XML-элемента accountId: < accountId>123</ accountId> После преобразования XML в JSON accountId: **123**, но согласно схеме мы ожидаем accountId: **“123”**

Универсальная логика синтаксического анализа XML в JSON:

  1. Если элемент имеет только числа, но начинается с нуля: <accountId>0123</accountId>, то вывод Json будет: String { accountId : “0123” }
  2. Если элемент имеет только числа, но не начинается с нуля: <accountId>123</accountId>, тогда вывод Json будет: Integer { accountId : 123 }
  3. Если элемент содержит символ: <accountName>Abc</ accountName>, тогда вывод Json будет: String { accountName : “Abc”)

Он преобразует Json в соответствии с данными, а не с какой-либо схемой, очевидно, что я не предоставлял никакой схемы при разборе синтаксического анализатора Staxon.

Есть ли способ изменить JSON, которыйдолжен соответствовать ожидаемой схеме Json. В соответствии с приведенным выше сценарием я ожидаю значение String, оно должно посмотреть на схему и сделать тип данных поля. Примечание: не хочу конвертировать все в String.

Заранее спасибо !!!

...