Я довольно слаб в XSLT, так что это может показаться очевидным. Вот пример XML
<term>
<name>cholecystocolonic fistula</name>
<definition>blah blah</definition>
<reference>cholecystocolostomy</reference>
</term>
А вот XSLT, который я недавно написал для его обработки
<xsl:template name="term">
{
"dictitle": "<xsl:value-of select="name" disable-output-escaping="yes" />",
"html": "<xsl:value-of select="definition" disable-output-escaping="yes"/>",
"reference": "<xsl:value-of select="reference" disable-output-escaping="yes"/>
}
</xsl:template>
По сути, я создаю JSON из XML.
Требования теперь изменились, и теперь XML может иметь более одного тега определения и ссылочного тега. Они могут появляться в любом порядке: определение, ссылка, ссылка, определение, ссылка.
Как я могу обновить XSLT, чтобы приспособиться к этому? Вероятно, стоит упомянуть, что, поскольку мой процессор XSLT использует .NET, я могу использовать только команды XSLT 1.0.
Большое спасибо!
РЕДАКТИРОВАТЬ - Уточнение
Это тот тип JSON, который я хотел бы создать, учитывая следующий пример XML
<term>
<name>cholecystocolonic fistula</name>
<definition>blah blah</definition>
<reference>cholecystocolostomy</reference>
<definition>XSLT is not as easy as it should be</definition>
<reference>qui</reference>
</term>
{
dictitle: "cholecystocolonic fistula",
html: "blah blah",
reference: "cholecystocolostomy",
html: "XSLT is not as easy as it should be",
reference: "qui"
}