Существует ли стандартный формат строки продолжительности для форматов XSD и JSON? - PullRequest
1 голос
/ 10 октября 2019

Мы ищем общий формат строки для атрибутов Duration, который можно использовать как в сообщениях на основе JSON, так и в формате XML. Существует ли стандартный формат продолжительности, который можно использовать для обоих?

Это для протокола B2B, где «продолжительность» является общим элементом. В настоящее время это реализовано только в XML , поэтому мы создаем XSD с использованием элемента xs: duration (см. ISO 8601 ). Мы хотим включить JSON в качестве альтернативного формата, но использование строк xs: duration не кажется естественным.

Лично я нахожу XML xs:формат продолжительности труден для чтения и хотел бы от него избавиться

XML xs: пример продолжительности в течение 2 минут 45,3 секунды

<device up-time="PT2M45.3S" />

То же значение в JSON, которое в настоящее время используетсяформат .NET TimeSpan

 "up-time":"00:02:45.3"

1 Ответ

1 голос
/ 10 октября 2019

Существует только один стандарт продолжительности, это формат ISO 8601 (принятый XSD). Вы можете использовать его в JSON, если хотите.

Конечно, это ужасно. Стандарты часто безобразны. Если есть деловые причины желать пожертвовать преимуществами использования стандартов в интересах эстетики, то было бы приемлемо использовать либо (а) целое число секунд, либо (б) формат xs: time, например 12:30:00 - достаточно легко конвертировать между этими форматами. Но для протокола B2B я бы сказал, что стандарты превосходят эстетику.

Принятие технических решений, затрагивающих всю отрасль на основе того, что вы описываете как «личные чувства», кажется неуместным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...