@Override
    public Object @NotNull [] getVariants() {
      final ProcessingContext context = new ProcessingContext();
      context.put(VARIANTS, new HashSet<>());

      final ResolvingVisitor visitor = new ResolvingVisitor(PATTERN.with(AddValueCondition.create(VARIANTS)), context) {
        @Override
        public void visitXmlTag(@NotNull XmlTag tag) {
          super.visitXmlTag(tag);
          visitSubTags(tag);
        }
      };

      process(visitor);

      return AttributeValueFunction.toStrings(context.get(VARIANTS));
    }
@Override
    public Object @NotNull [] getVariants()