docs: protected void initLayouts(Element root, CmsXmlContentDefinition contentDefinition) throws CmsXmlException {
  
          m_useAcacia = safeParseBoolean(root.attributeValue(ATTR_USE_ACACIA), true);
          Iterator<Element> i = CmsXmlGenericWrapper.elementIterator(root, APPINFO_LAYOUT);
          while (i.hasNext()) {
              // iterate all "layout" elements in the "layouts" node
              Element element = i.next();
              String elementName = element.attributeValue(APPINFO_ATTR_ELEMENT);
              String widgetClassOrAlias = element.attributeValue(APPINFO_ATTR_WIDGET);
              String configuration = element.attributeValue(APPINFO_ATTR_CONFIGURATION);
              String displayStr = element.attributeValue(APPINFO_ATTR_DISPLAY);
              if (CmsStringUtil.isNotEmptyOrWhitespaceOnly(displayStr) && (elementName != null)) {
                  addDisplayType(contentDefinition, elementName, DisplayType.valueOf(displayStr));
              }
              if ((elementName != null) && CmsStringUtil.isNotEmptyOrWhitespaceOnly(widgetClassOrAlias)) {
                  // add a widget mapping for the element
                  addWidget(contentDefinition, elementName, widgetClassOrAlias);
                  if (configuration != null) {
                      addConfiguration(contentDefinition, elementName, configuration);
                  }
              }
          }
      }