Mesclar 2 arquivos XML com base em valores de atributo usando XSLT?

file1.xml
<config>
 <state version="10">
  <root value="100" group="5">
     <leaf number = "2"/>
  </root>
  <root value="101" group="6">
     <leaf number = "3"/>
  </root>
 </state>
</config>
file2.xml
<config>
 <state version="10">
  <root value="100" group="5">
     <leaf number = "6"/>
  </root>
  <root value="101" group="6">
     <leaf number = "4"/>
  </root>
 </state>
</config>
output.xml
<config>
 <state version="10">
  <root value="100" group="5">
     <leaf number = "2"/>
     <leaf number = "6"/>
  </root>
  <root value="101" group="6">
     <leaf number = "3"/>
     <leaf number = "4"/>
  </root>
 </state>
</config>

Eu tentei escrever um XSLT com base na resposta aqui:Como mesclar 2 arquivos XML com nós comuns usando XSLT?

mas eu não sei como comparar com base em valores de atributo (neste caso, valor de atributos e grupo de tag 'root'? Alguém por favor pode ajudar?

questionAnswers(1)

yourAnswerToTheQuestion