/**
  * Format HTML for a replaceable string
  *
  * @param text text for the optional license string
  * @param id ID used for the div
  * @return
  */
 public static String formatReplaceabledHTML(String text, String id) {
   StringBuilder sb = new StringBuilder();
   sb.append("\n<span ");
   if (id != null && !id.trim().isEmpty()) {
     sb.append("id=\"");
     sb.append(escapeIdString(id));
     sb.append("\" ");
   }
   sb.append("class=\"");
   sb.append(REPLACEABLE_LICENSE_TEXT_CLASS);
   sb.append("\">");
   sb.append(SpdxLicenseTemplateHelper.escapeHTML(text));
   sb.append("</span>\n");
   return sb.toString();
 }
 /* (non-Javadoc)
  * @see org.spdx.licenseTemplate.ILicenseTemplateOutputHandler#normalText(java.lang.String)
  */
 @Override
 public void normalText(String text) {
   htmlString.append(SpdxLicenseTemplateHelper.escapeHTML(text, this.movingParagraph));
   this.movingParagraph = false;
 }