def node_search(term='1000', mode='books', heavy=HEAVY, page=1,
keyword=nil, price=nil)
url = "/onca/xml3?t=%s&BrowseNodeSearch=%s&mode=%s&f=xml" +
"&type=%s&dev-t=%s&page=%s"
url += "&keywords=%s" % keyword unless keyword.nil?
url += "&price=%s" % price unless price.nil?
type = heavy ? 'heavy' : 'lite'
if term.is_a? Array
raise TypeError, "string or integer required"
elsif term =~ / /
raise TermError, "single item expected"
end
unless Search.modes.include? mode
raise ModeError, "mode must be one of %s" % Search.modes.join(', ')
end
mode = localise_mode(mode)
search(url % [@id, term, mode, type, @token, page])
end