function xslice( node, path, element ) { var document, evaluator, ANY, resolver, iterator, result = [], tmp; try { ANY = XPathResult.ANY_TYPE; document = node.ownerDocument || node; evaluator = new XPathEvaluator(); resolver = evaluator.createNSResolver( document.documentElement ); iterator = evaluator.evaluate( path, node, resolver, ANY, null ); while( tmp = iterator.iterateNext() ) result.push( element ? tmp[element] : tmp ); } catch(e) { alert( 'xslice('+node+', '+path+') failed:\n' + e ); } return result; } { var entries, i, e, a, id, name, sexage, db_only; entries = xslice( document.body, entry_text_path, 'parentNode' ); } try { var entries, i, e, a, id, name, sexage, db_only; entries = xslice( document.body, entry_text_path, 'parentNode' ); for( i=0; i