Я пытаюсь ограничить числовые цифры после десятичной точки и разрешить только цифру нуля. Например, если значение равно 3431.0000, это значение действительно. Однако, если это значение равно 3431.1110 или 3431.1000, то оно недействительно. Может ли кто-нибудь помочь мне в том, как я могу добавить правила для ограничения такого требования в моем файле схемы? Я использую валидатор JAXB для проверки схем, а ниже - фрагмент кода из файла схемы.Как ограничить числовые цифры, кроме 0 после десятичной точки
<xs:simpleType name="Decimal8-2">
<xs:restriction base="xs:decimal">
<xs:fractionDigits value="4" />
<xs:minExclusive value="0" />
<xs:pattern value="\d+\.\d{4}" />
</xs:restriction>
</xs:simpleType>
Помните, что когда вы используете фасет для ограничения лексического пространства числового типа, вы делаете жизнь очень трудной для любого приложения, которое должно генерировать этот формат XML. Мой совет будет заключаться в том, что схема должна всегда допускать альтернативные лексические представления, которые сопоставляются с одним и тем же базовым значением. Но, конечно, если вы пытаетесь ограничить данные в соответствии с требованиями существующего приложения, это может не примениться. –