Поскольку выражения пути, начинающиеся с "//", выбираются из root дерева документа, вы выбираете одни и те же узлы каждый раз в своем xsl:value-of
; и в XSLT 1.0, если вы выбираете несколько узлов, отображается только первый.
Метинкс, который вы используете "//", потому что вы видели его в примере кода и фактически не понимаете, что это означает ...
В пределах xsl:for-each
обычно требуется относительный путь, который выбирается из узла, обрабатываемого в данный момент для каждого.
Вы также, вероятно, выбрали это *[local-name()='linked-hash-map']
привычка из чужого кода. Без использования пространств имен вы можете безопасно заменить его на linked-hash-map
.