docs: public void delete(String name) {
          try {
              String mapKey = name.toUpperCase();
              if ((m_items == null) || (m_items.containsKey(mapKey) == false)) {
                  throw new CatalogException("Catalog item '" + mapKey + "' doesn't exists in " + m_parent);
              }
  
              m_items.remove(mapKey);
  
              // assign a relative index to every child item
              int index = 1;
              for (Entry<String, T> e : m_items.entrySet()) {
                  e.getValue().m_relativeIndex = index++;
              }
          } catch (Exception ex) {
              throw new RuntimeException(ex);
          }
      }