XSLT 2.0/3.0 in .Net Core


I was having a poke around in the code to investigate the possibility of (finally) implementing XSLT/XPath 2.0 and 3.0 in the .Net framework. Since the XSLT classes dont seem to have been released yet I thought I would start with XPath. I found that System.Xml.XPath.XPathExpression depends on the MS.Internal.Xml.XPath Namespace for compiling XPath queries, but I could not find MS.Internal.Xml.XPath in the corefx repo and I wasn’t able to find much in the way of information about the MS.Internal namespace on the web.

I am hoping someone here might be able to answer the following questions:

a) Will the source for MS.Internal.Xml.XPath and dependencies be included in the core framework in future updates?
b) Will XSLT classes be included in the future
c) Is there a schedule defined somewhere of when future updates will made to the public code repositories?
d) Is there any chance implementing an XSLT 2.0/3.0 processor in future versions of .Net is a priority for Microsoft? (I think I already know the answer to this one)

I would also be interested to see the general level of interest around a XSLT 2.0/3.0 processor from the community, so please let me know how great you think this would be :stuck_out_tongue:


The classes in the MS.Internal.Xml.XPath namespace are already included in corefx: https://github.com/dotnet/corefx/tree/master/src/System.Xml.XPath/src/System/Xml/XPath/Internal


You are correct sir, thank you! For some reason the Go To Definiton option in VS isnt working for me work for those specific classes.


What is the status on this matter? Are there any plans to have this implementation in .NET core? It would be very nice to have it.


XSLT 2.0 is not supported in .NET framework. Instead, Microsoft is now considering supporting XSLT 3.0 in .NET framework. The work item is currently under review and will largely base on how many people feel it’s important. Please submit your vote to Visual Studio here if you want to see it part of the core implementation.

.NET Foundation Website | Blog | Projects | Code of Conduct