docs: @Override
      public Document generate(final WireFeed feed) throws IllegalArgumentException, FeedException {
  
          if (!(feed instanceof Opml)) {
              throw new IllegalArgumentException("Not an OPML file");
          }
  
          final Opml opml = (Opml) feed;
          final Document doc = new Document();
          final Element root = new Element("opml");
          root.setAttribute("version", "1.0");
          doc.addContent(root);
  
          final Element head = generateHead(opml);
  
          if (head != null) {
              root.addContent(head);
          }
  
          final Element body = new Element("body");
          root.addContent(body);
          super.generateFeedModules(opml.getModules(), root);
          body.addContent(generateOutlines(opml.getOutlines()));
  
          return doc;
      }