docs: public static SoapAttachment parseAttachment(Element attachmentElement) {
          SoapAttachment soapAttachment = new SoapAttachment();
  
          if (attachmentElement.hasAttribute("content-id")) {
              soapAttachment.setContentId(attachmentElement.getAttribute("content-id"));
          }
  
          if (attachmentElement.hasAttribute("content-type")) {
              soapAttachment.setContentType(attachmentElement.getAttribute("content-type"));
          }
  
          if (attachmentElement.hasAttribute("charset-name")) {
              soapAttachment.setCharsetName(attachmentElement.getAttribute("charset-name"));
          }
  
          if (attachmentElement.hasAttribute("mtom-inline")) {
              soapAttachment.setMtomInline(Boolean.parseBoolean(attachmentElement.getAttribute("mtom-inline")));
          }
  
          if (attachmentElement.hasAttribute("encoding-type")) {
              soapAttachment.setEncodingType(attachmentElement.getAttribute("encoding-type"));
          }
          
          Element attachmentDataElement = DomUtils.getChildElementByTagName(attachmentElement, "data");
          if (attachmentDataElement != null) {
              soapAttachment.setContent(DomUtils.getTextValue(attachmentDataElement));
          }
          
          Element attachmentResourceElement = DomUtils.getChildElementByTagName(attachmentElement, "resource");
          if (attachmentResourceElement != null) {
              soapAttachment.setContentResourcePath(attachmentResourceElement.getAttribute("file"));
          }
  
          return soapAttachment;
      }