code: private void appendValue(Object value) {
          if (value instanceof Boolean) {
              closeTag();
              append(value.toString());
          } else if (value instanceof Number) {
              closeTag();
              append(value.toString());
          } else if (value instanceof String) {
              closeTag();
              escape((String) value);
          } else if (value instanceof MwsObject) {
              ((MwsObject) value).writeFragmentTo(this);
          } else if (value instanceof Node) {
              closeTag();
              append(MwsUtl.toXmlString((Node) value));
          } else if (value instanceof Enum) {
              closeTag();
              append(((Enum<?>) value).toString());
          } else if (value instanceof XMLGregorianCalendar) {
              closeTag();
              append(((XMLGregorianCalendar) value).toXMLFormat());
          } else {
              throw new IllegalArgumentException();
          }
      }
docs: Append a value to output.
  
  @param value