docs: private void pushMetadata(final Map<URI, Map<String, Element>> mapSet) {
          if (!mapSet.isEmpty()) {
              //process map first
              final DitaMapMetaWriter mapInserter = new DitaMapMetaWriter();
              mapInserter.setLogger(logger);
              mapInserter.setJob(job);
              for (final Entry<URI, Map<String, Element>> entry : mapSet.entrySet()) {
                  final URI key = stripFragment(entry.getKey());
                  final FileInfo fi = job.getFileInfo(key);
                  if (fi == null) {
                      logger.error("File " + new File(job.tempDir, key.getPath()) + " was not found.");
                      continue;
                  }
                  final URI targetFileName = job.tempDirURI.resolve(fi.uri);
                  assert targetFileName.isAbsolute();
                  if (fi.format != null && ATTR_FORMAT_VALUE_DITAMAP.equals(fi.format)) {
                      mapInserter.setMetaTable(entry.getValue());
                      if (toFile(targetFileName).exists()) {
                          logger.info("Processing " + targetFileName);
                          mapInserter.read(toFile(targetFileName));
                      } else {
                          logger.error("File " + targetFileName + " does not exist");
                      }
  
                  }
              }
              //process topic
              final DitaMetaWriter topicInserter = new DitaMetaWriter();
              topicInserter.setLogger(logger);
              topicInserter.setJob(job);
              for (final Entry<URI, Map<String, Element>> entry : mapSet.entrySet()) {
                  final URI key = stripFragment(entry.getKey());
                  final FileInfo fi = job.getFileInfo(key);
                  if (fi == null) {
                      logger.error("File " + new File(job.tempDir, key.getPath()) + " was not found.");
                      continue;
                  }
                  final URI targetFileName = job.tempDirURI.resolve(fi.uri);
                  assert targetFileName.isAbsolute();
                  if (fi.format == null || fi.format.equals(ATTR_FORMAT_VALUE_DITA)) {
                      final String topicid = entry.getKey().getFragment();
                      topicInserter.setTopicId(topicid);
                      topicInserter.setMetaTable(entry.getValue());
                      if (toFile(targetFileName).exists()) {
                          topicInserter.read(toFile(targetFileName));
                      } else {
                          logger.error("File " + targetFileName + " does not exist");
                      }
  
                  }
              }
          }
      }