java支持使用JAXB进行XSD版本控制
我目前正在开发一个执行导入或导出某些实体任务的应用程序。用于相同文件的文件格式为XML
JAXB
正在用于XML绑定
存在的问题是XSD
定义实体结构的实体没有版本控制的规定。如何开始定义版本化的XSD
以及随后提供的XML
实例文档JAXB
作为底层绑定框架
我读到在XSD
中引入版本有三种可能的方式
1) 更改内部架构版本属性
2) 在根元素上创建类似schemaVersion的属性
3) 更改架构的目标命名空间
哪一个最适合下面提到的用例
用例:在下一个版本中对XSD
所做的更改可能会使现有元素无效。虽然模式本身可能不向后兼容,但应用程序需要提供对处理所有模式版本的支持
# 1 楼答案
XML旨在促进文档结构的更改和灵活性。不幸的是,JAXB不是。将文档结构的知识编译到Java源代码中的行为使得更改文档结构变得更加困难
<>如果结构改变是你的议程的一部分,我认为你应该认真考虑不要使用JAXB:像XQuery和XSLT这样的技术更适合这个场景。p>