2013-05-21 64 views
3

我很好奇这两个DOM和XPath的优点和缺点。 XPath提供的DOM不是什么,反之亦然?我不是在寻找性能或类似的东西,只是在导航方面两者的主要区别是什么?例如,什么时候DOM比XPath更好用?DOM与XPath - 区别?

谢谢。

+1

您是否想要比较DOM和SAX?请参阅[这里](http://stackoverflow.com/questions/6828703/difference-about-sax-and-dom)进行比较。如果您可以将DOM视为数据库,则XPath可能是SQL。 –

回答

11

它们是互补而不是竞争。 DOM提供了具有低级导航能力的XML树形模型(获得第一个孩子,获得下一个兄弟姐妹等); XPath增加了更高级别的搜索和导航功能(例如,获得所有书籍的平均价格,获得最后一章的标题)。

还要注意,DOM只是XML的一种树模型,离最好的还有很远的距离:这是第一个也是最差的,很多人仍然使用它。在Java世界中,有更好的设计可用,比如JDOM和XOM。