Эта функция присутствовала в черновиках XSD 1.1, но была перенесена на довольно поздней стадии.
Я был активен в рабочей группе, когда было принято это решение. Вопрос стал довольно острым, поскольку IBM решительно выступала за добавление PrecisionDecimal, а Oracle категорически против (большинство других не чувствовали себя так или иначе); но, как это часто бывает в работе со стандартами, я думаю, что позиции основывались больше на технических суждениях отдельных лиц, чем на деловых интересах корпораций.
Я лично выступал против добавления xs:precisionDecimal
на том основании, что рабочим группам XQuery и XSLT придется определять операционную семантику (в частности, правила для арифметики c), которая, вероятно, будет гораздо больше работы, чем просто определение типа данных для целей проверки. Также существовала проблема циклических c зависимостей: поскольку в утверждениях XSD 1.1 используется XPath, было трудно добавить новый примитивный тип данных в XSD без одновременного определения операционной семантики XPath для этого типа данных; это дало рабочим группам XQuery и XSLT возможность использовать это решение, и никто из рабочих групп XQuery и XSLT не был заинтересован в выполнении этой работы. (Дон Чемберлин из IBM написал план того, какие изменения потребуются, на https://www.w3.org/XML/2007/dc.pd.html; но вскоре после этого он ушел из IBM и рабочих групп)
В конце концов, решение Чтобы извлечь это из спецификаций, нужно было исходить из того, что для добавления функции в W3 C spe c требуется высокий уровень согласия, а не 50% -ное большинство.