docs: public static void resolveValidationMatcher(String fieldName, String fieldValue, 
              String validationMatcherExpression, TestContext context) {
          String expression = VariableUtils.cutOffVariablesPrefix(cutOffValidationMatchersPrefix(validationMatcherExpression));
  
          if (expression.equals("ignore")) {
              expression += "()";
          }
  
          int bodyStart = expression.indexOf('(');
          if (bodyStart < 0) {
              throw new CitrusRuntimeException("Illegal syntax for validation matcher expression - missing validation value in '()' function body");
          }
          
          String prefix = "";
          if (expression.indexOf(':') > 0 && expression.indexOf(':') < bodyStart) {
              prefix = expression.substring(0, expression.indexOf(':') + 1);
          }
  
          String matcherValue = expression.substring(bodyStart + 1, expression.length() - 1);
          String matcherName = expression.substring(prefix.length(), bodyStart);
  
          ValidationMatcherLibrary library = context.getValidationMatcherRegistry().getLibraryForPrefix(prefix);
          ValidationMatcher validationMatcher = library.getValidationMatcher(matcherName);
  
          ControlExpressionParser controlExpressionParser = lookupControlExpressionParser(validationMatcher);
          List<String> params = controlExpressionParser.extractControlValues(matcherValue, null);
          List<String> replacedParams = replaceVariablesAndFunctionsInParameters(params, context);
          validationMatcher.validate(fieldName, fieldValue, replacedParams, context);
      }