xpath - 如何编写比较两个属性或节点的Xpath表达式

标签 xpath attributes xmlnode

给定以下示例:

<?xml version="1.0" encoding="UTF-8"?>
<Patients>
  <patientRole>
    <id extension="996-756-495" root="2.16.840.1.113883.19.5"/>
    <id extension="775-756-495" root="2.16.840.1.113883.14.6"/>
    <patient>
      <name>
        <given>Henry</given>
        <family>Levin</family>
      </name>
      <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/>
      <birthTime value="19320924"/>
    </patient>
    <providerOrganization>
      <id root="2.16.840.1.113883.19.5"/>
      <name>Good Health Clinic</name>
    </providerOrganization>
    <admissionTime value="2012030111:32"/>
  </patientRole>
  <patientRole>
    <id extension="65" root="2.16.840.1.113883.3.933"/>
    <patient>
      <name>
        <given>Paul</given>
        <family>Pappel</family>
      </name>
      <administrativeGenderCode code="M" codeSystem="2.16.840.1.113883.5.1"/>
      <birthTime value="19551217"/>
    </patient>
    <providerOrganization>
      <id extension="84756-11241-283-OPTD-3322" root="1.2.3.4.5.6.1.8.9.0"/>
      <name> Dr.med. Hans Topp-Glucklich</name>
    </providerOrganization>
    <admissionTime value="201201152200"/>
  </patientRole>
  <patientRole>
    <id extension="800001" root="2.16.840.1.113883.19.5"/>
    <patient>
      <name>
        <given>JEANNE</given>
        <family>PETIT</family>
      </name>
      <administrativeGenderCode code="F" codeSystem="2.16.840.1.113883.5.1"/>
      <birthTime value="19480105"/>
    </patient>
    <providerOrganization>
      <id root="2.16.840.1.113883.19.5"/>
      <name>Good Health Clinic</name>
    </providerOrganization>
    <admissionTime value="20120101T22:00"/>
  </patientRole>
</Patients>


如何为以下代码编写X-Path表达式:

男性患者的姓氏(性别代码=“ M”)

非常感谢任何帮助,我是XML / Xpath的新手,我尝试了多种方法,但未产生我需要的东西。

最佳答案

这应该工作:

/Patients/patientRole/patient[administrativeGenderCode/@code='M']/name/family

关于xpath - 如何编写比较两个属性或节点的Xpath表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15724850/

相关文章:

css - % CSS Color 属性应该是什么意思?

javascript - 如何使用 Node js 将一些额外的数据添加到现有文件中

javascript - 在javascript中设置父节点

c# - 用于登录 .NET 的堆栈跟踪

Javascript:从具有相同标签名称的两个 XML 节点检索数据的可靠方法是什么?

python - Xpath:如何获取 <p> 标签内 <a> 标签的文本

python - Scrapy Xpath无法获取所有价格

xpath最接近给定元素的元素

xpath - 有没有办法在XPATH 1上模拟正确的替换功能?

python - 为什么 python 类属性的语义在分配给实例后会发生变化?