Написать исходный XML в XSLT для целей разработки - PullRequest
1 голос
/ 04 ноября 2011

Я должен написать XSLT, не зная входного XML.Поэтому я хочу начать с написания XSLT, который будет просто возвращать входной XML без каких-либо преобразований.Могу ли я это сделать?

Ответы [ 3 ]

2 голосов
/ 04 ноября 2011
1 голос
/ 04 ноября 2011
<xsl:template match="/">
  <xsl:copy-of select="."/>
</xsl:template>
0 голосов
/ 04 ноября 2011

То, что вы хотите сделать, известно как Identity Transform .В общем, вам необходимо убедиться, что все атрибутные и неатрибутивные узлы копируются рекурсивно:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>

Обратите внимание, что преобразование идентичности не гарантирует идентичность выходных данных на уровне поверхности (т.е.вычисление хеша может привести к другому результату, например).Например, атрибуты могут быть переупорядочены - это не влияет на информационный набор или действительность.

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