@Override
  public final XmlAttributeDescriptor[] getAttributesDescriptors(@Nullable final XmlTag context) {
    if (context != null) {
      return getCachedValue(context, this, ATTRS_KEY, p -> {
        final XmlAttributeDescriptor[] value = p.collectAttributeDescriptors(context);
        return CachedValueProvider.Result.create(value, p.getDependencies(), context);
      });
    } else {
      return collectAttributeDescriptors(null);
    }
  }
@Override
  public final XmlAttributeDescriptor[] getAttributesDescriptors(@Nullable final XmlTag context)