private static boolean evaluate(Object node, String lang, Navigator nav) throws UnsupportedAxisException { Object element = node; if (! nav.isElement(element)) { element = nav.getParentNode(node); } while (element != null && nav.isElement(element)) { Iterator attrs = nav.getAttributeAxisIterator(element); while(attrs.hasNext()) { Object attr = attrs.next(); if(LANG_LOCALNAME.equals(nav.getAttributeName(attr)) && XMLNS_URI.equals(nav.getAttributeNamespaceUri(attr))) { return isSublang(nav.getAttributeStringValue(attr), lang); } } element = nav.getParentNode(element); } return false; }
return nav.getAttributeStringValue(obj);