我想用python中的lxml方法解析一些XML。在分析了元素之后,我希望能够比较一些结构化对象(寻找delta)。你知道吗
我需要解析大约50个XML文件,XML中的数据是“不均匀”的(我不确定正确的名称是什么)。你知道吗
简化的XML示例:
<ID 1>
<parameter A>
<parameter B>
</ID 1>
<ID 2>
<parameter A>
<parameter B>
<parameter C>
</ID 2>
<ID 3>
<parameter A>
</ID 3>
如何创建一个合适的数据库(mySQL?)结构,我可以使用它通过ID隔离每个对象,并比较每个参数元素。你知道吗
我不确定这是否有意义-我对正确的术语不是很熟悉。你知道吗
实际的源xml是这里列出的所有文件:http://www.nationalarchives.gov.uk/aboutapps/pronom/droid-signature-files.htm
这些文件是过去几年中更新过的相同结构的版本。我不需要数据库中的所有XML元素,只需要一个子集,从版本号、发布日期开始,然后是在两个主要部分中找到的单个ID和字节模式。你知道吗
把它放到mysql中可能不是最好的方法,但我想如果我这么做了,我会使用python/html前端来组合一个搜索/比较工具。你知道吗
我在你的问题中的关键短语是:“我不需要数据库中的所有XML元素,只需要一个子集”
假设您可以预先知道要比较的子集的所有元素,我建议使用一个表,每个数据元素对应一列。这将使您更容易处理以后对数据的报告要求。你知道吗
另一种按行存储元素的方法通常被认为是反模式的,这将使报告和比较变得非常困难。如果您事先不知道要比较这种策略的元素的类型(或数量),那么就必须使用这种策略。你知道吗
编辑:更明确地说,我认为表应该有列: ID,参数1,参数2,参数3,参数4 其中parameterx是您正在查看的“可比较参数”之一—对于其中许多参数,列可能会保留为空,因为不存在此类参数。你知道吗
然后,整个表中只有一个表,每个ID在该表中只有一行
相关问题 更多 >
编程相关推荐