Условный XPath для нескольких элементов - PullRequest
0 голосов
/ 28 мая 2020

Я пытаюсь использовать xpath для установки свойства обмена из значения одного элемента, в зависимости от того, какое значение находится в другом элементе ...

Итак, в моем случае я хочу, чтобы xpath идентифицировал PartyID, где RoleCode = 60. И еще одно выражение xpath, чтобы найти PartyID, где RoleCode = Z60.

Я бы использовал [1] et c, но отправка не может гарантировать порядок расположения сегментов.

Помощь очень ценится!

<RegisteredProductCollection>
    <RegisteredProduct>
        <Status>1</Status>
        <AddressLine2>test</AddressLine2>
        <AddressLine1>37</AddressLine1>
        <RegisteredProductPartyInformation>
            <RegisteredProductPartyInformation>
                <PartyID>9000028253</PartyID>
                <RoleCode>60</RoleCode>
            </RegisteredProductPartyInformation>
            <RegisteredProductPartyInformation>
                <PartyID>1288219</PartyID>
                <RoleCode>Z60</RoleCode>
            </RegisteredProductPartyInformation>
        </RegisteredProductPartyInformation>
        <PostalCode>3200</PostalCode>
        <Country>NZ</Country>
        <ProductID>G02411</ProductID>
        <SerialID>1234124124</SerialID>
        <City>test</City>
        <ReferenceDate>20200514000000</ReferenceDate>
        <District>wai</District>
    </RegisteredProduct>
</RegisteredProductCollection>

1 Ответ

1 голос
/ 28 мая 2020

Вы можете использовать следующие выражения XPath-1.0:

//RegisteredProductPartyInformation[RoleCode='60']/PartyID

и

//RegisteredProductPartyInformation[RoleCode='Z60']/PartyID

При необходимости измените ' на ".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...