A method for processing a natural language input provided by a user
includes: providing a natural language query input to the user;
performing, based on the input, a search of one or more language-based
databases; providing, through a user interface, a result of the search to
the user; identifying, for the one or more language-based databases, a
finite number of database objects; and determining a plurality of
combinations of the finite number of database objects. The one or more
language-based databases include at least one metadata database including
at least one of a group of information types including case information,
keywords, information models, and database values.