After setting up a simple test project in VS2008, an xml file, and a xslt. Using the debugging features, stepping through.
I found the 'nodelist' variable to be of type XPathArrayIterator and the MoveNext() method returns true. Then Inner or Outer Xml at this point works.
e.g. -----
<msxsl:script language="JScript" implements-prefix="user">
function xml(nodelist) {
if (nodelist.MoveNext())
return nodelist.Current.InnerXml;
else
return("ERROR: No Root Node");
}
</msxsl:script>