XPath concat导航包含多个元素

时间:2015-11-29 23:00:30

标签: xml xpath concat

好的,感谢Choroba的帮助。我有另一个问题,当我有一个以上的头元素时,就像这个

<test>
    <head>
        <persName type="sender" xml:id="ID.1">
            <forename>Max</forename>
            <surname>Mustermann</surname>
        </persName>
        <persName type="adresser" xml:id="ID.30">
            <forename>Susi</forename>
            <surname>Kraft</surname>
        </persName>
    </head>
    <head>
        <persName type="sender" xml:id="ID.2">
            <forename>Max1</forename>
            <surname>Mustermann1</surname>
        </persName>
        <persName type="adresser" xml:id="ID.31">
            <forename>Susi</forename>
            <surname>Kraft1</surname>
        </persName>
    </head>
    <head>
        <persName type="sender" xml:id="ID.3">
            <forename>Max1</forename>
            <surname>Mustermann2</surname>
        </persName>
        <persName type="adresser" xml:id="ID.32">
            <forename>Susi</forename>
            <surname>Kraft2</surname>
        </persName>
    </head>
</test>

然后我的XPATH查询将我从To返回而没有结果。我想我必须使用XPath轴导航,但是如何...

concat('From ',
descendant-or-self::head/persName[@type="sender"]/surname,
' to ',
descendant-or-self::head/persName[@type="adresser"]/surname)

我也收到这样的错误信息,我正在使用氧气 “不允许一个多于一个项目的序列作为concat的第二个参数”

1 个答案:

答案 0 :(得分:0)

这在我的例子中起作用,

//persName[@type="creator"]/concat("von ", surname , " to " ,
ancestor::head/persName[@type="addressee"]/surname)

度过美好时光,祝新年快乐