[144691] Unable to search for attribute, attribute group and group
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchContributor.java b/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchContributor.java
index 12fec5d..95dcb48 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchContributor.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/XSDSearchContributor.java
@@ -46,6 +46,17 @@
 
 		references.put(IXSDSearchConstants.SIMPLE_TYPE_META_NAME, patterns);
 
+		patterns = new ArrayList();
+		patterns.add(new XMLSearchPattern( ns, XSDConstants.GROUP_ELEMENT_TAG, XSDConstants.REF_ATTRIBUTE));
+		references.put(IXSDSearchConstants.GROUP_META_NAME, patterns);
+
+		patterns = new ArrayList();
+		patterns.add(new XMLSearchPattern( ns, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDConstants.REF_ATTRIBUTE));
+		references.put(IXSDSearchConstants.ATTRIBUTE_GROUP_META_NAME, patterns);
+
+		patterns = new ArrayList();
+		patterns.add(new XMLSearchPattern( ns, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDConstants.REF_ATTRIBUTE));
+		references.put(IXSDSearchConstants.ATTRIBUTE_META_NAME, patterns);
 	}
 
 	protected void initializeDeclarations(){
@@ -53,22 +64,22 @@
 		declarations = new HashMap();
 		String ns = IXSDSearchConstants.XMLSCHEMA_NAMESPACE;
 
-		SearchPattern pattern = new XMLSearchPattern( ns, "element", "name", 2);
+		SearchPattern pattern = new XMLSearchPattern( ns, XSDConstants.ELEMENT_ELEMENT_TAG, XSDConstants.NAME_ATTRIBUTE, 2);
 		declarations.put(IXSDSearchConstants.ELEMENT_META_NAME, pattern);
 
-		pattern = new XMLSearchPattern(ns, "complexType", "name");
+		pattern = new XMLSearchPattern(ns, XSDConstants.COMPLEXTYPE_ELEMENT_TAG, XSDConstants.NAME_ATTRIBUTE);
 		declarations.put(IXSDSearchConstants.COMPLEX_TYPE_META_NAME, pattern);
 
-		pattern = new XMLSearchPattern(ns, "simpleType", "name");
+		pattern = new XMLSearchPattern(ns, XSDConstants.SIMPLETYPE_ELEMENT_TAG, XSDConstants.NAME_ATTRIBUTE);
 		declarations.put(IXSDSearchConstants.SIMPLE_TYPE_META_NAME, pattern);
 
-		pattern = new XMLSearchPattern(ns, "attribute", "name");
+		pattern = new XMLSearchPattern(ns, XSDConstants.ATTRIBUTE_ELEMENT_TAG, XSDConstants.NAME_ATTRIBUTE);
 		declarations.put(IXSDSearchConstants.ATTRIBUTE_META_NAME, pattern);
 
-		pattern = new XMLSearchPattern(ns, "attributeGroup", "name");
+		pattern = new XMLSearchPattern(ns, XSDConstants.ATTRIBUTEGROUP_ELEMENT_TAG, XSDConstants.NAME_ATTRIBUTE);
 		declarations.put(IXSDSearchConstants.ATTRIBUTE_GROUP_META_NAME, pattern);
 
-		pattern = new XMLSearchPattern(ns, "group", "name");
+		pattern = new XMLSearchPattern(ns, XSDConstants.GROUP_ELEMENT_TAG, XSDConstants.NAME_ATTRIBUTE);
 		declarations.put(IXSDSearchConstants.GROUP_META_NAME, pattern);
 
 	}
diff --git a/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesAction.java b/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesAction.java
index c7a9520..ad53351 100644
--- a/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesAction.java
+++ b/bundles/org.eclipse.wst.xsd.ui/src-search/org/eclipse/wst/xsd/ui/internal/search/actions/FindReferencesAction.java
@@ -24,8 +24,11 @@
 import org.eclipse.wst.xsd.ui.internal.editor.ISelectionMapper;
 import org.eclipse.wst.xsd.ui.internal.search.IXSDSearchConstants;
 import org.eclipse.wst.xsd.ui.internal.search.XSDSearchQuery;
+import org.eclipse.xsd.XSDAttributeDeclaration;
+import org.eclipse.xsd.XSDAttributeGroupDefinition;
 import org.eclipse.xsd.XSDComplexTypeDefinition;
 import org.eclipse.xsd.XSDElementDeclaration;
+import org.eclipse.xsd.XSDModelGroupDefinition;
 import org.eclipse.xsd.XSDNamedComponent;
 import org.eclipse.xsd.XSDSimpleTypeDefinition;
 public class FindReferencesAction extends FindAction
@@ -83,6 +86,18 @@
     {
       metaName = IXSDSearchConstants.ELEMENT_META_NAME;
     }
+    else if (component instanceof XSDModelGroupDefinition)
+    {
+      metaName = IXSDSearchConstants.GROUP_META_NAME;
+    }
+    else if (component instanceof XSDAttributeGroupDefinition)
+    {
+      metaName = IXSDSearchConstants.ATTRIBUTE_GROUP_META_NAME;
+    }
+    else if (component instanceof XSDAttributeDeclaration)
+    {
+      metaName = IXSDSearchConstants.ATTRIBUTE_META_NAME;
+    }
     return metaName;
   }