Sarissa is an ECMAScript library acting as a cross-browser wrapper for native XML APIs. It offers various XML related goodies like Document instantiation, XML loading from URLs or strings, XSLT transformations, XPath queries etc and comes especially handy for people doing what is lately known as "AJAX" development.

Supported browsers are Mozilla - Firefox and family, Internet Explorer with MSXML3.0 and up, Konqueror (KDE 3.3+ for sure), Safari and Opera. Konq and Safari offer no XSLT/XPath scripting support AFAIK.

For a HOWTO document that provides examples of common tasks see the HOWTOs . The API documentation is generated using JSDoc and can be found here .

The latest version of Sarissa can always be found on the Sourceforge project page . Please send comments, corrections etc through the mailing list or the forum .


Sarissa is distributed under the GNU GPL version 2 or higher, GNU LGPL version 2.1 or higher and Apache Software License 2.0 or higher. You can use Sarissa according to any of those licenses.


See ../../sarissa/dev_subdomain/CHANGELOG.txt . Please let us know if your name is missing!

Projects used when developing Sarissa:

  • Apache Maven and Ant are used to build the Sarissa distributions, documentation and website. Sarissa can nowdays be used as a Maven dependency in your Maven-based webapps, check it out .
  • The Maven JSTools Plugin is used to produce documentation based on JSLint and JSDoc Toolkit . The JSTools Plugin is also used in Maven based java webapps at runtime, to resolve Sarissa or other JS files and resources.
  • ECMAUnit is used for Unit Testing. Check out the Sarissa Unit Tests page here .
  • The MobilVox Maven JavaScript Plugin is used to create the compressed versions of the Sarissa JS files.
  • The Syntaxhighlighter is used for (obviously) syntax highlighting through out the documentation.

Here are some projects using Sarissa, please let us know if you would like to add yours here. This is in the credits simply because if Sarissa was not usefull we would not be working on it. Currently Sarissa has been downloaded about 70k times so we will be maintaining it for some time :-)

  • XSLT for GWT uses Sarissa to do exactly what it's name says it does.
  • Totoe (Maori for "to split, devide") is a XML parser for GWT which comes with XPath and namespace support.
  • deCarta's JavaScript API , is used to integrate deCarta's Drill Down Server (DDS) geospatial platform into other applications.
  • Oscom's really cool Kupu WYSIWYG Editor
  • MapBuilder , a modern standards-based web mapping client.
  • Plone , a user-friendly and powerful open source Content Management System.
  • Anyterm , a web based terminal interface for your servers (it sounds crazy at first but you quickly find yourself wondering "how come i never thought of that?").
  • Communik8r is a new email application for phpGroupWare. communik8r uses AJAX, IMAP sockets and client side XSLT
  • WXplorer , a very slick, AJAX based file explorer for PHP applications.
  • The Minesweeper game featured as a sample application was written by Sean Whalen, who is also the maintainer.
  • Jay Kimble's JAAJAX Lib for .Net. This JAAJAX Library was used to develop other sites like the Diet Standards prenatal dha vitamins website.
  • Jason Diamond's My Ajax.NET library .
  • MojoPortal , an Object Oriented web site framework written in C# that runs under ASP.NET on Windows or under Mono on GNU/Linux and Mac OS X.
  • Taleful.com is an interactive storytelling website. This website was created to give people a place where they can express themselves and share their stories. All are welcome to come, read and post stories, share and collaborate with others in joint story projects, receive creative writing feedback and enhance their imagination.
  • Freja (Framework for Restful Javascript Applications) is not yet another Ajax library. It is an Open-Source, MVC, High Level Ajax based Javascript Framework that lets you use your favorite javascript library if you wish. It actually plays well with other javascript toolkits and libraries (prototype, scriptaculous, dojo, etc..).
  • The HyperScope is a high-performance thought processor that enables you to navigate, view, and link to documents in sophisticated ways. It is a completely client-side system implemented with Dojo and Sarissa.
  • Ziizo , an online service that allows you to create bookmarks, notes, quotations, lyrics, recipes etc. online and access them from anywhere. You can also create a public page and share with the world.
  • The KSS project (formerly known as Kukit) is a javascript framework that aims to allow Ajax development without javascript. It uses stylesheets with CSS-compliant syntax to setup behaviours in the client and a set of well-defined commands that are marshalled back from the server to manipulate the DOM.
  • MapGuide Open Source is a web-based platform that enables users to quickly develop and deploy web mapping applications and geospatial web services.
  • Opportuno is jobs search engine for employment opportunities in Germany. Its "Instant View" search interface is completely based on the Sarissa library.
  • Dr. Dobb's FlipBook , an e-zine built on Silverlight
  • jstree , a tree component based on jQuery uses Sarissa to transform XML datasources.
  • Ajaxterm , a web based terminal (CLI). It was totally inspired and works almost exactly like Anyterm.