public static XPathNavigator ToNode(XPathItem item)
{
XsltLibrary.CheckXsltValue(item);
if (!item.IsNode)
{
// Create Navigator over text node containing string value of item
XPathDocument doc = new XPathDocument();
XmlRawWriter writer = doc.LoadFromWriter(XPathDocument.LoadFlags.AtomizeNames, string.Empty);
writer.WriteString(ToString(item));
writer.Close();
return(doc.CreateNavigator());
}
RtfNavigator rtf = item as RtfNavigator;
if (rtf != null)
{
return(rtf.ToNavigator());
}
return((XPathNavigator)item);
}