code: public final String getCorrelationId() {
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.entry(this, tc, "getCorrelationId");
  
          String value = null;
          int choice = getApi().getChoiceField(JsApiAccess.CORRELATIONID);
  
          /* If it is stored as a String, just extract it */
          if (choice == JsApiAccess.IS_CORRELATIONID_STRINGVALUE) {
              value = (String) getApi().getField(JsApiAccess.CORRELATIONID_STRINGVALUE);
          }
  
          /* If it is stored as a binary, we have to convert it */
          else if (choice == JsApiAccess.IS_CORRELATIONID_BINARYVALUE) {
              byte[] binValue = (byte[]) getApi().getField(JsApiAccess.CORRELATIONID_BINARYVALUE);
  
              if (binValue != null) {
                  /* It'll be more economical to get the length right immediately */
                  StringBuffer sbuf = new StringBuffer((binValue.length * 2) + 3);
  
                  /* Insert the ID: then add on the binary value as a hex string */
                  sbuf.append(ID_STRING);
                  HexString.binToHex(binValue, 0, binValue.length, sbuf);
  
                  /* Return the String representation */
                  value = sbuf.toString();
              }
  
          }
  
          /* If the choice was 'Empty' do nothing as value is already null. */
  
          if (TraceComponent.isAnyTracingEnabled() && tc.isEntryEnabled())
              SibTr.exit(this, tc, "getCorrelationId", value);
  
          return value;
      }
docs: /*
  Get the contents of the CorrelationId field from the message header.
  
  Javadoc description supplied by JsApiMessage interface.