My xml input is :
<?xml version="1.0" encoding="UTF-8"?>
<Root>
<Row>
<EmployeeID>21001</EmployeeID>
<FMLAStartDate>2017-10-10</FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21002</EmployeeID>
<FMLAStartDate>2017-10-10</FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21002</EmployeeID>
<FMLAStartDate></FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate>2017-10-08</LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21003</EmployeeID>
<FMLAStartDate></FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate>2017-05-01</LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21004</EmployeeID>
<FMLAStartDate></FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate>2017-01-10</FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
</Root>
Note that employee 21002 has two nodes, one holding the FMLA Start Date and other holding the LTD End date. Post XSLT transformation expectation is to have one row node per employee ID and this row node should hold the entire information for that employee ID. Hence expected output is:
<?xml version="1.0" encoding="UTF-8"?>
<Root>
<Row>
<EmployeeID>21001</EmployeeID>
<FMLAStartDate>2017-10-10</FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21002</EmployeeID>
<FMLAStartDate>2017-10-10</FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate>2017-10-08</LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21003</EmployeeID>
<FMLAStartDate></FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate></FMLACorrectDate>
<LTDStartDate>2017-05-01</LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
<Row>
<EmployeeID>21004</EmployeeID>
<FMLAStartDate></FMLAStartDate>
<FMLAEndDate></FMLAEndDate>
<FMLACorrectDate>2017-01-10</FMLACorrectDate>
<LTDStartDate></LTDStartDate>
<LTDEndDate></LTDEndDate>
<LTDCorrectdate></LTDCorrectdate>
</Row>
</Root>
I have tried for-each-group for employee ID based grouping but it doesn't give correct output. Can anyone please help me with this? I have basic knowledge of XSLT but haven't worked with advanced XSLT functionalities.
Thanks!