Замените угловые кронштейны на XSLT - PullRequest
0 голосов
/ 05 февраля 2020

Я пытаюсь напечатать код моего XML на странице html. Файл XML обрабатывается таблицей стилей XSLT.

В данный момент я пытаюсь сделать следующее:

<xsl:template name="XML">
        <pre>
          <code>
            <xsl:copy-of select="node()"></xsl:copy-of>
          
        

И это работает довольно хорошо, но код XML не отображается, потому что браузер интерпретирует фактическую разметку кода XML. Так есть ли решение заменить угловые скобки на &lt; и &gt;?

1 Ответ

1 голос
/ 05 февраля 2020

В XSLT 3 вы можете просто использовать <xsl:value-of select="serialize(node())"/> вместо <xsl:copy-of select="node()"></xsl:copy-of>, который вы пробовали.

Для более старых процессоров XSLT, не поддерживающих XSLT 3, может быть предусмотрена функция расширения, определяющая c процессора для сериализации. узлы или вы можете использовать существующие, разработанные, чисто XSLT подходы к сериализации, такие как https://lenzconsulting.com/xml-to-string/.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...