Последние несколько дней я пытался выяснить эту проблему XSLT / XML (это код, который я с удовольствием пытаюсь исправить). Используя XSLT, я беру то, что в тегах XML «видеть», и пытаюсь создать меню ссылки «также» (или связанные файлы) в файле справки Windows с тегами. $ Filename - это глобальная переменная, так что, скажем, это somefile.xml, $ filename будет somefile.xml.
Реальная проблема заключается в том, что я пытаюсь связать файл вместе, чтобы создать ALink. ({$ filename} _SEE_ALSO связывается с node () _ SEE_ALSO}, файлы do связываются ... но переворачиваются. Итак, у вас есть функция X, вы хотите, чтобы она отображала функцию Y в "See Также ". Как правило, вы должны поместить <see>Function Y</see>
в файл функции X (так что функция X-> функция Y). Однако в приведенном ниже коде она показывает функцию X в функции Y (функция X <-функция Y) - наоборот, поэтому, когда вы нажимаете на «См. также» функции X, вы получаете пустое всплывающее окно, в то время как в функции Y оно всплывает с «функцией X». </p>
Это теги XML:
<function>
<showSeeAlso>
<see>Tag1</see>
<see>Tag2</see>
<see>Tag3</see>
</showSeeAlso>
</function>
Это XSLT:
<xsl:template match="showSeeAlso">
<object id="seeAlso" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11" codebase="HHCTRL.ocx#Version=4,72,8252,0">
<param name="Command" value="ALink, MENU"/>
<param name="Text" value="Text:See Also"/>
<param name="Font" value="Arial,8pt,,,underline"/>
<param name="Flags" value="1"/>
<param name="Item1" value=""/>
<param name="Item2" value="{$filename}_SEE_ALSO"/>
</object>
<xsl:apply-templates select="see"/>
</xsl:template>
<xsl:template match="see">
<xsl:param name="name" select="."/>
<object type="application/x-oleobject" classid="clsid:1e2a7bd0-dab9-11d0-b93a-00c04fc99f9e">
<param name="ALink Name" value="{concat(node(),'_SEE_ALSO')}"/>
</object>
</xsl:template>
Любая / вся помощь очень ценится, это было проклятием моего существования в последние несколько дней.