1. A method for attribute-based searching, the method comprising: receiving, by a computer system, a query; identifying, by the computer system, tokens in the query; identifying, by the computer system, a plurality of documents including at least one token t of the tokens in the query; for each document d of the plurality of documents including at least one token t of the tokens in the query, calculating, by the computer system, token-attribute scores tf c (t,d) for each attribute value c of the each document d, the token-attribute scores tf c (t,d) decreasing with length of the attribute value c; assigning, by the computer system, a document score to each document d of the plurality of documents based on a summation of the token-attribute scores tf c (t,d) for the each document d; ranking, by the computer system, the plurality of documents according to the document scores; and returning, by the computer system, at least a portion of the ranked plurality of documents as a response to the query.