XSLT Editor

Create and Edit XSLT Documents

  • Support for XSLT 1.0, XSLT 2.0, and XSLT 3.0
  • Integration with RaptorXML Servers for faster transformation
  • Syntax coloring, line numbering, bookmarking, & source folding
  • Code completion & context-sensitive entry helpers
  • Interactive XPath Builder and Tester
  • Revolutionary XSLT back-mapping
  • XSLT validation & troubleshooting
  • XSL Outline window
  • Info window for viewing & configuring related files
  • Support for Java, JavaScript, C#, & VBScript
  • XSL Speed Optimizer
  • XSLT Debugger and Profiler

XSL and XSLT Editor

Editing XSLT in XMLSpy

The XMLSpy XSLT editor provides numerous tools for writing XSLT code, with support for XSLT 1.0, 2.0, and 3.0. With powerful tools including the built-in XPath Analyzer, lightning fast transformations powered by RaptorXML, and support for complimentary technologies, XMLSpy is sure to be your XSLT editor of choice for quick, error-free stylesheet development.

Intelligent XSLT Editor

Though you can use the XSLT editor in XMLSpy’s Enhanced Grid View to view and edit your stylesheet code in a tabular format, most developers prefer to work in Text View for this type of development. When you're editing XSLT, the Text View provides syntax coloring, line numbering, source folding, book marking, and other visual cues for organizing and navigating through your code quickly and easily. Intelligent entry helper windows and drop down menus offer you choices of elements, attributes, and entities that you can insert with one click, and code completion speeds typing and ensures balanced opening and closing tags.

Integrated project management functionality lets you group related files and assign XSLT transformations, perform batch operations, plug in to source control systems, and more. XMLSpy XML Editor even includes the powerful Find in Files window for performing XML-aware find and replace operations on selected files, folders, or even an entire project at one time.

XPath Editor

XMLSpy provides powerful XPath 1.0, 2.0, and 3.1 tools to facilitate XSLT stylesheet development. As you’re composing an XPath expression in Text View, Grid View, or in XMLSpy's XPath/XQuery window, XMLSpy provides you with valid XPath operators and functions, as well as element and attribute names from the associated schema and XML instance(s). Intelligent XPath auto-completion accounts for namespaces when listing options and even provides deep path suggestions when the required node is not in close proximity to the current context.

The XPath Editor and Tester provides real-time evaluation of XPath expressions to help you visualize the resulting node set of any XPath expression as you type it. Syntax coloring automatically highlights errors, and multiple tabs in the XPath/XQuery window let you store and test multiple expressions.You can even evaluate XPaths across multiple files at once.

Build and test XPath expressions in the XMLSpy XSLT editor

The XSLT editor also includes the Copy XPath command, which helps you define XPath 1.0, 2.0, or 3.1 expressions with one click. You simply select an element or attribute in your XML data file, and the "Copy XPath" command will automatically copy the corresponding XPath expression to the clipboard.

XSL Outline

The XSL Outline entry helper window in the XSLT editor is another powerful feature for optimizing XSLT development. When you're working with an XSLT 1.0, 2.0, or 3.0 stylesheet, it lists the templates and functions in the current XSLT file as well as those in any included or imported files. Color coded icons provide at-a-glance information on templates and functions, and selecting the Go to Item icon or double clicking a template or function highlights it in the current document. Functions are listed by name, while templates are displayed by name and/or XPath expression. You can view or edit each template's mode, priority, and associated comment directly in the XSL Outline window.

You can search for, filter, and sort the templates and functions displayed in the outline by multiple criteria. The window also allows you to quickly insert calls to named templates and select a named template as the entry point for transformations.


A handy XSLT tab in the XMLSpy Info Window provides useful information while you're working with stylesheets in the XSLT editor. This tab allows you to view the associated schema and XML instance files, as well as any included or imported XSLT documents, and mousing-over the file names reveals the complete file path. You can even configure the schema and XML instance relationships directly in this tab with just a few clicks. In addition, toolbar buttons allow you to quickly organize some or all of the files into an XMLSpy project or even add all files to a ZIP archive in a user-defined location with just a few clicks.

Open XSLT Architecture

Behavior of the XSLT editor is easily customized. XMLSpy includes the lightning-fast RaptorXML engine for XSLT transformations, and it also provides built-in support for the MSXML XSLT engine. An open XSLT architecture allows the use of any other external XSLT processor, including Apache Xalan, Saxon, or XT. Additionally, you can run transformations on RaptorXML Server (below).

XSLT Back-mapping

During XSLT testing, it can be difficult to identify the source of unintended output. XSLT back-mapping in XMLSpy makes it easy to immediately correlate output elements to source nodes and instructions.

When you turn on back-mapping for XSLT transformations, XMLSpy allows the result document to be mapped back to the source XSLT and XML documents. When you click on a node in the result document, the XSLT instruction and the XML source data that generated that particular result node will be highlighted.

Troubleshoot your XSLT code with back-mapping in XMLSpy

How is back-mapping in XMLSpy revolutionary? First, it saves developers considerable time in debugging, refining, and perfecting their code as well as understanding inherited code written by other team members. Second, XMLSpy does not make any changes or add additional code to the output document in order to achieve back-mapping.

XSLT Transformation Output Options

At any time during the XSLT editing process, you can transform your file(s) with a single click to preview the generated output in XMLSpy's Browser View.

In addition to viewing the Web page in XMLSpy, you can instantly open the active file in your choice of browser to test interoperability. The XMLSpy Info window automatically list all browsers currently installed on your system, and you can manually add other applications if required.

The XMLSpy XSLT editor does not restrict you to XHTML or HTML output. Because XMLSpy can open and edit any non-XML text file, you can produce XSLT files that generate any arbitrary textual output and still use XMLSpy to view the resulting files.

XSLT High-Performance Transformation Options

XSLT transformations in XMLSpy are powered by the built-in RaptorXML engine, which was written from the ground up to provide the closest possible standards conformance coupled with fast speeds. Still, transformation rates achieved are still limited to single-core execution on the CPU available in the developer's machine.

RaptorXML Server, on the other hand, benefits from the substantial increase in processing power afforded by multi-CPU, multi-core servers, which allow it to deliver hyper-performance through increased throughput and efficient memory utilization. You can harness these advantages by utilizing a RaptorXML Server installed on your network for executing XSLT, XQuery, and XML validation jobs. In fact, XSLT transformation speeds are up to 14x faster when run on RaptorXML Server from inside XMLSpy*.

Simply right click to select a project folder or an entire project to initiate an XSLT transformation job on RaptorXML Server.

This functionality makes RaptorXML Server even more useful for development teams, because you can take advantage of a single shared RaptorXML Server to all but torch previously time-consuming transformation jobs for large numbers of documents, all inside XMLSpy.

Remote XSLT Transformation with XMLSpy

Debugging XSLT

The XSLT editor is complimented by the powerful XMLSpy XSLT debugger, which helps you test and perfect your stylesheets prior to deployment. As you move through an XSLT transformation step by step, you are able to see the specific XML data node, the XSLT processing instruction, and the produced output at the same time. This provides you with an immediate visual understanding of the way that your stylesheet is rendering the XML data.

Optimizing XSLT

When it's time to increase the speed of your XSLT stylesheet, turn to the revolutionary XSL Speed Optimizer, which analyzes your XSLT execution and automatically optimizes it. You can also take advantage of the XSLT profiler, which monitors and records detailed metrics for each processing instruction executed during an XSLT transformation, helping you identify and eliminate bottlenecks quickly.

Schema-aware XSLT Support

The XMLSpy XSLT editor supports XSLT 1.0 as well as schema-aware XSLT 2.0 and XSLT 3.0. Schema-awareness in XSLT provides additional mechanisms for error isolation, simplified debugging, and enhanced code performance. XMLSpy combines its implementation of XSLT with support for program code in stylesheets as well as powerful editing and debugging features, allowing you to create the most advanced stylesheets quickly and easily.

Support for Java, C#, JavaScript, VBScript

Developers often embed program code in Java, C#, JavaScript, or VBScript to add advanced functionality to their XSLT stylesheets. The XSLT engine in XMLSpy supports these types of program code, allowing you to not only take advantage of the powerful XSLT editing and transformation capabilities for stylesheets that contain program code – you can also test, perfect, and optimize them using the XSLT debugger and XSLT profiler.