JAXB-具有xsd值的自定义注释

JAXB-具有xsd值的自定义注释,jaxb,xsd,annotations,Jaxb,Xsd,Annotations,我有一个例子,我试图从许多不同的xsd生成java类。 每个simpleType、complextype、元素都有其他属性,而不是我希望JAXB在java类中表示的名称和类型 XSD的示例代码段: <xsd:complexType name="InternInformasjon" seres:elementtype="Meldingsdel" seres:guid="http://seres.no/guid/StatistiskSentra

我有一个例子,我试图从许多不同的xsd生成java类。 每个simpleType、complextype、元素都有其他属性,而不是我希望JAXB在java类中表示的名称和类型

XSD的示例代码段:

    <xsd:complexType name="InternInformasjon" seres:elementtype="Meldingsdel"
                     seres:guid="http://seres.no/guid/StatistiskSentralbyrå/Meldingsdel/InternInformasjon/479039">
    <xsd:sequence>
    <xsd:element name="periodeFritekst" minOccurs="0" nillable="true"
                       seres:guid="http://seres.no/guid/StatistiskSentralbyrå/Dataegenskap/periode/479038"
                       seres:elementtype="Dataegenskap" type="Tekst_50"/>
.......
有没有办法让JAXB在这些字段上获取seres:guid之后的字符串,并在我的类中对它们进行注释?或者以其他方式使此信息在运行时解组时可用?该URL是该元素/字段的唯一标识符,稍后将在应用程序中使用

正如我所说,我有很多大型xsd,我想为它们生成类,所以不需要任何手动修改

The resulting class should look something like this:
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "InternInformasjon", propOrder = {
"periodeFritekst",
/* Ommitted */
})
@Guid("http://seres.no/guid/StatistiskSentralbyrå/Meldingsdel/InternInformasjon/479039")
public class InternInformasjon {
    @XmlElementRef(guid="http://seres.no/guid/StatistiskSentralbyrå/Dataegenskap/periode/479038", name = "periodeFritekst", namespace = "http://seres.no/xsd/StatistiskSentralbyrå/2013", type = JAXBElement.class, required = false)
    protected JAXBElement<String> periodeFritekst;
    /* Ommitted */

任何帮助都将非常感激

我能看到如何实现这一点的唯一方法是使用xjc的JAXB插件,即XML模式编译器但提供这些信息作为注释可能不是唯一的方法。使用XSLT从XML模式中提取信息后,应用程序可以将其作为外部数据结构进行访问。是的,可能唯一的方法是定制XJC插件。看看我的注解插件。它可以注释生成的类,但不会处理您的seres:guid: