以编程方式反规范化XML模式

时间:2020-03-06 14:33:18  来源:igfitidea点击:

我需要使用任何给定的有效XML模式(XSD),并将其反规范化为不包含ref,no include等的简单形式。所有简单类型定义都应内联,这样,在查看任何给定元素时,所有声明都是可见的,而无需执行另一个查找。

我已经找到了一些内置此功能的工具,但我需要"即时"完成它。首选的平台是Java,但如有必要,我愿意将代码从另一种语言移植过来。我只是真的不想在这里重新发明轮子。从Apache / etc搜索OSS库没有任何效果。我发现的最接近的是XSOM,它支持将模式作为对象模型进行遍历,但是我们仍然必须处理模式可能用来代表给定结构的所有可能形式。

输出不必是实际的XML,因为它将以最终形式实际用于对象模型中。

解决方案

我们可能会发现XSD4J有帮助:

http://dynvocation.selfip.net/xsd4j/

EMF XSD模型可能会有所帮助:

http://www.eclipse.org/modeling/mdt/?project=xsd