Patent ID: 8799315

Claim:
A method for selectively constructing a search result for a data requested by a search request, said method performed by executing instructions on a processor of a computer system, said instructions stored on a computer readable memory unit coupled to the processor, said method comprising: receiving, by a server program of a database system, the search request from a user program of the database system, wherein the user program generates the search request comprising a query and path information of a data node, wherein the data node corresponds to the data requested by the search request as existing within the database system such that the data node enables the user program to retrieve the data from the database system responsive to the received search request by the server program, wherein the query specifies a subtree procedure of the server program that traverses a template tree representing a hierarchically organized data structure of the database system according to the path information, and wherein the path information indicates a hierarchical address of the data node within the template tree; generating a first tree as a result of executing the subtree procedure specified in the query over the template tree by use of the path information, wherein the subtree procedure dynamically expands the template tree comprising at least one node into a respective group of one or more child nodes pursuant to the path information of the received search request, wherein said at least one node is associated with a respective subtree generator callback function for the subtree procedure to perform resulting in dynamically expanded said respective group of one or more child nodes, such that said child nodes of the first tree instantiate respective values located by the path information from at least one data source interconnected to the database system such that the first tree comprises only portion of the hierarchically organized data structure of the database system specified in the path information of the received search request without expanding entire child nodes for the first tree; selecting the data node that satisfies the path information from the generated first tree; and transferring a value associated with the selected data node to the user program that sent the search request as the search result such that the user program receives the data corresponding to the path information in response to the search request, wherein the user program runs on another computer system coupled to the computer system through a communication medium.