}
protected static QName getQName(AccessibleObject accessor) {
Extension ext = accessor.getAnnotation(Extension.class);
if (ext != null) return getQName(ext);
Attribute attr = accessor.getAnnotation(Attribute.class);
if (attr != null) return getQName(attr);
return new QName(
accessor instanceof Method ?
((Method)accessor).getName() :
((Field)accessor).getName());