简体   繁体   English

如何匹配元素及其包含的所有属性?

[英]How do I match an element and any and all attributes it contains?

Here is my sample XML. 这是我的示例XML。

<root>
  <para indent="yes">First paragraph</para>
  <para indent="no">Second paragraph</para>
  <para indent="yes" level="1">Third paragraph</para>
  <para indent="no" level="2">`Fourth paragraph</para>
</root>

In altova, I can match all tags (using //para ), which gives me the result: 在altova中,我可以匹配所有标签(使用//para ),从而得到结果:

para First paragraph 
para Second paragraph
para Third paragraph
para Fourth paragraph

Or I can match all attributes of para ( using //para/@* ), which gives me the result: 或者,我可以匹配para的所有属性(使用//para/@* ),从而得到以下结果:

indent yes
indent no
indent yes
level 1
indent no
level 2

But I want to combine these xpaths and get the following desired result: 但我想结合这些xpath并获得以下预期结果:

para Paragraph 1
indent yes
para Paragraph 2
indent no
para Paragraph 3
indent yes
level 1
para Paragraph 4
indent no
level 2

Is there an xpath that will give me this result in altova or oxygen? 是否有一个xpath可以使我得到altova或氧气的结果?

You can use union between the two selectors: 您可以在两个选择器之间使用联合:

//para|//para/@*

Working example: http://chris.photobooks.com/xml/default.htm?state=Ag 工作示例: http : //chris.photobooks.com/xml/default.htm?state=Ag

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM