XSD를 변환하려고합니다. JAXB를 사용하여 Java 클래스로 제어 할 수 없습니다. 내가 갖는 오류는 다음과 같습니다 오류를 포함하는 XSD에서JAXB를 사용하여 XSD를 Java로 변환하는 데 문제가 있습니다.
[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: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>
구체적으로는 속성이 BooleanType를 사용하여 mxencrypted입니다. 부울 유형은
으로 정의됩니다.<xsd:simpleType name="BooleanType">
<xsd:restriction base="xsd:boolean">
<xsd:pattern value="0|1" />
</xsd:restriction>
</xsd:simpleType>
이 검색은 다소 일반적인 경우 인 것 같습니다. mxencrypted 행의 기본값이 1이 아니어야한다고 말할 수 있습니까? Liquid XML에 XSD를로드하면 스키마에서 오류를보고하지 않습니다. XSD 유효성 확인 (http://www.utilities-online.info/xsdvalidation/#.UV3zkL_EW0s)은 JAXB와 동일한 오류를보고합니다.
이 문제를 무시하고 기본값을 무시하는 클래스를 생성하도록 JAXB에 지시 할 수있는 방법이 있습니까?