throbber
6,119,133
`[11] Patent Number:
`[19]
`Unlted States Patent
`
`Nusbickel et al.
`[45] Date of Patent:
`Sep. 12, 2000
`
`USOO6119133A
`
`[54] EXTENSIBLE METHOD AND APPARATUS
`FOR RETRIEVING FILES HAVING UNIQUE
`RECORD IDENTIFIERS AS FILE NAMES
`DURING PROGRAM EXECUTION
`Inventors: Wendi L. Nusbickel, Delray Beach;
`Jpslglph Celi, Jr., Boynton Beach, both
`o
`a.
`
`[75]
`
`[73] Assignee:
`
`International Business Machines
`Corporation, Armonk, NY.
`
`AP“ 16: 1998
`
`[21] Appl. No.: 09/061,387
`.
`Flled3
`G06F 17/30
`Int Cl 7
`UHS. CL ................................................077205 707/200
`
`F' ld f's'""""h
`707 ’200 205
`1e
`0
`earc
`””””””””””””””””””””
`/
`’ 5 ’
`707/ 08
`
`[22]
`[51]
`[52]
`58
`[
`]
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`g’gg’igg 131333 giggly“ """""""""""""""""7‘132753
`
`........ 707/3
`5,873,076
`2/1999 Barr et a1.
`
`
`.......
`5,937,064
`8/1999 Eick et a1.
`707/101
`8/1999 Balabine et a1.
`........................ 707/100
`5,937,406
`
`400
`
`RECORD ID
`
`REGION
`
`.......................... 709/200
`10/1999 Rogers et a1.
`5,974,441
`Primar Examiner—Thomas G Black
`Assistait Examiner—William Trmh
`Attorney, Agent, or Firm—Fleit, Kain, Gibbons, Gutman &
`Bong1n1 PL; Jon A‘ Gibbons
`[57]
`ABSTRACT
`In an information processing system with a database for
`storing database records wherein each of said database
`records has a unique identifier, a method for naming data
`files comprising the steps of: (a) associating at least one of
`said database records with additional data specified by a data
`file name; and (b) naming at least part of said data file name
`to said unique record identifier for said one of said database
`records of step (a). In an alternate embodiment, an infor-
`mation processing system with a database for storing data-
`base records wherein each of said database records has a
`unique identifier; at least one data file name for specifying
`additional data wherein part of each data file name is
`composed of one of said unique identifiers for one of said
`database records, a method for locating data files comprising
`the steps of: retrieving one of said database records; deter-
`mining said unique identifier for one of said database
`records; and retrieving any additional data using said data
`file name‘
`
`32 Claims, 7 Drawing Sheets
`
`
`
`FLORIDA
`
`SOUTH-WEST
`
`PRINTING INDUSTRIES OF AMERICA
`
`EXHIBIT 1103
`
`O O O
`
`FLOR'DA
`NORTH-WEST
`
`FLORIDA
`NORTH-CENTRAL
`
`FLORIDA
`NORTH-EAST
`
`100.G|F
`
`101 GIF
`'
`
`102-GIF
`
`103.GIF
`
`

`

`US. Patent
`
`Sep. 12,2000
`
`Sheet 1 0f7
`
`6,119,133
`
`109
`101
`\
`
`111
`
`
`
` WEB
`
`
`
`SERVER
`
`
`
`
`
`
`INTERNET
`
`WEB
`BROWSER
`
`
`
`APPLICATION
`
`
`
`105
`
`DATABASE
`SERVER
`
`100
`
`FIG. 1
`
`

`

`US. Patent
`
`Sep. 12,2000
`
`Sheet 2 0f7
`
`6,119,133
`
`A BFEIQN.’ -
`
`Mfifliumflfiu
`
`209
`
`v.
`
`Tm: must sum-[v search Mink:
`
`"5
`“mart
`
`1mm:
`
` 55?.me “$111.51:
`
`mm a (My
`Hum
`flail-51E“ Mum:
`
`REGION SEARCH SCREEN
`
`FIG. 2
`
`

`

`US. Patent
`
`Sep. 12,2000
`
`Sheet 3 0f7
`
`6,119,133
`
`3_00
`
`RECORD ID
`
`REGION
`
`FILE
`
`
`
`
`FLORIDA
`
`FLNW.G|F
`
`NORTH-WEST
`
`
`
`
`FLORIDA
`
`
`
`
`NORTH-CENTRAL
`
`FLNC. GIF
`
`
`
`FLORIDA
`NORTHEAST
`
`FLNE- GIF
`
`FLORIDA
`SOUTH-WEST
`
`FLSW-G'F
`
`
`
`305
`
`
`
`o
`
`O O
`
`301
`
`100.
`
`101- G”:
`
`102 GIF
`
`103. GIF
`
`405
`
`PRIOR ART DATABASE ENTRY
`
`M
`
`RECORD ID
`
`REGION
`
`
`
`
`FLORIDA
`
`FLORIDA
`NORTH-CENTRAL
`
`
`FLORIDA
`NORTH-EAST
`
`
`FLORIDA
`SOUTH-WEST
`
`403
`
`401
`
`FIG. 4
`
`. C 0
`
`

`

`US. Patent
`
`Sep. 12, 2000
`
`Sheet 4 0f 7
`
`6,119,133
`
`50_0
`
`501
`‘\
`
`503
`
`505
`
`507
`
`509
`
`511
`
`513
`
`RECEIVE USER QUERY
`
`TRANSLATE QUERY INTO
`
`DATABASE QUERY
`
`RETREIVE DATA FROM
`
`DATABASE
`
`DETERMINE DATABASE
`
`RECORD ID
`
`RETRIEVE FILENAME
`
`RECORD ID
`
`CORRESPONDING TO
`
`SELECTIVELY FILL-IN
`
`FILENAME IN HTML TEMPLATE
`
`DATABASE INFORMATION AND
`
`SEND HTML PAGE
`
`TO USER
`
`FIG. 5
`
`

`

`US. Patent
`
`Sep. 12,2000
`
`Sheet 5 0f7
`
`6,119,133
`
`m RCADEMY mum WFWAL
`mm 00. HILLSEQRD ems.
`
`9544235399
`
` Listings 1 $19 of 19
`
`5
`*
`-~
`-----
`mmsw 5300;109:502: mspm on;
`05402352300
`
`
`;
`_
`.
`HILLSSCXRO ma
`
`
`41561 W. HILL$BGF§13 awn
`
`naamfim BEACH, FL 33454er§5
`
`.
`.
`
`
`
`
`
`
`
`ashram?“
`
`DEERFIELD‘ BENSH, FL 334420225
`m
`fig, mmmv mam, mam m we;
`2325? STATE mm ?
`
`BQQA RAW, FL 334%5464
`.
`,
`ms _ A3305] $55,325 mam HMPWMA
`
`21:31}? WMWE REL
`
`EQCA MUN, FL 5134339338;
`
`find
`
`
`
`
`
`ARMSTWG $00.81 W:
`{33
`79 s. FEBEHAL Hm
`m DEEfiFiELU gamma; FL 38042-41215
`5
`11:} ‘5
`amen aw mm? mm
`'
`m a. FEDERAL Hm
`DEERFIELD BEACH, FL 334414125
`
`E303
`
`K 65"?
`
`SAMPLE LéiS-TRNEG DEPLAV
`
`FIG. 6
`
`

`

`US. Patent
`
`Sep. 12,2000
`
`Sheet 6 0f7
`
`6,119,133
`
`/
`
`.
`Audlo
`>))
`
`\49’
`
`3
`w
`
`IIIIIIIIIIII
`
`713
`
`Map
`(3
`
`\
`
`705
`
`709
`
`FIG. 7
`
`£09
`
`RECORD ID
`
`FLAG
`
`
`
`
`
`
`801
`
`803
`
`100001 (33)
`
`111111 (63)
`
`101000 (42)
`
`110010 (50)
`
`33.G|F
`
`63.G|F
`
`42.G|F
`
`50 GIF
`
`805
`
`FIG. 8
`
`

`

`US. Patent
`
`Sep. 12, 2000
`
`Sheet 7 0f 7
`
`6,119,133
`
`9_00
`
`901
`\ RECEIVE USER QUERY
`
`903
`
`905
`
`907
`
`909
`
`911
`
`913
`
`TRANSLATE QUERY INTO
`
`DATABASE QUERY
`
`RETREIVE DATA FROM
`
`DATABASE
`
`DETERMINE FILE FLAG
`
`IN DATABASE RECORD
`
`RETRIEVE FILENAME
`
`FILE FLAG
`
`CORRESPONDING TO
`
`SELECTIVELY FILL-IN
`
`FILENAME IN HTML TEMPLATE
`
`DATABASE INFORMATION AND
`
`SEND HTML PAGE
`
`TO USER
`
`FIG. 9
`
`

`

`6,119,133
`
`1
`EXTENSIBLE METHOD AND APPARATUS
`FOR RETRIEVING FILES HAVING UNIQUE
`RECORD IDENTIFIERS AS FILE NAMES
`DURING PROGRAM EXECUTION
`
`CROSS-REFERENCE TO RELATED
`APPLICATIONS
`
`Not applicable.
`BACKGROUND OF THE INVENTION
`
`1. Field of the invention
`
`The present invention relates to the field of computer
`information retrieval. More particularly, the present inven-
`tion relates to a method and apparatus to retrieve computer
`related data files when the required file name is not known
`until program execution time.
`2. Description of the Related Art
`Traditional paper telephone directory listings like the
`White Pages, Yellow Pages and industry specific directory
`listings have been around for decades. Online or Web-based
`directory listings are the online analogues to their familiar,
`traditional paper counterparts. With the advent of the Inter-
`net and the Web (World-Wide-Web), many owners and
`publishers of these directories have begun to offer their
`services online. These online directory services are expand-
`ing beyond providing simply name, address and telephone
`information and have begun to offer E-Mail directory
`listings, Web page address listings, fax directory listings,
`maps of the business location, additional information in a
`multimedia format about
`the business listing and much
`more.
`
`Computer applications such as online directory services
`use database retrieval techniques to present data to users.
`These classes of applications are often referred to as “data
`driven” because the exact display of the data on the com-
`puter screen is not known until runtime. Typically, these
`applications provide information in response to a user
`request by filling-in fixed data fields in a presentation screen
`with data retrieved from a database. In the online directory
`listing example data fields are filled-in with data stored in a
`database. The data includes residential name or business
`
`name, address and telephone number. Optional data fields
`such as zip code may also be included. As the types and
`variety of online directory services increase, the requirement
`to advertise the availability of these online services also
`increases. Many of these new services are data driven. As an
`example, online directory listings may offer images of street
`maps over the Web. The street maps are presented in
`response to a user request or query. The exact query is not
`known until program runtime (refer to www.yahoo.com for
`an online example of mapping street locations). A challenge
`for programmers and software designers is providing the
`correct regional map for each user request. Software design-
`ers typically use relational databases to organize data such as
`images files of regional maps. The use of databases allows
`images of regional maps to be indexed in an organized
`manner in order to be retrieved with a given user query.
`Database records comprising a series of database elements
`designed to hold one or more types of data. One type of
`database record is designated to hold the names of image
`files, such as images of street maps, and names of data files.
`It is common to create a separate database record holding
`these file names. The software designer creates separate
`database record entries to hold these file names to enable
`
`fast, efficient retrieval of these image files in response to user
`search requests.
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`2
`One disadvantage with the use of separate database
`entries for holding the names of data files is the inability to
`extend or expand the number of these database entries
`without updating the corresponding program logic. System
`developers using separate database entries for holding the
`names of data files require either that: a separate database
`entry be associated with every street address; or some type
`of indexing table lookup system must be invoked in order to
`display the correct regional map image. A shortcoming of
`this method is that the database or mapping file and asso-
`ciated algorithm to retrieve the correct file must be updated
`when new regional maps are added. So a need exists to make
`an extensible file retrieval system that can accommodate
`additional entries into a file system without the need to
`update the programming logic every time an addition or
`deletion is made.
`
`A second problem that exists when using separate data-
`base record entries for holding the names of data files, is the
`need to test database references. Software programmers run
`tests to debug every line of programming logic designed for
`mapping a data file to specific data file requests. The
`inclusions of new files into database files requires the
`retesting of this programming logic. Therefore, a need exists
`to provide a method to retrieve files without the need to test
`every reference to a particular file.
`A third problem, when using separate database record
`entries for holding the names of data files is the need to
`determine efficiently data file names where the data may
`include a large combination of distinct elements or seg-
`ments. For example, certain data files in online directory
`listings may include a series of distinct graphical icons
`where each icon represents a particular electronic service.
`Six additional available services in an online business direc-
`
`tory listing may include: a map of the business location; a
`video clip about
`the business, an audio clip about
`the
`business, a homepage for the business listing, E-Mail for the
`business listing and a fax number for the business listing.
`Representative graphical icons may include an icon of an
`envelope for E-Mail service and an icon of a film clip for
`video information. The online directory services displays
`these icons next to a particular business directory listing
`according to the services available. In this business directory
`listing example, as mentioned above, there are six distinct
`possible types of icons that can be displayed through a series
`of icon images. Calculating the possible combination of
`these additional six directory services, there are 27 or 64
`separate combinations of these additional online services.
`Each of these 64 combinations requires a unique data file
`name. Each data file name refers to a particular series of
`icons representing the online services available. As the
`example for six additional services above illustrates, the use
`of icons advertising the availability of services produces the
`need for an exponentially large number of file names needed
`to advertise these service combinations. It is important to
`note that the addition of every new service doubles the
`number of file names needed to represent all these service
`combinations. Stated differently, adding one new service to
`the six services above yields 27 or 128 separate icon image
`combinations that are available. Therefore, an efficient,
`extensible method of runtime retrieval of file names repre-
`senting a large number of possible image combinations is
`needed.
`
`SUMMARY OF THE INVENTION
`
`Briefly, in accordance with the present invention, in an
`information processing system with a database for storing
`database records wherein each of said database records has
`
`

`

`6,119,133
`
`3
`a unique identifier, a method for naming data files compris-
`ing the steps of: (a) associating at least one of said database
`records with additional data specified by a data file name;
`and (b) naming at least part of said data file name to said
`unique record identifier for said one of said database records
`of step (a).
`In an alternate embodiment, an information processing
`system with a database for storing database records wherein
`each of said database records has a unique identifier; at least
`one data file name for specifying additional data wherein
`part of each data file name is composed of one of said unique
`identifiers for one of said database records, a method for
`locating data files comprising the steps of: retrieving one of
`said database records; determining said unique identifier for
`one of said database records; and retrieving any additional
`data using said data file name.
`
`BRIEF DESCRIPTION OF THE DRAWING(S)
`
`FIG. 1 is a functional block diagram of a typical data
`processing system for hosting Web pages.
`FIG. 2 is an illustration of a Web browser screen display-
`ing an example of an online Yellow Pages directory search
`screen.
`
`FIG. 3 is an illustration of a portion of database records
`of prior art file location systems.
`FIG. 4 is an illustration of a portion of database records
`and associated data files according for a file location system
`to the present invention.
`FIG. 5 is an application process flow chart for an appli-
`cation running on the Web server of FIG. 1 according to the
`present invention.
`FIG. 6 is an illustration of a Web browser screen display-
`ing the ensuing search results of FIG. 2 for an alternative
`embodiment of the present invention.
`FIG. 7 is a block diagram of the file flag for referencing
`additional data files according to FIG. 6.
`FIG. 8 is an illustration of a portion of database records
`using the file flag of FIG. 7 and associated data files
`according to the present invention.
`FIG. 9 is an application process flow chart for the alter-
`native embodiment of FIG. 6 for an application running on
`Web server of FIG. 1 including additional file flag of FIG.
`7 according to the present invention.
`
`DESCRIPTION OF A PREFERRED
`EMBODIMENT
`
`FIG. 1 depicts a functional block diagram of a data
`processing system for hosting Web pages 100. AWeb server
`101 running a Web server application 103 and coupled to a
`data base server 105. The Web server 101 can be an IBM
`
`compatible computer capable of running any HTTP (Hyper-
`Text-Transfer-Protocol) compatible server software such as
`Netscape Web server products or equivalent. The Web server
`101 is connected to the Internet 107. An end user data
`
`processing unit 109 with Web browser 111 is connected to
`the Internet 107 or other computer network. The Web
`browser 111 can be any HTTP compatible product such as
`Netscape Navigator, Sun Hot Java Browser, Microsoft Inter-
`net Explorer or equivalent.
`The application 103 is an online directory listing system
`for hosting directory listings on the Web browser 111.
`Publishers of directory listings such as regional telephone
`companies provide the name, address, and telephone direc-
`tory listing information for the database server 105. It is
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`4
`important to point out that the precise operating systems and
`hardware configurations of the database server 105, the Web
`server 101, the end user unit 109 and the Web-browser 111
`are not limited to any specific hardware or software con-
`figuration. These systems can be implemented on a wide
`variety of hardware and software platforms.
`The online directory application 103 provides directory
`listing services running on the Web server 101 for listing
`information stored on database server 105 to be rendered
`over Internet 107 on Web browser 111. An end user has the
`ability to enter desired search criteria into the application
`103. The Web browser 111 through Internet 107, commu-
`nicates with the Web server 101 to query the database server
`105. The results of the query from database server 105 are
`then sent back, through the Web server 101 and over the
`Internet 107, to the end user browser 111.
`FIG. 2 illustrates a typical Yellow Pages directory listing
`service search screen 200 rendered on the Web browser 111.
`The use of HTML compliant codes for presenting database
`queries is well understood. Online Yellow Page directory
`listings, as in their traditional paper counterpart are available
`for specific county, specific city and specific state directory
`regions. Yellow Pages directory listing service search screen
`200 is for regional southeast Florida as denoted by a title bar
`203. A corresponding southeast Florida map 201 is dis-
`played. A user selects a search criteria 205 comprising a
`region, a city, a directory heading or a business name. An
`advertisement 207 and the availability of additional infor-
`mation 209 is also displayed. It is important to understand
`that the layout of the search screen 200 remains consistent
`from regional directory area to regional directory area.
`Stated differently, the information in the title bar 203 and the
`map 201 change to reflect the directory region being used,
`e.g., southwest Florida, northeast Florida, northwest Florida,
`east central Florida and so on. Advertisement 207 and
`
`additional information 209 may also change depending on
`which regional directory a user is searching. Predefined
`screen layouts, sometimes called screen views or graphical
`screen templates are used to present data from a database in
`a particular style, arrangement, selection and format. The
`use of graphical search screen templates with areas such as
`the title bar 207 and the map 201 is well known. Commercial
`products that allow developers to build applications for
`constructing Web pages using templates whose data are
`filled-in from an associated database during runtime are
`available. Products such as the Lotus Domino Server give
`developers tools for defining desired views into a database.
`FIG. 3 is an illustration of a portion of database records
`300 of a prior art file location system. Notice a record ID 301
`of associated database records 300. This record ID 301 is
`
`unique to each database record so that no two database
`records contain the same record ID 301. Each record of
`
`database records 300 comprises a regional title bar entry 303
`and regional map image file 305. This information retrieved
`from the database, fills-in or loads the corresponding fields
`inside an HTML template The graphical search screen
`template in the preferred embodiment is an HTML docu-
`ment
`template. The process of filling information in an
`HTML template is known. Image file 305 is a GIF (Graphics
`Interchange Format) file, but any multimedia file format can
`be used. The image file 305 is used to fill in the map 201 to
`correspond to regional
`locations of the database being
`searched. For the Yellow Pages directory listing service
`search screen 200 of FIG. 2 this is in the southeast map
`image 201 of Florida. Regional title bar entry 303 is used to
`fill-in the text displayed in the title bar 203.
`FIG. 4 is an illustration of a portion of database records
`400 and associated data files for a file location system
`
`

`

`6,119,133
`
`5
`according to the present invention. A record ID 401 and a
`regional title bar entry 403 are identical to the database
`entries 301 and 303 of the prior art database records 300. It
`is important to notice there is no entry for image file 305.
`Instead the file is named by a predetermined format con-
`sisting of a field corresponding to the record ID and a file
`extension .GIF denoting the file type. File name 405 is an
`example image file name used to fill-in map 201 of search
`screen 200. Here the value of 103 derived from the record
`ID 401 is combined with the suffix .GIF to create a name
`
`103.GIF for file name 405. By naming the image file
`according to a unique record ID, there is no need to include
`a database record for image file 305. The elimination of
`database record 305 results in a smaller overall database. A
`
`smaller database requires less computer storage and often
`provides faster performance. It is important to note that other
`types of unique identifiers can be used for this present
`invention besides a database record ID. For this Yellow Page
`directory listing example, ID’s such as unique listing IDs,
`unique business IDs, unique GEO codes (codes specifying
`the precise geographical longitude and latitude position of a
`listing location) can be used.
`Returning to the description of FIG. 4, the unique ID 401
`is determined when application 103 retrieves the database
`entry. The technique of determining the unique record ID
`401 for a database record is well known. The use of the
`record ID 401 with a known suffix is all that is needed in the
`
`application 103 to fetch the appropriate file during program
`execution.
`In addition,
`there is no need to change the
`application 103 if database record entries are later added and
`deleted since the file name is determined at runtime. The use
`
`of suffix GIF is optional. Any suffix, even no file name suffix
`can be used. Moreover, the use of the unique record ID 401
`can be included as a portion of a larger file name naming
`hierarchy. The required programming logic for the applica-
`tion 103 must be matched to any file naming convention
`used to create the correct file name 403 from the unique
`record ID 401. For example, it may be beneficial to start all
`map files with the prefix “MP” and denote all these map files
`are stored in 64 color format “64”. So the resulting name
`would be MP10364.GIF for file name 405. Programming
`logic in application 103 for retrieving images would corre-
`spondingly add an “MP” prefix in front of the unique record
`ID 401 of 103 and add the appropriate file extension GIF to
`retrieve the corresponding image file 405.
`Referring now to FIG. 5 shown is an application process
`flow chart 500 of the application 103 running on the Web
`server 101. The application begins with receiving the user
`request, step 501, from Web browser 111 via Internet 107.
`This request is a database search request for the user selected
`criteria 205 as described above. The request is translated into
`the corresponding database server call, step 503. Popular
`database call formats include SQL as supported by Oracle
`and IBM. The database call retrieves data from database
`
`server, step 505. The process of retrieving data from a
`relational database is well known. Next, the record ID is
`determine for the database record, step 507. The file name
`405 for the image file 201 corresponding to the unique
`record ID 401 is retrieve, step 509. The image file 201 is
`along with other database records 400 are used to fill-in the
`HTML Web page template, step 511. The resulting HTML
`compatible Web page is sent to the user unit 109 for display
`on the Web browser 111 via the Internet 107, step 513.
`It is important to note that once a desired naming con-
`vention that includes unique record ID 401 is chosen for file
`names 405 and the programming logic of the application 103
`is set accordingly, there is no need to change the application
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`103. The application 103 can be completely data driven.
`Moreover, there is no need to test application 103 as new
`database records 400 are added or deleted. There is no need
`to update the program logic of application 103 if the
`database records 400 are reorganized or changed.
`Although this preferred embodiment discloses application
`103 as creating HTML compatible Web pages sent over
`Internet 107 to Web browser 111. Other client-server imple-
`mentations are possible. One implementation of application
`103 is the creation of a JAVA compliant APPLET where the
`APPLET is sent to a client computer and the data presented
`to the user on the end user unit 107. In this implementation
`the Web browser 111 is replaced by a JAVA enabled end user
`unit 107, such as a Java enabled thin client system from IBM
`or Sun Microsystems. In still another implementation, the
`application 103 can be completely host-based and the end
`user unit 107 a “dumb” terminal. Host based computer
`systems are known. An IBM ES/9000 unit connected to IBM
`3278 graphics terminals is an example host-based system
`with the corresponding “dumb” terminals.
`Referring to FIG. 6, an alternate embodiment of the
`present invention is described. FIG. 6 is an illustration of a
`Yellow Pages directory listing for a keyword search of
`“veterinarian” for a business heading 600. The sample
`business listing 601 alphabetically displays the business
`under the “veterinarian” business category. Again this is
`similar to the traditional Yellow Page listings found in the
`bound paper analogues. An example advertisement space
`603 and the availability of related directory services 605 are
`also displayed. Additional directory services 607 are shown
`as icons. These icons are animated GIF files that present an
`image of each service available for this directory listing
`service in a repetitive series. Each directory listing may have
`different available additional directory services. FIG. 7 is a
`block diagram of the file flag for additional directory ser-
`vices 700 according to the present invention. Six icons of
`additional directory services for a directory listing are
`shown. Starting from the left, these icons represent a fax
`service 701, an E-Mail service 703, a map service 705, a
`video clip 707, an audio clip 709, and text information 711.
`Each of these six additional services represents a bit position
`in file flag 713. The availability of each service is denoted by
`a logical true value, or number 1.
`FIG. 8 is an illustration of a portion of database records
`800 using the file flag 713 and associated data files according
`to the present invention. File flag 713 is a record in database
`record 803 with corresponding unique Record ID 801. There
`are six additional service icons for file flag 713. This
`represents 26 or 64 separate combinations of these addi-
`tional service icons. Database record 803 contains a binary
`value of 110010. The decimal equivalent of 50 denoted in
`parenthesis for convenience and does not need to be stored.
`The exact number system representation, e.g., binary,
`decimal, octal, is not important and binary and decimal is
`used in this description interchangeably. Continuing with
`database record 803, the binary value of 110010 denotes the
`following services are available for a corresponding direc-
`tory listing: fax service 701, E-Mail service 703 and audio
`clip 709. Correspondingly, the following services would not
`be available for this directory listing example with a file flag
`713 binary value of 110010: a map service 705, a video clip
`707 and text information 711. All 64 animated GIF files for
`
`these images are typically created automatically through an
`automated tool (not shown). These 64 animated GIF files are
`then made available to application 103 during runtime. The
`creation of all 64 animated image files in advance saves on
`Web server overhead during Web page construction.
`
`

`

`6,119,133
`
`7
`It is important to note that the addition of every new
`service doubles the number of file names needed to represent
`all these service combinations. Stated differently, adding one
`new service to the six services above yields 27 or 128
`separate icon image combinations that are available. The
`programming logic can be extended to manage long file flag
`713 values accordingly.
`FIG. 9 is an application process flow chart 900 of the
`alternative embodiment of FIG. 6 for the application 103
`running on the Web server 101. The initial process steps 901,
`903, and 905 of retrieving a user query, translating the user
`query into a database query and retrieving data from a
`database is identical to the previously described process
`steps 501, 503 and 505 of FIG. 5. Next, the file flag 713 for
`the database record is determined, in step 907. Selecting
`desired database records in a relational database is known.
`
`Once the file flag 713 is determined, a file name 805
`corresponding to the file flag 713 is constructed by appli-
`cation 103 and the associated image file is retrieved, in step
`909. The construction of the file name can use any set of
`rules as previously described in process flow chart 500
`where suffixes, prefixes and other information is added to the
`file flag 713 to create the resulting file name 805. Returning
`to the animated GIF examples, a file prefix of “AN” for
`animated GIF combined with the example file flag binary
`value of 110010 (decimal 50) and a file extension of GIF
`would create AN50.GIF for file name 805. As previously
`described above (steps 411 and 413), the steps 911 and 913
`fill-in the HTML template with data from the database
`records 800 and the animated image file named by the file
`flag 713 and send the resulting HTML compatible Web page
`to the user.
`
`It should be understood that the file data referenced by the
`file name 405, referenced by the file flag 713, and referenced
`by the file name 805 are not limited to any specific data file
`type or any specific file format. Any data type or data format
`(audio, video, text, multimedia) can be retrieved using the
`methods and apparatus described in this present invention.
`Although a specific embodiment of the invention has been
`disclosed, it will be understood by those having skill in the
`art that changes can be made to this specific embodiment
`without departing from the spirit and scope of the invention.
`The scope of the invention is not to be restricted, therefore,
`to the specific embodiment, and it
`is intended that
`the
`appended claims cover any and all such applications,
`modifications, and embodiments within the scope of the
`present invention.
`What is claimed is:
`
`1. In an information processing system with a database for
`storing database records wherein each of said database
`records has a unique record identifier, a method for naming
`data files comprising the steps of
`(a) associating at least one of said database records with
`additional data stored in said data file, specified by a
`data file name; and
`(b) naming at least part of said data file name to said
`unique record identifier for said one of said database
`records of step (a).
`2. The method for naming data files of claim 1, wherein
`said step (a) further comprises:
`(a) associating at least one of said database records with
`additional multimedia data referenced by a data file
`name.
`
`3. In an information processing system with a database for
`storing database records wherein each of said database
`records has a unique record identifier, at least one data file
`
`10
`
`15
`
`20
`
`25
`
`30
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`8
`name for specifying additional data wherein part of each
`data file name is composed of one of said unique record
`identifiers for one of said database records, a method for
`locating data files comprising the steps of
`(a) receiving a query;
`(b) retrieving data from the database, based on the query,
`the data including a unique record identifier; and
`(c) retrieving further data by retrieving at least one file
`whose file name includes the unique record identifier,
`the file containing the further data.
`4. The method for locating data files of claim 3, further
`comprising the step of:
`(f) creating a Web page using HTML compatible codes for
`rendering said at least part of said database records and
`at least part of said additional data.
`5. The method for locating data files of claim 3, further
`comprising the step of:
`(f) creating a Web page for an online directory listing
`using HTML compatible codes for rendering at least
`part of said database records and at least part of said
`additional data.
`
`6. The method for locating data files of claim 3, further
`comprising the step of:
`(f) creating a Web page for an Internet search listing using
`HTML compatible codes for rendering at least part of
`said database records and at least part of said additional
`data.
`
`7. The method for locating data files of claim 3, further
`comprising the step of:
`(f) creating an application for rendering at least part of
`said database records and at least part of said additional
`data, wherein said application executes on a client
`system coupled to said information processing system.
`8. The method for locating data files of claim 3, further
`comprising the step of:
`(f) creating a JAVA compliant application for rendering at
`least part of said database records and at least part of
`said additional data, wherein said application executes
`on a client system coupled to said information process-
`ing system.
`9. In an information processing system with a database for
`storing database records wher

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket