【问题标题】:Jaxb classes for XML schema 1.1XML 模式 1.1 的 Jaxb 类
【发布时间】:2014-10-09 09:42:23
【问题描述】:

我们如何从架构版本为 1.1 的 XSD 创建 jaxb 类。 当我尝试创建 java 类时,“xs:override”给我验证错误

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.

【问题讨论】:

    标签: jaxb


    【解决方案1】:

    我认为 XJC(JAXB 的模式编译器)不支持 XML Schema 1.1。

    XJC 使用名为XSOM 的库来处理 XML Schema。但是 XSOM 似乎不支持xs:override。看这里:

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

    没有override,对不起。

    【讨论】:

    • 感谢您的回复。是否有任何解决方法。如果我们不能使用 XJC 那么我们如何从这个 xsd 中创建 java 类
    猜你喜欢
    • 1970-01-01
    • 2012-09-24
    • 2012-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多