@dside в ванильной Java класс Date тоже проклят. В Oracle БД, кстати, тоже. Но простой способ определить, что в поле тип дата/время просто ОБЯЗАН быть, когда к тебе прилетает произвольный JSON и надо его заиндексировать. Вот и ебешься, определяешь, дата это или строка с номером телефона.
@nonsense JS помянут не просто так же – JSON оттуда вырос.
И даже самый крутой формат не спасёт от дерьмово спроектированного API, в котором значения так вот вперемешку. Мы (индустрия то бишь) до сих пор хороним мегапродвинутый XML.