public static XmlEnumeratedValueReferenceProvider forTags() {
    return new XmlEnumeratedValueReferenceProvider<XmlTag>() {

      @Override
      protected Object getDescriptor(XmlTag element) {
        return element.getDescriptor();
      }

      @Override
      protected PsiElement getHost(XmlTag element) {
        XmlText[] textElements = PsiTreeUtil.getChildrenOfType(element, XmlText.class);
        return ArrayUtil.getFirstElement(textElements);
      }
    };
  }
public static XmlEnumeratedValueReferenceProvider forTags()