в XSLT, как удалить пробелы в заголовках пространства имен, получая выходные данные - PullRequest
0 голосов
/ 18 мая 2018

Как убрать пробел в заголовке пространства имен xslt

<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
                 xmlns:fpml="http://www.fpml.org/2010/FpML-4-9"
                 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
                 xmlns:mtc="OTC_Matching_11-0" xmlns:rm="OTC_RM_11-0"
                 xsi:schemaLocation="OTC_RM_11-0 /xmls/OTC/OTC_RM_11-0.xsd 
                 OTC_Matching_11-0/xmls/OTC/OTC_Matching_11-0.xsd http://schemas.xmlsoap.org/soap/envelope/ /xmls/OTC/soap-envelope.xsd http://www.fpml.org/2010/FpML-4-9 /xmls/OTC/fpml-main-4-9.xsd"  >

        </env:Envelope>

должен быть в одной строке, это заголовочные файлы вместо новой строки

1 Ответ

0 голосов
/ 18 мая 2018

Вы можете использовать следующие теги в файле stylesheet, чтобы указать выходные данные как XML и убрать пробелы:

<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <!-- add those 2 tags at the begining of your stylesheet to specify that the output is XML format and to strip the spaces -->
    <xsl:output method="xml" indent="yes" /> 
    <xsl:strip-space elements="*"/>

    <xsl:template match="/">
            ...
            ...
            ...
    </xsl:template>

</xsl:stylesheet>

Обратите внимание, что для уменьшения размера файлов XMLТаким образом, улучшается скорость передачи в сети, а также скорость синтаксического анализа / скорость обработки на принимающем хосте.Пустые узлы часто конвертируются как <node/> вместо <node></node> процессорами XSLT.

Вы также можете linarize ваш XML-файл перед отправкой, если вам нужно отправить много информации одновременно.

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