Я пытаюсь отфильтровать и организовать список людей со своими вложениями.Люди могут иметь несколько вложений, которые были прикреплены или изменены в разное время, или вообще не иметь вложений.Я хочу только одну привязанность на человека.Если у человека есть вложение, содержащее слово резюме, я хочу, чтобы последнее изменилось.Если у человека нет вложения с резюме на имя которого вложение было изменено последним.И если нет резюме, мы все равно хотим включить этого человека, но оставим эти элементы пустыми.
В настоящее время я пытаюсь отсортировать по FileLastModDate, но это не работает.
<?xml version="1.0" encoding="UTF-8"?>
<ExportXML xmlns="http://www.taleo.com/ws/integration/toolkit/2005/07" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.taleo.com/ws/integration/toolkit/2005/07" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<record>
<field name="FirstName">Olivia</field>
<field name="LastName">Test</field>
<field name="Number">1</field>
<field name="FileName">Olivia Test 2017.pdf</field>
<field name="FileLastModDate">2017-06-20T19:24:51-04:00</field>
</record>
<record>
<field name="FirstName">Olivia</field>
<field name="LastName">Tortolini</field>
<field name="Number">1</field>
<field name="FileName">Olivia Test 2018.pdf</field>
<field name="FileLastModDate">2018-06-20T19:24:51-04:00</field>
</record>
<record>
<field name="FirstName">Kevin</field>
<field name="LastName">X</field>
<field name="Number">2</field>
<field name="FileName">cover letter 2018.docx</field>
<field name="FileLastModDate">2018-10-04T13:32:30-04:00</field>
</record>
<record>
<field name="FirstName">Kevin</field>
<field name="LastName">X</field>
<field name="Number">2</field>
<field name="FileName">Resume 2018.docx</field>
<field name="FileLastModDate">2018-09-04T13:32:30-04:00</field>
</record>
<record>
<field name="FirstName">Kevin</field>
<field name="LastName">X</field>
<field name="Number">2</field>
<field name="FileName">Resume 2017.docx</field>
<field name="FileLastModDate">2017-12-26T15:47:54-05:00</field>
</record>
<record>
<field name="FirstName">Michael</field>
<field name="LastName">S</field>
<field name="Number">3</field>
<field name="FileName"></field>
<field name="FileLastModDate"></field>
</record>
</ExportXML>
Я применяю сортировку к группе, но не получаю правильное имя файла
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xpath-default-namespace="http://www.taleo.com/ws/integration/toolkit/2005/07" xmlns:ns="http://www.taleo.com/ws/integration/toolkit/2005/07" xmlns:e="http://www.taleo.com/ws/tee800/2009/01" xmlns:fct="http://www.taleo.com/xsl_functions" exclude-result-prefixes="e fct ns">
<xsl:output indent="yes"/>
<xsl:param name="OUTBOUND_FOLDER"/>
<xsl:param name="NOW"/>
<xsl:strip-space elements="*"/>
<xsl:template match="/ExportXML">
<Files>
<xsl:for-each-group select="record" group-by="field[@name=('Number')]">
<xsl:sort select="field[@name='FileLastModDate']" order="descending"/>
<xsl:variable name="FirstName" select="ns:field[@name='FirstName']"/>
<xsl:variable name="LastName" select="ns:field[@name='LastName']"/>
<xsl:variable name="LastModifiedDate" select="ns:field[@name='LastModifiedDate']"/>
<xsl:variable name="Number" select="ns:field[@name='Number']"/>
<xsl:variable name="FileName" select="field[@name='FileName']"/>
<file path="{$FileName}">
<FirstName>
<xsl:value-of select="$FirstName"/>
</FirstName>
<LastName>
<xsl:value-of select="$LastName"/>
</LastName>
<LastModifiedDate>
<xsl:value-of select="$LastModifiedDate"/>
</LastModifiedDate>
<Number>
<xsl:value-of select="$Number"/>
</Number>
<FileName>
<xsl:value-of select="$FileName"/>
</FileName>
</file>
</xsl:for-each-group>
</Files>
</xsl:template>
</xsl:stylesheet>
Я должен получить следующее:
<?xml version="1.0" encoding="UTF-8"?>
<Files>
<file path="cover letter 2018.docx">
<FirstName>Kevin</FirstName>
<LastName>X</LastName>
<LastModifiedDate/>
<Number>2</Number>
<FileName>Resume 2018.docx</FileName>
</file>
<file path="Olivia Test 2017.pdf">
<FirstName>Olivia</FirstName>
<LastName>Test</LastName>
<LastModifiedDate/>
<Number>1</Number>
<FileName>Olivia Test 2018.pdf</FileName>
</file>
<file path="">
<FirstName>Michael</FirstName>
<LastName>S</LastName>
<LastModifiedDate/>
<Number>3</Number>
<FileName/>
</file>
</Files>
Вместо этого я получаю следующий результат
<?xml version="1.0" encoding="UTF-8"?>
<Files>
<file path="cover letter 2018.docx">
<FirstName>Kevin</FirstName>
<LastName>X</LastName>
<LastModifiedDate/>
<Number>2</Number>
<FileName>cover letter 2018.docx</FileName>
</file>
<file path="Olivia Test 2017.pdf">
<FirstName>Olivia</FirstName>
<LastName>Test</LastName>
<LastModifiedDate/>
<Number>1</Number>
<FileName>Olivia Test 2017.pdf</FileName>
</file>
<file path="">
<FirstName>Michael</FirstName>
<LastName>S</LastName>
<LastModifiedDate/>
<Number>3</Number>
<FileName/>
</file>
</Files>