检查多个xpath中是否存在相同xpath级别的元素

时间:2017-05-23 05:24:00

标签: xslt xpath

  <?xml version="1.0" encoding="UTF-8"?>
   <root> 
     <note> 
     <heading>Reminder</heading>  
     <body>Don't forget me this weekend!</body> 
   </note>  
   <note>   
    <body>Don't forget me this weekend!</body> 
   </note>  
   <note> 
     <heading>Reminder</heading>
    </note> 
</root>
enter code here

大家好,

遇到xslt中的问题。你的任何帮助都会非常有帮助。

需要检查note标签中是否存在元素。 如果/ note中只有/ body元素,我需要打印一组语句,如果只存在/ heading元素,我需要打印一组不同的语句。 如何检查根/注释元素中是否存在元素,因为所有注意元素都在同一个xpath。

当我收到多个具有不同内部元素组合的音符元素时,如何检查一个特定音符元素是否存在元素。

1 个答案:

答案 0 :(得分:0)

您可以使用此XPath语句选择所有<note><heading>但没有<body>的元素:

  

/ root / note [标题而非(正文)]

类似的解决方案适用于<note>元素而不是<heading><heading><body>

  

/ root / note [not(heading)and body]

     

/ root / note [标题和正文]

请注意您对问题的评论,关于如何在Stackoverflow上写好问题。 特别是使用您的ximple XML输入,您可以使用在线测试平台进行XML / XPath,例如http://www.xpathtester.com/xpathhttp://www.whitebeam.org/library/guide/TechNotes/xpathtestbed.rhtm找到您需要的XPath表达式。