Страницы

Поиск по вопросам

четверг, 2 января 2020 г.

XSLT разница между элементом xsl:text и текстом

#xml #xslt


Для чего или в каких случаях нухно использовать элемент  в XSLT?

вот пример кода

      
        

  • / /
    ISBN:
попробовал написать без элемента , результат тот же.
  • / /
    ISBN:
  • в чем же сила этого элемента?


    Ответы

    Ответ 1



    Используя xsl:text можно точно управлять выводом пробельных символов. Под ваш код xsl я взял такой xml: Title1 Autor1 ver1.0 Title2 Autor2 ver2.0 Первый вариант вашего кода, с xsl:text даёт такой вывод:

    test

    • Title1 / Autor1 / ver1.0
      ISBN:1
    • Title2 / Autor2 / ver2.0
      ISBN:2
    Второй вариант выдаёт следующее:

    test

    • Title1 / Autor1 / ver1.0
      ISBN: 1
    • Title2 / Autor2 / ver2.0
      ISBN: 2
    Как можно видеть, во втором случае значение ISBN: было скопировано вместе с пробелами перед ним, а также с переводами строки. Чтобы не было недопонимания, приведу полный текст xsl-преобразования, который я использовал:

    • / /
      ISBN:


    Ответ 2



    В таблице стилей текст можно создавать для вывода в литеральное дерево результатов с использованием элемента или без него. Однако при использовании этого элемента можно до определенной степени контролировать пробелы, созданные таблицей стилей. Например, для улучшения читаемости таблицы стилей можно записывать каждый элемент шаблона на отдельной строке и в некоторых строках использовать отступы. В этом случае пробелы становятся составной частью правила шаблона. Это может быть как желательным, так и нежелательным эффектом преобразования. Иногда нужно вывести пробел, чтобы разделить два значения. В этом случае можно воспользоваться элементом . Пробелы, заключенные внутри элемента , выводятся в дерево результатов. Элемент на MSDN Library

    Комментариев нет:

    Отправить комментарий