XSLT для объединения 2 XML-файлов

Я знаю, что здесь мало вопросов, связанных со слиянием xml / xslt, но, похоже, ни один из них не решил мою проблему.

То, что я ищу, - это XSLT (настолько общий, насколько это возможно - не тесно связанный со структурой входных XML-файлов), который может

Объедините a.xml с b.xml и создайте файл c.xml таким образом, чтобы

c.xml will contain the common nodes between a.xml and b.xml (with the node values taken from a.xml) in addition c.xml will contain the nodes(and values) which are present in b.xml and not in a.xml

Например: слияниеa.xml:

<root_node>
  <settings>
    <setting1>a1</setting1>
    <setting2>a2</setting2>
    <setting3>
      <setting31>a3</setting31>
    </setting3>
    <setting4>a4</setting4>
  </settings>
</root_node>

сb.xml:

<root_node>
  <settings>
    <setting1>b1</setting1>
    <setting2>b2</setting2>
    <setting3>
      <setting31>b3</setting31>
    </setting3>
    <setting5 id="77">b5</setting5>
  </settings>
</root_node>

будет генерироватьc.xml:

<root_node>
  <settings>
  <setting1>a1</setting1>
  <setting2>a2</setting2>
  <setting3>
    <setting31>a3</setting31>
  </setting3>
  <setting5 id="77">b5</setting5>
</settings>

Additional Information

Я постараюсь объяснить, что я понимаю, под «общим узлом». Возможно, это не точное определение xml / xslt так как я не эксперт в любом.

a/ Root_node / Настройки /setting1 является "общим узлом" сb/ Root_node / Настройки /setting1 поскольку 2 узла достигаются по одному и тому же пути. То же самое для настройки2 и настройки3.

2 «необычных узла» являютсяa/ Root_node / Настройки /setting4 который находится только в .xml (это не должно прийти на выходе) иb/ Root_node / Настройки /setting5 который находится только в b.xml (он должен прийти в вывод).

«Типовое решение» Я не имею в виду что-то, что будет работать независимо от формата входных XML-файлов. Под этим я подразумеваю, что xslt не должен содержать жесткие коды xpath, в то время как вы можете добавить ограничения, такие как & quot; это будет работать, только если узлы в a.xml уникальны & quot; или что-то еще ограничение вы можете подумать, что это будет подходящим.

Ответы на вопрос(2)

Ваш ответ на вопрос