throbber
12 United States Patent
`Popp et at
`
`10 Patent No
`45 Date of Patent
`
`Us 6249291 B1
`Jun 19 2001
`
`Iii 11111111111111
`
`111111111111111
`US006249291B1
`
`54 METHOD AND APPARATUS FOR
`MANAGING INTERNET
`TRANSACTIONS
`
`75 Inventors Nicolas Popp Menlo Park Bruce Ong
`Charles DHarcourt
`both of San
`Francisco all of CA US
`
`73 Assignee NeXT Software Inc Redwood City
`CA US
`
`Notice
`
`continued pros
`issued on
`This patent
`filed under 37 CFR
`ecution
`application
`1.53d and is subject
`to the twenty year
`term provisions of 35 U.S.C
`patent
`154a2
`
`Subject
`
`the term of this
`to any disclaimer
`is extended or adjusted under 35
`patent
`U.S.C 154b by
`
`days
`
`21 Appl No 08/532491
`22
`Sep 22 1995
`51
`52
`58
`
`Filed
`
`Int Cl.7
`U.S Cl
`
`Field of Search
`
`GO6T 9/00
`345/473
`395/761 326332
`707/2 345/473
`
`Documents Posted on World Wide Web The WadsWorth
`last modified Aug 10 1995
`Concept
`Documents Posted on World Wide Web Building Client/
`Server/Web Applictaions How Fast Can Your Business
`Respond retrieved May
`1997
`Documents Posted on World Wide Web The ObjectOri
`Environment For Creating Dynamic
`ented Development
`Web Applications Visual Wave 2.0 retrieved May
`1997
`Aronson HTML3 Manual of Style pp 4445 112123
`1995
`
`Introduction
`To Visual Basic by Application Developers
`Training Co pp 188189 1994
`Aronson HTML
`Manual of Style pp 111123 1995
`
`cited by examiner
`
`Primary ExaminerAlmis
`Jankus
`74 Attorney Agent or FirmThe Hecker Law Group
`57
`ABSTRACT
`
`An object-oriented
`the ability to develop
`approach provides
`can be
`transactions Local applications
`and manage Internet
`using any workstation connected to the Internet
`accessed
`regardless of the workstations configuration Some or all of
`Web page can
`be generated dynamically using
`input
`page generated
`runtime or
`received
`in
`returned
`data source e.g database or
`from an external
`retrieved
`electronic mail system When the Web page definition is
`rendered the information contained in templates declara
`tion files and objects are used to generate standard
`definitions State information is maintained
`across transac
`tions Using state information virtual applications sessions
`transactions and pages can be implemented Self-contained
`modules or components provide the ability to share imple
`mentations and create multi-content
`documents Event
`objects can be used to assist
`
`in event handling management
`
`at
`
`25 Claims 22 Drawing Sheets
`
`PUSH
`
`1106
`
`VACATION REQUEST
`Name
`Joseph Smith
`Vacation 1/23/95
`2/15/95
`
`Approved
`
`56
`
`References Cited
`
`U.S PATENT DOCUMENTS
`
`5297249
`5600831
`5623656
`
`3/1994
`
`2/1997
`
`Bernstein et
`
`Levy et
`
`4/1997
`
`Lyons
`
`395/329
`
`707/2
`
`395/610
`
`OTHER PUBLICATIONS
`
`Pricing ModelWebRex-
`Electronic Mail Message
`TRUTH wanted Sep 10 1995 Ted Shelton Information
`Technology Solutions Inc
`
`Prepare
`Response
`
`1104
`
`pull
`
`Database
`
`1108oi push
`
`1100\
`Handle
`
`Request
`
`1108
`
`push
`
`__
`
`push
`
`HI
`
`PULL
`
`1106
`
`.7
`
`VACATION REQUEST
`Name
`Joseph Smith
`Vacation 1/23/95
`2/15/95
`Approved
`
`Petitioner IBM – Ex. 1013, p. 1
`
`

`
`Figure
`
`Petitioner IBM – Ex. 1013, p. 2
`
`

`
`Figure
`
`224
`
`214
`
`210
`
`206
`
`202
`
`ServerDomain
`
`CorporateNetwork
`
`208
`
`200
`
`Petitioner IBM – Ex. 1013, p. 3
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet
`
`of 22
`
`US 6249291 B1
`
`Lf
`H1I
`
`Ii
`
`C-
`
`cr
`
`Petitioner IBM – Ex. 1013, p. 4
`
`

`
`Figure3
`
`B
`
`Package
`
`Package
`
`Colors
`
`Image
`
`336
`
`Dealers
`
`Package
`
`Package
`
`Colors
`
`Image
`
`335
`
`Dealers
`
`Price
`Type
`
`Model
`
`Price
`Type
`
`Model
`
`334
`
`Image
`
`Dayca
`
`Sortb
`
`y
`
`Type
`
`Price
`
`Models
`
`332
`
`Welcome
`
`Petitioner IBM – Ex. 1013, p. 5
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet
`
`of 22
`
`US 6249291 B1
`
`402
`
`404
`
`410
`
`416
`
`418
`
`412
`
`414
`
`Figure
`
`Petitioner IBM – Ex. 1013, p. 6
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet
`
`of 22
`
`US 6249291 B1
`
`508
`
`502
`
`504
`
`506
`
`508
`
`510
`
`Figure 5A
`
`Petitioner IBM – Ex. 1013, p. 7
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet
`
`of 22
`
`US 6249291 B1
`
`522
`
`No
`
`create session
`
`526
`
`528
`
`530
`
`532
`
`534
`
`Figure 5B
`
`Petitioner IBM – Ex. 1013, p. 8
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet
`
`of 22
`
`US 6249291 B1
`
`No
`
`550
`
`Figure 5C
`
`Petitioner IBM – Ex. 1013, p. 9
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet
`
`of 22
`
`US 6249291 B1
`
`552
`
`554
`
`create root object
`for object graph
`
`send
`
`prepareResporise
`message to page
`object
`
`Ii
`
`send
`genera teDescrip tion
`message to page object
`
`556
`
`return response
`to server
`
`558
`
`560
`
`Figure 5D
`
`Petitioner IBM – Ex. 1013, p. 10
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 10 of 22
`
`US 6249291 B1
`
`562
`
`No
`
`566
`
`568
`
`572
`
`retrieve session
`using session ID
`
`retrieve session
`key from sessioJ
`
`encrypt request
`information
`
`Sr
`
`check portion of
`encrypted string with
`digital signature
`
`574
`
`Yes
`
`580
`
`Figure 5E
`
`578
`
`Petitioner IBM – Ex. 1013, p. 11
`
`

`
`606
`
`608
`
`6A
`
`Figure
`
`NSTAGNAME-FORM
`
`HTML
`
`Template
`
`valueemployeename
`
`thanksUseremployee
`
`FORMEMPLOYEENSWTexI
`FORMNSWFormaction
`
`Association
`
`pteio3ol
`
`602
`
`SUBMiTVALUESUBMIT
`
`NSTAG
`
`/NSTAC
`
`/HTML
`
`INPUTTYPE
`NAMENSTAGNAMEEMPLOYEE
`
`Petitioner IBM – Ex. 1013, p. 12
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 12 of 22
`
`US 6249291 B1
`
`10
`
`10
`
`nS
`
`Petitioner IBM – Ex. 1013, p. 13
`
`

`
`Figure6
`
`C
`
`654
`
`652
`
`650
`
`646
`
`624
`
`642
`
`688
`
`690
`
`686
`
`692
`
`CalendarComponent
`
`CAL
`
`IDEMPEmployeeComponent
`
`696
`
`682
`
`Associations
`
`680
`
`Petitioner IBM – Ex. 1013, p. 14
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 14 of 22
`
`US 6249291 B1
`
`702
`
`704
`
`706
`
`708
`
`Figure 7A
`
`Petitioner IBM – Ex. 1013, p. 15
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 15 of 22
`
`US 6249291 B1
`
`702
`
`704
`
`706
`
`708
`
`740
`
`718
`
`742
`
`746
`
`750
`
`744
`
`748
`
`Figure 7B
`
`Petitioner IBM – Ex. 1013, p. 16
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 16 of 22
`
`US 6249291 B1
`
`702
`
`706
`
`716
`
`718
`
`726
`
`Figure 7C
`
`Repetition
`Controller
`
`730
`
`734
`
`Petitioner IBM – Ex. 1013, p. 17
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 17 of 22
`
`US 6249291 B1
`
`send create message to
`documents root object
`
`identify children
`of root object
`
`802
`
`804
`
`806
`
`808
`
`810No
`
`Figure
`
`Petitioner IBM – Ex. 1013, p. 18
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 18 of 22
`
`US 6249291 B1
`
`900
`
`902
`
`904
`
`912
`
`906
`
`914
`
`916
`
`922
`
`928
`
`o1
`
`910
`
`918
`
`924
`
`oI
`
`Joi
`926oI
`
`Figure 9A
`
`Petitioner IBM – Ex. 1013, p. 19
`
`

`
`U.S Patent
`
`Jun 19 2001
`
`Sheet 19 of 22
`
`US 6249291 B1
`
`952
`
`954
`
`Response
`
`Page
`
`Figure 9B
`
`956
`
`958
`
`960
`
`962
`
`Petitioner IBM – Ex. 1013, p. 20
`
`

`
`Figure1
`
`0
`
`1030
`
`1028
`
`1026
`
`1010
`
`1008
`
`1006
`
`___
`
`__
`
`__
`
`___
`
`1024
`
`1022
`
`xt
`
`cEoiier
`
`Session
`
`Application
`
`1012
`
`1004
`
`1002
`
`xt
`
`o1ler
`
`Petitioner IBM – Ex. 1013, p. 21
`
`

`
`2/15/95
`
`1/23/95
`JosephSmith
`
`Approved1/10195
`Vacation
`Name
`
`hA
`
`Figure
`
`PULL
`
`1106
`
`1106
`
`VACATIONREQUEST
`
`1104
`
`2/15/95
`
`1/23/95
`
`JosephSmith
`
`Approved
`Vacation
`Name
`
`PUSH
`
`VACATIONREQUEST
`
`1104
`
`Request
`Hand\
`
`1102
`
`Response
`Prepar
`
`1100
`
`Petitioner IBM – Ex. 1013, p. 22
`
`

`
`2/15/95
`
`JosephSmith
`
`Approved
`Vacation1/23/95
`Name
`
`VACATIONREQUEST
`
`1106
`
`2/15/9
`
`5
`
`JosephSmith
`
`Approved
`Vacation1/23/95
`Name
`
`VACATIONREQUEST
`
`1106
`
`11B
`
`Figure
`
`PULL
`
`1110
`
`PUSH
`
`1110
`
`push
`
`push
`
`t.
`
`1108
`
`1104
`
`Request
`
`Handle
`
`1100N
`
`push
`
`pull
`
`1108
`
`1104
`
`Response
`Prepare
`
`Petitioner IBM – Ex. 1013, p. 23
`
`

`
`US 6249291 B1
`
`METHOD AND APPARATUS FOR
`MANAGING INTERNET
`TRANSACTIONS
`
`BACKGROUND OF THE INVENTION
`
`Field of the Invention
`
`This invention relates to the development
`ment of transactions
`on the Internet
`
`and manage
`
`Background
`
`is
`
`interconnected
`
`worldwide matrix of
`The Internet
`computers An Internet
`on the
`computer
`client accesses
`network via an Internet provider An Internet provider is an
`client e.g an individual or
`organization that provides
`other organization with access
`to the Internet via analog
`telephone line or Integrated Services Digital Network line
`for example
`client can for example download
`file
`from or send
`to another
`an electronic mail message
`using the Internet
`
`computer/client
`
`location of
`
`activated
`
`10 at
`
`If
`
`to
`
`is
`
`the data
`
`executing
`
`at
`
`20
`
`25
`
`30
`
`40
`
`50
`
`is
`
`graphical
`
`plifies access
`communicate
`cated command
`
`user
`
`to learn
`
`compli
`
`typically provides
`
`are
`
`client
`
`tocol
`
`client must search for
`file on the Internet
`To retrieve
`the file make
`connection to the computer on which the file
`is stored and download
`the file Each of these steps may
`and
`to multiple dis
`involve
`access
`separate application
`similar computer systems The World Wide Web WWW
`simpler more uniform means for
`was developed to provide
`accessing information on the Internet
`The components of the WWW include browser software
`network links and servers The browser software
`or
`i.e front-end that sim
`browser
`interface
`browser allows
`to the Internet
`client to
`request without having
`browser
`syntax
`interface GUI
`for displaying information
`graphical
`input Examples of browsers currently avail
`and receiving
`able include Mosaic Netscape
`and Cello
`Information servers maintain the
`information on the
`WWW and
`capable of processing
`request
`Hypertext Transport Protocol HTTP is the standard pro
`for communication with an information server on the
`WWW HITP has communication methods
`that allow cli
`ents to request data from server and send information to the
`server
`request the client contacts the HTTP server
`To submit
`to the HTTP server The request
`and transmits the request
`contains the communication method requested e.g GET an
`from the server or POST data to an object on the
`object
`server The HTTP server responds to the client by sending
`status of the request and the requested information The
`connection
`between the client
`and
`is then terminated
`the
`HTTP server
`client and an HTTP
`therefore
`server
`initiation
`request
`and
`termination
`
`connection
`
`between
`
`has four stages
`
`several
`
`response transmittal
`transmittal
`connection
`can only process
`single transaction or interac
`tion between the client and the HTTP server
`The HTTP server does not
`retain any information about
`has been terminated HTTP
`the request after the connection
`client can make
`stateless protocol That
`is therefore
`is
`requests of an HTTP server but each
`individual
`request The
`is treated independent
`of any other
`request
`server has no recollection of any previous
`request
`An addressing scheme is employed to identify Internet
`resources e.g HTTP server file or program This address
`ing scheme is called Uniform Resource Locator URL
`URL contains the protocol to use when accessing the server
`e.g HTTP the Internet domain name of the site on which
`the server is running the port number of the server and the
`location of the resource in the file
`structure of the server
`
`The WWW uses
`concept known as hypertext Hypertext
`document
`the ability to create links within
`provides
`move directly to other
`information To activate the link it
`only necessary to click on the hypertext link e.g word or
`phrase The hypertext link can be to information stored on
`infor
`different site than the one that supplied the current
`URL is associated with the link to identify the
`mation
`information When the link is
`the additional
`the clients browser uses the link to access
`the site specified in the URL
`file the HTTP server
`is for
`locates
`the client request
`to the client An HTTP server also has
`the file and sends it
`the ability to delegate work to gateway programs The
`Common Gateway Interface CGI specification
`defines the
`by which HTTP servers
`15 mechanisms
`communicate with
`gateway program is referenced using
`gateway programs
`URL The HTTP server activates the program specified in
`the URL and uses CGI mechanisms
`to pass program data
`to the gateway program Data is passed
`sent by the client
`from the server
`to the gateway program via command-line
`arguments standard input or environment variables The
`gateway program processes the data and returns its response
`to the server using CGI via standard input for example
`forwards the data to the client using the HTTP
`The server
`browser displays information to
`client/user
`as pages
`or documents
`language is used to define the format for
`page to be displayed in the WWW The language is called
`WWW page is
`Language HTML
`Hypertext Markup
`client as an HTML document The browser
`transmitted to
`and produces
`the client parses the document
`page based on the information in the HTML
`
`structural
`
`that
`
`that
`
`is
`
`characters
`
`displays
`document
`HTML is
`is comprised
`language
`of
`HTML elements
`other An
`are nested within each
`HTML document
`file in which certain strings of
`text
`the document
`and
`called tags mark regions of
`to them These regions
`are called
`assign special meaning
`HTML elements Each element
`name or tag An
`has
`element
`can have
`attributes
`that specify properties of
`the
`element Blocks or components
`include unordered list
`text
`boxes check boxes radio buttons for example Each block
`has properties such as name type and value The following
`provides an example of the structure of an HTML document
`HTML
`HEAD
`elements valid in the document head
`/HEAD
`BODY
`elements valid in the document body
`/BODY
`/HTML
`Each HTML element
`and The name of the HTML element
`
`is delimited by the pair of characters
`is contained
`
`The combination of the
`55 within the delimiting characters
`name and delimiting characters is referred to as
`tag Each
`element
`is identified by its tag In most cases each element
`start and ending tag The ending tag is identified by the
`that
`follows the first
`inclusion of an another character
`
`has
`
`60 delimiting character
`HTML is
`language With the exception of
`hierarchical
`the HTML element all other elements are contained within
`another element The HTML element
`encompasses
`identifies the enclosed text as an HTML
`entire document
`65 document The HEAD element
`HTML element
`and includes
`information about
`document The BODY element
`
`the
`
`is contained within the
`
`the HTML
`
`is contained within the
`
`It
`
`Petitioner IBM – Ex. 1013, p. 24
`
`

`
`US 6249291 B1
`
`are described
`
`independent
`used to
`is constructs
`remain local
`
`to the
`
`of
`
`HTML The BODY element contains all of the text and other
`information to be displayed Other elements
`by any HTML reference manual
`Web-based
`access has been used for simple information
`publishing that consisted of static data and no logic For
`client request might request another page The
`example
`HTTP server fetches
`pre-defined Web page using the URL
`in the request The Web page is returned to the
`contained
`client Web-based
`to dynamic infor
`access
`has progressed
`mation publishing that allows some simple queries and some
`database and display database
`access
`limited logic to
`information Web applications
`have been used in commerce
`via the Web e.g personal
`to order articles of manufacture
`stereo cassette deck Commerce applications
`provide some
`limited logic and allow Web page to change based on the
`client
`input
`Web-based
`are developed
`applications
`other Web-based applications That
`implement one Web-based application
`application They are not shared
`common
`gateway interface program is writ
`Currently
`single transaction Minimal state informa
`ten to process
`tion is retained within the HTML document
`It would be
`to use object-oriented HTML elements to manage
`and to maintain state infor
`series of Internet
`mation across Internet
`transactions It would be beneficial
`be able to generate HTML documents dynamically using
`information from previous transaction corporate data and
`data retained in HTML element objects It would be ben
`to be able to share application
`development
`
`form
`form i.e the
`the context processes
`the
`received
`received from the client
`that includes the client request and
`processes any return form i.e form sent
`in
`to the client
`response to the client request
`the Web page is dynamically
`All or some portion of
`are associated with elements
`generated Classes of object
`that defined Web page e.g HTML elements By objec
`tifying Web pages it
`is possible to gain the advantages of
`programming with Web pages These advan
`object-oriented
`development
`through object
`tages include rapid application
`and
`
`Object
`instantiated
`
`using the
`
`respective
`
`reuse transparent distribution simplified maintenance
`can
`be achieved
`scalability These advantages
`common interface
`provided by Web browsers
`instances associated with definitional elements are
`during execution
`to manage their
`the Web page Control objects
`are associated
`portions of
`with definitional elements to facilitate
`the flow of informa
`tion to and from external data sources
`Definitional elements can be grouped together
`group
`these definitional
`object class provides the ability to access
`elements as
`
`group
`repetition control allows
`times Each activation of
`
`type of control referred to as
`special
`group to be activated multiple
`group of definitional elements
`repeating portion of the Web
`
`generates one occurrence of
`page
`Self-contained modules or components can be accessed
`to provide additional definition for the Web page
`control
`is associated with one of these modules to manage its
`object
`the Web page definition
`The
`integration into the rest of
`self-contained modules can be shared by one or more Web
`and/or across multiple appli
`pages in
`single application
`server 316 or any other
`on application
`cations executing
`
`server
`page definition has some combination of the following
`templates associations and custom
`associated resources
`template contains an initial definition for some or all
`logic
`of the page At runtime some or all of the initial definition
`can be dynamically altered Associations provide declaration
`custom
`and binding information Custom logic provides
`
`functionality
`
`10
`
`20
`
`25
`
`30
`
`40
`
`reusable or sharable construct of the present
`can represent an
`is referred to as
`component
`component
`component has none
`entire page or some portion of
`page
`resource can be for example
`or more resources
`owns
`template association or custom logic
`component
`its associated resources
`One or more components
`can be combined
`to define
`can be defined using different defini
`page
`component
`tional constructs e.g HTML VRML PDF etc. By com
`single Web page
`document
`bining these components
`as
`can be derived from multiple definitional constructs
`for components An
`control class provides object cover
`the ability to associate Web object
`abstract class provides
`55 e.g an HTML element object with
`corporate object
`tree Sub
`generate static elements and modify an object
`classes of the control class inherit behavior
`from the abstract
`push and pull
`class Instances of these subclasses provide
`mode associative behavior
`In push mode data retrieved
`from an external data source or another source is used to
`Web page
`In pull mode data
`dynamically
`generate
`contained in the Web page can be stored into the context or
`corporate object
`that are themselves
`control object can have subcontrols
`can be pre-defined or generated
`control objects Subcontrols
`runtime The associative
`behavior
`of
`subcontrol
`
`invention
`
`is
`
`60
`
`65
`
`at
`
`attributed
`
`to the parent
`
`control object
`
`control object
`
`beneficial
`
`transactions
`
`eficial
`
`to
`
`across
`
`applications
`
`SUMMARY OF THE INVENTION
`
`information contained
`
`inven
`approach used by the present
`The object-oriented
`the ability to develop and manage Internet
`tion provides
`transactions An HTML document
`can be generated dynami
`cally Some or all of
`form can be generated based on input
`received in receive form generated at runtime or retrieved
`data source e.g database or electronic
`from an external
`mail system When the HTML document
`is rendered the
`in HTML templates declaration
`files and objects are used to generate standard HTML
`is maintained by
`client
`Information regarding
`request
`the client request The infor
`that
`the application
`processes
`mation is maintained
`state or context Different
`levels
`in
`invention
`of state information are maintained by the present
`The state level defines the duration and scope of the state
`information Storage policies define the method of storage
`used for state information By maintaining
`context having
`is possible to form virtual session with each user
`levels it
`such that an application
`can serve
`accessing an application
`in any order
`any request
`user can connect
`local
`Using the present
`invention
`Internet provider and use the Web to connect
`home page
`Once the connection
`is established the present
`invention is
`on the server side of the connection
`used with an application
`to dynamically generate Web pages The Web pages contain
`information and provide the ability for the user
`application
`on the users work
`browser executing
`input
`to specify
`station receives Web page from the Internet
`and sends
`user input via the Internet The present
`response containing
`invention can be used to generate Web pages in response to
`the user input Thus
`user can access an application located
`anywhere relative to the application
`server by using any
`local workstation hardware
`and software platform
`When
`is received by the application the
`client request
`application manages the update and retrieval of data from
`
`to
`
`to
`
`Petitioner IBM – Ex. 1013, p. 25
`
`

`
`US 6249291 B1
`
`activates
`
`subcontrols push and pull modes by forwarding
`received
`the activation message that
`request These
`Event objects are used to handle
`information and behavior
`event objects contain request
`to
`verify and process an client request Custom logic can be
`invoked during event handling The application manages the
`process and event objects
`
`it
`
`client
`
`118 may contain for example 32 address lines for address
`ing video memory 114 or main memory 115 The system bus
`32-bit DATA bus for
`118
`also includes for example
`transferring DATA between
`and
`among the components
`such as CPU 113 main memory 115 video memory 114 and
`mass storage 112 Alternatively multiplex DATA/address
`lines may be used instead of separate DATA and address
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG provides
`an example of
`to be used with the present
`puter
`FIG
`
`general purpose com
`invention
`
`illustrates
`
`block-level diagram that
`provides
`invention
`components of the present
`FIG 3A provides
`
`block-level diagram for accession
`
`on the World Wide Web WWW
`
`corporate
`application
`invention
`using the present
`FIG 3B provides
`an example of Web pages generated by
`an Automobile Shoppers application accessed
`via
`the
`WWW using the present
`invention
`FIG provides
`diagram of the object
`FIGS 5A5E provides
`request
`handling
`FIG 6Aprovides an example of resources associated with
`control
`FIGS 6B6C provide
`with component processing
`FIG 7A provides
`the object
`the HTML in Table Four is parsed
`tree of FIG 7A
`FIG 7B provides
`an example of the object
`and an associated repetition controller and repetition tem
`
`tree
`
`an example of
`
`process flow for
`
`client
`
`block-level diagram associated
`
`tree that
`
`is generated when
`
`plate
`tree of FIG 7B
`FIG 7C provides
`an example of the object
`that has been modified using
`repetition controller and
`template
`FIG illustrates
`rendering process flow
`FIGS 9A9B illustrate
`event handling object diagrams
`FIG 10 illustrates context objects
`FIGS 11A11B illustrate
`invention
`
`the push and pull modes of the
`
`present
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`
`method and apparatus
`and managing
`for developing
`is described
`following
`Internet
`transactions
`In the
`description numerous specific details are set forth in order
`
`more thorough
`the present
`description of
`to provide
`invention It will be apparent however to one skilled in the
`invention may be practiced without
`these
`art that
`the present
`specific details In other instances well-known features have
`not been described
`to obscure
`
`in detail
`
`so as not
`
`the
`
`invention
`
`general
`
`input
`
`input
`
`invention can be implemented on
`The present
`purpose computer such as illustrated in FIG
`keyboard
`110 and mouse 111 are coupled to
`bi-directional system
`bus 118 The keyboard and mouse are for introducing user
`to the computer system and communicating that user
`to CPU 113 The computer
`system of FIG
`also
`video memory 114 main memory 115 and mass
`includes
`storage 112 all coupled
`system bus 118
`to bidirectional
`and CPU 113 The
`110 mouse 111
`along with keyboard
`mass storage 112 may include
`both fixed and removable
`media such as magnetic optical or magnetic optical storage
`systems or any other available mass storage technology Bus
`
`15
`
`20
`
`25
`
`30
`
`40
`
`lines
`In the preferred embodiment of this invention the CPU
`10 113 is
`32-bit microprocessor manufactured
`by Motorola
`such as the 680X0 processor or microprocessor manufac
`tured by Intel such as the 80X86 or Pentium processor
`However any other suitable microprocessor or microcom
`puter may be utilized Main memory 115 is comprised of
`dynamic random access memory DRAM Video memory
`dual-ported video random access memory One port
`114 is
`of the video memory 114 is coupled to video amplifier 116
`The video amplifier 116 is used to drive the cathode ray tube
`CRT raster monitor 117 Video amplifier 116 is well known
`in the art and may be implemented by any suitable means
`This circuitry converts pixel DATA stored in video memory
`for use by monitor 117
`114
`suitable
`signal
`type of monitor suitable
`for displaying
`
`to
`
`raster
`
`Monitor 117 is
`
`graphic
`
`images
`
`The computer system described above is for purposes of
`example only The present
`invention may be implemented in
`any type of computer system or programming or processing
`environment When
`computer
`system
`general purpose
`such as the one described executes the processes and process
`and
`means for developing
`flows described herein it
`
`is
`
`managing Internet
`
`transactions
`
`an
`
`The present
`the ability to access
`invention provides
`client can
`using any interface For example
`application
`the same application
`system
`access
`via the Internet using
`running Windows MAC/OS Sun.OS NextStep etc Refer
`ring to FIG client 202 is resident on
`corporate network
`local area network com
`200 Corporate
`network 200 is
`such as client 202 for
`computers
`prised of personal
`example Client 202 executes
`browser such as Netscape or
`
`Mosaic to interface with World Wide Web WWW 204 The
`browser executing on client 202 displays HTML documents
`transmitted to client 202 via WWW 204 When the client
`typically an HTML page it
`transmitted via WWW 204 to HTTP server 206 An attribute
`
`browser submits
`
`request
`
`is
`
`of
`
`the submitted form is
`
`Universal Resource
`
`Locator
`
`initiate
`
`to
`
`URL The URL specifies procedures to be executed and/or
`data input by the user
`HTTP server 206 can service the client request by for
`return form or file specified by URL
`5Q example retrieving
`in the HTML document
`and transmitting it
`contained
`client 202 via WWW 204 Further HTTP server 206 can
`program identified in the URL In the preferred
`the URL specifies CGlMessenger 210 to ser
`embodiment
`vice the client request CGlMessenger 210 uses the Com
`Interface CGI protocol
`mon Gateway
`for example
`CGlMessenger 210 can execute on the HITP server 206 or
`another server connected to HTTP server 206 for example
`an example of URL
`The following provides
`
`60
`
`65
`
`http //www.next.com/cgLbin/cgimessenger/appname/rcvform/
`form
`
`send
`
`illustration only Any URL
`The above example
`is for
`invention The URL in
`format can be used with the present
`the above example has multiple parts The first part http
`specifies the protocol to be used Other examples of protocol
`include ftp gopher and wais The next part specifies
`
`Petitioner IBM – Ex. 1013, p. 26
`
`

`
`US 6249291 B1
`
`the Internet domain name of
`the server In this case the
`Internet domain name of the HTTP server
`is www.next
`.com The next part /cgLbin/cgLmessenger
`specifies
`the path and filename of the desired resource The resource
`file form or program for example In this case the
`can be
`common
`interface program that
`gateway
`resource is
`used to route requests to applications The application
`that
`is specified in the URL with the
`processes the client request
`appname specification The names of the receiving
`form
`e.g the form containing
`request and the sending
`the client
`form e.g
`reply to the client request can be included
`in
`the URL
`client request can result in the invocation
`of application
`server domain 208 for example The client
`214 in the
`is received by the HTTP server 206 HTTP server
`request
`206 initiates CGlMessenger 210 To
`the client
`service
`with HTTP
`request CGlMessenger 210 communicates
`server 206 to obtain information regarding the client request
`For example CGlMessenger 210 obtains any information
`request such as form and/or
`that accompanied
`the user
`input The form names can
`names and/or user
`application
`the name of the form that was submitted to initiate
`return form
`the client request as well as
`name identifies the application
`The application
`
`is
`
`that ser
`
`include
`
`If
`
`vices
`the
`client
`request
`an application
`is specified
`CGlMessenger 210 transmits the client
`request and corre
`sponding information transmitted from HTTP Server 206 to
`application 214 Application 214 can execute on the same or
`different server as CGlMessenger 210 and/or HTTP Server
`206 for example Application 214 executes an interaction
`flow to satisfy the user request Application 214 can access
`an external data source such as database 224 Database 224
`214
`can
`be resident
`on the
`same server
`
`as application
`database 224 can be resident on
`
`separate
`
`separate database server
`invention can
`
`Alternatively
`server e.g
`The present
`service multiple levels
`with the client browser
`interaction
`simple hypertext
`request e.g
`form specified
`for another
`in the
`request
`is serviced by HTTP Server 206 by returning the
`request
`form
`can be for
`simple hypertext
`request
`static HTML page e.g page that
`example
`for
`request
`contains static information that is defined prior to execution
`that does not have any associated logic
`The present
`the ability to satisfy more
`invention provides
`requests For example the present
`invention
`can be used to access Web page e.g an HTML Web page
`is dynamically generated using complex queries or
`to retrieve data and
`data retrieval mechanisms
`dynamically generate an HTML page using complex logic
`invention can
`For more sophisticated
`requests the present
`execute logic such as CGlMessenger 210 and application
`214 for example to process
`client request The application
`class hierarchy that can be
`preferably includes
`an object
`language such as objec
`implemented in any object-oriented
`SmallTallc or JAVA Objects e.g Web page defini
`tive
`and control objects dynamically generate
`tional objects
`Web page and manage client interaction via the Internet and
`www
`
`of
`
`specified
`
`sophisticated
`
`that
`
`other
`
`Internal Application
`
`powerful
`virtually anywhere
`
`hardware/software
`
`the WWW is its accessibility
`feature of
`in the world using virtually any
`platform Using
`invention
`the present
`this feature of the WWW can be used to allow an application
`to be accessed
`such as
`corporate or local application
`to the Web
`any workstation that provides
`using
`access
`invention can be used
`regardless of its location The present
`to be accessed any
`to allow an internal corporate application
`
`platform that
`
`that
`
`place in the world via any hardware/software
`is capable of accessing the Internet
`The present
`tools to implement an
`invention provides
`via the WV/W Further the
`that can be accessed
`application
`tools to manage the interaction
`invention provides
`present
`WWW client and the internal application FIG
`between
`3A provides
`block overview of an internal application
`is accessed
`via the Internet
`Clients 302 304 306 and 308 access WWW 310 using
`workstation For example client 302
`10 any WWW-capable
`can be an Intel-based workstation running Windows
`and
`browser such as NetScape Navigator Client 304 can be
`and Mosaic WWW
`running MacOS
`68K workstation
`browser Client 306 can be an RISC machine running UNIX
`is and
`proprietary browser Client 308 is an Intel-based
`workstation running DOS and the DosLynx browser
`Requests submitted by clients 302 304 306 and 308 to
`HTTP server 314 are transmitted to HTTP server 314 via
`WWW 310 HITP server 314 runs in the corporate network
`20 312
`is forwarded to application
`server 316
`client request
`via HTTP server 314 Application server 316 runs one or
`more internal applications
`invention accommodates
`The present
`the needs of an
`internal application For example using the present
`can provide
`dynamic user
`tion an internal application
`interface that can respond to user input Further an internal
`is able to access an external data source to store
`application
`the applications data State information can be retained to
`
`25
`
`inven
`
`to
`
`can be efficient
`
`the
`
`server 316
`
`to
`
`type
`
`group
`group of
`repeat
`
`are self-contained
`
`tion returned to
`
`45
`
`55
`
`60
`
`to allow the application
`allow the internal application
`30 maintain open sessions with multiple users capable of pro
`in any order
`cessing multiple transactions
`Development
`of an internal application
`flexible An internal application
`can
`and
`be written using
`have
`complex logic and complex queries Developers
`pre-existing modules into the internal
`35 ability to incorporate
`application Modules
`to facilitate module
`maintenance
`and interaction
`An internal application
`running on application
`the ability to respond to the client
`has
`request using the
`invention The Web page defini
`40 capabilities of the present
`client can be generated from pre-defined
`all or some portion of
`template or templates Alternatively
`the definition can be dynamically generated by the applica
`tion The contents of the Web page can contain data retrieved
`from an

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