я хочу сгруппировать элементы из разных групп, например
входной xml:
<corecom:ShipmentItemInstanceGenealogy>
<corecom:ItemInstanceGenealogy>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715052-0007-S05546-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715052</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1J Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0007</corecom:SerialNumber>
<corecom:LotNumber>S05546</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0001-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715052-0008-S05546-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715052</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1J Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0008</corecom:SerialNumber>
<corecom:LotNumber>S05546</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0001-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715054-0007-S05548-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715054</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1G Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0007</corecom:SerialNumber>
<corecom:LotNumber>S05548</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0001-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715054-0008-S05548-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715054</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1G Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0008</corecom:SerialNumber>
<corecom:LotNumber>S05548</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0001-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
</corecom:ItemInstanceGenealogy>
</corecom:ShipmentItemInstanceGenealogy>
<corecom:ShipmentItemInstanceGenealogy>
<corecom:ItemInstanceGenealogy>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715052-0009-S05546-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715052</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1J Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0009</corecom:SerialNumber>
<corecom:LotNumber>S05546</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0002-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715052-0010-S05546-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715052</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1J Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0010</corecom:SerialNumber>
<corecom:LotNumber>S05546</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0002-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715054-0009-S05548-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715054</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1G Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0009</corecom:SerialNumber>
<corecom:LotNumber>S05548</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0002-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
<corecom:ItemInstanceGenealogyComposition>
<corecom:ItemReference>
<corecom:ItemIdentification>
<corecom:ID>715054-0010-S05548-2</corecom:ID>
<corecom:ContextID/>
<corecom:ApplicationObjectKey>
<corecom:ID>715054</corecom:ID>
</corecom:ApplicationObjectKey>
<corecom:AlternateObjectKey>
<corecom:ID>Ea</corecom:ID>
</corecom:AlternateObjectKey>
</corecom:ItemIdentification>
<corecom:Name>SK1G Serial OPSM item</corecom:Name>
<corecom:ItemLotControlIndicator>true</corecom:ItemLotControlIndicator>
<corecom:ItemSerialControlIndicator>5</corecom:ItemSerialControlIndicator>
<corecom:SerialControlAgencyID>true</corecom:SerialControlAgencyID>
</corecom:ItemReference>
<corecom:ItemInstance>
<corecom:SerialNumber>SGTIN-96/0010</corecom:SerialNumber>
<corecom:LotNumber>S05548</corecom:LotNumber>
<corecom:ExpirationDateTime/>
</corecom:ItemInstance>
<corecom:ParentItemInstanceGenealogyCompositionIdentification>
<corecom:ID>717048-0002-S07546-1</corecom:ID>
</corecom:ParentItemInstanceGenealogyCompositionIdentification>
</corecom:ItemInstanceGenealogyComposition>
</corecom:ItemInstanceGenealogy>
</corecom:ShipmentItemInstanceGenealogy>
я хочу сгруппировать их на основе corecom: имя и corecom: тег SerialNumber
ожидаемый результат:
<pasabm:TransactionProductVO>
<pasabm:ItemNumber>SK1J Serial OPSM item</pasabm:ItemNumber>
<pasabm:ItemSource>EBIZ_01</pasabm:ItemSource>
<pasabm:ItemUom>Ea</pasabm:ItemUom>
<pasabm:LotNumber>S05546</pasabm:LotNumber>
<pasabm:LotSource/>
<pasabm:LotLocation>M1</pasabm:LotLocation>
<pasabm:ExpirationDate/>
<pasabm:TransactionSerialAssocVO>
<pasabm:ItemSerialNumber>0007</pasabm:ItemSerialNumber>
<pasabm:SerialType>SGTIN-96</pasabm:SerialType>
<pasabm:SerialIdentification>715052-0010-S05546-2</pasabm:SerialIdentification>
<pasabm:ParentSerialIdentification>717048-0002-S07546-1</pasabm:ParentSerialIdentification>
<pasabm:ShippedItemFlag>0</pasabm:ShippedItemFlag>
</pasabm:TransactionSerialAssocVO>
<pasabm:TransactionSerialAssocVO>
<pasabm:ItemSerialNumber>0008</pasabm:ItemSerialNumber>
<pasabm:SerialType>SGTIN-96</pasabm:SerialType>
<pasabm:SerialIdentification>715052-0010-S05546-2</pasabm:SerialIdentification>
<pasabm:ParentSerialIdentification>717048-0002-S07546-1</pasabm:ParentSerialIdentification>
<pasabm:ShippedItemFlag>0</pasabm:ShippedItemFlag>
</pasabm:TransactionSerialAssocVO>
<pasabm:TransactionSerialAssocVO>
<pasabm:ItemSerialNumber>0009</pasabm:ItemSerialNumber>
<pasabm:SerialType>SGTIN-96</pasabm:SerialType>
<pasabm:SerialIdentification>715052-0009-S05546-2</pasabm:SerialIdentification>
<pasabm:ParentSerialIdentification>717048-0002-S07546-1</pasabm:ParentSerialIdentification>
<pasabm:ShippedItemFlag>0</pasabm:ShippedItemFlag>
</pasabm:TransactionSerialAssocVO>
<pasabm:TransactionSerialAssocVO>
<pasabm:ItemSerialNumber>0010</pasabm:ItemSerialNumber>
<pasabm:SerialType>SGTIN-96</pasabm:SerialType>
<pasabm:SerialIdentification>715052-0010-S05546-2</pasabm:SerialIdentification>
<pasabm:ParentSerialIdentification>717048-0002-S07546-1</pasabm:ParentSerialIdentification>
<pasabm:ShippedItemFlag>0</pasabm:ShippedItemFlag>
</pasabm:TransactionSerialAssocVO>
</pasabm:TransactionProductVO>
мой пробный код:
</pasabm:ExpirationDate>
<xsl:for-each select="../../corecom:ItemInstanceGenealogyComposition/corecom:ItemReference">
<pasabm:TransactionSerialAssocVO>
<pasabm:ItemSerialNumber>
<xsl:value-of select='substring-after(../corecom:ItemInstance/corecom:SerialNumber,"/")'/>
</pasabm:ItemSerialNumber>
<pasabm:SerialType>
<xsl:value-of select='substring-before(../corecom:ItemInstance/corecom:SerialNumber,"/")'/>
</pasabm:SerialType>
<pasabm:SerialIdentification>
<xsl:value-of select="corecom:ItemIdentification/corecom:ID"/>
</pasabm:SerialIdentification>
<pasabm:ParentSerialIdentification>
<xsl:value-of select="../corecom:ParentItemInstanceGenealogyCompositionIdentification/corecom:ID"/>
</pasabm:ParentSerialIdentification>
<pasabm:ShippedItemFlag>
<xsl:text disable-output-escaping="no">0</xsl:text>
</pasabm:ShippedItemFlag>
</pasabm:TransactionSerialAssocVO>
</xsl:if>
</xsl:for-each>