У меня есть очень простое совпадение с шаблоном в моем xslt-коде для создания ditamap, и оно работает путем простого создания themeref всякий раз, когда совпадает с «Разделом» исходного документа.
Исходный фрагмент кода XML выглядитнапример:
<Section Target="IL27TRM409TueAug251754042009251">
<Heading Target="v5170372">WBG (S-GW/P-GW) chassis </Heading>
Соответствие шаблона xslt для раздела выглядит следующим образом:
<xsl:template match="Section>
<xsl:variable name="file" select="Heading"/>
<xsl:variable name="fileName" select="translate(normalize-space($file),' ','_')"/>
<topicref format="dita" href="{translate(./$fileName,' ','_')}.xml" navtitle="{./Heading}">
<xsl:apply-templates/>
</topicref>
Код работает, за исключением того, что для заголовка, как указано выше "WBG (S-GW / P-GW) chassis ", он будет принимать" / "в качестве подпапки, поэтому он создаст подформатор с именем" WBG (S-GW ", а затем создаст файл" P-GW) _chassis.xml ".
Есть ли способ заставить xslt игнорировать "/" в заголовке и просто обрабатывать его как строку, чтобы создать файл XML, просто используя эту строку?