docs: protected void processTopicSectionInfo(final BuildData buildData, final BaseTopicWrapper<?> topic, final Document doc) {
          if (doc == null || topic == null) return;
  
          final String infoName;
          if (buildData.getDocBookVersion() == DocBookVersion.DOCBOOK_50) {
              infoName = "info";
          } else {
              infoName = DocBookUtilities.TOPIC_ROOT_SECTIONINFO_NODE_NAME;
          }
  
          final CollectionWrapper<TagWrapper> tags = topic.getTags();
          final List<Integer> seoCategoryIds = buildData.getServerSettings().getSEOCategoryIds();
  
          if (seoCategoryIds != null && !seoCategoryIds.isEmpty() && tags != null && tags.getItems() != null && tags.getItems().size() > 0) {
              // Find the sectioninfo node in the document, or create one if it doesn't exist
              final Element sectionInfo;
              final List<Node> sectionInfoNodes = XMLUtilities.getDirectChildNodes(doc.getDocumentElement(), infoName);
              if (sectionInfoNodes.size() == 1) {
                  sectionInfo = (Element) sectionInfoNodes.get(0);
              } else {
                  sectionInfo = doc.createElement(infoName);
              }
  
              // Build up the keywordset
              final Element keywordSet = doc.createElement("keywordset");
  
              final List<TagWrapper> tagItems = tags.getItems();
              for (final TagWrapper tag : tagItems) {
                  if (tag.getName() == null || tag.getName().isEmpty()) continue;
  
                  if (tag.containedInCategories(seoCategoryIds)) {
                      final Element keyword = doc.createElement("keyword");
                      keyword.setTextContent(tag.getName());
  
                      keywordSet.appendChild(keyword);
                  }
              }
  
              // Only update the section info if we've added data
              if (keywordSet.hasChildNodes()) {
                  sectionInfo.appendChild(keywordSet);
  
                  DocBookUtilities.setInfo(buildData.getDocBookVersion(), sectionInfo, doc.getDocumentElement());
              }
          }
      }