Для XML ниже, как мне узнать, какие выборы, с последней датой, если избрано несколько выборов, выбрал каждый сотрудник. Значение по умолчанию «Бронза» будет использоваться, если на всех выборах будет указано «Отказ» или если нет выбора для этого сотрудника.
Пример XML:
<Data>
<Employee>
<First_Name>Homer</First_Name>
<Last_Name>Simpson</<Last_Name>
<Elections>
<Election type="Homer Simpson on 01/01/2020 (Gold Membership) (Waive)"/>
</Elections>
<Elections>
<Election type="Homer Simpson on 01/01/2020 (Silver Membership) (Waive)"/>
</Elections>
</Employee>
<Employee>
<First_Name>Marge</First_Name>
<Last_Name>Simpson</<Last_Name>
<Elections>
<Election type="Marge Simpson on 01/01/2020 (Gold Membership) (Waive)"/>
</Elections>
<Elections>
<Election type="Marge Simpson on 01/03/2020 (Gold Membership) (Elect)"/>
</Elections>
<Elections>
<Election type="Marge Simpson on 01/03/2020 (Silver Membership) (Waive)"/>
</Elections>
</Employee>
<Employee>
<First_Name>Lisa</First_Name>
<Last_Name>Simpson</<Last_Name>
<Elections>
<Election type="Lisa Simpson on 01/01/2020 (Gold Membership) (Elect)"/>
</Elections>
<Elections>
<Election type="Lisa Simpson on 01/01/2020 (Silver Membership) (Waive)"/>
</Elections>
</Employee>
<Employee>
<First_Name>Bart</First_Name>
<Last_Name>Simpson</<Last_Name>
<Elections>
<Election type="Bart Simpson on 01/01/2020 (Gold Membership) (Waive)"/>
</Elections>
<Elections>
<Election type="Bart Simpson on 01/01/2020 (Silver Membership) (Waive)"/>
</Elections>
<Elections>
<Election type="Bart Simpson on 01/01/2020 (Bronze Membership) (Elect)"/>
</Elections>
</Employee>
<Employee>
<First_Name>Maggie</First_Name>
<Last_Name>Simpson</<Last_Name>
<Elections>
<Election type="Lisa Simpson on 01/01/2020 (Silver Membership) (Elect)"/>
</Elections>
<Elections>
<Election type="Lisa Simpson on 01/01/2020 (Gold Membership) (Waive)"/>
</Elections>
</Employee>
<Employee>
<First_Name>Grandpa</First_Name>
<Last_Name>Simpson</<Last_Name>
</Employee>
</Data>
Я попытался несколько вещей, таких как for-each над тегом Elections / Election, ищущих строку «(Золотое членство) (Elect)» и «(Серебряное членство) (Elect)» и устанавливающих переменную, если она была найдена, но это не Работа.
Желаемый результат будет:
Гомер, Симпсон, Бронза
Мардж, Симпсон, Золото
Лиза, Симпсон, Золото
Барт, Симпсон, Бронза
Дедушка, Симпсон, Серебро