/**
   * Initializes the super category.
   *
   * @param p0 the category
   * @param p1 the super category list
   */
  static void initialize_super_category(java.lang.Object p0, java.lang.Object p1)
      throws java.lang.Exception {

    org.apache.xerces.dom.DeepNodeListImpl l = (org.apache.xerces.dom.DeepNodeListImpl) p1;

    if (l != null) {

      org.apache.xerces.dom.NodeImpl n = (org.apache.xerces.dom.NodeImpl) l.item(0);

      if (n != null) {

        LogHandler.log(LogHandler.INFO_LOG_LEVEL, "Initialize super category.");
        java.lang.Object s =
            CategoryHandler.read_attribute(
                (org.apache.xerces.dom.NamedNodeMapImpl) n.getAttributes(),
                CategoryHandler.CATEGORY);
        CategoryHandler.initialize_category(p0, s);

      } else {

        LogHandler.log(
            LogHandler.WARNING_LOG_LEVEL,
            "Could not initialize super category. The super category node is null.");
      }

    } else {

      LogHandler.log(
          LogHandler.WARNING_LOG_LEVEL,
          "Could not initialize super category. The super category list is null.");
    }
  }
  /**
   * Initializes the items.
   *
   * @param p0 the category items
   * @param p1 the category items list
   */
  static void initialize_items(java.lang.Object p0, java.lang.Object p1) {

    org.apache.xerces.dom.DeepNodeListImpl l = (org.apache.xerces.dom.DeepNodeListImpl) p1;

    if (l != null) {

      LogHandler.log(LogHandler.INFO_LOG_LEVEL, "Initialize items.");
      int count = 0;
      int size = l.getLength();
      org.apache.xerces.dom.NodeImpl n = null;
      Item i = null;
      java.lang.Object name = null;

      while (count < size) {

        n = (org.apache.xerces.dom.NodeImpl) l.item(count);

        if (n != null) {

          i = new Item();
          ItemHandler.initialize_item_containers(i);
          CategoryHandler.initialize_item(i, n);

          if (i != null) {

            name = MapHandler.get_map_element(i.items, CategoryHandler.NAME);
            MapHandler.set_map_element(p0, name, i);

            /*??
                                    // Initialize serialized item.
                                    i = n.getNodeValue();
            */

          } else {

            LogHandler.log(
                LogHandler.ERROR_LOG_LEVEL, "Could not initialize items. An item is null.");
          }

        } else {

          LogHandler.log(
              LogHandler.INFO_LOG_LEVEL,
              "Could not initialize items. The category item node is null.");
        }

        count++;
      }

    } else {

      LogHandler.log(
          LogHandler.ERROR_LOG_LEVEL,
          "Could not initialize items. The category items list is null.");
    }
  }
  /**
   * Initializes the java objects.
   *
   * @param p0 the category
   * @param p1 the category java objects list
   */
  static void initialize_java_objects(java.lang.Object p0, java.lang.Object p1) {

    org.apache.xerces.dom.DeepNodeListImpl l = (org.apache.xerces.dom.DeepNodeListImpl) p1;

    if (l != null) {

      LogHandler.log(LogHandler.INFO_LOG_LEVEL, "Initialize java objects.");
      org.apache.xerces.dom.NodeImpl n = (org.apache.xerces.dom.NodeImpl) l.item(0);

      if (n != null) {

        Item c = (Item) p0;

        if (c != null) {

          Item o = null;

          // Sometimes, a super category sets a java object that is not
          // wanted in a sub category. In this case, it can be set to null:
          // <javaobject category="null"/>
          if (CategoryHandler.is_java_object_null(n) == false) {

            o = new Item();
            ItemHandler.initialize_item_containers(o);
            CategoryHandler.initialize_java_object(o, n);

          } else {

            o = null;
          }

          c.java_object = o;

        } else {

          LogHandler.log(
              LogHandler.ERROR_LOG_LEVEL,
              "Could not initialize java objects. The category is null.");
        }

      } else {

        LogHandler.log(
            LogHandler.INFO_LOG_LEVEL,
            "Could not initialize java objects. The java object node is null.");
      }

    } else {

      LogHandler.log(
          LogHandler.ERROR_LOG_LEVEL,
          "Could not initialize java objects. The java objects list is null.");
    }
  }