code: public String xlate (String compoundKey)
      {
          // to be more efficient about creating unnecessary objects, check before splitting
          int tidx = compoundKey.indexOf('|');
          if (tidx == -1) {
              return get(compoundKey);
  
          } else {
              String key = compoundKey.substring(0, tidx);
              String[] args = MessageUtil.decompose(compoundKey.substring(tidx+1));
              for (int ii = 0; ii < args.length; ii++) {
                  if (MessageUtil.isTainted(args[ii])) {
                      args[ii] = MessageUtil.untaint(args[ii]);
                  } else {
                      args[ii] = xlate(args[ii]);
                  }
              }
              return get(key, (Object[])args);
          }
      }
docs: Translate a compound key/params string. The compoundKey is compatible with Narya's
  MessageBundle, with the exception that qualified keys are not supported.