I have a 2003 project with some extension objects that I call in my xslt. I load up the document in the 2005 and use the debugger and it works great. However when it get to the part of my xslt that references the extension I receive the following exception:
Cannot find the script or external object that implements prefix
Here is my xslt with the result exception details. The xslt does work. I just get the exception when debugging. Could it be because its referencing a 1.1 dll? Is there a way around this.
<?
xml version="1.0" encoding="UTF-8"?>
<!
DOCTYPE xsl:Stylesheet [
<!
ENTITY nbsp " ">
]>
<
xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:msxml="urn:schemas-microsoft-com:xslt"
xmlns:umbraco.library="urn:umbraco.library"
exclude-result-prefixes="msxml umbraco.library">
<
xsl:output method="xml" omit-xml-declaration="yes"/>
<
xsl:variable name="maxLevelForSitemap" select="2"/>
<
xsl:param name="currentPage"/>
<
xsl:template match="/">
<
div class="divBlock">
<
a href="/">
<!--
<xsl:if test="$currentPage/@id=@id">
<xsl:attribute name="style">font-weight:bold;</xsl:attribute>
</xsl:if>
-->
<
img src="/images/doc.gif" alt="" style="margin:0px 2px 0px 2px;"/> Home
</
a>
</
div>
<
xsl:call-template name="drawNodes">
<
xsl:with-param name="parent" select="umbraco.library:GetXmlNodeById(1052)/ancestor-or-self::node [@level=1]"/>
</
xsl:call-template>
</
xsl:template>
<
xsl:template name="drawNodes">
<
xsl:param name="parent"/>
<
div class="sidemenu">
<
xsl:for-each select="$parent/node [string(./data [@alias='umbracoNaviHide']) != '1']">
<
xsl:choose>
<
xsl:when test="count(./node [string(./data [@alias='umbracoNaviHide']) != '1']) = 0">
<
div class="divBlock">
<
a href="{umbraco.library:NiceUrl(@id)}">
<
img src="/images/doc.gif" alt="" style="margin:0px 2px 0px 2px;"/>
</
a>
<
a href="{umbraco.library:NiceUrl(@id)}">
<
xsl:if test="$currentPage/@id=@id">
<
xsl:attribute name="style">font-weight:bold;</xsl:attribute>
</
xsl:if>
<
xsl:value-of select="@nodeName" />
</
a>
</
div>
</
xsl:when>
<!--
Top node -->
<
xsl:otherwise>
<
div class="divBlock">
<
xsl:if test="$currentPage/@id=@id">
<
xsl:attribute name="style">font-weight:bold;</xsl:attribute>
</
xsl:if>
<
a id="x{@id}" href="javascript:Toggle('{@id}');">
<
img src="/images/plus.gif" alt="" style="margin:0px 2px 0px 2px;"/>
</
a>
<
a href="{umbraco.library:NiceUrl(@id)}">
<
xsl:value-of select="@nodeName" />
</
a>
</
div>
<
div id="{@id}" style="display:none;margin-left:12px;">
<
xsl:for-each select="./descendant::* [string(./data [@alias='umbracoNaviHide']) != '1']">
<
xsl:if test="$currentPage/@id=@id">
<
xsl:attribute name="style">margin-left:12px;</xsl:attribute>
</
xsl:if>
</
xsl:for-each>
<
xsl:call-template name="drawNodes">
<
xsl:with-param name="parent" select="."/>
</
xsl:call-template>
</
div>
</
xsl:otherwise>
</
xsl:choose>
</
xsl:for-each>
</
div>
</
xsl:template>
</
xsl:stylesheet>
System.Xml.Xsl.XslTransformException was unhandled by user code
Message="Cannot find the script or external object that implements prefix 'urn:umbraco.library'."
Source="System.Data.SqlXml"
LineNumber=0
LinePosition=0
StackTrace:
at System.Xml.Xsl.Runtime.XmlQueryContext.InvokeXsltLateBoundFunction(String name, String namespaceUri, IList`1[] args)
at System.Xml.Xsl.CompiledQuery.Query.<xsl:template match="/">(XmlQueryRuntime {urn:schemas-microsoft-com:xslt-debug}runtime, XPathNavigator {urn:schemas-microsoft-com:xslt-debug}current, Double {urn:schemas-microsoft-com:xslt-debug}position, Double {urn:schemas-microsoft-com:xslt-debug}last, IList`1 {urn:schemas-microsoft-com:xslt-debug}namespaces) in C:\Inetpub\wwwroot\umbraco21\xslt\LeftNav.xslt:line 40
at System.Xml.Xsl.CompiledQuery.Query.<xsl:apply-templates>(XmlQueryRuntime {urn:schemas-microsoft-com:xslt-debug}runtime, XPathNavigator , Double , Double )
at System.Xml.Xsl.CompiledQuery.Query.Root(XmlQueryRuntime {urn:schemas-microsoft-com:xslt-debug}runtime)
at System.Xml.Xsl.CompiledQuery.Query.Execute(XmlQueryRuntime {urn:schemas-microsoft-com:xslt-debug}runtime)
at System.Xml.Xsl.XmlILCommand.Execute(Object defaultDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlSequenceWriter results)
at System.Xml.Xsl.XmlILCommand.Execute(Object defaultDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter writer, Boolean closeWriter)
at System.Xml.Xsl.XmlILCommand.Execute(XmlReader contextDocument, XmlResolver dataSources, XsltArgumentList argumentList, XmlWriter results)
at System.Xml.Xsl.XslCompiledTransform.Transform(XmlReader input, XsltArgumentList arguments, XmlWriter results, XmlResolver documentResolver)
at Microsoft.Xsl.XslPlugin.Execute(String xml, Stream output)
at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.PrivateProcessMessage(RuntimeMethodHandle md, Object[] args, Object server, Int32 methodPtr, Boolean fExecuteInContext, Object[]& outArgs)
at System.Runtime.Remoting.Messaging.StackBuilderSink.SyncProcessMessage(IMessage msg, Int32 methodPtr, Boolean fExecuteInContext)