Не могли бы вы, ребята, помочь мне в приведенном ниже сценарии, используя XPATH, когда у нас есть одно и то же имя атрибута дважды для одного и того же узла, как показано ниже:
<wd:Worker_Type_Reference>
<wd:ID wd:type="WID">be264fa6cb8b0175451b3a2012baaf10</wd:ID>
<wd:ID wd:type="Employee_Type_ID">Permanent</wd:ID>
</wd:Worker_Type_Reference>
<wd:Worker_Type_Reference>
<wd:ID wd:type="WID">be264fa6cb8b0157dffabd2212bab810</wd:ID>
<wd:ID wd:type="Contingent_Worker_Type_ID">Vendor</wd:ID>
</wd:Worker_Type_Reference>
Мне нужно получить имя атрибута, т.е. Employee_Type_ID
и Contingent_Worker_Type_ID
. Приведенный выше фрагмент кода является частью кода, просто для простоты я скопировал основной код. Значение wd:type
изменится в зависимости от типа сотрудника - Сотрудник или Подходящий работник. Чтобы выбрать тип сотрудника, у меня есть единственная возможность получить имя этого атрибута.
Я видел другие вопросы с тем же сценарием, но сценария с дублирующимися атрибутами там нет. Я попробовал, как показано ниже:
wd:Worker/wd:Worker_Type_Reference/wd:ID/@*[local-name()='type']
С этим я получаю WID
и Employee_Type_ID
ИЛИ Contingent_Worker_Type_ID
.
Понятия не имею, как я могу получить второе значение (Employee_Type_ID ИЛИ Contingent_Worker_Type_ID) для каждой ссылки на работника.
ожидаемый результат для приведенного выше фрагмента:
Employee_Type_ID
Contingent_Worker_Type_ID