все ошибки выброса файлов xslt, символ '', шестнадцатеричное значение 0x20, нельзя включить в имя - PullRequest
0 голосов
/ 25 февраля 2019

У меня есть несколько файлов xslt, которые всегда работали до тех пор, пока они вдруг не начали выдавать ошибки сегодня.Я просмотрел свои журналы, и это сообщение об ошибке я вижу:

A rendering error occurred: Xsl file could not be processed (details: System.Xml.XmlException: The ' ' character, hexadecimal value 0x20, cannot be included in a name.

Это мой один из моих файлов xslt для компонента Breadcrumb:

<!-- output directives -->
<xsl:output method="xml" indent="no" encoding="UTF-8" />

<!-- parameters -->
<xsl:param name="lang" select="'en'"/>
<xsl:param name="id" select="''"/>
<xsl:param name="sc_item"/>
<xsl:param name="sc_currentitem"/>

<xsl:include href="./Includes/Navigation.xslt"/>

<!-- entry point -->
<xsl:template match="*">
  <xsl:apply-templates select="$sc_item" mode="main"/>
</xsl:template>

<!--==============================================================-->
<!-- main                                                         -->
<!--==============================================================-->
<xsl:template match="*" mode="main">
    <xsl:if test="sc:fld('Hide Breadcrumb',.) !='1'"> 
      <div id="breadcrumb">
         <xsl:for-each select="$sc_currentitem/ancestor-or-self::item[sc:fld('Show Page in Breadcrumb',.) = '1']">
          <xsl:choose>
            <xsl:when test="position()!= last()">
              <xsl:call-template name="createLink">
                <xsl:with-param name="item" select="." />
              </xsl:call-template>
            </xsl:when>
            <xsl:otherwise>
              <xsl:call-template name="linkText">
                <xsl:with-param name="item" select="." />
              </xsl:call-template>
            </xsl:otherwise>
          </xsl:choose>
          <xsl:if test="position()!= last()">
            ›
          </xsl:if>
        </xsl:for-each>
      </div>
  </xsl:if>
</xsl:template>


Navigation.xslt:

Я попытался удалить все из Breadcrumb.xslt, чтобы сделать это просто так:
<xsl:stylesheet version="1.0"
  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  xmlns:sc="http://www.sitecore.net/sc"
  xmlns:dot="http://www.sitecore.net/dot"
  exclude-result-prefixes="dot sc">

  <!-- output directives -->
  <xsl:output method="xml" indent="no" encoding="UTF-8" />


  <!--==============================================================-->
  <!-- main                                                         -->
  <!--==============================================================-->
  <xsl:template match="*" mode="main">
    <h1>Test</h1>
  </xsl:template>

</xsl:stylesheet>

... но я все еще получаюошибка.Недавно я внес некоторые изменения в свои шаблоны в Sitecore, чтобы добавить поля заголовка навигации для нескольких элементов, но после всех последних изменений он работал нормально, и я не знаю, почему он все еще ломается, даже когда все, что у меня есть, есть <h1>Test</h1>

...