Mvp.Xml 3.0.0

.NET Standard 2.0
dotnet add package Mvp.Xml --version 3.0.0
NuGet\Install-Package Mvp.Xml -Version 3.0.0
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Mvp.Xml" Version="3.0.0" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Mvp.Xml --version 3.0.0
#r "nuget: Mvp.Xml, 3.0.0"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// Install Mvp.Xml as a Cake Addin
#addin nuget:?package=Mvp.Xml&version=3.0.0

// Install Mvp.Xml as a Cake Tool
#tool nuget:?package=Mvp.Xml&version=3.0.0

The original Mvp.Xml project, developed by Microsoft MVP's in XML technologies and XML Web Services worldwide. It is aimed at supplementing .NET XML processing. All the project's classes contain extensive tests to ensure its quality, as well as the peer review among this highly focused group of XML lovers.

Mvp.Xml project currently provides .NET implementations of EXSLT, XML Base, XInclude, XPointer as well as a unique set of utility classes and tools making XML programming in .NET platform easier, more productive and effective.


Example usage of EXSLT:

var xslt = new MvpXslTransform();
// Optionally enforce the output to be XHTML
xslt.EnforceXHTMLOutput = true;
xslt.Transform(new XmlInput("foo.xml"), new XmlOutput("result.html"));

Usage in XPath-only context:

XPathExpression expr = nav.Compile("set:distinct(//author)");
expr.SetContext(new ExsltContext(doc.NameTable));
XPathNodeIterator authors = nav.Select(expr);
while (authors.MoveNext())


Example usage of XInclude:

var reader = new XIncludingReader(XmlReader.Create(uri));
var document = XDocument.Load(reader);


Some other helper classes include:

public XPathNodeIterator GetExpensiveBooks(IXPathNavigable doc, int minPrice)
 string expr = "//mvp:titles[mvp:price > $price]";
 // XPathCache optimally caches the compiled XPath expression and parameterizes it
 return XPathCache.Select(expr, doc.CreateNavigator(), mgr, new XPathVariable("price", minPrice));
var xslt = new XslTransform();
var doc = new XPathDocument("library.xml");
var books = doc.CreateNavigator().Select("/library/book");
while (books.MoveNext())
    // Transform subtree for current node
    xslt.Transform(new SubtreeeXPathNavigator(books.Current), null, Console.Out, null);


Clarius Org Christian Findlay C. Augusto Proiete Kirill Osenkov MFB Technologies, Inc. SandRock Eric C Andy Gocke

Sponsor this project  

Learn more about GitHub Sponsors

Product Versions
.NET net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows net7.0 net7.0-android net7.0-ios net7.0-maccatalyst net7.0-macos net7.0-tvos net7.0-windows
.NET Core netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1
.NET Standard netstandard2.0 netstandard2.1
.NET Framework net461 net462 net463 net47 net471 net472 net48 net481
MonoAndroid monoandroid
MonoMac monomac
MonoTouch monotouch
Tizen tizen40 tizen60
Xamarin.iOS xamarinios
Xamarin.Mac xamarinmac
Xamarin.TVOS xamarintvos
Xamarin.WatchOS xamarinwatchos
Compatible target framework(s)
Additional computed target framework(s)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (5)

Showing the top 5 NuGet packages that depend on Mvp.Xml:

Package Downloads

A tool for managing Aras Innovator installations focusing on improving the import/export experience.

NReco.Application The ID prefix of this package has been reserved for one of the owners of this package by

NReco.Application integrates external dependencies (NI.Ioc,Mvp.Xml,Log4Net,NReco) and provides basic NReco application context.


This is the Elision search feature package to reference if you are building a module or other code that just needs to reference Elision search feature. If you need to install Elision's search feature, use the Elision.Feature.Search package instead.


This is the Elision search feature package to reference if you need to install the entire feature. If you are building a module or other code that just needs to reference Elision search feature, use the Elision.Feature.Search-redist package instead.


This package contains a workflow for use on component rendering datasources.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
3.0.0 161 3/27/2023
3.0.0-beta 55 3/24/2023
3.0.0-alpha 42 3/24/2023
2.3.0 3,487,699 7/24/2012