Я пытаюсь преобразовать XSD. Я не могу управлять классами Java с помощью JAXB. Ошибки я получаю являются:Проблемы, связанные с преобразованием XSD в Java с использованием JAXB
[ERROR] cvc-pattern-valid: Value 'true' is not facet-valid with respect to pattern '0|1' for type 'BooleanType'.
line 139 of http://neon/meaweb/schema/common/meta/MXMeta.xsd
[ERROR] a-props-correct.2: Invalid value constraint value '1' in attribute 'mxencrypted'.
line 139 of http://neon/meaweb/schema/common/meta/MXMeta.xsd
код в XSD, который содержит ошибку в:
<xsd:complexType name="MXCryptoType">
<xsd:simpleContent>
<xsd:extension base="xsd:base64Binary">
<xsd:attribute name="changed" type="ChangeIndicatorType" use="optional" />
<xsd:attribute name="mxencrypted" type="BooleanType" use="optional" default="1" />
</xsd:extension>
</xsd:simpleContent>
В частности, это атрибут mxencrypted с помощью BooleanType. BooleanType определяется как
<xsd:simpleType name="BooleanType">
<xsd:restriction base="xsd:boolean">
<xsd:pattern value="0|1" />
</xsd:restriction>
</xsd:simpleType>
От поиска вокруг этого, кажется, довольно распространенный случай. Из того, что я могу сказать, значение по умолчанию в mxencrypted строке не должно быть 1? Когда я загружаю XSD в Liquid XML, схема не сообщает об ошибках. Проверка XSD здесь (http://www.utilities-online.info/xsdvalidation/#.UV3zkL_EW0s) сообщает те же ошибки, что и JAXB.
Есть ли способ сказать JAXB игнорировать эту проблему и просто сгенерировать класс, игнорирующий значение по умолчанию?