<!--
	function XSLT() // Cross-browser compliant XSLT class
	{
		this.xmlDoc = null;
		this.xslStylesheet = null;
		this.xsltProcessor = window.ActiveXObject ? new ActiveXObject("Microsoft.XMLDOM") : new XSLTProcessor();
		
		this.loadXML = function(xml)
		{
			switch ( typeof(xml) )
			{
				case 'object':
					this.xmlDoc = xml;
					break;
				case 'string':
					this.xmlDoc = XML.load(xml);
					break;
			} // TODO: Check if string is XML string or URL
		}
		
		this.importStylesheet = function(url)
		{
			this.xslStylesheet = XML.load(url);
			if ( !window.ActiveXObject )
				this.xsltProcessor.importStylesheet(this.xslStylesheet);
		}
		
		this.getParameter = function(param)
		{
			return this.xsltProcessor.getParameter(null, param);
		}
		
		this.setParameter = function(param, value)
		{
			this.xsltProcessor.setParameter(null, param, value);
		}
		
		this.transform = function()
		{
			if ( window.ActiveXObject ) // IE
				return this.xmlDoc.transformNode(this.xslStylesheet);
			
			return this.xsltProcessor.transformToDocument(this.xmlDoc);	
		}
		
		this.transformToFragment = function(doc)
		{
			if ( window.ActiveXObject ) // IE
				return this.xmlDoc.transformNode(this.xslStylesheet);
			
			return this.xsltProcessor.transformToFragment(this.xmlDoc, doc);	
		}
	}
//-->