Abstract:
Disclosed is a method and system directed to a management of distributed database data and file access and retrieval by providing multiple parameter data media search. Conventional model generate search results based upon the text entered into the search box by the user. Unfortunately, the existing conventional models have certain limitations in use, distribution, and deployment. The present invention relates to the creation of multi-parameter search tools that allow for searched materials to be quantified by numerous logical searching parameters. An example embodiment (i) provides a plurality of parameters, each of the plurality of parameters having a respective range of terms; (ii) displays the plurality of parameters; (iii) displays the respective ranges of terms; (iv) solicits from the user at least one search selection from the displayed ranges of terms; (v) performs a search from the at least one search selection; and (vi) returns a search result to the user.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    It is well known that search engines can provide a list of linked results for users who have input a series of alphanumeric characters, characters, word, or series of words to search from. Search engines are made up of elaborate databases that utilize word matching with programmed logic tools to sort through information present in, or available to, the search engines database to generate the search results for the user. Currently, searching for data using a search engine via nearly every online search mechanism functions by the user inputting a searched for term or terms into an input box via the user interface and then clicking on (selecting) a button labeled “search” or by pressing the return key. The terms are passed to the server search program and database where terms used by the user generate matches based upon the term, combination of terms or programmed logic present in the search database. The results are displayed for the user, usually via an html type of page with a predetermined number of results and many others available through numbered and paginated cached or centrally served results. 
         [0002]    Conventional models address the current search format that people have grown familiar with and that engineers have grown accustomed to programming and maintaining. These models generate search results based upon the text entered into the search box by the user. Some search mechanisms also allow the user to enter a date range, such as online newspaper searches, to further filter the search results and provide a more refined range of results in the process. Other advanced search parameters include numeric range, file format, usage rights, and where in a document the searched for term appears. Each one of the searchable parameters above may help generate refined results once the search is initiated by the user. Each search parameter is defined by entering information in a box or clicking upon information in a drop down menu or list. 
         [0003]    Unfortunately, the existing conventional uses have certain limitations in use, distribution, and deployment. By employing a system that solely emphasizes the ‘text in a box’ searching style with a database results program left to find matching text with some custom tools and rules, the broad limitations of search quickly become apparent when the user is presented with over 100,000 search matches by the search engine database system. The search engine database system generates information in response to the user&#39;s search request. While utilizing the advanced search tools available above can help refine results, the process is burdensome from a user interface perspective. The process does not provide enough useful search parameters to truly generate a search engine response that is commensurate with currently available technological resources in terms of search parameters, database design, programming, and user interface. 
       SUMMARY OF THE INVENTION 
       [0004]    The present invention relates to the creation of multi-parameter search tools that allow for queries to be quantified by numerous logical searching parameters. These parameters are displayed across a range of flexible graphical user interface tools. The underlying data available for search are coded or recoded in the database to be searchable and sortable by the given parameters. 
         [0005]    In a preferred embodiment is a method and system that (i) provides a plurality of parameters, each of the plurality of parameters having a respective range of terms; (ii) displays the plurality of parameters; (iii) displays the respective ranges of terms; (iv) solicits from the user at least one search selection from the displayed ranges of terms; (v) performs a search from the at least one search selection; and (vi) returns a search result to the user. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0006]    The foregoing will be apparent from the following more particular description of example embodiments of the invention, as illustrated in the accompanying drawings in which like reference characters refer to the same parts throughout the different views. The drawings are not necessarily to scale, emphasis instead being placed upon illustrating embodiments of the present invention. 
           [0007]      FIG. 1  is an exemplary schematic of a system for providing multiple parameter data media search embodying the present invention; 
           [0008]      FIG. 2  is an exemplary flow diagram performed in accordance with an embodiment of the present invention; 
           [0009]      FIG. 3  illustrates an exemplary flow diagram performed in accordance with another embodiment of the present invention, 
           [0010]      FIG. 4  is an exemplary schematic of a system embodying the present invention along with a plurality of parameters and respective ranges of associated terms; 
           [0011]      FIG. 5  is a schematic diagram of another exemplary system displaying a multiple bar display unit embodying the present invention; 
           [0012]      FIG. 6  is an exemplary schematic diagram of a graphical tree method of searching embodying the present invention; 
           [0013]      FIG. 7  is a schematic diagram of a search summary embodying the present invention; 
           [0014]      FIG. 8  is a schematic view of a computer environment in which the principles of the preset invention may be implemented; and 
           [0015]      FIG. 9  is a block diagram of the internal structure of a computer from the computer environment shown in  FIG. 8 . 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0016]    A description of preferred embodiments of the invention follows. 
         [0017]    The present invention, in accordance with one embodiment relates to the creation of a search engine that utilizes a series of graphical displays representing different searchable parameters to establish a new searching mechanism or to enhance an existing text-based searching mechanism. The system creates a simple way to set search parameters and then to have the database search for the user defined parameters to return a more precise set of results to the user. 
         [0018]      FIG. 1  is a schematic of a system  100  for providing multiple parameter data media search and shows exemplary architecture of a system embodying the present invention. The system  100  may include a first display unit  105 , second display unit  115 , search engine  120 , search result  125 , and pointer  135 . The first and second display units  105 ,  115  have a plurality of parameters, such as time  110   a , color  110   b , life form  110   c , lighting  110   d , and environment  110   e . The first display unit  105  having the plurality of parameters  110   a ,  110   b , . . . ,  110   e  may be in a graphical format such as concentric rings. Each of the concentric rings is associated with a respective one of the plurality of parameters. For example, the outermost ring may be time  110   a  while the innermost ring may be environment  110   e . It should be understood that there may be more or less parameters as indicated above. Each of the parameters  111   a ,  110   b , . . . ,  110   e  is associated with a respective range of terms as shown and further discussed in  FIG. 4 . A user may direct a pointer  135  to at least one of the parameters  110   a ,  110   b , . . . ,  110   e  and the associated respective range of terms (not shown) to create a search selection. The search engine  120 , in turn, may perform a search based on the search selection culminating in the search result  125 . For example, the user may create a search selection using the parameters, such as time  110   a  and environment  110   e . It is to be understood that the user may use one or all of the search parameters to create the search selection. 
         [0019]      FIG. 2  is an exemplary flow diagram  200  of system  100  performed in accordance with an embodiment of the present invention. The flow diagram  200  of system  100  starts at  205  and provides parameters, such as time  110   a , color  110   b , life form  110   c , lighting  110   d , and environment  110   e  ( 210 ). Each of the parameters  110   a ,  110   b , . . . ,  110   e  is associated with a respective range of terms. The system  100  then displays the parameters ( 215 ). The system  100  determines whether a pointer is on one of the plurality of parameters ( 220 ). If the pointer is not on one of the plurality of parameters, the system  100  displays the parameters ( 215 ). 
         [0020]    If the pointer is on one of the parameters, the system  100  displays the associated ranges of terms ( 225 ). The system  100  then solicits from a user a search selection ( 230 ). The user may direct a pointer  135  to the at least one of the parameters  110   a ,  110   b , . . . ,  110   e  and the associated range of terms (not shown) to create the search selection. The search engine  120 , in turn, may perform a search based on the search selection ( 235 ). The system  100  responsively returns search results  125  to the user ( 240 ) and then ends ( 245 ). For example, the user may create a search selection using the parameters, such as time  110   a  and environment  110   e . It is to be understood that the user may use one, a subset, or all of the search parameters to create the search selection. 
         [0021]      FIG. 3  is an exemplary flow diagram  300  performed in accordance with another embodiment of the present invention. The flow diagram  300  starts at  305  and the system  100  provides at  310  parameters, such as time  110   a , color  110   b , life form  110   c , lighting  110   d , and environment  110   e , as shown in  FIG. 1 . Each of the parameters  110   a ,  110   b , . . . ,  110   e  is associated with a respective range of terms. The system  100  then displays the parameters ( 315 ). The system  100  determines whether a pointer is on one of the parameters ( 320 ). If the pointer is not on one of the parameters, the system  100  displays the parameters ( 315 ). 
         [0022]    If the pointer is on one of the parameters, the system  100  displays the respective associated ranges of terms ( 325 ). The system  100  then solicits from a user at least one search selection ( 330 ). The user may direct a pointer  135  to the at least one of the parameters  110   a ,  110   b , . . . ,  110   e  and the respective associated range of terms (not shown) to create the search selection. The search engine  120 , in turn, may perform a search based on the search selection ( 335 ). The system  100  may return search results  125  to the user ( 340 ). The system  100  determines if the returned search result is the user&#39;s desired search result ( 345 ). If the search result is the user&#39;s desired search result, the system  100  may display a summary of the search result ( 350 ). The summary may include a number of match results. 
         [0023]    If the search result is not the user&#39;s desired search result, the system  100  may replace the plurality of parameters with refined parameters ( 355 ). The refined parameters may be more refined based on the previous search result. The system  100  may then display the refined parameters ( 360 ). The system  100  determines whether a pointer is on one of the refined parameters ( 365 ). If the pointer is not on one of the refined parameters, the system  100  displays the refined parameters ( 360 ). 
         [0024]    If the pointer is on one of the refined parameters, the system  100  displays the respective associated ranges of refined terms ( 370 ). The system  100  then solicits from a user another search selection ( 375 ). The search engine  120 , in turn, may perform a refined search based on the another search selection ( 380 ). The system  100  returns search results  125  of the refined search to the user ( 385 ). The system  100  determines if the search result is the user&#39;s desired refined search result ( 390 ). If the search result is the user&#39;s desired refined search result, the system  100  may display a summary of the refined search result ( 350 ). The summary may include a number of match results. 
         [0025]    If the search result is not the user&#39;s desired refined search result, the system  100  repeats the process to determine if there are new parameters that are more refined based on previous search result ( 392 ). If there are new parameters then the flow chart  300  recommences at  355 . If there are no new parameters, then the flowchart  300  displays a summary of the refined search result ( 350 ) before ending ( 395 ). 
         [0026]      FIG. 4  is a schematic diagram of an exemplary architecture of another system  400  embodying the present invention along with a plurality of parameters  110   a ,  110   b , . . . ,  110   e  and respective ranges of associated terms  112   a ,  112   b ,  112   c ,  112   d , . . . ,  112   e . The system  400  may include a first display unit  105  having a plurality of parameters  110   a ,  110   b , . . . ,  110   e , interface  140 , second display unit  115 , search engine  120 , search result  125 , search bar  130 , and enter bar  145 . The first and second display unit  105 ,  115 , search bar  130 , and enter bar  145  may be on a touch screen  140 . 
         [0027]    Each of the plurality of parameters  110   a ,  110   b  . . . ,  110   e  may be associated with the respective ranges of terms  112   a ,  112   b ,  112   c ,  112   d , and  112   n . For example the parameter time  110   a  may be associated with the range of terms 1000 BC to 2007 AD  112   a , parameter color  110   b  is associated with the range of terms white to black  112   b , etc. In an embodiment, a user selects among a set of associated range of terms  112   a ,  112   b ,  112   c ,  112   d , and  112   n  in the ringed parameters  110   a ,  110   b , . . . ,  110   e  to establish a refined and accurate search. These parameters  110   a ,  110   b ,  110   c ,  110   d ,  110   e  may be represented graphically, by the use of horizontal bars, circles or any other graphical representation that can be utilized to display a range of data. Parameters to be set can range from one to more than one hundred parameters. Parameters can be selected from a list or can be presented as a list of default parameters that may then be available to select from a list. For example, one parameter could be chronology ranging from the beginning of time to the year 3,000. Another parameter could include color  110   b  ranging in respective value from clear to white to black  112   b  and all colors in the spectrum in between that are representable in the first and second display units  105 ,  115 . Life form  110   c  may range from single cell to homo sapiens  112   c.    
         [0028]    The range of terms may be categorized by subjects. The subjects may be geographical locations, the earth, shapes, things, mood, people, places, traits, sound, purchase, celebrity, colleges, vacations, matchmaking, sports, video, community, music, film, cooking, recipes, of the body etc. The user may also create a hierarchical search using first named or positioned parameters to define a search. In this case if a user were to select “films” as a parameter and then select from the film parameter horror films and then select “blood” from the body parameter and yellow for the color parameter then the resulting search query (search selection) would be horror films with yellow blood. It should be understood that there are many more subjects and parameters than discussed above. 
         [0029]    Creating a set of simple parameters such as people, places and things is relatively easy; it is when assigning and correlating data to many search results that the legwork of database technology really begins. For example, it is easy to code the film, “Murder of SpongeBob Squarepants” into a database field as a movie, and also to code it as a horror movie, but when adding a movie with yellow as a primary color and blood being present then the correlation of this data becomes more work for programmers to input. However, the results of a multi-parameter search can be startlingly accurate via this invention of user interface having a first and second display units  105 ,  115  and advanced database labeling, sorting and interrelating programming for search. 
         [0030]    Using the parameters in  FIG. 4 , an example of a search is a user looking for a red parakeet to purchase. The user may begin a search selection using the following parameters and associated range of terms: 
         [0000]    
       
         
               
               
               
             
           
               
                   
                   
               
               
                   
                 parameter: 
                 range of terms: 
               
               
                   
                   
               
             
             
               
                   
                 time 110a 
                 2007 AD 112a 
               
               
                   
                 color 110b 
                 red 112b 
               
               
                   
                 life form 110c 
                 bird 112c 
               
               
                   
                   
               
             
          
         
       
     
         [0031]    After creating a search selection (query), the user via an input device (not shown), such as a mouse, moves a pointer  135  on the enter bar  145  and by operationally selecting on the input device, a search engine  120  may perform the search using the search selection. Alternatively, if the display is a touch screen  140 , the user may simply touch the enter bar  145  to perform the search. A search result  125  may return and display on a touch screen  140  another set of refined parameters or a list of red birds that exist in 2007 AD. 
         [0032]    If the search produces another set of refined parameters, they may include geographic location, type of food that the bird feeds on, species, etc. The user may create another search selection (query) using the refined parameters and associated range of refined terms: 
         [0000]    
       
         
               
               
               
             
           
               
                   
                   
               
               
                   
                 refined parameter: 
                 range of refined terms: 
               
               
                   
                   
               
             
             
               
                   
                 geographic location 
                 Mexico 
               
               
                   
                 food 
                 berries 
               
               
                   
                 species 
                 
                   amazon viridigenalis 
                 
               
               
                   
                   
               
             
          
         
       
     
         [0033]    This refined search may produce a red-crowned parrot as a search result. 
         [0034]    In another embodiment, the search selection may not only include the default search parameters and the respective associated ranges of terms, but in addition, an entry that is inputted by the user in the search bar  130 . For example, the user may enter the word “amazon virdigenalis” into the search bar  130  as part of the initial search selection (query). The search result may be an indication (text, graphic, video, multi-media, etc) of the red-crowned parrot. 
         [0035]      FIG. 5  is a schematic diagram of another exemplary architecture of a system  500  displaying a multiple bar display unit  150  embodying the present invention. The multiple bar display unit  150  may have a plurality of parameters  110   a ,  110   b , . . . ,  110   e , each of which may associate with a respective range of terms  112   a ,  112   b ,  112   c ,  112   d , . . . ,  112   e . The user may create a search selection by moving the slide-able bar  160  for each of the search parameters  110   a ,  110   b , . . . ,  110   e  to the desired associated range of terms  112   a ,  112   b ,  112   c ,  112   d , . . . ,  112   e . It is to be understood that the user does not have to choose all of the parameters to create the search selection. The user may also type in a search term in the search bar  130  as part of the search selection. 
         [0036]      FIG. 6  is another embodiment utilizing a graphical tree  600  method of searching. This method can be used to trace down a single term or word and then follow the branch-like structure where the root search term began and make selections on larger and smaller and still smaller and then capillary sized branches until the root search term has resulted in the chosen destination. 
         [0037]    For example, on the coast of Spain a user once ate the most wonderful sardines. In order to locate that specific region and perhaps purchase some of those delicious Spanish anchovies, the user may input the term ‘anchovies’ into the tree branch search mechanism  130 . The search interface returns a tree like set of links that includes branches (parameters) separately entitled: definition  110   a , purchase  110   b , recipes  110   e , population &amp; migration  110   c , custom  110   f , fishing industry  110   d , and favorites  110   g . The graphical branch extends out to a second level, where the user can view and emphasize the second level of each search containing terms. Under the branch definition  110   a , the user may find three definitions  113   a ,  113   b ,  113   c  and scientific classifications of different anchovy species with a further branch underneath entitled ‘Science’  114   a ,  114   b ,  114   c . Each subject element represented on the branches is a clickable (user selectable), linked piece of content. Underneath ‘purchase’  111   b  there are various vendors  116   a ,  116   b  who sell anchovies including the largest distributor of imported anchovies in the world. One of these vendors  116   a ,  116   b  could be the importer that the user is interested in buying the anchovies from. The user can click on the vendors sub-branch elements  116   a ,  116   b  to find out more about the respective vendors, if not the other branches may lead the user to the anchovies. 
         [0038]    In this regard, the custom branch may be of interest because the user remember this little Spanish town where the elders lived to a very old age, supposedly due to their custom of eating the local anchovies every day. The user&#39;s graphical branch-like search experience is intuitive because it takes the user down a logical path versus returning pages of results that attempt to match an irrelevant term in a somewhat arbitrary return of data. This method of branch-like searching creates a logical path to data. This logical path also requires coding in the database to create programmed field relationships between terms and key elements of those terms so that the searched for term can be formatted into a branch type search that will actually yield logical and more specific results as the branch of the tree becomes smaller and smaller until the user is searching the ‘capillary of the leaves of the tree.’ It is to be understood that there may be more or less branches with varying parameters and terms. 
         [0039]      FIG. 7  is a schematic diagram  700  of at least one search summary produced by systems embodying the present invention. The search summary  155   a ,  155   b , . . . ,  155   n  may include the number of match results. The size of the search summary may vary depending on the number of searches a user performed. The search summaries may include results of searches and results of refined searches. 
         [0040]      FIG. 8  illustrates a computer network or similar digital processing environment in which the present invention may be implemented. 
         [0041]    Client computer(s)/devices  50  and server computer(s)  60  provide processing, storage, and input/output devices executing application programs and the like. Client computer(s)/devices  50  can also be linked through communications network  70  to other computing devices, including other client devices/processes  50  and server computer(s)  60 . Communications network  70  can be part of a remote access network, a global network (e.g., the Internet), a worldwide collection of computers, Local Area Network (LAN) or Wide Area Network (WAN), and gateways that currently use respective protocols (TCP/IP, Bluetooth, etc.) to communicate with one another. Other electronic device/computer network architectures are suitable. 
         [0042]      FIG. 9  is a diagram of the internal structure of a computer (e.g., client processor/device  50  or server computers  60 ) in the computer system of  FIG. 8 . Each computer  50 ,  60  contains system bus  79 , where a bus is a set of hardware lines used for data transfer among the components of a computer or processing system. Bus  79  is essentially a shared conduit that connects different elements of a computer system (e.g., processor, disk storage, memory, input/output ports, network ports, etc.) that enables the transfer of information between the elements. Attached to system bus  79  is I/O device interface  82  for connecting various input and output devices (e.g., keyboard, mouse, displays, printers, speakers, etc.) to the computer  50 ,  60 . Network interface  86  allows the computer to connect to various other devices attached to a network (e.g., network  70  of  FIG. 8 ). Memory  90  provides volatile storage for computer software instructions  92  and data  94  used to implement an embodiment of the present invention. Disk storage  95  provides non-volatile storage for computer software instructions  92  and data  94  used to implement an embodiment of the present invention. Central processor unit  84  is also attached to system bus  79  and provides for the execution of computer instructions. 
         [0043]    In one embodiment, the processor routines  92  and data  94  are a computer program product (generally referenced  92 ), including a computer readable medium (e.g., a removable storage medium such as one or more DVD-ROM&#39;s, CD-ROM&#39;s, diskettes, tapes, etc.) that provides at least a portion of the software instructions for the invention system. Computer program product  92  can be installed by any suitable software installation procedure, as is well known in the art. In another embodiment, at least a portion of the software instructions may also be downloaded over a cable, communication and/or wireless connection. In other embodiments, the invention programs are a computer program propagated signal product  107  embodied on a propagated signal on a propagation medium (e.g., a radio wave, an infrared wave, a laser wave, a sound wave, or an electrical wave propagated over a global network such as the Internet, or other network(s)). Such carrier medium or signals provide at least a portion of the software instructions for the present invention routines/program  92 . 
         [0044]    In alternate embodiments, the propagated signal is an analog carrier wave or digital signal carried on the propagated medium. For example, the propagated signal may be a digitized signal propagated over a global network (e.g., the Internet), a telecommunications network, or other network. In one embodiment, the propagated signal is a signal that is transmitted over the propagation medium over a period of time, such as the instructions for a software application sent in packets over a network over a period of milliseconds, seconds, minutes, or longer. In another embodiment, the computer readable medium of computer program product  92  is a propagation medium that the computer system  50  may receive and read, such as by receiving the propagation medium and identifying a propagated signal embodied in the propagation medium, as described above for computer program propagated signal product. 
         [0045]    Generally speaking, the term “carrier medium” or transient carrier encompasses the foregoing transient signals, propagated signals, propagated medium, storage medium and the like. 
         [0046]    Further, the present invention may be implemented in a variety of computer architectures. The computer network of  FIGS. 8 and 9  are for purposes of illustration and not limitation of the present invention. 
         [0047]    While this invention has been particularly shown and described with references to preferred embodiments thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the invention encompassed by the appended claims. 
         [0048]    It should be understood that there may be more or less parameter as indicated above. 
         [0049]    It should be further understood that there may be more or less terms as indicated above. 
         [0050]    It should be further understood that the flow diagrams of  FIGS. 2 and 3  are merely exemplary, and other configurations, arrangements, additional blocks, fewer blocks, and so forth are possible in other embodiments.