<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="http://www.codeplex.com/rss.xsl"?><rss version="2.0"><channel><title>MVPXML Work Item Rss Feed</title><link>http://www.codeplex.com/WorkItem/List.aspx?ProjectName=MVPXML</link><description>MVPXML Work Item Rss Description</description><item><title>Created Issue: XPathDocumentWriter static constructor doesn't properly revert CAS assertion [25131]</title><link>http://mvpxml.codeplex.com/WorkItem/View.aspx?WorkItemId=25131</link><description>Not sure if this has already been noted or is fixed yet, but I was just digging around in reflector and found a CAS flaw&amp;#58;&lt;br /&gt;&lt;br /&gt;static XPathDocumentWriter&amp;#40;&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    ReflectionPermission perm &amp;#61; new ReflectionPermission&amp;#40;PermissionState.Unrestricted&amp;#41;&amp;#59;&lt;br /&gt;    perm.Flags &amp;#61; ReflectionPermissionFlag.MemberAccess&amp;#59;&lt;br /&gt;    try&lt;br /&gt;    &amp;#123;&lt;br /&gt;        perm.Assert&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;        Type t &amp;#61; typeof&amp;#40;XPathDocument&amp;#41;&amp;#59;&lt;br /&gt;        defaultConstructor &amp;#61; t.GetConstructor&amp;#40;BindingFlags.NonPublic &amp;#124; BindingFlags.Instance, null, Type.EmptyTypes, new ParameterModifier&amp;#91;0&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;        loadWriterMethod &amp;#61; t.GetMethod&amp;#40;&amp;#34;LoadFromWriter&amp;#34;, BindingFlags.NonPublic &amp;#124; BindingFlags.Instance&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;    finally&lt;br /&gt;    &amp;#123;&lt;br /&gt;        CodeAccessPermission.RevertAssert&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&amp;#125;&lt;br /&gt;&lt;br /&gt;CAS reversions should be done in catch-all handlers to prevent upstream exception filters from having the chance to run under elevated CAS permissions.  The above code should be rewritten as&amp;#58;&lt;br /&gt;&lt;br /&gt;static XPathDocumentWriter&amp;#40;&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    ReflectionPermission perm &amp;#61; new ReflectionPermission&amp;#40;PermissionState.Unrestricted&amp;#41;&amp;#59;&lt;br /&gt;    perm.Flags &amp;#61; ReflectionPermissionFlag.MemberAccess&amp;#59;&lt;br /&gt;    try&lt;br /&gt;    &amp;#123;&lt;br /&gt;        perm.Assert&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;        Type t &amp;#61; typeof&amp;#40;XPathDocument&amp;#41;&amp;#59;&lt;br /&gt;        defaultConstructor &amp;#61; t.GetConstructor&amp;#40;BindingFlags.NonPublic &amp;#124; BindingFlags.Instance, null, Type.EmptyTypes, new ParameterModifier&amp;#91;0&amp;#93;&amp;#41;&amp;#59;&lt;br /&gt;        loadWriterMethod &amp;#61; t.GetMethod&amp;#40;&amp;#34;LoadFromWriter&amp;#34;, BindingFlags.NonPublic &amp;#124; BindingFlags.Instance&amp;#41;&amp;#59;&lt;br /&gt;        CodeAccessPermission.RevertAssert&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;    catch&lt;br /&gt;    &amp;#123;&lt;br /&gt;        CodeAccessPermission.RevertAssert&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;        throw&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;&amp;#125;&lt;br /&gt;&lt;br /&gt;It&amp;#39;s possible that other areas in the library need to be similarly updated.  If you need more information, there is a reasonable body of knowledge on the Internet regarding this aspect of CAS.&lt;br /&gt;&lt;br /&gt;BTW, Mvp.Xml is a really cool library, and I love using it&amp;#33;&lt;br /&gt;</description><author>element533</author><pubDate>Wed, 28 Oct 2009 21:09:21 GMT</pubDate><guid isPermaLink="false">Created Issue: XPathDocumentWriter static constructor doesn't properly revert CAS assertion [25131] 20091028090921P</guid></item><item><title>Created Issue: GetCompiledExpression is not thread-safe</title><link>http://mvpxml.codeplex.com/WorkItem/View.aspx?WorkItemId=22196</link><description>We were using a previous version of mvp and got the error&amp;#58;&lt;br /&gt;&amp;#91;IndexOutOfRangeException&amp;#58; Index was outside the bounds of the array.&amp;#93;&lt;br /&gt;   System.Collections.Generic.Dictionary&amp;#96;2.Insert&amp;#40;TKey key, TValue value, Boolean add&amp;#41; &amp;#43;7460198&lt;br /&gt;   System.Collections.Generic.Dictionary&amp;#96;2.set_Item&amp;#40;TKey key, TValue value&amp;#41; &amp;#43;11&lt;br /&gt;   Mvp.Xml.Common.XPath.XPathCache.GetCompiledExpression&amp;#40;String expression, XPathNavigator source&amp;#41; &amp;#43;68&lt;br /&gt;   Mvp.Xml.Common.XPath.XPathCache.SelectNodes&amp;#40;String expression, XmlNode source&amp;#41; &amp;#43;25&lt;br /&gt;&lt;br /&gt;I saw this has been changed already&amp;#58; now a Hashtable is being used as cache. But still, this is not completely fixed, because the Hashtable is also not thread-safe, so you should use locking. Otherwise it might throw errors if you are adding more than one element at the same time to the cache.&lt;br /&gt;&lt;br /&gt;My suggestion for the code would be&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;private static readonly Dictionary&amp;#60;string, XPathExpression&amp;#62; Cache &amp;#61; new Dictionary&amp;#60;string, XPathExpression&amp;#62;&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#47;&amp;#47;&amp;#47; &amp;#60;summary&amp;#62;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#47;&amp;#47;&amp;#47; Retrieves a cached compiled expression, or a newly compiled one.&lt;br /&gt;&amp;#9;&amp;#9;&amp;#47;&amp;#47;&amp;#47; &amp;#60;&amp;#47;summary&amp;#62;&lt;br /&gt;&amp;#9;&amp;#9;private static XPathExpression GetCompiledExpression&amp;#40;string expression, XPathNavigator source&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;if &amp;#40;&amp;#33;Cache.ContainsKey&amp;#40;expression&amp;#41;&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#123;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;XPathExpression expr &amp;#61; source.Compile&amp;#40;expression&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;lock &amp;#40;Cache&amp;#41;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;&amp;#9;if &amp;#40;&amp;#33;Cache.ContainsKey&amp;#40;expression&amp;#41;&amp;#41;&amp;#9;&amp;#47;&amp;#47; it might have been added in the meanwhile&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#9;&amp;#9;&amp;#9;Cache.Add&amp;#40;expression, expr&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#9;return Cache&amp;#91;expression&amp;#93;.Clone&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;&amp;#9;&amp;#125;&lt;br /&gt;</description><author>dkoning</author><pubDate>Mon, 27 Apr 2009 14:57:49 GMT</pubDate><guid isPermaLink="false">Created Issue: GetCompiledExpression is not thread-safe 20090427025749P</guid></item><item><title>Created Issue: XIncludingReader.WhitespaceHandling doesn't seem to do anything</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=19329</link><description>Maybe it&amp;#39;s just me, but it doesn&amp;#39;t appear that XIncludingReader.WhitespaceHandling actually does anything.  No matter what I set it to, I always end up with whitespace nodes.&lt;br /&gt;&lt;br /&gt;I implemented a workaround in the code that may be useful.  In XIncludingReader.cs, Read&amp;#40;&amp;#41;, before the switch &amp;#40;_reader.NodeType&amp;#41; I added&amp;#58;&lt;br /&gt;&lt;br /&gt;                if &amp;#40;_reader.NodeType &amp;#61;&amp;#61; XmlNodeType.Whitespace &amp;#38;&amp;#38; _whiteSpaceHandling &amp;#33;&amp;#61; WhitespaceHandling.All&amp;#41;&lt;br /&gt;                    _reader.Read&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;This makes everything work as I&amp;#39;d expect for WhitespaceHandling.None and WhitespaceHandling.All &amp;#40;admittedly, WhitespaceHandling.Significant isn&amp;#39;t handled properly by this&amp;#41;.&lt;br /&gt;&lt;br /&gt;Is there somewhere else that XIncludingReader.WhitespaceHandling is supposed to work&amp;#63;&lt;br /&gt;</description><author>frinetik</author><pubDate>Tue, 04 Nov 2008 21:09:19 GMT</pubDate><guid isPermaLink="false">Created Issue: XIncludingReader.WhitespaceHandling doesn't seem to do anything 20081104090919P</guid></item><item><title>Commented Issue: MvpXslTransform.Load doesn't close xml reader</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14361</link><description>Method MvpXslTransform.Load&amp;#40;string stylesheetUri, XsltSettings settings, XmlResolver stylesheetResolver&amp;#41; opens XmlReader for given stylesheetUri and doesn&amp;#39;t close it after use. So stylesheet file got locked. I think it&amp;#39;s necessary to add using statement. Like this&amp;#58;&lt;br /&gt;&lt;br /&gt;public void Load&amp;#40;string stylesheetUri, XsltSettings settings, XmlResolver stylesheetResolver&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    using&amp;#40; XmlReader reader &amp;#61; XmlReader.Create&amp;#40;stylesheetUri&amp;#41;&lt;br /&gt;       this.LoadStylesheetFromReader&amp;#40;reader, settings, stylesheetResolver&amp;#41;&amp;#59;&lt;br /&gt;&amp;#125;&lt;br /&gt;Comments: ** Comment from web user: earthware ** &lt;p&gt;yup I find this a real pain when doing any xlslt transform during development as it keeps the file locked until iis is restarted&lt;/p&gt;</description><author>earthware</author><pubDate>Thu, 23 Oct 2008 20:19:43 GMT</pubDate><guid isPermaLink="false">Commented Issue: MvpXslTransform.Load doesn't close xml reader 20081023081943P</guid></item><item><title>Commented Issue: xinclude / encoding problem</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=18320</link><description>hello&lt;br /&gt;i&amp;#39;ve a problem with encoding and i can&amp;#39;t resolve it.&lt;br /&gt;I have a project which use the .net 2 xml api and everything work fine.&lt;br /&gt;but if i have a file which contains strange characters &amp;#40;i don&amp;#39;t put an example, otherwise codeplex refuse my post&amp;#41;, xinclude don&amp;#39;t word &amp;#40;but .net work&amp;#41;&lt;br /&gt;&lt;br /&gt;the error message is &amp;#58;&lt;br /&gt;..., valeur hexad&amp;#233;cimale 0x0B, est un caract&amp;#232;re non valide. Ligne 3, position 31.&amp;#34;&lt;br /&gt;&lt;br /&gt;i have made an example project which reproduce the bug&lt;br /&gt;do you know how to solve that problem &amp;#63;&lt;br /&gt;although i admit i&amp;#39;m a bit lost, i think it&amp;#39;s a encoding problem&lt;br /&gt;&lt;br /&gt;thanks&lt;br /&gt;Comments: ** Comment from web user: psohm ** &lt;p&gt;the xml example file is &amp;#58;&lt;/p&gt;&lt;p&gt;&amp;#60;&amp;#63;xml version&amp;#61;&amp;#34;1.0&amp;#34; encoding&amp;#61;&amp;#34;utf-8&amp;#34;&amp;#63;&amp;#62;&lt;br /&gt;&amp;#60;Magasin xmlns&amp;#58;xsi&amp;#61;&amp;#34;http&amp;#58;&amp;#47;&amp;#47;www.w3.org&amp;#47;2001&amp;#47;XMLSchema-instance&amp;#34; xmlns&amp;#58;xsd&amp;#61;&amp;#34;http&amp;#58;&amp;#47;&amp;#47;www.w3.org&amp;#47;2001&amp;#47;XMLSchema&amp;#34;&amp;#62;&lt;br /&gt;&amp;#9;&amp;#60;Client Nom&amp;#61;&amp;#34;KKK QK Q QKQK&amp;#38;&amp;#35;xB&amp;#59;K Q QK&amp;#34; &amp;#47;&amp;#62;&lt;br /&gt;&amp;#60;&amp;#47;Magasin&amp;#62;&lt;br /&gt;&lt;/p&gt;</description><author>psohm</author><pubDate>Thu, 04 Sep 2008 15:31:16 GMT</pubDate><guid isPermaLink="false">Commented Issue: xinclude / encoding problem 20080904033116P</guid></item><item><title>Created Issue: xinclude / encoding problem</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=18320</link><description>hello&lt;br /&gt;i&amp;#39;ve a problem with encoding and i can&amp;#39;t resolve it.&lt;br /&gt;I have a project which use the .net 2 xml api and everything work fine.&lt;br /&gt;but if i have a file which contains strange characters &amp;#40;i don&amp;#39;t put an example, otherwise codeplex refuse my post&amp;#41;, xinclude don&amp;#39;t word &amp;#40;but .net work&amp;#41;&lt;br /&gt;&lt;br /&gt;the error message is &amp;#58;&lt;br /&gt;..., valeur hexad&amp;#233;cimale 0x0B, est un caract&amp;#232;re non valide. Ligne 3, position 31.&amp;#34;&lt;br /&gt;&lt;br /&gt;i have made an example project which reproduce the bug&lt;br /&gt;do you know how to solve that problem &amp;#63;&lt;br /&gt;although i admit i&amp;#39;m a bit lost, i think it&amp;#39;s a encoding problem&lt;br /&gt;&lt;br /&gt;thanks&lt;br /&gt;</description><author>psohm</author><pubDate>Thu, 04 Sep 2008 15:28:47 GMT</pubDate><guid isPermaLink="false">Created Issue: xinclude / encoding problem 20080904032847P</guid></item><item><title>Commented Issue: Cannot get XpathCache to replace variables.</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14941</link><description>I cannot get XpathCache to replace dynamic xpath variables in my xpath expression. I know the expression evaluates if I hardcode some test values. &lt;br /&gt;&lt;br /&gt;This works&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;However this doesnt&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth &amp;#36;highlighted&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;string Highlighted &amp;#61; &amp;#40;SomeBoolVal&amp;#63; &amp;#34;and contains&amp;#40;&amp;#64;class, &amp;#39;expanded&amp;#39;&amp;#41;&amp;#34; &amp;#58; &amp;#34;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;, new XPathVariable&amp;#40;&amp;#34;highlighted&amp;#34;, Highlighted&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;It seems as though my variable cannot contain xpath it can only be values. Why is this&amp;#63; Is there any way to dynamically generate the xpath itself and not just insert values&amp;#63;&lt;br /&gt;Comments: ** Comment from web user: dcazzulino ** &lt;p&gt;That&amp;#39;s just now how xslt variables work. We&amp;#39;re just making it easier to use a feature that&amp;#39;s provided by the System.Xml.Xsl namespace. We can&amp;#39;t make changes, and I don&amp;#39;t anticipate MS doing them either. &lt;/p&gt;&lt;p&gt;Again, if you&amp;#39;re invoking Sprocs, you cannot do that. I&amp;#39;m afraid this is internally &amp;#40;.NET&amp;#41; the same. &lt;/p&gt;</description><author>dcazzulino</author><pubDate>Tue, 08 Jul 2008 05:18:35 GMT</pubDate><guid isPermaLink="false">Commented Issue: Cannot get XpathCache to replace variables. 20080708051835A</guid></item><item><title>Closed Issue: Cannot get XpathCache to replace variables.</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14941</link><description>I cannot get XpathCache to replace dynamic xpath variables in my xpath expression. I know the expression evaluates if I hardcode some test values. &lt;br /&gt;&lt;br /&gt;This works&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;However this doesnt&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth &amp;#36;highlighted&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;string Highlighted &amp;#61; &amp;#40;SomeBoolVal&amp;#63; &amp;#34;and contains&amp;#40;&amp;#64;class, &amp;#39;expanded&amp;#39;&amp;#41;&amp;#34; &amp;#58; &amp;#34;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;, new XPathVariable&amp;#40;&amp;#34;highlighted&amp;#34;, Highlighted&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;It seems as though my variable cannot contain xpath it can only be values. Why is this&amp;#63; Is there any way to dynamically generate the xpath itself and not just insert values&amp;#63;&lt;br /&gt;Comments: By Design</description><author>dcazzulino</author><pubDate>Tue, 08 Jul 2008 05:15:26 GMT</pubDate><guid isPermaLink="false">Closed Issue: Cannot get XpathCache to replace variables. 20080708051526A</guid></item><item><title>Closed Issue: XPathDocumentWriter::WriteRaw escapes XML when it shouldn't</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=15539</link><description>The WriteRaw method of the XPathDocumentWriter escapes the XML brackets &amp;#60; and &amp;#62; to &amp;#38;lt&amp;#59; and &amp;#38;gt&amp;#59; It seems that it behaves exactly as WriteString does.&lt;br /&gt;&lt;br /&gt;Steps to reproduce&amp;#58;&lt;br /&gt;&lt;br /&gt;XPathDocumentWriter xw &amp;#61; new XPathDocumentWriter&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;xw.WriteStartElement&amp;#40;&amp;#34;root&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;xw.WriteRaw&amp;#40;&amp;#34;&amp;#60;item&amp;#62;test&amp;#60;&amp;#47;item&amp;#62;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;xw.WriteEndElement&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;xw.Flush&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;XPathNavigator xn &amp;#61; xw.Close&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;Trace.WriteLine&amp;#40;xn.OuterXml&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;The output is&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#60;root&amp;#62;&amp;#38;lt&amp;#59;item&amp;#38;gt&amp;#59;test&amp;#38;lt&amp;#59;item&amp;#38;gt&amp;#59;&amp;#60;&amp;#47;root&amp;#62;&lt;br /&gt;&lt;br /&gt;Whereas it should be&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#60;root&amp;#62;&amp;#60;item&amp;#62;test&amp;#60;&amp;#47;item&amp;#62;&amp;#60;&amp;#47;root&amp;#62;&lt;br /&gt;Comments: Look in Reflector at the MS.Internal.Xml.Cache.XPathDocumentBuilder.WriteRaw implementation:&lt;br /&gt;&lt;br /&gt;public override void WriteRaw(string data)&lt;br /&gt;{&lt;br /&gt;    this.WriteString(data, TextBlockType.Text);&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;That's the wrapped class we're calling, it's provided by .NET and we can't change its behavior. So I guess you cannot use WriteRaw. &lt;br /&gt;&lt;br /&gt;An alternative would be to parse the string with an XmlReader and use WriteNode instead.</description><author>dcazzulino</author><pubDate>Sun, 06 Jul 2008 16:00:39 GMT</pubDate><guid isPermaLink="false">Closed Issue: XPathDocumentWriter::WriteRaw escapes XML when it shouldn't 20080706040039P</guid></item><item><title>CREATED ISSUE: XPathDocumentWriter::WriteRaw escapes XML when it shouldn't</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=15539</link><description>The WriteRaw method of the XPathDocumentWriter escapes the XML brackets &amp;#60; and &amp;#62; to &amp;#38;lt&amp;#59; and &amp;#38;gt&amp;#59; It seems that it behaves exactly as WriteString does.&lt;br /&gt;&lt;br /&gt;Steps to reproduce&amp;#58;&lt;br /&gt;&lt;br /&gt;XPathDocumentWriter xw &amp;#61; new XPathDocumentWriter&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;xw.WriteStartElement&amp;#40;&amp;#34;root&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;xw.WriteRaw&amp;#40;&amp;#34;&amp;#60;item&amp;#62;test&amp;#60;&amp;#47;item&amp;#62;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;xw.WriteEndElement&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;xw.Flush&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;XPathNavigator xn &amp;#61; xw.Close&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;Trace.WriteLine&amp;#40;xn.OuterXml&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;The output is&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#60;root&amp;#62;&amp;#38;lt&amp;#59;item&amp;#38;gt&amp;#59;test&amp;#38;lt&amp;#59;item&amp;#38;gt&amp;#59;&amp;#60;&amp;#47;root&amp;#62;&lt;br /&gt;&lt;br /&gt;Whereas it should be&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#60;root&amp;#62;&amp;#60;item&amp;#62;test&amp;#60;&amp;#47;item&amp;#62;&amp;#60;&amp;#47;root&amp;#62;&lt;br /&gt;</description><author>roy_cornelissen</author><pubDate>Mon, 10 Mar 2008 13:42:25 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: XPathDocumentWriter::WriteRaw escapes XML when it shouldn't 20080310014225P</guid></item><item><title>CREATED ISSUE: XpathCache Select that returns XpathNavigator</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=15268</link><description>Would it be possible to get a XPathCache.SelectSingleNode function that returns a XPathNavigator&amp;#63;&lt;br /&gt;</description><author>aromero78</author><pubDate>Thu, 21 Feb 2008 14:46:49 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: XpathCache Select that returns XpathNavigator 20080221024649P</guid></item><item><title>COMMENTED ISSUE: Cannot get XpathCache to replace variables.</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14941</link><description>I cannot get XpathCache to replace dynamic xpath variables in my xpath expression. I know the expression evaluates if I hardcode some test values. &lt;br /&gt;&lt;br /&gt;This works&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;However this doesnt&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth &amp;#36;highlighted&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;string Highlighted &amp;#61; &amp;#40;SomeBoolVal&amp;#63; &amp;#34;and contains&amp;#40;&amp;#64;class, &amp;#39;expanded&amp;#39;&amp;#41;&amp;#34; &amp;#58; &amp;#34;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;, new XPathVariable&amp;#40;&amp;#34;highlighted&amp;#34;, Highlighted&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;It seems as though my variable cannot contain xpath it can only be values. Why is this&amp;#63; Is there any way to dynamically generate the xpath itself and not just insert values&amp;#63;&lt;br /&gt;Comments: ** Comment from web user: aromero78 ** &lt;p&gt;If at all possible I&amp;#39;d rather not be protected from myself. Would it be possible to break out this functionality into two separate functions&amp;#63; An XPathCache.Select method that allows for any string to be added and a new function that would check a give string for xpath injection&amp;#63; That way in situations where I control all of the variables and know that xpath injection is not possible I could use the XPathCache class to build any Xpath statement I wanted and could still check for injection if need be.&lt;/p&gt;</description><author>aromero78</author><pubDate>Thu, 21 Feb 2008 14:43:43 GMT</pubDate><guid isPermaLink="false">COMMENTED ISSUE: Cannot get XpathCache to replace variables. 20080221024343P</guid></item><item><title>COMMENTED ISSUE: Cannot get XpathCache to replace variables.</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14941</link><description>I cannot get XpathCache to replace dynamic xpath variables in my xpath expression. I know the expression evaluates if I hardcode some test values. &lt;br /&gt;&lt;br /&gt;This works&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;However this doesnt&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth &amp;#36;highlighted&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;string Highlighted &amp;#61; &amp;#40;SomeBoolVal&amp;#63; &amp;#34;and contains&amp;#40;&amp;#64;class, &amp;#39;expanded&amp;#39;&amp;#41;&amp;#34; &amp;#58; &amp;#34;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;, new XPathVariable&amp;#40;&amp;#34;highlighted&amp;#34;, Highlighted&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;It seems as though my variable cannot contain xpath it can only be values. Why is this&amp;#63; Is there any way to dynamically generate the xpath itself and not just insert values&amp;#63;&lt;br /&gt;Comments: ** Comment from web user: dcazzulino ** &lt;p&gt;think of the xpathcache and pre-compiled xpath expressions as stored procedures. &lt;br /&gt;The values you&amp;#39;re replacing are not &amp;#34;string.format&amp;#34; kind of replacement. They are rather like sproc&amp;#39;s parameters. &lt;/p&gt;&lt;p&gt;What you&amp;#39;re trying to do is the equivalent of SQL injection but with xpath. it&amp;#39;s called xpath injection and is something that doesn&amp;#39;t work by design.&lt;/p&gt;</description><author>dcazzulino</author><pubDate>Thu, 31 Jan 2008 04:27:14 GMT</pubDate><guid isPermaLink="false">COMMENTED ISSUE: Cannot get XpathCache to replace variables. 20080131042714A</guid></item><item><title>CREATED ISSUE: Cannot get XpathCache to replace variables.</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14941</link><description>I cannot get XpathCache to replace dynamic xpath variables in my xpath expression. I know the expression evaluates if I hardcode some test values. &lt;br /&gt;&lt;br /&gt;This works&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;However this doesnt&amp;#58;&lt;br /&gt;string MenuDepthXpathStr &amp;#61; &amp;#34;&amp;#47;descendant-or-self&amp;#58;&amp;#58;ul&amp;#91;count&amp;#40;ancestor-or-self&amp;#58;&amp;#58;ul&amp;#41; &amp;#62;&amp;#61;  &amp;#36;depth &amp;#36;highlighted&amp;#93;&amp;#34;&amp;#59;&lt;br /&gt;string Depth &amp;#61; &amp;#34;1&amp;#34;&amp;#59;&lt;br /&gt;string Highlighted &amp;#61; &amp;#40;SomeBoolVal&amp;#63; &amp;#34;and contains&amp;#40;&amp;#64;class, &amp;#39;expanded&amp;#39;&amp;#41;&amp;#34; &amp;#58; &amp;#34;&amp;#34;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;XPathNodeIterator TempList &amp;#61; XPathCache.Select&amp;#40;MenuDepthXpathStr, MenuDocXml, new XmlNamespaceManager&amp;#40;MenuDocXml.NameTable&amp;#41;, new XPathVariable&amp;#40;&amp;#34;depth&amp;#34;, Depth&amp;#41;, new XPathVariable&amp;#40;&amp;#34;highlighted&amp;#34;, Highlighted&amp;#41;&amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;It seems as though my variable cannot contain xpath it can only be values. Why is this&amp;#63; Is there any way to dynamically generate the xpath itself and not just insert values&amp;#63;&lt;br /&gt;</description><author>aromero78</author><pubDate>Mon, 28 Jan 2008 22:58:55 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: Cannot get XpathCache to replace variables. 20080128105855P</guid></item><item><title>CREATED ISSUE: MvpXslTransform.Load does not use XmlResolver during XmlReader.Create</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14871</link><description>File&amp;#58; Library&amp;#92;Main&amp;#92;Source&amp;#92;Exslt&amp;#92;XslMvpXslTransform.cs&lt;br /&gt;Line&amp;#58; 179&lt;br /&gt;&lt;br /&gt;&amp;#91;code&amp;#93;&lt;br /&gt;        public void Load&amp;#40;string stylesheetUri, XsltSettings settings, XmlResolver stylesheetResolver&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            LoadStylesheetFromReader&amp;#40;XmlReader.Create&amp;#40;stylesheetUri&amp;#41;, settings, stylesheetResolver&amp;#41;&amp;#59;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&amp;#91;&amp;#47;code&amp;#93;&lt;br /&gt;&lt;br /&gt;Should be&amp;#58;&lt;br /&gt;&lt;br /&gt;&amp;#91;code&amp;#93;&lt;br /&gt;        public void Load&amp;#40;string stylesheetUri, XsltSettings settings, XmlResolver stylesheetResolver&amp;#41;&lt;br /&gt;        &amp;#123;&lt;br /&gt;            XmlReaderSettings readerSettings &amp;#61; new XmlReaderSettings&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;            readerSettings.XmlResolver &amp;#61; stylesheetResolver&amp;#59;&lt;br /&gt;&lt;br /&gt;            using &amp;#40; XmlReader reader &amp;#61; XmlReader.Create&amp;#40; stylesheetUri, readerSettings &amp;#41; &amp;#41;&lt;br /&gt;            &amp;#123;&lt;br /&gt;                LoadStylesheetFromReader&amp;#40; reader, settings, stylesheetResolver &amp;#41;&amp;#59;&lt;br /&gt;            &amp;#125;&lt;br /&gt;        &amp;#125;&lt;br /&gt;&lt;br /&gt;&amp;#91;&amp;#47;code&amp;#93;&lt;br /&gt;</description><author>FilipeToscano</author><pubDate>Wed, 23 Jan 2008 16:21:25 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: MvpXslTransform.Load does not use XmlResolver during XmlReader.Create 20080123042125P</guid></item><item><title>CREATED ISSUE: MvpXslTransform.Load doesn't close xml reader</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14361</link><description>Method MvpXslTransform.Load&amp;#40;string stylesheetUri, XsltSettings settings, XmlResolver stylesheetResolver&amp;#41; opens XmlReader for given stylesheetUri and doesn&amp;#39;t close it after use. So stylesheet file got locked. I think it&amp;#39;s necessary to add using statement. Like this&amp;#58;&lt;br /&gt;&lt;br /&gt;public void Load&amp;#40;string stylesheetUri, XsltSettings settings, XmlResolver stylesheetResolver&amp;#41;&lt;br /&gt;&amp;#123;&lt;br /&gt;    using&amp;#40; XmlReader reader &amp;#61; XmlReader.Create&amp;#40;stylesheetUri&amp;#41;&lt;br /&gt;       this.LoadStylesheetFromReader&amp;#40;reader, settings, stylesheetResolver&amp;#41;&amp;#59;&lt;br /&gt;&amp;#125;&lt;br /&gt;</description><author>AndrewMayorov</author><pubDate>Wed, 12 Dec 2007 17:59:01 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: MvpXslTransform.Load doesn't close xml reader 20071212055901P</guid></item><item><title>CREATED ISSUE: SupportCharacterMaps Bug?</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14270</link><description>Trying to perform a transform by passing a string Uri to a MvpTransform.  Basically I have the following lines of code in c&amp;#35; 3.5 compiled against Mvp 2.3&lt;br /&gt;&lt;br /&gt;xslt &amp;#61; new MVP.MvpXslTransform&amp;#40; false &amp;#41;&amp;#59; &amp;#47;&amp;#47; Debugger.IsAttached&lt;br /&gt;legacySettings &amp;#61; XsltSettings.TrustedXslt&amp;#59;&lt;br /&gt;&lt;br /&gt;XmlReaderSettings dtd &amp;#61; new XmlReaderSettings&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;dtd.ProhibitDtd &amp;#61; false&amp;#59;&lt;br /&gt;xtr &amp;#61; XmlReader.Create&amp;#40; stylesheetUri, dtd &amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;&amp;#47;&amp;#47; Note this next call is coming from a wrapper, and settings and resovler are both null, so the &amp;#39;defaults&amp;#39; are used&lt;br /&gt;xslt.Load&amp;#40; xtr, &amp;#40; settings &amp;#61;&amp;#61; null &amp;#63; legacySettings &amp;#58; settings &amp;#41;, &amp;#40; resolver &amp;#61;&amp;#61; null &amp;#63; new XmlUrlResolver&amp;#40;&amp;#41; &amp;#58; resolver &amp;#41; &amp;#41;&amp;#59;&lt;br /&gt;&lt;br /&gt;Problem is, this load line throws an exception saying DTD is Prohibited in the following function because supportCharacterMaps is defaulted to true.&lt;br /&gt;&lt;br /&gt;protected void LoadStylesheetFromReader&amp;#40;XmlReader reader, XsltSettings settings, XmlResolver resolver&amp;#41;&lt;br /&gt;&amp;#123;            &lt;br /&gt;    if &amp;#40;supportCharacterMaps&amp;#41;&lt;br /&gt;    &amp;#123;&lt;br /&gt;        CharacterMappingXmlReader cmr &amp;#61; new CharacterMappingXmlReader&amp;#40;reader&amp;#41;&amp;#59;&lt;br /&gt;&amp;#9;  &amp;#47;&amp;#47; This compiledTransform.Load&amp;#40;&amp;#41; throws DTD prohibited error b&amp;#47;c I have an xsl&amp;#58;include.&lt;br /&gt;        this.compiledTransform.Load&amp;#40;cmr, settings, resolver&amp;#41;&amp;#59;&lt;br /&gt;        this.characterMap &amp;#61; cmr.CompileCharacterMapping&amp;#40;&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;&lt;br /&gt;    else&lt;br /&gt;    &amp;#123;&lt;br /&gt;&amp;#9;  &amp;#47;&amp;#47; If I set SupportCharacterMaps &amp;#61; false, this line successfully loads the transform.&lt;br /&gt;&amp;#9;  &amp;#47;&amp;#47; Is there a problem with the CharacterMappingXmlReader ctor&amp;#63;  I tried to trace the code&lt;br /&gt;&amp;#9;  &amp;#47;&amp;#47; and it looked &amp;#8216;right&amp;#8217;, but I just wanted to run it by you.&lt;br /&gt;        this.compiledTransform.Load&amp;#40;reader, settings, resolver&amp;#41;&amp;#59;&lt;br /&gt;    &amp;#125;            &lt;br /&gt;&amp;#125;&lt;br /&gt;&lt;br /&gt;Thanks in advance.  Hoping to turn the character maps back on.&lt;br /&gt;</description><author>terryaney</author><pubDate>Thu, 06 Dec 2007 09:01:23 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: SupportCharacterMaps Bug? 20071206090123A</guid></item><item><title>CREATED ISSUE: accept attribute not supported when passing XmlResolver</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=14054</link><description>i need to pass an XmlResolver class in order to pass Credentials. however, i&amp;#39;ve discovered that, when passing an XmlResolver to XIncludingReader, the &amp;#34;accept&amp;#34; and &amp;#34;accept-language&amp;#34; attributes are not honored.&lt;br /&gt;&lt;br /&gt;i&amp;#39;ve checked out the source code and i think the issue is in the ProcessInterDocXMLInclusion class since it just calls GetEntity on the passed in resolver. &lt;br /&gt;&lt;br /&gt;not sure what a clean solution would be here. somehow we need to get the &amp;#34;accept&amp;#34; attribute passed to the XmlResolver so that GetEntity can use it. I can craft a custom XmlResolver that has two new properties. even build a GetEntiry that will honor them and return a stream. but i&amp;#39;m not sure how to get the attributes from the &amp;#60;x&amp;#58;include .... accept&amp;#61;&amp;#34;text&amp;#47;xml&amp;#34; &amp;#47;&amp;#62; element passed to the custom resolver.&lt;br /&gt;&lt;br /&gt;any ideas&amp;#63;&lt;br /&gt;&lt;br /&gt;Mike Amundsen&lt;br /&gt;</description><author>mikeamundsen</author><pubDate>Sat, 24 Nov 2007 22:25:09 GMT</pubDate><guid isPermaLink="false">CREATED ISSUE: accept attribute not supported when passing XmlResolver 20071124102509P</guid></item><item><title>COMMENTED ISSUE: XIncludingReader doesn't work with Saxon.NET</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=8423</link><description>Latest Saxon supports XInclude, but only in Java version. I tried Saxon.NET with XIncludingReader and figured out it doesn&amp;#39;t work.&lt;br /&gt;Saxon.NET is using GetAttribute&amp;#40;int&amp;#41;, which is poorly implemented in XIncludingReader. The problem is that AttributeCount returns number of attributes &amp;#43; virtual xml&amp;#58;base and xml&amp;#58;lang, while GetAttribute&amp;#40;int&amp;#41; doesn&amp;#39;t support virtual ones. This is easy to fix.&lt;br /&gt;Comments: ** Comment from web user: olegt ** &lt;p&gt;&lt;/p&gt;&lt;p&gt;&amp;#42;&amp;#42; Closed by olegt 6&amp;#47;12&amp;#47;2007 12&amp;#58;26 AM&lt;/p&gt;</description><author>olegt</author><pubDate>Tue, 30 Oct 2007 00:46:16 GMT</pubDate><guid isPermaLink="false">COMMENTED ISSUE: XIncludingReader doesn't work with Saxon.NET 20071030124616A</guid></item><item><title>COMMENTED ISSUE: XIncludingReader doesn't work with Saxon.NET</title><link>http://www.codeplex.com/MVPXML/WorkItem/View.aspx?WorkItemId=8423</link><description>Latest Saxon supports XInclude, but only in Java version. I tried Saxon.NET with XIncludingReader and figured out it doesn&amp;#39;t work.&lt;br /&gt;Saxon.NET is using GetAttribute&amp;#40;int&amp;#41;, which is poorly implemented in XIncludingReader. The problem is that AttributeCount returns number of attributes &amp;#43; virtual xml&amp;#58;base and xml&amp;#58;lang, while GetAttribute&amp;#40;int&amp;#41; doesn&amp;#39;t support virtual ones. This is easy to fix.&lt;br /&gt;Comments: ** Comment from web user: olegt ** &lt;p&gt;&lt;/p&gt;&lt;p&gt;&amp;#42;&amp;#42; Closed by olegt 6&amp;#47;12&amp;#47;2007 12&amp;#58;26 AM&lt;/p&gt;</description><author>olegt</author><pubDate>Thu, 18 Oct 2007 21:29:55 GMT</pubDate><guid isPermaLink="false">COMMENTED ISSUE: XIncludingReader doesn't work with Saxon.NET 20071018092955P</guid></item></channel></rss>