Q:

Checking presence of attribute with cts:query

cts:element-query(xs:QName("elm"),cts:and-query(())) will give all the fragments where the element elm is present.
Similarly if I want all documents where an attribute(say atr) is present under elm what would I have to do?
cts:element-attribute-value-query() requires that I pass a value to match against the attribute value. But I want to check only the existence of the attribute irrespective of what value it contains.

A:

You can do it by a simple cts:element-attribute-value-query  
cts:element-attribute-value-query(
xs:QName('element'), xs:QName('attribute'), '*'))  

In case you have not set wildcarded search true in database, you also need to provide wildcarded enabled search explicitly in cts:element-attribute-value-query  
cts:element-attribute-value-query(
xs:QName('element'), xs:QName('attribute'), '*', ("wildcarded")))  

For more details on this you can check cts:element-attribute-value-query page

