Xslt Tool For Mac

Eclipse works on Mac OS and it is one of the best XML editor around, actually. It has XSD validation, autocompletion towards this schema. Also, it offers a graphical XSD designer. XSLT/XPath Reference: XSLT elements, EXSLT functions, XPath functions, XPath axes Extensible Stylesheet Language Transformations (XSLT) is an XML -based language used, in conjunction with specialized processing software, for the transformation of XML documents.

This is the SourceForge home page for the Open Source Saxon XSLT & XQuery processor developed by Saxonica Limited. It also provides information about commercial versions of the Saxon product available from Saxonica.

See also the SourceForge project page for Saxon.

Xslt Tool For Mac

Documentation for the current release of Saxon is available online at http://www.saxonica.com/documentation.

Current releases

The latest version of Saxon is version 10, first released on 16 March 2020, available for Java and .NET.

The previous version Saxon 9.9 is the most stable version, first released on 27 September 2018, available for Java and .NET.

On the Java platform, Saxon 9.9 and 10 require Java 8 or above (earlier versions will run on Java 6 or above).

There are several editions of Saxon currently maintained:

  • Saxon-HE (Home Edition) is an open source product available under the Mozilla Public License version 2.0. It provides implementations of XSLT (3.0), XQuery (3.1), and XPath (2.0 and 3.1) at the basic level of conformance defined by W3C, plus from Saxon 10 the optional features higher-order functions and dynamic evaluation. It is available for Java and .NET.

  • Saxon-PE (Professional Edition) is a commercial product available at modest prices from Saxonica Limited. It adds a number of features to Saxon-HE, including support for Saxon extensions and extensibility mechanisms, support for further optional features defined in XSLT 3.0 and XQuery 3.1 including integration with the ICU-J library to provide localization for different languages, and support for external object models such as JDOM2, XOM, DOM4J, and AXIOM. It is available for Java and .NET.

  • Saxon-EE (Enterprise Edition) is the fully-featured commercial product. Saxon-EE 10 offers a complete implementation of the XSLT 3.0 Recommendation published on 8 June 2017. As well as a fully conformant XSD 1.0 and XSD 1.1 schema processor, and support for schema-aware XSLT and XQuery processing, it offers many other features including streaming in XSLT and XQuery, support for XQuery updates, an advanced query optimizer, compilation of XQuery and XSLT code to Java bytecode, multi-threaded execution, and much more. For full details, see the Saxonica website. It is available for Java and .NET.

  • Saxon-JS (JavaScript Edition) provides XSLT 3.0 running in the browser and on Node.js. Stylesheets are compiled into Stylesheet Export Files (SEFs) using Saxon-EE, or Saxon-JS on Node.js, and can then be executed in the browser. It runs in all modern browsers with JavaScript enabled. Details can be found on the Saxonica website Saxon-JS page.

  • Saxon/C is currently at version 1.2.1 for Linux, Mac OS, and Windows. This release is based on Saxon 9.9 source code. Saxon/C 1.2 offers the main Saxon products Saxon-HE, Saxon-PE and Saxon-EE for the C/C++, PHP and Python programming languages. Saxon/C is cross-compiled into a native executable library (.dll on Windows, .so on Linux) with APIs available to run XSLT 3.0, XQuery 3.1, XPath 3.1 and Schema Validation 1.0/1.1 from C/C++, PHP and Python applications. It can also be invoked from other languages such as Perl and Ruby. Details can be found on the Saxonica website Saxon/C page.

Xslt Tool For Mac Installer

Saxon 9.9 on Java requires Java 8 or later. Earlier versions require Java 6 or later.

Saxon 9.8 on .NET requires .NET framework 3.5 or later. It also works on Mono, but we do not run complete tests on this platform. Saxon does not run on .NET Core (this is because the IKVM compiler which we rely on does not target this platform).

Product comparisons

A comparison of the features available in different editions of the Saxon product is available.

A detailed history of changes in successive releases is available.

Latest releases

Saxon-EE 10

The commercial Enterprise Edition from Saxonica, supporting XSLT 3.0, XPath 2.0 and 3.1, XQuery 3.1, XML Schema 1.0 and 1.1, and XQuery Update 1.0.

All current releases are listed on the Saxonica download page.

Source code for Saxon-EE is not available (except to Saxonica development partners).

Saxon-PE 10

The commercial Professional Edition from Saxonica, supporting XSLT 3.0, XPath 2.0 and 3.1, and XQuery 3.1. It omits support for some optional features of these specifications, notably schema awareness and (in the case of XSLT 3.0) streaming.

All current releases are listed on the Saxonica download page.

Source code for Saxon-PE is not available (except to Saxonica development partners).

Saxon-HE 10

The open-source implementation of XSLT 3.0, XPath 2.0 and 3.1, and XQuery 3.1. This provides the 'basic' conformance level of these languages; it also supports some optional features of the specifications such as serialization, higher-order functions, dynamic evaluation and support for XQuery modules.

Not included in the Home Edition are: schema processing and schema aware XSLT and XQuery; support for XPath 1.0 (and XSLT 1.0) backwards compatibility mode, numerous Saxon extensions; calling out to Java methods; XQuery Update support; various optimizations including join optimization, streamed processing, multi-threaded execution, and byte code generation.

There are four files available: a ZIP file containing executable code for the Java platform; a .EXE installer for the .NET platform; a resources file containing documentation and sample applications applicable to both platforms; and a ZIP archive of the source code for both platforms. (Documentation is also available online)

Recent Saxon-HE releases can also be downloaded from Maven: see Maven Repository.

The latest 10 maintenance release for Java and .NET is Saxon 10.3, released on 28 October 2020.

The latest 9.9 maintenance release for Java and .NET is Saxon 9.9.1.8, released on 22 October 2020. Saxon 9.9 is currently considered the most stable and reliable release.

Since Saxon 9.4, the Subversion repository for source code is no longer maintained in SourceForge, but on the Saxonica site at https://dev.saxonica.com/repos/archive/opensource. The repository does not contain the development branch of the code, only versions that have been released; it is the best way of obtaining bug fixes quickly if you are prepared to build the product from source (which is not for the faint-hearted).

Note that bug fixes are typically made available in Subversion as soon as they are available, and are then consolidated periodically into a maintenance release. Source code under development is not held in Subversion, and is not available until a tested release is issued. Sometimes prereleases of new facility releases are made available for testing; these are announced on the saxon-help mailing list but will not generally be advertised here.

Xslt Tool For Mac

Older releases of Saxon-HE remain available from SourceForge: see the SourceForge download page for details. If you require a release that is no longer listed, please ask: we can't offer to support it, but in general we don't mind you using it at your own risk.

Saxon-JS 2

Saxon-JS is the JavaScript edition of Saxon, offering XSLT 3.0 running in the browser and on Node.js. It supersedes the earlier Saxon-CE product. For information about the product, see the Saxonica website Saxon-JS page.

Bugs, Forums and Discussion Lists

The bug tracker for all versions of Saxon is a Redmine database hosted at saxonica.plan.io. You are free to enter new bugs here directly, or if bugs are raised by other routes (such as the mailing list) we will register them there if they need to be tracked.

The Redmine database also offers discussion forums and these are the best way to raise technical issues or questions that need an answer from the Saxonica development team.

The SourceForge project hosts a mailing list, saxon-help, which provides a good way of reaching other Saxon users. Since SourceForge is dedicated to open source, we don't encourage use of this list for issues specific to the commercial versions of the product.

If you need help using the underlying languages (XSLT, XQuery, XSD etc) and the problem is not specific to Saxon, it's better to use a general forum rather than a Saxon community resource. The StackOverflow site is the best place to get a good answer to straight coding questions, while the xsl-list (also known as the Mulberry list) is the place for deeper discussions about the nature of XSLT as a language.

To search the history of previous questions and answers on these lists, the database maintained at MarkMail is the most comprehensive and most readily searchable.

Mac

Please try to avoid contacting Saxonica developers by personal email; while we love to help, it's much easier to manage the correspondence through an archived forum.

Older Products

Saxon-B

Saxon-HE does not offer all the capabilities that were present in Saxon-B. Most notably, support for Saxon extension functions and other extensions was dropped, as was the capability for writing extension functions that rely on dynamic loading of Java or .NET code (a new facility for 'integrated extension functions' is however available). Users whose code relies on these features of Saxon-B should either purchase the Professional Edition product or stick with Saxon-B: the latest release of Saxon-B is 9.1.0.8, and although there are no plans to develop it further or maintain it, it will remain available indefinitely.

Saxon-B version 9.1.0.8 is a complete and conformant implementation of the XSLT 2.0, XQuery 1.0, and XPath 2.0 Recommendations published on 23 January 2007 by W3C.

Saxon-B 9.1.0.8 is available on both the Java and .NET platforms.

For the bug fixes in each successive maintenance release, see the Release Notes and Change Notes for the release on the SourceForge downloads page.

It can be downloaded from:

Xslt tool for mac shortcut
  • Download documentation and samples (11.9 Mbytes). (Note, this file was first issued with Saxon-B 9.1.0.1 and the URL reflects this. The source code present in this file is the source of 9.1.0.1)

Saxon 6.5.5

The Saxon XSLT 1.0 processor remains available. The latest version is 6.5.5. However, even if your stylesheets only require XSLT 1.0, it is probably better to run them under Saxon 9.x

This product is mature and stable, and further developments are very unlikely.

The download includes documentation, source code, Java executables, and sample code.

Known limitations of this release are listed here. This page will be updated with information about any new bugs that come to light.

Ant Task for Saxon

There is a custom Ant task for invoking Saxon XSLT transformations. This was previously issued as part of the Saxon product but has now been separated into a separate package under the Saxon SourceForge project. It is no longer actively developed and is not recommended (there are a number of bugs, and it is difficult to improve the quality because of an absence of test material). The download is here.

Ælfred

The Ælfred XML Parser that was bundled with Saxon versions up to version 7.1 is available as a separate download. It is of historic interest only.

DTDGenerator

Also available on this site is the DTDGenerator program. This was formerly produced as a Saxon demonstration application, but has since been adapted to work as a pure SAX application, with no dependencies on the Saxon software.

Documentation for earlier releases remains present on the SourceForge web site: 6.4.2, 6.4.3, 6.5, 6.5.1, 6.5.2, 6.5.3, 6.5.4, 6.5.5, 7.0, 7.1, 7.2, 7.3, 7.3.1, 7.4, 7.5, 7.5.1, 7.6, 7.7, 7.8, 7.9, 7.9.1

For releases from 8.0 onwards, the documentation is not available directly on the web site, but can be obtained by downloading the software.

Michael H. Kay
28 October 2020

Using XSLT to extract content from your Unitrunker files

Unitrunker stores and exports data in XML. The idea here is to use a very powerful tool for data extraction from XML. XSLT output is not limited only to XML or HTML. You can use XSLT to output comma delimited text. Some implications are:

  • generate comma delimited or CSV file for importing into a spreadsheet program like Excel
  • generate HTML for publishing on the web

This sample stylesheet extracts talkgroups as comma delimited text. To keep things simple, the sample provided will only operate on the first system it finds in the XML source file.

  • Step one: use the 'Export System' feature to create an XML file containing only the selected system. Save the file to your desktop or other convenient folder.
  • Step two: get msxsl.exe from Microsoft here. Save this tiny program to the same folder as your XML file. A similar tool called 'xsltproc' exists for Mac and Linux users.
  • Step three: download and save this XSLT file to the same folder where you saved the files in each of steps one and two.
  • To recap, you should have at least three files in a working directory: msxsl.exe, groups,xslt, and your trunking system file ending in '.xml'.
  • Step four: open a command window and change the command window's working directory to match the directory above.
  • Step five: you want to run ths msxsl utility in such a way as it reads the XML data file and applies the transformation rules in the XSLT file to produce an output file. We'll call the output file extracted.txt but you can name it anything you wish. Type this command:
    msxsl system.xml groups.xsl -o extracted.txt

View the output file extracted.txt in notepad or open the file in your favorite spreadsheet program.

Unicode

Xslt Tool For Mac Shortcut

msxsl produces UTF-16 Unicode files. Notepad and Excel recognize this text format. msxsl depends upon a recent version of MSXML. If you've a recent version of Internet Explorer, you have it.

Xslt Tool Mac

Mac and Linux

The command line equivalent for msxsl.exe is xsltproc. The syntax is slightly different in that the placement of stylesheet and XML file are reversed so the above example would read:
xsltproc groups.xsl system.xml -o extracted.txt.

Xslt Tool For Mac High Sierra

Improvements

Xslt Tool For Mac Os

The above sample extracts only talkgroups for the first system. Write your own transformation file to extract sites, channels, or groups from any system in the Unitrunker.xml data file. You'll find a tutorial on the subject here.