docs: private void removeInValidElements(CmsXmlPage page, Locale locale) {
  
          if (page == null) {
              return;
          }
  
          if (ALL.equals(getParamTemplate())) {
              return;
          }
  
          // get all elements of this page
          List pageElements = page.getNames(locale);
          if (pageElements != null) {
              Iterator i = pageElements.iterator();
              while (i.hasNext()) {
                  String currElement = (String)i.next();
                  // remove current element only is invalid and has no content
                  if (!isValidElement(currElement) && isEmptyElement(page, currElement, locale)) {
                      page.removeValue(currElement, locale);
                      try {
                          writePageAndReport(page, false);
                          m_report.println(
                              Messages.get().container(Messages.RPT_REMOVE_INVALID_EMPTY_ELEM_1, currElement),
                              I_CmsReport.FORMAT_NOTE);
                      } catch (CmsException e) {
                          // ignore
                      }
                  }
              }
          }
      }