0
Я борюсь с некоторыми базовыми XSLT. Я хотел бы удалить элемент из некоторого XML в зависимости от того, не имеет ли он определенного атрибута (в этом случае PriorValue).Как удалить XML-элементы на основе атрибута в XSLT
XML Похож на это XML не ограничивается только нижеследующими разделами, он содержит много других разделов, и к ним применяется одна и та же логика.
<Emp>
<Personal>
<First_Name>abc</First_Name>
<Last_Name>xyz</Last_Name>
<Gender>1</Gender>
<Birth_Date PriorValue="1980-08-05">1980-09-05</Birth_Date>
<Country_of_Birth PriorValue="600">724</Country_of_Birth>
<Marital_Status PriorValue="0">1</Marital_Status>
</Personal>
<Info>
<Name>abc</Name>
<ID>Part time</ID>
<NoOfProbationDays>0</NoOfProbationDays>
<EMPtype>0</EMPtype>
<CountryOfBirth PriorValue="IND">ESP</CountryOfBirth>
</Info>
</Emp>
Желаемый результат XML выглядит следующим образом.
<Emp>
<Personal>
<Birth_Date PriorValue="1980-08-05">1980-09-05</Birth_Date>
<Country_of_Birth PriorValue="600">724</Country_of_Birth>
<Marital_Status PriorValue="0">1</Marital_Status>
</Personal>
<Info>
<CountryOfBirth PriorValue="IND">ESP</CountryOfBirth>
</Info>
</Emp>
Благодарим за помощь.
спасибо большое за ответ, Кроме того, как я исключить несколько разделов из него. Например: предположим, что есть сводный раздел, и я не хочу применять к нему проверку приоритета и всегда хочу его в выходном XML? спасибо за вашу помощь – user2788521
Изменить ' ' to ' '. Это должно быть сделано, если ваш вход может содержать элементы 'summary' без атрибута' PriorValue' и вы хотите скопировать его, тем не менее, в результат. Если 'summary' может быть родителем других элементов, для которых вы не хотите их удалять, используйте, например, ' '. –
большое спасибо – user2788521