docs: private String[] validateNVP(String namePart, String valuePart, String uri, JmsDestination dest) throws JMSException {
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.entry(this, tc, "validateNVP", new Object[]{namePart, valuePart, uri, dest});
  
      // de-escape any escaped &s in the value (we define names, so no & there)
      if (valuePart.indexOf('&') != -1) {
        valuePart = valuePart.replaceAll("\\\\&", "&");
      }
  
      // The only valid escape sequence that should be left is "\\" which
      // transforms to a single '\'
      valuePart = unescapeBackslash(valuePart);
  
      // Performing mapping from MA88 names to Jetstream names.
      // If the name part is any of the following MA88 properties, we leave it because
      // there is no direct Jetstream equivalent for the property:
      // 'CCSID', 'encoding', 'brokerDurSubQueue', 'brokerCCDurSubQueue', 'multicast'.
      // In this event, the unknown property will be silently ignored, and NOT throw an exception.
      if (namePart.equalsIgnoreCase(MA88_EXPIRY)) {
        namePart = JmsInternalConstants.TIME_TO_LIVE;
      }
      if (namePart.equalsIgnoreCase(MA88_PERSISTENCE)) {
        namePart = JmsInternalConstants.DELIVERY_MODE;
  
        // map between the MA88 Integer values and the Jetstream String values
        if (valuePart.equals("1")) {
          valuePart = ApiJmsConstants.DELIVERY_MODE_NONPERSISTENT;
        }
        else if (valuePart.equals("2")) {
          valuePart = ApiJmsConstants.DELIVERY_MODE_PERSISTENT;
        }
        else {
          valuePart = ApiJmsConstants.DELIVERY_MODE_APP;
        }
      }
  
      // create a new String[] and populate it with the newly validated element, then return.
      String[] result = new String[] { namePart, valuePart };
  
      if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled()) SibTr.exit(this, tc, "validateNVP",  result);
      return result;
    }