`Rogers et al.
`
`US0057O1451A
`
`‘
`
`[11] Patent Number:
`[45] Date of Patent:
`
`5,701,451
`Dec. 23, 1997
`
`[54]
`
`[75]
`
`METHOD FOR FULFILLING REQUESTS OF
`A WEB BROWSER
`
`Inventors: Richard Michael Rogers. Beacon.
`N.Y.; Konrad Charles Lagarde.
`Milford. Conn.
`
`[73]
`
`Assignee: International Business Machines
`Corporation. Armonk. N.Y.
`
`[211
`[22]
`[51]
`[52]
`
`[53]
`
`[5 6]
`
`Appl. No.: 474,577
`
`Filed:
`
`Jun. 7, 1995
`
`Int. Cl.6
`
`..................................... .. G06F 17/30
`
`US. Cl. ............. .. 395/600; 395/200.03; 395/200.09;
`395/700
`Field of Search ....................... .. 395/200.03. 200.09.
`395/600. 650. 700. 145. 154. 155. 161
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`OTHER PUBLICATIONS
`
`Obraczka et al. “Internet Resource Discovery Services”.
`Computer; Sep. 1993 pp. 8-22.
`Vaughn-Nichols. S.. Tidrow. R et al.. Inside the World Wide
`Web, New Riders Publishing. Indianapolis. IN. 1995.
`Krol. E.. The Whole Internet, O‘Reilly & Associates. Inc..
`Sebastopol. CA. Second Edition 1994.
`“Internet-World Wide Web”. 1996 vol. I. compiled by
`Lynn L. Augsprunger. published 1996. International Busi
`ness Machines Corporating. Annonk. NY. 1996.
`"Internet-World Wide Web”. 1996 vol. 2. compiled by
`Lynn L. Augspurger. published 1996. International Business
`Machines Corporation. Arrnonk. NY. 1996.
`“Internet-World Wide Web". 1996 vol. 3. compiled by
`Lynn L. Augspurger. published 1996. International Business
`Machines Corporation. Armonk. NY. 1996.
`
`(List continued on next page.)
`
`Primary Examiner-Thomas G. Black
`Assistant Examiner—.l0hn C. Loomis
`Attorney, Agent, or Firm—Lynn L. Augspurger
`[57]
`ABSTRACT
`
`6/1981 Hodgkinson et a1. ................ .. 395/676
`4,274,139
`8/1984 Wang ........... ..
`.. 395/600
`4,468,728
`4,604,710 8/1986 Amezcua et al.
`395/500
`
`4,714,989 12/1987 Billings . . . . . . . . . . . . . .
`
`. . . .. 395/700
`
`4,714,995 12/1987 Materna et a].
`4,774,655
`9/1988 Kollin et a1.
`5,093,911
`3/1992 Parks et a1.
`5,179,652
`1/1993 Rozmanith et a1.
`5,181,017
`1/1993 Frey, Jr. et a1.
`5,187,787 2/1993 Skeen et a]. ...... ..
`5,204,947
`4/1993 Bernstein et a1.
`5,224,098
`6/1993 Bird et a1. ..... ..
`5,241,625
`8/1993 Epard et a1.
`5,278,978
`l/l994 Demers et a1. .
`5,297,249 3/1994 Bernstein
`
`395/600
`395/600
`395/600
`395/155
`340/825
`395/600
`395/157
`370/94.l
`395/163
`395/600
`395/156
`
`5,307,456 4/1994 MacKay . . . . . .
`
`. . . . . . . .. 395/154
`
`395000.01
`7/1994 Pagéet a1.
`5,329,519
`395/200
`9/1994 Filepp et a1.
`5,347,632
`.. 395/600
`5,355,472 10/1994 Lewis ........ ..
`.. 395/700
`5,404,534 4/1995 Foss et a1. ..
`5,455,948 10/1995 Poole et a1. ........................... .. 395/650
`
`A World Wide Web browser makes requests to web servers
`on a network which receive and ful?ll requests as an agent
`of the browser client. organizing distributed sub-agents as
`distributed integration solution (DIS) servers on an intranet
`network supporting the web server which also has an access
`agent servers accessible over the Internet. DIS servers
`execute selected capsule objects which perform program
`mable functions upon a received command from a web
`server control program agent for retrieving. from a database
`gateway coupled to a plurality of database resources upon a
`single request made from a Hypertext document. requested
`information from multiple data bases located at different
`types of databases geograhically dispersed. performing
`calculations. formatting. and other services prior to reporting
`to the web browser or to other locations. in a selected format.
`as in a display. fax. printer. and to customer installations or
`to TV video subscribers. with account tracking.
`
`34 Claims, 9 Drawing Sheets
`
`IJiS FARM‘:
`
`Petitioner Microsoft Corporation - Ex. 1015, p.1
`
`
`
`5,701,451
`Page 2
`
`OTHER PUBLICATIONS
`
`“Internet—World Wide Web”. 1996 vol. 4. compiled by
`Lynn L. Augspurger. published 1996. International Business
`Machines Corporation. Armonk. NY. 1996.
`
`“Internet-World Wide Web”. 1996 vol. 5. compiled by
`Lynn L. Augspurger. published 1996. International Business
`Machines Corporation. Armonk. NY. 1996.
`
`"Internet-World Wide Web”. 1996 vol. 6. compiled by
`Lynn L. Augspurger. published 1996. International Business
`Machines Corporation. Armonk. NY. 1996.
`“Developing Applications with OpenDIS Access Service”.
`Metaphor Data Interpretation System Release 2.0. Metaphor
`Inc.. 1st Edition. Sep. 1994.
`“Exploring the Internet with Mosaic" by B. K. Duval and L.
`Main. Library Software Review. v01. 13 No. 4. Winter 1994.
`pp. 269-279.
`
`Petitioner Microsoft Corporation - Ex. 1015, p.2
`
`
`
`U.S. Patent
`
`Dec. 23, 1997
`
`Sheet 1 of 9
`
`5,701,451
`
`BE:o__._H._EmeEEKaimQ8E:mamasma<E86:2,32.zo_Edm~52e2325zodmmaMI»53%
`
`S m
`
`.o_.._
`
`
`
`$EgamEmaz<>_j3m3maxozfiéé
`
`Petitioner Microsoft Corporation - Ex. 1015 , p.3
`
`Petitioner Microsoft Corporation - Ex. 1015, p.3
`
`
`
`U.S. Patent
`
`Q
`
`7
`
`9
`
`5,701,451
`
`
`
`mmflfixmS.mauw.E.§§&e:55.
`
`
`
`
`
`mm,82meme:3W?E.._m_E5358ME.
`
`
`
`mSiam810$j<.32$2.zo:§o%oo:m_EQEEOQQEaiodaoE92:m_moim_E.
`
`
`
`
`
`
`@»§@v£...
`
`mm\\\
`
`
`
`JomofimzozNW5.2£003;
`
`
`
`.m.::m_m_.:m_9+::.><>>:o_IEnsmzo_§éEz_m1»0»%sTzoM2:29:m>_._902:28N52,.
`
`
`
`
`
`
`
`B;was3%;E:zomoiM20:ZOEGDB519:
`
`
`
`
`
`pmSEOo_Ez8Ez_E:2,~59azo3;mmdb?mzo_m»9§atozzsodo...92C9850212:5.:2o02583%:Emmzaam%o%Eoésmmzo_:§Ez_m>_5<E§oz_z_Emogo::_mE5M392:mgm_><:.23:9,moiQ5oz_m$8<E
`
`
`
`
`
`
`DEEDS
`
`aodmzofidm~50»ea:
`
`Petitioner Microsoft Corporation - Ex. 1015 , p.4
`
`Petitioner Microsoft Corporation - Ex. 1015, p.4
`
`
`
`
`
`US. Patent
`
`Dec. 23, 1997
`
`Sheet 3 0f 9
`
`5,701,451
`
`FILE NAME IS P814811. ‘~43
`fCATCH IT ON THE NET!
`44. YOU JUST RAN A DATA INTERPRETATION SYSTEM CAPSULE!
`THE OUTPUT IS THE TEXT TOOL TRANSFERRED AS A TEXT.
`‘COPYRIGHT IBM 1995
`'CUSTOMERS WHO MIGHT WANT TO KNOW ABOUT THE
`DIS WWW GATEWAY---THIS DATA IS FROM THE IBM MARKET PLANNING DATA SYSTEM-
`A DB2 MVS DATABASE
`
`CUSTOMER NAME
`AC NIELSEN CO I
`AC NIELSEN CO
`AC NIELSEN CO
`AC NIELSEN CO
`ADVANTIS
`ALTA BATES MEDI
`ALTA BATES MEDI
`AMERICAN PRESID
`ANHEUSER BUSCH
`ANHEUSER BUSCH
`50<ASHLAND OIL INC
`ASHLAND OIL INC
`BELLSOUTH CELLU
`BELLSOUTH CELLU
`BELLSOUTH COMMU
`BELLSOUTH COMMU
`BELLSOUTH TELEC
`BRIO TECHNOLOGY
`BRISTOL MYERS S
`BRISTOL MYERS S
`BROADWAY DEPT S
`BROOLYN UNION
`CHESEBROUGH PON
`COLGATE-PALMOLI
`COLGATE-PALMOLI
`\COLGATE-PALMOLI
`
`SW DESCRIPTION
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 2.0 OPENDIS ACCESS SERV
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 2.0 OPENDIS ACCESS SERV
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 2.0 OPENDIS ACCESS SERV
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 2.0 OPENDIS ACCESS SERV
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`DIS 1.3.6 DIS ENTERPRISE SE
`FIG.4
`
`INST
`9501
`9501
`9501
`9501
`9501
`9410
`9503
`9501
`9501
`9501
`9502
`9502
`9501
`9501
`9501
`9501
`9501
`9501
`9410
`9502
`9410
`9410
`9501
`9410
`9410
`9410
`
`CITY STATE
`CHERRY HILL NJ
`GREEN BAY WI
`MINNEAPOLIS MN
`WILTON CT
`SCHAUMBURC IL
`BERKELEY CA
`BERKELEY CA
`OAKLAND CA
`ST LOUIS MO
`ST LOUIS MO
`LEXINGTON KY
`LEXINGTON KY
`FT LAUDERDALE FL
`ET LAUDERDALE FL
`ATLANTA GA
`BIRMINGHAM AL
`ATLANTA GA
`MOUNTAIN VIEW CA
`PLAINSBORO NJ
`NEW YORK NY
`LOS ANGELES CA
`BROOKLYN NY
`GREENWICH CT
`IRVINE CA
`MORRISTOWN NJ
`NEW YORK NY
`
`Petitioner Microsoft Corporation - Ex. 1015, p.5
`
`
`
`U.S. Patent
`
`CD
`
`3,
`
`9
`
`9
`
`5,701,451
`
`m$11$.33m.eéz5:
`
`wE2M5zo:I85
`
`
`
`9.»memzamm3%33EE5335ms<msavaQ;:2.zo_5Em~59,ozgszE<9.
`
`23%ME2.:Bmdm
`
`3:
`
`
`
`SSW50:Emaz§3a:mazoamoséa
`
`f.oMSN.3Q:mEm
`
`..25:
`
`10%:Q;32wM335”.ES%.::EEz82m.
`
`82_$_EQEEQQ
`
`>5
`
`3No,302ENNon.
`..._no.5Em
`
`om,N?IE:oo
`
`
`
`
`
`7.%,_E<9B%Emz§585.:E:m_5&8MEgames.555zo:EE§z_E3<zé52:95
`
`Petitioner Microsoft Corporation - Ex. 1015 , p.6
`
`Petitioner Microsoft Corporation - Ex. 1015, p.6
`
`
`
`US. Patent
`
`Dec. 23, 1991
`
`Sheet 5 of 9
`
`5,701,451
`
`WEB CUENT
`(LE WEB
`EXPLORER)
`I
`
`(HTML REFERENCE
`TO C PROGRAM)
`
`WEB V72
`SERVER
`
`(DYNAMIC HTML T0 PRESENT coNTIRgLF’RocR/w
`DIS REPORT FILE)
`PROGRAM /73
`AGENT
`
`(REQUEST T0 EXECUTE
`ms CAPSULE)
`
`ODAS / 74
`
`I
`
`75
`
`DIS LAN
`
`DB2
`
`RED
`BRICK
`
`SYBASE
`
`ORACLE
`
`Petitioner Microsoft Corporation - Ex. 1015, p.7
`
`
`
`US. Patent
`
`Dec. 23, 1997
`
`Sheet 6 0f 9
`
`5,701,451
`
`HTML
`
`‘1
`.LL __1_1
`PATH QUERY
`INFO STRING
`
`I
`M
`STDRE
`VARIABLES
`
`I m
`DIS CAPSULE
`NAMES
`I
`_U_4
`INITIATE
`ODAS AP‘
`
`Y
`1_1_5
`DIS LOGON
`
`V
`1L5
`RETRIEVE
`PATH_INFO
`
`V
`l7
`CREATE
`DATA ARRAY
`
`LE3
`EILENAME
`
`l
`Jig
`SET
`CAPSULE
`VARIABLES
`
`0
`U
`E
`g
`
`S
`i
`g
`
`IG.8
`
`121
`SUBMIT
`DIS
`
`123
`
`I
`122
`DIS EEcDTE
`
`REA%AFILE
`—
`CREATE
`HTML
`
`IFAX I PRINTERIRETAILIBANKINBI
`IBM DIGITAL
`SERVER
`['1
`
`CABLE
`Box
`
`o
`
`AUX
`OPERATION
`I_2_8
`
`_°__;I
`BI~DIRECT1ONAL
`INEoRMATIoN
`
`II
`T
`é
`E
`
`"‘|
`
`~2
`SYSTEM ADMINISTRATOR
`VIDEO SERVER
`
`_12_6
`wEB BROWSER
`10
`
`Petitioner Microsoft Corporation - Ex. 1015, p.8
`
`
`
`US. Patent
`
`Dec. 23, 1991
`
`Sheet 7 of 9
`
`5,701,451
`
`I
`
`l
`
`I
`
`I F
`
`l
`
`I
`
`]
`
`910
`(T /
`
`n‘é‘i?ggn
`@» r91b
`v——-->
`QUERY
`NuLTT—
`ORACLE
`JOIN
`
`94
`[92 [95 f
`
`CALCULATE
`DATA
`
`DATA
`FORMAT
`
`[:1 [:1
`
`‘g
`
`95
`f
`593'
`MAKE
`TEXT
`
`@’
`QUERY
`SYBASE
`\9";
`
`6
`QUERY /-9Tn
`DATA
`W-HOUSE
`
`DIS
`TNTERNETWCRKTNC
`ENVIRONMENT 90
`
`l
`
`i II] |
`
`l
`
`l
`
`l
`
`l
`
`]
`
`|
`
`l
`
`@T
`
`__ _
`
`_
`
`[:l [:1
`
`i
`
`Q
`[El
`
`1
`
`Petitioner Microsoft Corporation - Ex. 1015, p.9
`
`
`
`US. Patent
`
`Dec. 23, 1997
`
`Sheet 8 0f 9
`
`5,701,451
`
`1
`
`1
`
`1
`
`1 L
`
`1
`
`1
`
`1
`
`E] 1:]
`E
`
`a’
`QUERY
`0826000
`
`MAKE
`PLOT
`
`$1
`MAKE
`8MP
`
`F 0w ——>
`L
`
`9'5
`iNTERNETWORKING
`ENVIRONMENT
`E
`
`E: E1 1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`1
`
`51L
`
`£10.10
`
`E] U
`
`i
`
`1
`
`1§1
`1121
`
`Petitioner Microsoft Corporation - Ex. 1015, p.10
`
`
`
`U.S. Patent
`
`Dec. 23, 1997
`
`Sheet 9 of 9
`
`5,701,451
`
`E2,
`
`E_m2S2m
`
`
`
`92mmmfixm\\o?_n_<
`
`282022\$2,
`
`Q2
`
`..............-\\\8.22Q2
`
`82,B2
`
`
`
`Em2S2mE_m2S2m
`
`\\\\mm2oE2<2
`
`
`
`:1III:
`
`
`
` B2.___"E282__.E2822
`
`92E>Em
`2289:mi,,oi%SE28,4---H.._2<E2_b:
`
`
`
`222822._2<28E
`SE28‘SE28
`
`2822mm
`
`82%V8882
`IJII
`HoéoIon28882
`
`2o_§22E2_22.
`
`mm<EmN8
`
`N8mS$S
`
`:28E228
`
`22298,,2<2.E$
`
`82,
`
`:2
`
`Petitioner Microsoft Corporation - Ex. 1015, p.11
`
`Petitioner Microsoft Corporation - Ex. 1015, p.11
`
`
`
`
`1
`METHOD FOR FULFILLING REQUESTS OF
`A WEB BROWSER
`
`5.701.451
`
`COPYRIGHT AUTHORIZATION
`
`A portion of the disclosure of this patent document
`contains material which is subject to copyright protection.
`The owner. International Business Machines Corporation.
`has no objection to the facsimile reproduction by any one of
`the patent disclosure. as it appears in the Patent and Trade
`mark O?ice patent ?les or records of any country. but
`otherwise reserves all rights whatsoever.
`
`10
`
`FIELD OF THE INVENTION
`
`This invention is related to computers and computer
`systems and particularly to a method and system for use of
`the World Wide Web and other sources of information and
`for utilization of existing equipment advantageously for web
`server data access over networks and the Internet.
`
`RELATED APPLICATIONS
`This application entitled “A Method for Ful?lling
`Requests of a Web Browser” is related to other United States
`of America Patent applications ?led concurrently herewith.
`and speci?cally to the applications entitled “Computer Net
`work for W Server Data Access over Internet". U.S. Ser.
`No. 08/474571. ?led Jun. 7. 1995; and “A Service Agent for
`Ful?lling requests of a Web Browser”. U.S. Ser. No. 08/474.
`576. ?led Jun. 7. 1995; and “A Sub-Agent Service Agent for
`Ful?lling Requests of a Web Browser". U.S. Ser. No.
`08/474575. ?led Jun. 7. 1995; and “A Web Browser
`System”. U.S. Ser. No. 08/479481. ?led Jun. 7. 1995; and
`“A Method for Distributed Task Ful?llment of Web Browser
`Requests”. U.S. Ser. No. 08/474.572. ?led Jun. 7. 1995.
`These applications have a common assignee. International
`Business Machines Corporation. Armonk. NY.
`
`20
`
`25
`
`GLOSSARY OF TERMS
`While dictionary meanings are also implied by certain
`terms used here. the following glossary of some terms may
`be useful.
`World Wide Web (WWW)
`The Internet’s application that lets people seeking infor
`mation on the Internet switch from server to server and
`database to database by clinking on highlighted words or
`phrases of interest. An Internet WWW server supports
`clients and provides information.
`Home page
`A multi-media table of contents that guides a web user to
`stored information about an organization on the Internet.
`Gopher
`A menu-based search scheme. which as developed at the
`University of Minnesota. lets a user reach a destination on
`the Internet by selecting items from a series of text menus.
`Access Agent
`A logical component that provides support for different
`access protocols and data streams—Frame Relay. HDLC
`(High Data Link Control) CBO (Continuous bit Operations.
`ATM (Asynchronous Transfer Mode). or TCP/IP.
`Application Processing Agent
`A data processing agent running in a server data process
`ing system which performs tasks based on received requests
`from a client in a distributed environment. In our preferred
`embodiment. our application processing agent for database
`retrieval is our DIS server. a data interpretation system
`
`2
`server and database gateway which is coupled to our web
`server HTI'PD via a network. In our preferred embodiment
`an application processing agent employs executable object
`programs as command ?le objects. which in the preferred
`embodiment are capsule objects.
`Client
`A client is a computer serviced by the server which
`provides commands to the server.
`Data Interpretation System (DIS).
`lBM’s object oriented decision support tool.
`Capsule
`A DIS capsule is a program created by a DIS programmer
`and executed in the DIS environment. A DIS capsule is a
`preferred example of a capsule object. A capsule object is a
`specialized form of a command ?le (which is a list of
`commands to be executed. as in an EXEC or *.BAT batch
`?le. The capsule object is created with an object
`environment. as is supplied by IBM’s DIS. Other object
`environments are lBM’s SOM and DSOM. and Microsoft’s
`COM environment.
`Internet
`The connection system that links computers worldwide in
`a web.
`Server
`Amachine which supports one or more clients and is part
`of the web. Any computer that performs a task at the
`command of another computer is a server.
`Slip or PPP connection.
`Serial-line Internet protocol and point-to-point protocol.
`respectively. for providing a full access connection for a
`computer to the Internet.
`
`Transmission control protocol/Internet protocol. A packet
`switching scheme the Internet uses to chop. route. and
`reconstruct the data it handles. from e-mail to video.
`InterNetwork Routing (INR)
`The link between systems which routes data from one
`physical unit to another according to the applicable protocol.
`The protocol will employ a URL address for Internet loca
`tions.
`URL
`Universal resource locarer. a Web document version of an
`e-mail address. URLs are very cumbersome if they belong
`to documents buried deep Within others. They can be
`accessed with a Hypelink.
`Web browser
`An program running on a computer that acts as an Internet
`tour guide. complete with pictorial desktops. directories and
`search tools used when a user “surfs” the Internet. In this
`application the Web browser is a client service which
`communicates with the World Wide Web.
`
`40
`
`45
`
`50
`
`An IBM OS/2 Web Server or other server having Hyper
`text Markup Language and Common Gateway Interface. In
`our preferred embodiment. the HTTPD incorporates our
`control program agent and is supported by an access agent
`which provides the hardware connections to machines on the
`intranet and access to the Internet. such as TCP/IP couplings.
`H'ITP Hypertext transfer protocol
`Hypertext transfer protocol. At the beginning of a URL
`“http:" indicates the ?le contains hypedinks.
`Hyperlink
`A network address embedded in a word. phrase, icon or
`picture that is activated when you select the highlighted
`tidbit. Information about that item is currently retrieved to
`the client supporting a Web browser.
`
`Petitioner Microsoft Corporation - Ex. 1015, p.12
`
`
`
`5 ,701.451
`
`4
`ment. This function shipping concept in a distributed envi
`ronment was ?rst illustrated by CICS as a result of the
`invention described in US. Pat. No. 4.274.139 to Hodgkin
`son et al. This kind of function. illustrated by CICS and its
`improvements. has been widely used in what is now known
`as transaction processing. However. servers today. while
`performing many functions. do not permit the functions
`which we have developed to be performed as we will
`describe.
`Now. “sur?ng" the Internet with the W is still a time
`consuming aifair. and the information received is not gen
`erally useful in the form presented. Even with 14.400 baud
`connection to the Internet much line time is tied up in just
`keeping going an access to the Internet. and the users don't
`generally know where to go. Furthermore the coupling of
`resources available on a company‘s intranet and those
`available on the Internet has not been resolved. There is a
`need to reduce gateways. make better use of existing
`equipment. and allow greater and more eifective usage of
`information which is resident in many different databases on
`many different servers. not only within a homogeneous
`network but also via the Internet and heterogeneous network
`systems.
`The problems with creating access to the world via the
`Internet and still to allow internal access to databases has
`been enormous. However. the need for a system which can
`be used across machines and operating systems and di?ering
`gateways is strongly felt by users of the Internet today.
`Anyone who has spent hours at a WWW browser doing
`simple task knows how di?icult it still is to navigate thor
`ough arcane rules without knowing where to go and even if
`you know what you are doing spending hours doing routine
`tasks. Many needs exist. As one important instance. until
`now we know of no way to access data on multiple databases
`of di?‘erent types using a single user request from a client.
`This and other di?iculties are solved by our invention.
`
`25
`
`30
`
`3
`Hyper'l‘ext Markup Language (HTML)
`HTML is the langlage used by Web servers to create and
`connect documents that are viewed by Web clients. HTML
`uses Hypertext documents. Other uses of Hypertext docu
`ments are described in U.S. Pat. No. 5.204.947. granted Apr.
`20. 1993 to Bernstein et al.; U.S. Pat. No. 5.297.249. granted
`Mar. 22. 1994 to Bernstein et al.; US. Pat. No. 5.355.472.
`granted Oct. 11. 1994 to Lewis; all of which are assigned to
`International Business Machines Corporation. and which are
`referenced herein.
`BACKGROUND OF THE INVENTION
`The Internet is not a single network. it has no owner or
`controller. but is an unruly network of networks. a confed
`eration of many di?erent nets. public and private. big and
`small. that have agreed to connect to one another. An intranet
`is a network which is restricted and while it may follow the
`Internet protocol. none or only part of the network available
`from outside a “?rewall” surrounding the intranet is part of
`the agreed connection to the Internet. The composite net
`work represented by these networks relies on no single
`transmission medium. bi-directional communication can
`occur via satellite links. ?ber-optic trunk lines. phone lines.
`cable TV wires and local radio links. When your client
`computer logs onto the Internet at a university. a corporate
`o?ice or from home. everything looks local. but the access
`to the network does cost time and line charges. Until
`recently. “cruising or sur?ng" the Internet was a
`disorienting. even infuriating experience. something like
`trying to navigate without charts. The World Wide Web. a
`sub-network of the Internet. introduced about two years ago.
`made it easier by letting people jump from one server to
`another simply by selecting a highlighted word. picture or
`icon (a program object representation) about which they
`want more information—a maneuver known as a “hyper
`link”. In order to explore the WWW today. the user loads a
`special navigation program. called a “Web browser” onto his
`computer. While there are several versions of Web browsers.
`IBM’s example is the new WebExplorer which offers users
`of IBM’s 08/2 Warp system software a consistent. easy to
`use desktop of pictorial icons and pull down menus. As part
`of a group of integrated applications available from IBM for
`08/2 Warp called the IBM Internet Connection. lets users
`log onto the Internet.
`To this point the World Wide Web (Web) provided by
`Internet has been used in industry predominately as a means
`of communication. advertisement. and placement of orders.
`As background for our invention there now exists a number
`of Internet browsers. Common examples are Netscape.
`Mosaic and IBM’s Web Explorer. Browsers allow a user of
`a client to access servers located throughout the world for
`information which is stored therein and provided to the
`client by the server by sending ?les or data packs to the
`requesting client from the serveds resources. An example of
`such a request might be something called GSQL (get SQL)
`which was a NCSA language and CGI server program
`developed to getting textual results for a client caller.
`Developed by Jason Ng at the University of lllinois. this
`document provided a way to map SQL forms against a
`database. and return the textual results to the client caller.
`This system is unlike the present invention. and presents
`di?iculties which are overcome by our described system.
`These servers act as a kind of Application Processing
`Agent. or (as they may be referred to) an “intelligent agent”.
`by receiving a function request from a client in response to
`which the server which performs tasks. the function. based
`on received requests from a client in a distributed environ
`
`SUIVIMARY OF THE INVENTION
`
`In accordance with our invention needless user interven
`tion is eliminate or greatly reduced with a Web server
`supports an HTI'PD which is provided with the capabilities
`of our control program agent which organizes sub-agents
`supporting command ?le objects or capsules to perform
`tasks in support of a Web browser’s request for service as
`programmable functions receiving parameters as input and
`providing as their output handled by the control program
`agent task completed results for reporting in accordance
`with the Web browser request in the form and to the location
`determined by a request and handling these request without
`needless user intervention.
`In accordance with our invention. we have created a way
`to allow Web users to request information that is created by
`a data interpretation system (DIS) and then presented by a
`web server to the user of the web. Our solution provides a
`way of requesting and processing and presenting informa
`tion on the Web. In the process. data is retrieved from
`multiple sources which may be located remotely and
`accessed via an intranet routing and via the Web Internet and
`processed by our decision support capsules. Now companies
`and universities. and other users that want to access data
`located on diiferent databases. want that data processed and
`formatted. and presented in a form the user desires. such as
`a graphical format. Our solution permits users to access
`information from various sources and obtain information at
`a desired location as a result of a single request which is
`responded to by an organization of facilities and command
`
`50
`
`55
`
`65
`
`Petitioner Microsoft Corporation - Ex. 1015, p.13
`
`
`
`5,701,451
`
`20
`
`30
`
`5
`?le sub-agent decision support capsule objects by our com
`mand program agent. Users of the information can be
`internal to a company. or external. The result can be fur
`nished to a user at a location which is internal or external to
`the company. and as speci?ed at a speci?ed location with a
`form and format desired. This allows a report to be managed
`by the web support services we provide. and in a form
`consistent with the request. but Without requiring a consis
`tent interface solution.
`In order to create a way for Web users to request infor
`mation generation we provide a web server with a control
`program agent which is linked to a decision support tool of
`a data interpretation system server. the application process
`ing agent. and then have that server retrieve. process. and
`format information which is presented to the user on the Web
`by the Web server. In our preferred embodiment. we have
`provided a link between a Hypertext Markup Language
`(HTML) document using a common gateway interface. and
`open data interpretation system server (ODAS). As a result.
`Web clients can request DIS reports to be generated. specify
`the parameters to be used in generating the reports. and then
`view the report results on a Web home page. The DIS
`capsule can generate graphical information. such as colored
`pie charts. line graphs. bar graphs. and other forms of
`generated information. Since the Web server is capably of
`presenting the results in desired formats. the full capabilities
`of a DIS report are utilized.
`Our invention provides a method and system for allowing
`a user of a client to access and assemble information
`structured and reported to the user in accordance with his
`desires. selecting information for disparate servers which are
`located within a network can be an intranet or internal
`network. such as a LAN or WAN not normally accessible to
`the Internet. or coupled to the Internet. In accordance with
`35
`our invention one can access data on multiple databases of
`different types using a single user request from a client. We
`also allow the facility for providing specialized speci?c
`requests to be created for routine use. as well as the facility
`to formulate generalized or specialized ad hoc requests. In
`addition. we provide besides query and update capability,
`the ability to perform calculations with respect to any
`retrieved data. to format the information in text or in
`graphics. and the facility of presenting the results to the
`client for display or other use.
`The improvements which we have made achieve a means
`for accepting Web client requests for information. obtaining
`data from one or more databases which may be located on
`multiple platforms at different physical locations on an
`Internet or on the Internet. processing that data into mean
`ingful information. and presenting that information to the
`Web client in a text or graphics display at a location speci?ed
`by the request.
`Our invention of providing a web server with a control
`program agent allows organization of decision support func
`tions to be executed by application processing agent servers
`located throughout the Internet to gather and supply infor
`mation not presently available with any existing resources
`without the need of endless intervention on the part of a
`requesting user of the WWW; further enabling an ordinary
`user to take advantage of expertise which is provided by
`programmable sub-agents developed by those with particu
`lar expertise in a given area as well as enabling use of
`standard routines commonly needed.
`These improvements are accomplished by providing for
`Web clients to request information from an application
`processing agent in which the application processing agent
`
`45
`
`6
`server performs tasks based on received requests from a
`client in a distributed environment by a web server sup
`ported by an access agent link and control program agent
`which in turn causes a decision support function to be
`executed by the application processing agent server. This is
`performed within the distributed environment by the appli
`cation processing agent server which forms part of a net
`work coupled to and under control of the control program
`agent. According to our invention the decision support
`function is provided by a data interpretation system which
`functions as part of the application processing agent and the
`decision support function is programmable and generated by
`a data interpretation system. DIS or other decision support
`element performing similar functions. and provided in a
`form accessible to our control program agent which presents
`the output generated to be presented to the user on the Web
`who made the initial request. We have provided. in a
`preferred embodiment. a link between IBM’s Hypertext
`Markup Language (HTML). the Common Gateway Inter
`face (CGI). and the Open DIS Access Server (ODAS). all of
`which may be used on machines which are are commercially
`available from IBM. In order to write additional functions
`which develop our invention. the reader is referred to the
`Medaphor Data Interpretation System publication “Devel
`oping Applications with OpenDIS Access Service. Version
`2.0. available from IBM. First Edition (September 1994)
`Part Number 315-0002-01 which is incorporated herein by
`reference.
`Our improvements relating to our control program agent
`is in accordance with our preferred embodiment is normally
`installed on an IBM HITPD which is an IBM 08/2 Web
`Server or other server having Hypedext Markup Language
`and Common Gateway Interface. In our preferred
`embodiment. the H'I'I‘PD incorporates our control program
`agent and is supported by an access agent which provides the
`hardware connections to machines on the intranet and access
`to the Internet. such as TCP/IP couplings. The hardware for
`the Web server is thus a workstation. such as IBM’s PS/2
`model 80 with 08/2. However. the HTTPD can be installed
`in PCs and upwardly also in machines which range across
`IBM's line of computers from powerful personal computers
`to mainframe systems which support MVS. IBM‘s operating
`system which enables multiple ldnds of operating systems.
`including “UNIX” to co-exist on a single platform. As a
`result of our invention Web clients can request DIS reports
`to be generated by the application processing agent speci
`fying the parameters to be used in generating the reports. and
`then as a result of the request receive a result which is
`presented. as a visual display or otherwise. on a Web page
`for use by the requesting user. Our machine implementation
`allows a user having DIS access to generate graphical
`information such as colored pie charts. line graphs. bar
`graphs. etc. Since Web browsers such as IBM’s Web
`Explorer are capable of displaying these formats. all the
`functions which can be created by a DIS capsule can be
`utilized by a user of our invention.
`According to our improved method, an Internet World
`Wide Web user connects to a Web server through the use of
`a Web browser. In accordance with our preferred
`embodiment. we use HTML as the language used by Web
`servers to create and connect documents that are viewed by
`Web clients. HTML is an example of a hypertext language
`having the facility of clicking on a highlighted word. string
`of words. or image in order to move to another HTML
`document or invoke a program on the server. An example of
`a Web client would be a machine used by a person using
`IBM’s Web Explorer product. In using our invention a user
`
`50
`
`65
`
`Petitioner Microsoft Corporation - Ex. 1015, p.14
`
`
`
`5.701.451
`
`10
`
`35
`
`45
`
`7
`may click on the hypertext in a document to reference a
`function which will be provided by an application process
`ing agent server. The user is able to connect to another
`document that may be on another Web server. HTML
`commands are used to reference other documents. HTML is
`used to reference programs available on a server. and pass
`parameters to those programs. The application processing
`agent server executes a program when it is referred to by a
`Web client via a control program agent resident. preferably.
`in a Web server.
`The Web client selects the information that they wish to
`view by using the HTML created page. the Web server takes
`the client request and passes it to a C program implemen
`tation of our control program agent. Web servers. such as
`HTI'PD for 05/2. with our control program agent are able
`to provide access to executable programs through the use of
`the Common Gateway Interface (CGI). When a program is
`referenced by the HTML. any parameters are passed to the
`program and it is executed. In our preferred embodiment