我制作了一个描述 XPath 中各个轴的信息图。但是,我不确定它们是否正确。
following
我对,following-sibling
和preceding
感到困惑preceding-sibling
我的图表正确吗?
原图在这里:http: //imgur.com/4ekJxca (取自 Pro XML Development with Java)
这是我对我感到困惑的节点的理解:
descendant::
选择作为上下文节点的子节点和孙子节点的节点(仅限元素和文本)。
following::
选择未被后代选择的任何节点(仅限文本)。
following-sibling::
上下文节点的所有“兄弟”。也就是说,文本和元素节点是与上下文节点相同的父节点的子节点,在上下文节点之后。
preceding::sibling
上下文节点的所有“兄弟”。也就是说,文本和元素节点是与上下文节点相同的父节点的子节点,在上下文节点之前。
preceeding::
所有不沿ancestor::
轴出现且未嵌套在任何元素节点中的节点(仅限文本)。(我确定我搞砸了)
XML
<?xml version="1.0" encoding="UTF-8"?>
<catalog xmlns:journal="http://www.apress.com/catalog/journal" >
<journal:journal title="XML" publisher="IBM developerWorks">
<article journal:level="Intermediate"
date="February-2003">
<title>Design XML Schemas Using UML</title>
<author>Ayesha Malik</author>
</article>
</journal:journal>
<journal title="Java Technology" publisher="IBM developerWorks">
<article level="Advanced" date="January-2004">
<title>Design service-oriented architecture
frameworks with J2EE technology</title>
<author>Naveen Balani</author>
</article>
<article level="Advanced" date="October-2003">
<title>Advance DAO Programming</title>
<author>Sean Sullivan </author>
</article>
</journal>
</catalog>