如何使用XSL 2.0在2个单独的父节点中获取不同的节点集合

时间:2015-03-23 23:55:24

标签: xslt-2.0

您好我需要使用xsl 2.0版本将以下输入xml转换为下面提到的输出xml。我对xslt很陌生,我尝试过使用apply-templates和for-each-group来获取不同的客户端集合。

输入:



<?xml version="1.0" encoding="utf-8" ?>

<ITEM>
  <allCounselling>
    <ITEM>
      <allAttendingPeople>
        <ITEM>
          <PersonKey>1</PersonKey>
        </ITEM>
      </allAttendingPeople>
      <allSessions>
        <ITEM>
          <KEY></KEY>
          <DATE>12 Dec 2014</DATE>
          <allAttendedPeople>
            <ITEM>
              <PersonKey>1</PersonKey>
            </ITEM>
            <ITEM>
              <PersonKey>2</PersonKey>
            </ITEM>
          </allAttendedPeople>
        </ITEM>
      </allSessions>
    </ITEM>
  </allCounselling>
</ITEM>
&#13;
&#13;
&#13;

必需输出

&#13;
&#13;
<Clients>
  <Client>
    <ClientId>1</ClientId>
  </Client>
  <Client>
    <ClientId>2</ClientId>
  </Client>
</Clients>
&#13;
&#13;
&#13;

PersonKey值是ClientId,应该是一个不同的集合。 另一个困难的部分是我必须过滤会话。如果会话项目在给定的日期范围内,那么我应该只将这些人员放在那些已过滤的会话的allAttendedPeople集合中,然后我必须遍历以获得包含这些会话的咨询项目,并将所有参加人员放在一起。 ..我知道它非常忙碌:&#39;( 请帮忙!

0 个答案:

没有答案