    var xmlHttp;
    var dojoDndTargetID;
    
    function CreateXMLDocument(rootTagName, namespaceURL) {   
        if (!rootTagName) rootTagName = "";   
        if (!namespaceURL) namespaceURL = "";   
        if (document.implementation && document.implementation.createDocument) {   
          // This is the W3C standard way to do it   
          return document.implementation.createDocument(namespaceURL, rootTagName, null);   
        }   
        else { // This is the IE way to do it   
          // Create an empty document as an ActiveX object   
          // If there is no root element, this is all we have to do   
          var doc = new ActiveXObject("MSXML2.DOMDocument");   
          // If there is a root tag, initialize the document   
          if (rootTagName) {   
            // Look for a namespace prefix   
            var prefix = "";   
            var tagname = rootTagName;   
            var p = rootTagName.indexOf(':');   
            if (p != -1) {   
              prefix = rootTagName.substring(0, p);   
              tagname = rootTagName.substring(p+1);   
            }   
            // If we have a namespace, we must have a namespace prefix   
            // If we don't have a namespace, we discard any prefix   
            if (namespaceURL) {   
              if (!prefix) prefix = "a0"; // What Firefox uses   
            }   
            else prefix = "";   
            // Create the root element (with optional namespace) as a   
            // string of text   
            var text = "<" + (prefix?(prefix+":"):"") +  tagname +   
                (namespaceURL   
                 ?(" xmlns:" + prefix + '="' + namespaceURL +'"')   
                 :"") +   
                "/>";   
            // And parse that text into the empty document   
            doc.loadXML(text);   
          }   
          return doc;   
        }
    }

	function createXMLHttpRequest() {
        if (window.ActiveXObject) {
             xmlHttp = new ActiveXObject('Microsoft.XMLHTTP');
        }
        else if (window.XMLHttpRequest) {
             xmlHttp = new XMLHttpRequest();
        }
    }
    
    function ExecuteSearchFilter(filePath, processingMethod, filterType, strSearch) {
           createXMLHttpRequest();
           xmlHttp.onreadystatechange = processingMethod;
           xmlHttp.open('Post',filePath + '?filterType=' + filterType + '&searchText=' + strSearch,true);
           xmlHttp.send(null);
    }
    
    function ExecuteCommand(filePath, processingMethod, commandName, commandValue) {
           createXMLHttpRequest();
           xmlHttp.onreadystatechange = processingMethod;
           xmlHttp.open('Post',filePath + '?command=' + commandName + '&value=' + commandValue,true);
           xmlHttp.send(null);
    }
    
