Вставить тег <? xml-stylesheet с помощью xsl

Как добавить ссылку на таблицу стилей с помощью XSLT?

Я пытаюсь вырезать большой входной XML с первым преобразованием и нуждаюсь во втором преобразовании, которое будет применяться на клиенте. Таким образом, первое преобразование должно выводить правильную ссылку, например:

<?xml-stylesheet type="text/xsl" href="client.xsl"?>

Чтобы отобразить его XML- > transform1 (server) → XML- > transform2 (client) → HTML

Единственный способ заставить его работать до сих пор - использовать xsl: text disable-output-escaping и CDATA:

<xsl:text disable-output-escaping="yes"><![CDATA[<?xml-stylesheet type="text/xsl" href="/efo/efo_class.xsl"?>]]> 

Конечно, должен быть лучший метод.

Ответы

Ответ 1

Основываясь на спецификации XSLT, Создание инструкций по обработке:

<xsl:processing-instruction name="xml-stylesheet">
  <xsl:text>type="text/xsl" href="client.xsl"</xsl:text>
</xsl:processing-instruction>

создаст инструкцию обработки:

<?xml-stylesheet type="text/xsl" href="client.xsl"?>