docs: protected ScriptTaskActivityBehavior parseScriptTaskElement(Element scriptTaskElement) {
      // determine script language
      String language = scriptTaskElement.attribute("scriptFormat");
      if (language == null) {
        language = ScriptingEngines.DEFAULT_SCRIPTING_LANGUAGE;
      }
      String resultVariableName = parseResultVariable(scriptTaskElement);
  
      // determine script source
      String scriptSource = null;
      Element scriptElement = scriptTaskElement.element("script");
      if (scriptElement != null) {
        scriptSource = scriptElement.getText();
      }
      String scriptResource = scriptTaskElement.attributeNS(CAMUNDA_BPMN_EXTENSIONS_NS, PROPERTYNAME_RESOURCE);
  
      try {
        ExecutableScript script = ScriptUtil.getScript(language, scriptSource, scriptResource, expressionManager);
        return new ScriptTaskActivityBehavior(script, resultVariableName);
      } catch (ProcessEngineException e) {
        addError("Unable to process ScriptTask: " + e.getMessage(), scriptElement);
        return null;
      }
    }