function performXMLRequest (encodedText, encodingType, translationType, callback)
{
var sourceLang = translationType.substr(0, translationType.indexOf('_')).toUpperCase();
var targetLang = translationType.substr(translationType.indexOf('_') + 1, translationType.length).toUpperCase();
var url = 'https://api-free.deepl.com/v2/translate';
var body = 'text='+encodeURI(encodedText)+'&source_lang='+sourceLang+'&target_lang='+targetLang;
var xml_request = new XMLHttpRequest();
xml_request.onload = function(e) {xml_loaded(e, xml_request, requestID++, callback);}
xml_request.onerror = function() {callback(null,"");}
xml_request.open("POST", url);
xml_request.setRequestHeader("Authorization", "DeepL-Auth-Key "+deeplAuthKey);
xml_request.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
xml_request.setRequestHeader("Cache-Control", "no-cache");
xml_request.send(body);
//alert("Translation URL: " + url); //uncomment for debugging
return xml_request;
}