Я пытаюсь создать таблицу стилей xsl для перевода некоторых сокращенных значений в более длинные (удобочитаемые).
Я использую xsl 1.0 и тестирую в notepad ++ с помощью плагина xml tools
Мой xml файл выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<assets>
<asset>
<asset.asset_id>7c69a3f9-bf2e-45b9-9bb2-9125d2967612</asset.asset_id>
<ContentType>GA</ContentType>
<RightsHolder>ITS</RightsHolder>
<Gender>M</Gender>
<Competition>SA</Competition>
<GameDate>20180105</GameDate>
<HomeTeam>FIO</HomeTeam>
<AwayTeam>INT</AwayTeam>
<VideoResolution>SI</VideoResolution>
<DynamicRange>S2</DynamicRange>
</asset>
</assets>
, а моя таблица стилей выглядит следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()" />
</xsl:copy>
</xsl:template>
<xsl:template match="/">
<xsl:apply-templates select="assets" />
</xsl:template>
<xsl:template match="*">
<xsl:copy><xsl:apply-templates/></xsl:copy>
</xsl:template>
<xsl:variable name="contenttypeshortcode">
<xsl:value-of select="assets/asset/ContentType" />
</xsl:variable>
etc
Но с большим количеством переменных выбираются различные другие элементы. С помощью переменных, включенных в документ, Notepad ++ говорит, что преобразование сгенерировало пустой документ
Если я удаляю переменные, я просто получаю нетрансформированную копию ввода (как и ожидалось).
У меня было мы пошли дальше, чем просто создав переменные, и начали выводить информацию, но когда я нажал эту ошибку, я начал удалять код из преобразования, пока я больше не получил ошибку.
Я не уверен, что относительно переменных, которые приводят к пустому преобразованию, любые указания будут оценены.