使用trang将RELAX NG转换为XSD,同时保留外部名称空间元素(用于JAXB)

时间:2009-02-13 17:13:06

标签: xsd namespaces jaxb relaxng

我使用trang将RELAX NG .rng文件转换为XML Schema .xsd文件,以便与JAXB一起使用。有没有办法将属性/元素放在.rng文件中并让它们显示在.xsd文件中?我有一个外部.xjb文件,我用于JAXB设置,但有一些JAXB设置非常紧密地耦合到模式本身,似乎(以某种方式)将它们放在.rng文件中更有意义而不是.xjb文件。

有什么建议吗?

1 个答案:

答案 0 :(得分:2)

我的观点是,您现在正在做的是最好的方法,您应该将JAXB自定义与RELAX NG架构分开。 XML模式中的JAXB自定义最多是丑陋的,分散注意力并使情况更加混乱。使用RELAX NG,映射的次数要少得多,我的猜测是你仍然需要将一些自定义放在一个单独的JAXB自定义文件中,这意味着你的自定义将在两个不同的文件中。