Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xml 根据嵌套属性更正XPath以获取元素_Xml_Xpath_Xquery - Fatal编程技术网

Xml 根据嵌套属性更正XPath以获取元素

Xml 根据嵌套属性更正XPath以获取元素,xml,xpath,xquery,Xml,Xpath,Xquery,我有以下XML(这实际上是一个大得多的文档的有效片段) 2020-11-13T00:00:00 2020-11-13T00:00:01 //gco:DateTime给出了两个结果 我如何才能仅获取具有2020-11-13T00:00:01且知道: 我事先不知道DateTime的值 我不能想当然地认为我想要的DateTime元素总是第二个元素 我需要DateTime元素,其中//gmd:CI_DateTypeCode[@codeListValue='lastRevision'] 谢谢 对祖

我有以下XML(这实际上是一个大得多的文档的有效片段)


2020-11-13T00:00:00
2020-11-13T00:00:01
//gco:DateTime
给出了两个结果

我如何才能仅获取具有
2020-11-13T00:00:01
且知道:

  • 我事先不知道
    DateTime
    的值
  • 我不能想当然地认为我想要的
    DateTime
    元素总是第二个元素
  • 我需要
    DateTime
    元素,其中
    //gmd:CI_DateTypeCode[@codeListValue='lastRevision']

谢谢

对祖先使用谓词,例如
gmd:CI_Date[.//gmd:CI_DateTypeCode[@codeListValue='lastRevision']//gco:DateTime
对祖先使用谓词,例如
gmd:CI_Date[.//gmd:CI DateTypeCode[@codeListValue='lastRevision']]//gco:DateTime

<gmd:MD_Metadata>
    <gmd:identificationInfo>
        <gmd:MD_DataIdentification>
            <gmd:citation>
                <gmd:CI_Citation>
                    <gmd:date>
                        <gmd:CI_Date>
                            <gmd:date>
                                <gco:DateTime>2020-11-13T00:00:00</gco:DateTime>
                            </gmd:date>
                            <gmd:dateType>
                                <gmd:CI_DateTypeCode codeList="CI_DateTypeCode" codeListValue="creation"/>
                            </gmd:dateType>
                        </gmd:CI_Date>
                    </gmd:date>
                    <gmd:date>
                        <gmd:CI_Date>
                            <gmd:date>
                                <gco:DateTime>2020-11-13T00:00:01</gco:DateTime>
                            </gmd:date>
                            <gmd:dateType>
                                <gmd:CI_DateTypeCode codeList="CI_DateTypeCode" codeListValue="lastRevision"/>
                            </gmd:dateType>
                        </gmd:CI_Date>
                    </gmd:date>
                </gmd:CI_Citation>
            </gmd:citation>
        </gmd:MD_DataIdentification>
    </gmd:identificationInfo>
</gmd:MD_Metadata>