我正在尝试将XML文档转换为可以导入到我可以查询的数据库(如SQLite或MySQL)的数据集。
这是一个XML文件,它包含了属性中的大部分内容。这是Rails项目的一部分,所以我非常倾向于使用Ruby(这是我目前最熟悉的语言)。
我不确定如何做到这一点,我欢迎高水平和低水平的贡献。
答案 0 :(得分:1)
有三种基本方法:
只有您可以确定最佳方法,具体取决于XML架构的复杂性以及为使其成为关系格式而必须执行的映射类型。
如果你可以发布一个XML样本和你必须填充的数据库模式,这可能会有所帮助。
答案 1 :(得分:1)
xmlsimple可以将您的xml转换为Ruby对象(或嵌套对象),然后您可以查看并执行任何您喜欢的操作。使Ruby中的XML工作非常简单。正如Jim所说,这取决于您的XML复杂性和您的需求。
答案 2 :(得分:0)
它会加载模型数据吗?如果您在* nix上,请查看libxml-ruby。 =)
有了它,您可以加载XML,并通过您可以创建AR对象的节点进行迭代。
答案 3 :(得分:0)
您可以查看XMLMapping gem。它允许您根据XML的结构定义不同的classes
。现在您可以从这些类创建对象。
现在您必须编写一些实际将这些XMLMapping对象转换为ActiveRecord对象的模块。一旦转换为AR对象,您只需调用save
将这些对象保存到相应的表中即可。
这是一个很长的解决方案,但它可以让您从XML中创建对象而无需迭代它。 XMLMapping将为您完成。
答案 4 :(得分:0)
您是否考虑过将数据加载到XML database?
在不知道数据结构是什么的情况下,我不知道RDBMS相对于XML DB的好处是什么。