2014-10-09 4 views
2

스키마 버전 1.1을 사용하는 XSD에서 jaxb 클래스를 어떻게 만들 수 있습니까? "XS는 : 재정의"내게 자바 클래스를 만들려고하고 유효성 검사 오류를 줄XML 스키마 용 Jaxb 클래스 1.1

샘플 XSD :

<?xml version="1.0" encoding="ISO-8859-1"?> 
<xs:schema targetNamespace="{target namespace}" 
    xmlns="{xmlns}" 
    xmlns:xs="http://www.w3.org/2001/XMLSchema" 
    xmlns:xlink="http://www.w3.org/1999/xlink" 
    elementFormDefault="qualified" 
    attributeFormDefault="unqualified" 
    xmlns:vc="http://www.w3.org/2007/XMLSchema-versioning" vc:minVersion="1.1"> 

<xs:override schemaLocation="o1_3_2/o1.xsd"> 
     <xs:group name="ReferenceDataElementExtension"> 
     <xs:sequence> 
      <xs:element name="USERPROF" type="xs:string"/> 
      <xs:element name="FACLPROF" type="xs:string"/> 
      <xs:element name="STDYPROF" type="xs:string"/> 
      <xs:element name="TRAINING" type="xs:string"/> 
     <xs:sequence> 
    <xs:group name="ReferenceDataElementExtension"> 
</xs:override> 
</xs:schema> 

그러나 생성 클래스 xjc를 명령을 사용하는 동안은 유효성 검사 오류 제공 :

s4s-elt-invalid-content.1: The content of 'schema' is invalid. Element 'override' is invalid, misplaced, or occurs too often. 

답변

1

XJC (JAXB의 스키마 컴파일러)가 XML 스키마 1.1을 지원하지 않는다고 생각합니다.

XJC는 XSOM 라이브러리를 사용하여 XML 스키마를 처리합니다. 그러나 XSOM은 xs:override을 지원하지 않습니다. 여기를보세요 :

https://svn.java.net/svn/xsom~sources/trunk/src/xmlschema.rng

없음 override, 죄송합니다.

+1

답장을 보내 주셔서 감사합니다. 이 문제를 해결할 수있는 방법이 있습니까? 우리가 XJC를 사용할 수 없다면이 xsd에서 자바 클래스를 어떻게 생성 할 수 있을까요? – Ajay