1. 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 the search request from a user program, the search request comprising a query and path information of a data node, the data node having the data requested by the search request, the query specifying a procedure stored in the computer system to generate the search result, the path information specifying a hierarchical address of the data node in the search result, the search result comprising the data node, wherein the search result is a data structure organized in a hierarchy such that the data node is uniquely identified within the search result by the path information of the data node; generating the search result by executing the procedure specified in the query using a template tree stored in the computer system, wherein the template tree comprising at least one node is organized in the hierarchy, said hierarchy being identical to the hierarchy of the search result; selecting the data node that satisfies the path information from the generated search result; and transferring the selected data node to the user program that sent the search request, wherein the user program runs on another computer system coupled to the computer system through a communication medium.