Чтобы выполнить обработку на стороне клиента в XSLT с поддержкой синтаксического анализа JSON, вам потребуется процессор XSLT 3.0, что на практике означает Saxon-JS. (Отказ от ответственности: это продукт моей компании.)
К сожалению, введенные вами данные не являются допустимыми JSON, но давайте предположим, что на самом деле это так:
[
{
"idCdc": 1,
"order": 1,
"cdcName": "test 1"
},
{
"idCdc": 2,
"order": 2,
"cdcName": "test 2",
"idParent": 1
},
{
"idCdc": 3,
"order": 1,
"cdcName": "test 3",
"idParent": 1
}
]
Затем вы можете преобразовать его в желаемый формат XML, используя следующий код XSLT 3.0:
<xsl:variable name="json-array" select="json-doc('input.json')"/>
<cdcList>
<xsl:for-each select="$json-array?*">
<updateCdc>
<xsl:for-each select="map:keys(.)">
<xsl:element name="{.}">
<xsl:value-of select="map:get(.)"/>
</xsl:element>
</xsl:for-each>
</updateCdc>
</xsl:for-each>
</cdcList>