SaxonCS-HE
13.0.0
dotnet add package SaxonCS-HE --version 13.0.0
NuGet\Install-Package SaxonCS-HE -Version 13.0.0
<PackageReference Include="SaxonCS-HE" Version="13.0.0" />
<PackageVersion Include="SaxonCS-HE" Version="13.0.0" />
<PackageReference Include="SaxonCS-HE" />
paket add SaxonCS-HE --version 13.0.0
#r "nuget: SaxonCS-HE, 13.0.0"
#:package SaxonCS-HE@13.0.0
#addin nuget:?package=SaxonCS-HE&version=13.0.0
#tool nuget:?package=SaxonCS-HE&version=13.0.0
SaxonCS-HE
What is SaxonCS?
SaxonCS is a library for XSLT, XQuery, XPath, and XSD processing.
It offers a high level of conformance with the latest W3C standards: XSLT 3.0, XQuery 3.1, XPath 3.1, XSD 1.1.
It provides a C# API to allow transformations and queries to be controlled from a C# application, and also offers a command line interface.
SaxonCS-HE is the Home Edition product for SaxonCS. SaxonCS-HE is derived from our open-source product, and is created and distributed by Saxonica Ltd.
How does it relate to other Saxon products?
SaxonCS is built from the same source code as the long-established Java product. It was created by converting the source code of SaxonJ to C# source code, using a custom transpiler written by Saxonica (primarily in XSLT 3.0, since you asked).
It is single-sourced with the Java product; the code has not been forked, and all maintenance and future development will be done on the Java base code.
The product includes some C# code for interfacing to the .NET platform, and to provide a C# API following C# coding conventions.
SaxonCS-HE is based on the Home Edition of Saxon, which means that it does not include advanced features such as advanced optimization, schema-awareness, streaming, and multi-threading.
How does it relate to other XML libraries on .NET?
SaxonCS uses the System.Xml.XmlParser classes for parsing XML.
SaxonCS can work with a DOM tree delivered as a System.Xml.XmlDocument.
You can either convert a DOM to Saxon's optimized internal tree structure, or
you can use Saxon's XPath or XQuery engine to query a DOM tree directly.
SaxonCS offers an alternative to the Microsoft XSLT 1.0 and XSD 1.0 processors bundled with .NET Core, which have never been updated to the latest W3C specifications. The newer standards offer a wide range of features that greatly extend the power of the tools.
It should be possible to run stylesheets developed for the Microsoft XSLT 1.0 processor under SaxonCS provided that they do not take advantage of Microsoft-specific XSLT extensions. SaxonCS offers "1.0 compatibility mode" to assist with the transition.
Since the functionality of the later standards is so much richer, Saxon does not attempt to offer API compatibility with the Microsoft processors.
What about the old Saxon/.NET product?
Up to and including Saxon 10, Saxonica delivered a product on .NET Framework built from the Java product by converting the JAR files at bytecode level using the IKVMC cross-compiler. This product relied on a converted version of the Java run-time library to function. The IKVMC technology was never ported to .NET Core, so a new approach was needed, and Saxonica settled on source code conversion as the most promising approach. A particular benefit is that it now uses the .NET run-time library in place of a converted Java run-time library, which significantly reduces the footprint.
The API for SaxonCS is closely based on the API for the older product, but it is not 100% compatible; some changes will be needed to existing applications. The changes have been designed to improve the conformance to C# house-style and to take advantage of more modern features in the C# language, for example by using delegates rather than interfaces for callbacks.
The older Saxon/.NET product will remain supported for the time being, but will not be further developed.
What's new in SaxonCS?
SaxonCS is built with .NET Core (SaxonCS 13 supports .NET 8). SaxonCS-HE 13 is the first release of our Home Edition SaxonCS product for .NET.
What's new in this version?
There's a comprehensive list of changes in the documentation.
For a record of bugs fixed in each maintenance release, please consult the issues list — you can filter the list on the property "Fixed in maintenance release". This is also the place to report any problems you find.
Where do I find documentation?
It's all online.
(Delivered, in case you're interested, by SaxonJS running in your browser.)
What if I hit problems?
If you have coding problems with XSLT, XPath, XQuery, or XSD, you will usually be able to get help by asking on StackOverflow.
If you suspect a Saxon bug, please report it on the issues list.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- AngleSharp (>= 1.2.0)
- DotNet.Bundle (>= 0.9.13)
- ICU4N (>= 60.1.0-alpha.436)
- ICU4N.Resources (>= 60.1.0-alpha.436)
- Microsoft.AspNetCore.StaticFiles (>= 2.3.8)
- Microsoft.Extensions.Configuration (>= 10.0.7)
- Microsoft.Extensions.Configuration.Json (>= 10.0.7)
- Microsoft.Extensions.Configuration.Xml (>= 10.0.7)
- NSec.Cryptography (>= 24.4.0)
- Singulink.Numerics.BigDecimal (>= 3.4.0)
- Singulink.Numerics.BigIntegerExtensions (>= 2.3.2)
- System.Collections.Immutable (>= 10.0.7)
- System.IO.Hashing (>= 10.0.7)
- System.Net.Http (>= 4.3.4)
- System.Text.Encoding.CodePages (>= 10.0.7)
- XmlResolver (>= 6.0.23)
- XmlResolverData (>= 6.0.23)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 13.0.0 | 39 | 5/29/2026 |
SaxonCS-HE conforms with the latest W3C
specifications, XSLT 3.0, XQuery 3.1, and XPath 3.1. It aims to have
feature parity with our open source Saxon-HE product, subject to constraints
such as limitations in the Microsoft XML parser.