@Override
      public void visitTagOrProperty(@NotNull PsiField field, @NotNull String tagName, RequiredFlag required) {
        boolean isBoolean = PsiTypes.booleanType().equals(field.getType());

        final DomExtension extension =
          registrar.registerFixedNumberChildExtension(new XmlName(tagName), isBoolean ? SimpleBooleanTagValue.class : SimpleTagValue.class)
            .setDeclaringElement(field);
        markAsRequired(extension, required);

        if (isBoolean) {
          return;
        }

        final With withElement = findWithElement(elements, field);
        markAsClass(extension, Extension.isClassField(field.getName()), withElement);

        markStringProperty(extension, field, field.getType(), tagName);
      }
@Override
      public void visitTagOrProperty(@NotNull PsiField field, @NotNull String tagName, RequiredFlag required)