lost+found/src/xpath.js
function _select (node, expr) {
        var
            resultSet,
            nodeSet = [node];
        while (expr) {
            resultSet = [];
            _test(nodeSet, expr, resultSet);
            if (0 === resultSet.length) {
                return [];
            }
            nodeSet = resultSet;
            if (expr.filter) {
                resultSet = [];
                _each(nodeSet, _filter, expr.filter, resultSet);
                if (0 === resultSet.length) {
                    return [];
                }
                nodeSet = resultSet;
            }
            expr = expr.then;
        }
        return resultSet;
    }
function _select (node, expr) {
        var
            resultSet,
            nodeSet = [node];
        while (expr) {
            resultSet = [];
            _test(nodeSet, expr, resultSet);
            if (0 === resultSet.length) {
                return [];
            }
            nodeSet = resultSet;
            if (expr.filter) {
                resultSet = [];
                _each(nodeSet, _filter, expr.filter, resultSet);
                if (0 === resultSet.length) {
                    return [];
                }
                nodeSet = resultSet;
            }
            expr = expr.then;
        }
        return resultSet;
    }
function _select ( node , expr ) { var resultSet , nodeSet = [ node ] ; while ( expr ) { resultSet = [ ] ; _test ( nodeSet , expr , resultSet ) ; if ( 0 === resultSet . length ) { return [ ] ; } nodeSet = resultSet ; if ( expr . filter ) { resultSet = [ ] ; _each ( nodeSet , _filter , expr . filter , resultSet ) ; if ( 0 === resultSet . length ) { return [ ] ; } nodeSet = resultSet ; } expr = expr . then ; } return resultSet ; }
Select the expression on the current node

@param {gpf.xml.IXmlConstNode} node
@param {Object} expr
@private
Select the expression on the current node