我有相同属性但不同值的XML。每个不同的值都应该使用XSLT作为CSV输出文件中的一行输出。下面是XML。对于每个佩西:priorValue字段,我需要在CSV文件中的行中输出先前值和当前值。
<?xml version='1.0' encoding='UTF-8'?>
<peci:Workers_Effective_Stack xmlns:peci="urn:com.workday/peci">
<peci:Worker>
<peci:Effective_Change peci:Sequence="0">
<peci:Derived_Event_Code>DTA</peci:Derived_Event_Code>
<peci:Effective_Moment>2022-12-12T00:00:00.000-08:00</peci:Effective_Moment>
<peci:Entry_Moment>2022-12-14T05:32:34.114-08:00</peci:Entry_Moment>
<peci:Worker_Status>
<peci:Status>Active</peci:Status>
<peci:Active>1</peci:Active>
<peci:Active_Status_Date>2022-08-01-07:00</peci:Active_Status_Date>
<peci:Terminated>0</peci:Terminated>
<peci:Hire_Date>2022-08-01-07:00</peci:Hire_Date>
</peci:Worker_Status>
<peci:Compensation peci:isUpdated="1">
<peci:Position_ID>xyz</peci:Position_ID>
<peci:Compensation_Grade>Salary</peci:Compensation_Grade>
<peci:Compensation_Change_Reason peci:priorValue="Change_Location">COLA</peci:Compensation_Change_Reason>
<peci:Compensation_Summary_in_Annualized_Frequency peci:isUpdated="1">
<peci:Total_Base_Pay peci:priorValue="8000">12000</peci:Total_Base_Pay>
<peci:Currency>USD</peci:Currency>
</peci:Compensation_Summary_in_Annualized_Frequency>
<peci:Compensation_Summary_in_Pay_Group_Frequency>
<peci:Frequency>Monthly</peci:Frequency>
</peci:Compensation_Summary_in_Pay_Group_Frequency>
</peci:Compensation>
</peci:Effective_Change>
</peci:Worker>
</peci:Workers_Effective_Stack>
我的输出应该是
John Doe, Change_Location, COLA
John Doe, 8000, 12000
如何才能做到这一点呢?我是XSLT新手,所以在这方面很吃力。
我得到了这样的输出
John Doe, Change_Location 8000, COLA 12000
1条答案
按热度按时间5us2dqdw1#
使用XPath?