Я хочу отфильтровать входящий XML-документ, чтобы сохранить только те записи, содержащие дату позже, чем сегодня, на некотором повторяющемся n-м дочернем узле.
Я пытался использовать шаблон идентификации с шаблоном, чтобы сопоставлять только те записи с предикатом в сопоставлении, но, похоже, я не могу получить правильный предикат, если это вообще возможно.
Пример ввода:
<?xml version="1.0" encoding="utf-8"?>
<Example>
<Header>
<ElementA/>
<ElementB/>
</Header>
<Records>
<Record>
<Person>
<ElementC>1</ElementC>
</Person>
<Employers>
<Employer>
<Identification>
<ElementD/>
<ElementE/>
</Identification>
</Employer>
</Employers>
</Record>
<Record>
<Person>
<ElementC>2</ElementC>
</Person>
<Employers>
<Employer>
<Identification>
<ElementD/>
<ElementE/>
</Identification>
<History>
<HistoryRecord>
<Period>
<Date>2017-08-01</Date>
</Period>
</HistoryRecord>
<HistoryRecord>
<Period>
<Date>2017-08-01</Date>
</Period>
<Period>
<Date>2018-10-01</Date>
</Period>
</HistoryRecord>
</History>
</Employer>
</Employers>
</Record>
<Record>
<Person>
<ElementC>3</ElementC>
</Person>
<Employers>
<Employer>
<Identification>
<ElementD/>
<ElementE/>
</Identification>
<History>
<HistoryRecord>
<Period>
<Date>2017-11-01</Date>
</Period>
</HistoryRecord>
</History>
</Employer>
</Employers>
</Record>
<Record>
<Person>
<ElementC>4</ElementC>
</Person>
<Employers>
<Employer>
<Identification>
<ElementD/>
<ElementE/>
</Identification>
<History>
<HistoryRecord>
<Period>
<Date>2018-11-01</Date>
</Period>
</HistoryRecord>
</History>
</Employer>
</Employers>
</Record>
</Records>
</Example>
Требуется вывод:
<?xml version="1.0" encoding="utf-8"?>
<Example>
<Header>
<ElementA/>
<ElementB/>
</Header>
<Records>
<Person>
<ElementC>2</ElementC>
</Person>
<Employers>
<Employer>
<Identification>
<ElementD/>
<ElementE/>
</Identification>
<History>
<HistoryRecord>
<Period>
<Date>2017-08-01</Date>
</Period>
</HistoryRecord>
<HistoryRecord>
<Period>
<Date>2017-08-01</Date>
</Period>
<Period>
<Date>2018-10-01</Date>
</Period>
</HistoryRecord>
</History>
</Employer>
</Employers>
</Record>
<Record>
<Person>
<ElementC>4</ElementC>
</Person>
<Employers>
<Employer>
<Identification>
<ElementD/>
<ElementE/>
</Identification>
<History>
<HistoryRecord>
<Period>
<Date>2018-11-01</Date>
</Period>
</HistoryRecord>
</History>
</Employer>
</Employers>
</Record>
</Records>
</Example>