matlab.io.xml.transform.StylesheetSourceDocument class

Пакет: matlab.io.xml.transform

Исходный документ таблицы стилей для преобразования

Описание

Используйте объект matlab.io.xml.transform.StylesheetSourceDocument класс, чтобы задать matlab.io.xml.dom.Document возразите как таблица стилей, чтобы использовать для преобразования. Можно обеспечить StylesheetSourceDocument возразите как вход таблицы стилей против transform или transformToString метод matlab.io.xml.transform.Transformer объект.

matlab.io.xml.transform.StylesheetSourceDocument классом является handle класс.

Атрибуты класса

ConstructOnLoad
true
HandleCompatible
true

Для получения информации об атрибутах класса см. Атрибуты класса.

Создание

Описание

пример

stylesheetSourceObj = matlab.io.xml.transform.StylesheetSourceDocument(doc) создает matlab.io.xml.transform.StylesheetSourceDocument объект с theDocument набор свойств к заданному matlab.io.xml.dom.Document объект.

Свойства

развернуть все

Документ, содержащий таблицу стилей, заданную как matlab.io.xml.dom.Document объект.

Атрибуты:

GetAccess
public
SetAccess
immutable
Transient
true
NonCopyable
true

Методы

развернуть все

Примеры

свернуть все

Предположим, что вы хотите настроить таблицу стилей для преобразования, но не хотите изменять файл, который содержит таблицу стилей. Можно считать файл таблицы стилей в документ DOM, изменить стиль в документе, и затем использовать документ в качестве таблицы стилей для преобразования. Задайте таблицу стилей как matlab.io.xml.transform.StylesheetSourceDocument объект.

Этот пример преобразовывает разметку XML для стран и их столиц в HTML-таблицу. Исходный файл XSL задает таблицу с цветом по умолчанию, черным. Пример анализирует XSL из файла в matlab.io.xml.dom.Document возразите, изменяет стиль, чтобы сделать таблицу зеленой, и передает Document возразите против преобразования как matlab.io.xml.transform.StylesheetSourceDocument объект.

Пример использует эти файлы:

  • capitals.xml

<Countries>
    <Country><Name>Canada</Name><Capital>Ottawa</Capital></Country>
    <Country><Name>France</Name><Capital>Paris</Capital></Country>
    <Country><Name>Peru</Name><Capital>Lima</Capital></Country>
</Countries>
  • capitals.xsl

<?xml version="1.0"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

<xsl:template match="/">
  <html>
  <body>
      <table>
      <tr>
        <th>Country</th>
        <th>Capital</th>
      </tr>
      <xsl:for-each select="Countries/Country">
        <tr>
          <td><xsl:value-of select="Name"/></td>
          <td><xsl:value-of select="Capital"/></td>
        </tr>
      </xsl:for-each>
    </table>
  </body>
  </html>
</xsl:template>

</xsl:stylesheet>

Проанализируйте файл таблицы стилей в matlab.io.xml.dom.Document объект.

import matlab.io.xml.dom.*
import matlab.io.xml.transform.*
import matlab.io.xml.xpath.*

ssDoc = parseFile(Parser,"capitals.xsl");

Найдите табличный элемент и добавьте атрибут стиля, который задает цветной зеленый.

tableElem = evaluate(Evaluator,"//table",ssDoc);
styleAttr = createAttribute(ssDoc,"style");
setValue(styleAttr,"color:green");
setAttributeNode(tableElem,styleAttr);

Создайте StylesheetSourceDocument объект, stylesheetObj, это содержит Document объект с разметкой XSL, чтобы использовать для преобразования.

stylesheetObj = StylesheetSourceDocument(ssDoc);

Выполните преобразование и обеспечьте stylesheetObj как таблица стилей, capitals.xml как источник XML и capitals.html как имя выходного файла.

transform(Transformer,"capitals.xml",stylesheetObj,"capitals.html");

Откройте capitals.html в браузере.

web("capitals.html")

Вот HTML-таблица:

Введенный в R2021a