throbber

`
`
`
`
`
`
`
`
`
`
`US 20040049574A1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`(19) United States
`
`
`
`
`
`
`
`
`
`(12) Patent Application Publication (10) Pub. No.: US 2004/0049574 A1
`
`
`
`
`
`(43) Pub. Date: Mar. 11, 2004
`
`Watson et al.
`
`
`
`
`
`
`
`(54)
`
`(76)
`
`
`
`
`
`(21)
`
`(22)
`
`(86)
`
`(30)
`
`
`
`
`
`
`
`
`
`WEB SERVER
`
`
`
`
`Publication Classification
`
`
`
`
`Inventors: Mark Alexander Watson, Farnham
`
`
`
`
`
`(GB); Jonathan Rhys Tyack Lewis,
`
`
`
`
`Winchester Hampshire (GB)
`
`
`
`
`
`
`(51)
`Int. Cl.7 ................................................... G06F 15/173
`
`
`
`
`
`(52) Use]. ......................... 709/224; 715/523; 715/526;
`
`
`
`
`
`
`709/246
`
`
`
`
`
`Correspondence Address:
`
`
`BLAKELY SOKOLOFF TAYLOR & ZAFMAN
`
`
`
`
`12400 WILSHIRE BOULEVARD, SEVENTH
`
`
`
`FLOOR
`
`LOS ANGELES, CA 90025 (US)
`
`
`
`
`
`
`
`
`
`
`Appl: No.:
`
`
`
`
`10/381,802
`
`
`
`PCT Filed:
`
`
`
`
`Sep. 24, 2001
`
`
`
`PCT No.:
`
`
`
`
`PCT/GB01/04235
`
`
`
`Foreign Application Priority Data
`
`
`
`
`
`
`Sep. 26, 2000
`
`
`
`
`
`(GB) ......................................... 00235705
`
`
`
`
`
`(57)
`
`ABSTRACT
`
`
`
`A web server (1) responds to a request message from a
`
`
`
`
`
`
`
`
`
`
`
`remote user device (2) by dynamically generating web page
`
`
`
`
`
`
`
`
`
`code capable of being interpreted by the user device. A
`
`
`
`
`
`
`
`
`
`
`device type identifier (45) is extracted from the request
`
`
`
`
`
`
`
`
`
`
`message and is input to a code generating engine (25) which
`
`
`
`
`
`
`
`
`
`
`
`interprets stored instructions for generating the web page
`
`
`
`
`
`
`
`
`code with reference to selected device dependent informa-
`
`
`
`
`
`
`
`tion corresponding to the device type identifier. The web
`
`
`
`
`
`
`
`
`page information is stored as a content document comprising
`
`
`
`
`
`
`
`a set of instructions written in a script language. The web
`
`
`
`
`
`
`
`
`
`
`server generates web pages in an appropriate form for each
`
`
`
`
`
`
`
`
`
`user device without the need to convert web pages from one
`
`
`
`
`
`
`
`
`
`
`form to another.
`
`
`
`
`
`
`
`
`
`
`
`
`SERWCE
`CENTRE
`
`
`
`
`
`
`5 G
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 1 of 48
`
`OOGLE EXHIBIT 101 1
`
`Page 1 of 48
`
`GOOGLE EXHIBIT 1011
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 1 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`SERVICE
`CENTRE
`
`
`
`
`5
`
`
`Fig 1
`
`
`
`
`
`WEB SERVER
`
`1
`
`
`
`
`WEB SERVER GUI
`
`
`4
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 2 of 48
`
`Page 2 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 2 0f 27
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 2A
`
`
`
`WEB SERVER
`
`
`
`
`
`
`
`
`DATABASE
`
`
`1 9
`
`
`
`
`
`CONTENT CODE
`
`
`
`
`23
`
`
`22
`
`20
`
`
`
`CODE
`
`
`
`
`
`
`
`GENERATING
`DEVICE
`
`
`
`ENGINE
`DEPENDENT
`
`
`
`
`
`
`INFORMATION
`21
`
`25
`
`
`
`DEVICE
`
`
`
`OPERATIONAL
`
`IDENTIFICATION
`
`
`DATA
`
`
`
`ENGINE
`
`24
`
`
`
`
`29
`
`
`
`PROGRAM
`
`
`USER
`
`
`
`CODE
`
`IDENTIFIER
`
`
`
`
`26
`
`
`
`1 8
`
`
`
`
`INTERFACE
`27
`
`
`
`
`
`
`
`
`
`USER
`
`
`DEVICE
`
`
`2
`
`
`
`
`
`Page 3 of 48
`
`Page 3 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 3 0f 27
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 28
`
`
`
`WEB SERVER
`
`
`
`
`
`
`
`
`301
`
`
` WEB
`
`
`APPLICATION
`
`
`PROCESSOR
`
`
`302
`
`
`
`DOCU MENT
`DATABASE
`303
`
`
`
`
`
`
`
`POLICY TABLES
`
`
`40
`
`
`
`DEVICE
`
`
`
`CONTENT DATA
`
`
`
`
`
`STRUCTU RE 305
`
`
`
`
`
`
`
`IDENTIFICATION
`CODE
`
`
`
`
`ENGINE
`GENERATING
`
`
`ENGINE
`29
`
`
`
`21
`
`
`
`
`
`
`
`
`FRONT END PROCESSOR
`
`
`
`
`300
`
`
`
`
`USER
`
`DEVICE
`
`
`
`
`
`Page 4 of 48
`
`Page 4 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 4 0f 27
`
`
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 3
`
`
`
`
`POLICY TABLES
`
`
`
`40
`
`\
`
`
`DEVICE POLICY
`
`TABLE
`
`
`30
`
`
`
`
`
`PROTOCOL POLICY '
`
`TABLE
`
`31
`
`
`
`STYLE POLICY TABLE
`
`
`32
`
`
`
`
`
`
`THEMES POLICY
`
`TABLE
`
`
`33
`
`
`
`
`LAYOUTS POLICY
`
`TABLE
`
`
`35
`
`
`
`
`DYNAMIC POLICY
`
`TABLE
`
`
`36
`
`
`
`
`COMPONENT POLICY
`
`TABLE
`37
`
`
`
`
`Page 5 of 48
`
`Page 5 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 5 0f 27
`
`US 2004/0049574 A1
`
`
`
`
`
`
`
`Fig 4
`
`
`
`
`CODE GENERATING ENGINE OPERATION
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`CONTENT ODE
`
`DOCUMENT IN
`
`MARK UP
`
`LANGUAGE
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`DEVlCE ID
`
`45
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 6 of 48
`
`lIlll
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 6 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 6 0f 27
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 5B
`
`
`
`TV LAYOUT
`
`
`
`
`LARGE COLOUR LOGO
`
`
`
`
`
`PICTURE
`
`GREETING
`
`
`
`PROMOTIONS
`MENU
`
`
`
`
`
`
`
`
`
`
`
`Fig 5D
`
`
`
`WAP PHONE LAYOUT
`
`
`50
`
`
`
`
`
`
`
`
`
`
`51
`
`
`52
`
`
`
`53
`
`
`
`
`
`Fig 5A
`
`
`
`
`
`
`
`PC LAYOUT
`
`
`
`
`
`50
`
`
`
`
`LARGE COLOUR
`
`
`
`
`
`
`
`
`
`
`
`GREETING
`
`
`
`SITE
`
`MENU
`
`
`PROMOTION 1
`
`
`
`PROMOTION 2
`
`
`
`
`PROMOTION 3
`
`
`
`
`
`TICKER
`
`
`
`
`
`
`Fig 5c
`
`
`
`PDA LAYOUT
`
`
`
`
`MEDIUM BLACK ,.
`
`
`AND WHITE LOGO
`
`
`
`
`GREETING
`
`
`
`PROMOTIONS
`MENU
`
`
`
`
`SITE MENU
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 7 of 48
`
`Page 7 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 7 0f 27
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 5E
`
`
`
`
`Fig 5F
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`510
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 8 of 48
`
`Page 8 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 8 0f 27
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 6
`
`
`
`HEIRARCHY OF DEVICE POLICY TABLE
`
`
`
`
`
`
`
`ROOT DEVICE TYPE
`
`
`
`
`
`4/ 61
`
`
`
`m
`
`'
`
`\ x
`
`WAP
`pnoue
`\
`\
`
`\
`
`PALM ”Egg APPLE
`/
`\
`
`
`/
`
`
`_
`
`\\
`
`\
`
`\
`
`\
`‘
`\
`‘
`“
`\
`
`GAMES
`CONSOLE 4—“ 62
`
`
`x \ \
`
`\ \
`
`
`
`
`
`
`
`
`\
`
`
`
`<—-——’ 63
`
`
`
`MICROSOFT
`/
`
`
`
`
`
`
`
`
`
`
`\\
`
`
`
`\
`
`\
`
`\
`
`
`
`
`
`
`
`9—" 55
`
`
`
`CASIO m JORNADA
`
`Page 9 of 48
`
`Page 9 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 9 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 7
`
`
`
`SOFTWARE PROVIDED TO WEB SERVER
`
`
`
`
`
`
`
`WEB APPLICATION
`
`75
`
`
`
`
`POLICY TABLES
`
`40
`
`
`
`
`CODE GENERATING
`
`ENGINE
`
`
`
`
`
`21
`71
`
`SET OF TAGS
`
`
`70
`
`
`
`
`REPORTING ENGINE
`
`
`
`
`
`INTEGRATING
`ENGINE
`
`72
`
`
`
`
`
`
`OPERATIONS
`MANAGER
`
`73
`
`
`29
`
`POLICY OBJECT
`
`
`CREATION PROGRAM
`
`74
`
`
`
`
`DEVICE
`
`IDENTIFICATION
`ENGINE
`
`
`
`
`
`Page 10 of 48
`
`Page 10 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 10 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 8
`
`
`
`
`
`
`
`
`
`
`
`STORAGE
`
`MEDIUM
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 11 of 48
`
`Page 11 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 11 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 9
`
`
`
`
` DEVICE
`
`IDENTIFIER
`
`29
`
`
`
`
`
`
`
`PRESENTATION
`
`
`INFORMATION
`
`90
`
`
`
`
`
`
`
`
` CODE
`
`
`GENERATING
`
`
`
`
`ENGINE
`
`
`21
`
`
`
`
`
`CONTENT
`
`
`CODE
`
`23
`
`
`Page 12 of 48
`
`Page 12 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 12 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`Fig 10
`SERVICE
`
`
`CENTRE
`
`5
`
`
`
`
`
`
`
`
`
`
`
`
`
`PRODUCTION
`DEVELOPMENT
`
`
`
`SERVER
`SERVER
`
`
`
`
`
`1 00
`
`101
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`PROBE SITE
`
`105
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 13 of 48
`
`Page 13 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 13 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 11
`
`
`
`PRODUCTION
`
`
`100
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`CENTRE
`PR°?E5S‘TE
`SERVER l
`
`SERVICE
`
`
`
`
`
`5
`
`
`
`
`
`
`
`
`
`__-.I'mMREDI RECT ‘l 1 6
`
`
`
`
`
`
`
`
`
`113
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`TEMPORARY UPDATE 119 __
`
`
`
`
`
`
`
`WEB PAGE CODE 120
`
`
`
`
`
`
`
`
`
`
`
`
`Page 14 of 48
`
`Page 14 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 14 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 12
`
`
`
`WEB PAGE SERVER WITH CACHE
`
`
`
`
`MEMORY
`
`
`
`
`
`
`
`
`DYNAMIC WEB PAGE
`
`
`SERVER
`
`123
`
`
`
`
`
`.
`
`
`
`
`
`
`
`
`
`
`
`
`
`N
`CONTE T
`E
`COD
`
`2
`3
`1
`
`
`
`
`
`1 21
`
`CACHED WEB
`PAG ES
`
`CACHE
`1 20
`
`
`
`
`
`GATEWAY SERVER
`
`
`
`
`
`
`
`
`
`
`
`
`Page 15 of 48
`
`Page 15 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 15 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 1 3
`
`
`
`
`
`GATEWAY SERVER PROCESSING
`
`
`
`130
`
`
`
`
`
`
`RECEIVE URL
`
`REQUEST,
`
`
`IDENTIFY ID AND
`
`
`WEB PAGE
`
`
`
`
`
`
`
`
`
`
`
`
`131
`-VA|LABLE l
`
`
`
`RETRIEVE STATIC
`
`
`
`
`
`WEB PAGE CODE
`
`
`FROM CACHE
`
`
`
`133
`
`
`
`
`
`
`REQUEST
`
`
`DYNAMIC PAGE
`
`GENERATION
`
`
`
`
`
`
`134
`
`
`
`
`RECEIVE WEB
`
`
`PAGE CODE
`
`
`
`135
`
`
`
`
`OUTPUT WEB
`
`
`
`PAGE CODE
`
`Page 16 of 48
`
`Page 16 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 16 0f 27
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 14
`
`
`
`
`
`
`DYNAMIC WEB PAGE SERVER
`
`PROCESSING
`
`
`
`
`
`142
`
`140
`
`
`
`141
`
`
`
`
`
`
`-" RECEIVE WEB PAGE
`
`
`
`
`REQUEST AND DEVICE ID
`
`
`
`
`RETRIEVE
`
`CONTENT CODE
`
`
`
`
`
`
`
`GENERATE WEB
`
`PAGE
`
`
`
`NO
`
`
`
`143
`
`
`
`AN PAGE B
`CACHED
`
`
`
`144
`
`
`
`
`
` ADD METADATA
`
`
`
`
`
`145
`
`
`
`
`
`OUTPUT WEB PAGE
`\
`CODE TO CACHE
`
`
`
`
`
`
`
`
`
`
`
`
`. OUTPUT WEB PAGE
`
`
`
`CODE TO GATEWAY
`
`146
`
`
`
`Page 17 of 48
`
`Page 17 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 17 0f 27
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 15
`
`
`
`
`
`
`
`DATA SELECTION USING A
`
`
`COMPONENT LOGIC SOFTWARE
`
`MODULE
`
`
`
`
`COMPONENT LOGIC
`
`
`
`
`SOFTWARE MODULE
`
`
`
`
`150
`
`
`
`
`
`
`
`
`
`
`DATA OBJECT
`
`
`VERSIONS
`
`
`
`
`
`CODE
`
`GENERATING
`ENGINE
`
`21
`
`
`Page 18 of 48
`
`Page 18 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 18 0f 27
`
`
`
`US 2004/0049574 Al
`
`
`
`F'
`'9
`
`
`
`1 6
`
`
`
`ACCESSING DATA DURING CODE
`
`
`
`GENERATION
`
`
`
`
`
`
`INPUT DOCUMENT CODE
`
`
`
`
`
`
`
`START TO GENERATE
`
`
`
`WEB PAGE CODE FROM
`
`
`
`DOCUMENT CODE
`
`
`
`
`
`
`
`
`
`
`
`
`161
`
`
`
`
`
`
`
`167
`
`
`
`TRY TO IMPORT
`
`
`
`
`
`- NY REMAININ
`NO
`
`
`AUTHOR DEFINED
`DATA OBJECTS TO
`
`
`VERSION OF DATA
`
`
`
`
`
`BE IMPORTED
`OBJECT
`
`
`COMPLETE WEB
`
`PAGE CODE
`
`
`GENERATION
`
`
`
`
`
`168
`
`
`
`
`
`
`
`OUTPUT WEB
`
`
`
`
`
`PAGE CODE
`
`
`
`
`
`USE COMPONENT LOGIC
`
`
`
`SOFTWARE MODULE TO
`
`
`
`SELECT VERSION OF DATA
`
`
`
`OBJECT
`
`
`
`
`Page 19 of 48
`
`Page 19 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 19 0f 27
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Flg 17
`
`
`
`HEIRARCHY OF DATA OBJECTS WHICH
`
`
`
`
`
`
`
`
`
`ARE DIFFERENT VERSIONS OF DATA
`
`
`
`
`REFERENCED BY A SINGLE
`
`
`COMPONENT NAME
`
`
`
`
`
`17-2
`
`COMPONENT
`NAME
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`176
`
`
`
`174
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`~
`
`
`.
`
`
`171
`
`
`
`
`
`Page 20 of 48
`
`Page 20 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 20 0f 27
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 18
`
`
`
`HEIRARCHY 0F TEXT OBJECTS WHICH
`
`
`
`
`ARE DIFFERENT VERSIONS OF DATA
`
`
`
`
`
`REFERENCED BY A SINGLE
`
`
`
`
`COMPONENT NAME AND BY A
`
`
`
`
`
`LANGUAGE ID
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 21 of 48
`
`Page 21 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 21 0f 27
`
`
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 19
`
`
`
`WEB SERVER
`
`
`
`
`GUI
`
`
`
`
`
`
`
`
`
`DATABASE
`
`
`POLICY TABLES
`
`
`
`
`
`CONTENT DATA
`
`
`
`STRUCTURE
`
`
`
`
`
`
`
`DEVICE
`
`POLICY
`
`TABLE
`
`30
`
`
`
`WEB
`_
`
`APPLICATION
`
`
`PROCESSOR
`
`DEVICE
`
`
`
`CODE
`
`
`IDENTIFICATION
`
`
`
`GENERATING
`
`
`ENGINE
`
`
`
`ENGINE
`
`
`29
`
`
`21
`
`
`
`
`
`
`
` PANE
`
`DISSECTOR
`
`
`190
`
`
`
`
`
`BUFFER
`191
`
`
`
`
`FRONT END PROCESSOR
`
`
`1 90
`
`
`
`
`USER
`
`DEVICE
`
`
`
`
`
`Page 22 of 48
`
`Page 22 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 22 0f 27
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`
`
`Fig 20
`
`DISECTING PANES
`
`
`
`
`
`200
`
`201
`
`
`202
`
`
`
`
`
`
`
`
`GENERATE CODE BASED ON DEVICE
`
`
`
`ID AND REQUEST
`
`
`
`
`
`
`MEASURE AMOUNT OF CODE
`
`GENERATED
`
`
`
`
`
`
`
`LOOK UP DEVICE DATA CAPACITY
`
`
`
`NO
`
` IS CODE LESS
`
`THAN CAPACITY
`
`
`
`205
`
`
`
`
`DISSECT CODE
`
`
`
`
`
`
`
`
`
`
`‘
`OUTPUT CODE
`
`WITHOUT DISSECTING
`
`
`
`
`
`
`
`STORE SHARDS OF
`
`
`DIVIDED PANE
`
`
`
`
`
`OUTPUT ONE
`
`SHARD
`
`
`
`
`
`2°3
`
`204
`
`
`
`Page 23 of 48
`
`Page 23 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 23 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`Fig 21
`
`
`DISSECTiNG PANES
`
`
`
`210
`
`
`
`
`
`
`
`
`
`
`
`SHARDS
`
`
`
`
`211
`
`
`
`
`
`
`C
`
`
`
`E
`
`
`
`
`
`
`
`
`
`
`
`213
`
`
`
`.
`
`
`
`215
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 24 of 48
`
`Page 24 of 48
`
`

`

`Patent Application Publication Mar. 11, 2004 Sheet 24 0f 27
`
`
`
`
`
`
`
`
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`
`Fig 22
`
`
`
`
`SESSION MEMORY
`
`
`
`
`
`SESSION MEMORY
`
`220
`
`
`
`
`
`
`FRONT END
`
`
`PROCESSOR
`
`
`190
`
`
`
`BUF R
`FE
`
`191
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 25 of 48
`
`Page 25 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 25 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 23
`
`
`
`
`DISECTING FORMS
`
`
`
`231
`
`
`
`230
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`236
`
`231
`
`
`
`232
`
`
`
`233
`
`
`
`
`234
`
`
`
`
`
`235
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`F
`
`
`
`237
`
`
`
`238
`
`
`
`Page 26 of 48
`
`Page 26 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 26 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`Fig 24
`
`
`
`AUTHORING
`
`
`
`
`
`
`23
`
`
`
`
`
`
`
`INFORMATION AUTHORING
`
`DOCUMENTS
`
`
`
`
`SUITE
`OF WEB PAGE
`
`
`
`
`
`240
`
`
`
`
`
`
`
`
`DATA
`
`
`
`
`CONVERTER
`
`
`
`
`241 ~
`
`
`DATABASE
`
`1 9
`
`
`
`
`
`
`
`
`
`
`
`FILE MANAGER
`
`
`
`
`
`
`242
`
`
`
`
`
`
`
`
`
`
`
`
`
`: I
`
`DEVICE POLICY
`
`
`TABLE
`
`30
`
`
`Page 27 of 48
`
`Page 27 of 48
`
`

`

`
`
`
`
`
`
`
`
`
`
`Patent Application Publication Mar. 11, 2004 Sheet 27 0f 27
`
`
`
`US 2004/0049574 A1
`
`
`
`
`
`Fig 25
`
`
`FILE STORAGE
`
`
`
`
`
`
`
`RECEIVE FILE- CONTAINING DATA
`
`
`
`
`FOR STORAGE AS DATA OBJECT
`
`
`
`
`
`
`
`
`
`
`DETERMINE TYPE OF DATA
`
`
`
`
`
`
`
`
`
`REFER TO DEVICE POLICY TABLE TO
`
`
`
`
`
`DETERMINE LIST OF DATA FORMATS
`
`REQUIRED
`
`
`GENERATE FOR EACH FORMAT A
`
`
`
`
`
`
`
`CONVERTED FILE
`
`
`
`
`
`
`
`”STORE FILES IN DATA STRUCTURE
`
`
`
`
`
`
`
`250
`
`
`25"
`
`
`
`
`
`
`
`
`252
`
`
`253
`
`254
`
`
`
`Page 28 of 48
`
`Page 28 of 48
`
`

`

`
`
`US 2004/0049574 A1
`
`
`
`
`
`Mar. 11, 2004
`
`
`
`
`
`WEB SERVER
`
`
`[0001] This invention relates to web servers and in par-
`
`
`
`
`
`
`
`
`
`ticular but not exclusively to a web server for responding to
`
`
`
`
`
`
`
`
`
`
`
`request messages received via the internet from remote user
`
`
`
`
`
`
`
`
`
`devices and to a web server capable of responding with web
`
`
`
`
`
`
`
`
`
`
`
`page code tailored to meet the capabilities of the remote user
`
`
`
`
`
`
`
`
`
`
`
`device.
`
`[0002] The use of the internet has recently flourished to
`
`
`
`
`
`
`
`
`
`
`the extent where almost every business concern has its own
`
`
`
`
`
`
`
`
`
`
`website to provide information and online purchasing facili-
`
`
`
`
`
`
`
`'lhe majority of such websites have in the past been
`ties.
`
`
`
`
`
`
`
`
`
`
`
`accessed by remote user devices which are PCs (Personal
`
`
`
`
`
`
`
`
`
`Computers) using one of a relatively small number of
`
`
`
`
`
`
`
`
`
`available browser applications so that, by and large,
`the
`
`
`
`
`
`
`
`
`
`websites were required to output web page code in a single
`
`
`
`
`
`
`
`
`
`
`
`format for viewing at the user device.
`
`
`
`
`
`
`
`
`
`
`
`[0003] More recently, there has been a proliferation in new
`
`
`
`
`
`
`
`
`internet enabled devices such as PDAs (Personal Digital
`
`
`
`
`
`
`
`Assistants), mobile telephones with WAP (Wireless Appli-
`
`
`
`
`
`
`cation Protocol) facilities, IDTV (Interactive Digital Tele—
`
`
`
`
`
`
`vision),
`information kiosks, games, consoles and home
`
`
`
`
`
`
`appliances. The capabilities of these devices vary consider-
`
`
`
`
`
`
`
`ably from device to device, both in their display function in
`
`
`
`
`
`
`
`
`
`
`terms of screen size and colour processing ability, bandwidth
`
`
`
`
`
`
`
`
`and available memory as well as variables associated with
`
`
`
`
`
`
`
`
`communication including image format, communication
`
`
`
`
`protocol and markup language.
`
`
`
`
`
`
`
`
`
`
`
`
`[0004]
`In order to enable users of these different devices to
`
`
`
`
`
`
`
`
`
`
`
`access their websites, many businesses have resorted to
`
`
`
`
`
`
`
`
`building separate web servers to serve each device type. This
`
`
`
`
`
`
`
`
`
`
`however creates data management problems where a cus-
`
`
`
`
`
`
`
`tomer may wish to have the option of using different devices
`
`
`
`
`
`
`
`
`
`
`to communicate with the merchant using the same account
`
`
`
`
`
`
`
`
`details for example, the merchant then requiring a prolif—
`
`
`
`
`
`
`
`
`eration of different web server applications to be managed
`
`
`
`
`
`
`
`
`
`and updated when required with new or additional material.
`
`
`
`
`
`
`
`
`
`
`
`
`
`[0005] An alternative approach has been to provide a
`
`
`
`
`
`
`
`
`
`separate port of a website for access by an alternative type
`
`
`
`
`
`
`
`
`
`
`of user device, the separate port obtaining the required web
`
`
`
`
`
`
`
`
`
`
`page code by translating the original PC based web page
`
`
`
`
`
`
`
`
`
`
`code, typically in HyperText Markup Language (HTML)
`
`
`
`
`
`
`
`format, to other device formats such as Wireless Markup
`
`
`
`
`
`
`
`
`
`Language (WML) used for WAP telephones. Such solutions
`
`
`
`
`
`
`
`
`however generally have failed to deliver optimum presen-
`
`
`
`
`
`
`
`tation to the user of the device. The translating process (often
`
`
`
`
`
`
`
`
`
`
`
`referred to as “transcoding”) is difficult
`to engineer. For
`
`
`
`
`
`
`
`
`
`example, it is necessary to provide appropriate selection of
`
`
`
`
`
`
`
`
`
`information which is to be omitted from display in the
`
`
`
`
`
`
`
`
`
`
`device having lower capabilities than the PC. This difficulty
`
`
`
`
`
`
`
`
`
`is compounded when it is necessary to update the original
`
`
`
`
`
`
`
`
`
`
`PC web page code because the transcoding process must
`
`
`
`
`
`
`
`
`
`also be reengineered.
`
`
`
`[0006]
`It has also been proposed that the protocols used
`
`
`
`
`
`
`
`
`
`for accessing web page information over the internet should
`
`
`
`
`
`
`
`
`be unified by the adoption of standards in order to overcome
`
`
`
`
`
`
`
`
`
`
`problems resulting from remote user devices having differ—
`
`
`
`
`
`
`
`ent capabilities. The use of Extensible Markup Language
`
`
`
`
`
`
`
`
`(XML) as a format for web page code has been proposed.
`
`
`
`
`
`
`
`
`
`
`
`XML is a mark-up language for defining content and can be
`
`
`
`
`
`
`
`
`
`
`used with XSL (Extensible Stylesheets Language) used to
`
`
`
`
`
`
`
`
`transform XML documents with style sheets at the point of
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 29 of 48
`
`presentation. As yet however, such standards have not been
`
`
`
`
`
`
`
`
`adopted and this solution is not seen as optimum for all
`
`
`
`
`
`
`
`
`
`
`device types.
`
`
`an
`to provide
`invention seeks
`[0007] The present
`
`
`
`
`
`
`
`
`improved web server with multi-channel capabilities able to
`
`
`
`
`
`
`
`
`serve different types of remote user device.
`
`
`
`
`
`
`
`
`
`
`
`[0008] According to the present invention there is dis-
`
`
`
`
`
`
`
`
`closed an apparatus for responding to a request message
`
`
`
`
`
`
`
`
`
`from a remote user device for web page information by
`
`
`
`
`
`
`
`
`
`
`generating web page code representative of one or more web
`
`
`
`
`
`
`
`
`
`
`pages to be displayed by the user device and outputting a
`
`
`
`
`
`
`
`
`
`
`
`response message comprising the web page code.
`
`
`
`
`
`
`
`
`apparatus comprises extracting
`[0009] Preferably the
`
`
`
`
`
`
`me ans for extracting from the request message a device type
`
`
`
`
`
`
`
`
`
`identifier identifying the remote user device as being one of
`
`
`
`
`
`
`
`
`
`
`a set of possible device types having different capabilities.
`
`
`
`
`
`
`
`
`
`
`[0010] The apparatus preferably has a processor for oper—
`
`
`
`
`
`
`
`
`ating a code generating engine to generate the web page
`
`
`
`
`
`
`
`
`
`code, first memory means for storing the web page infor-
`
`
`
`
`
`
`
`
`
`mation as a set of instructions, and second memory means
`
`
`
`
`
`
`
`
`
`
`for storing device dependent information for each of the
`
`
`
`
`
`
`
`
`
`dilferent device types for tailoring the web page code to the
`
`
`
`
`
`
`
`
`
`
`
`capabilities of the device type.
`
`
`
`
`
`
`
`
`[0011] The code generating engine preferably comprises
`
`
`
`
`
`
`interpreting means for interpreting the instructions with
`
`
`
`
`
`
`reference to selected device dependent information corre-
`
`
`
`
`
`
`sponding to the device type identifier, the code generating
`
`
`
`
`
`
`
`
`me ans thereby being operable to generate the web page code
`
`
`
`
`
`
`
`
`
`in a form in which the web page code is tailored to the
`
`
`
`
`
`
`
`
`
`
`
`
`capabilities of the remote user device.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`[0012] Preferred embodiments of the present invention
`
`
`
`
`
`
`will now be described by way of example only and with
`
`
`
`
`
`
`
`
`
`
`reference to the accompanying drawings of which:
`
`
`
`
`
`
`
`
`
`
`
`[0013] FIG. 1 is a schematic overview of connection
`
`
`
`
`
`
`
`
`between a web server and remote user devices;
`
`
`
`
`
`
`
`
`
`
`
`[0014] FIG. 2A is a schematic diagram of the web server
`
`
`
`
`
`
`
`
`
`
`of FIG. 1;
`
`
`
`[0015] FIG. 2B is a functional diagram for illustrating
`
`
`
`
`
`
`
`
`signal flow in the web server of FIG. 2A;
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`[0016] FIG. 3 is a schematic diagram of policy tables for
`
`
`
`
`
`
`
`
`
`
`
`use with the web server of FIG. 2;
`
`
`
`
`
`
`
`
`[0017] FIG. 4 is a schematic diagram illustrating opera-
`
`
`
`
`
`
`
`
`tion of the code generating engine;
`
`
`
`
`
`
`
`[0018] FIG. 5A illustrates a layout for a PC;
`
`
`
`
`
`
`
`
`[0019] FIG. 5B illustrates a layout for a television;
`
`
`
`
`
`
`
`
`
`
`
`
`
`[0020] FIG. 5C illustrates a layout for a PDA;
`
`
`
`
`
`
`
`
`[0021] FIG. 5D illustrates a layout for a WAP telephone;
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`[0022] FIG. 5E illustrates layout for a device having a
`
`
`
`
`
`
`
`
`
`large screen;
`
`
`
`
`
`[0023] FIG. 5F illustrates the display of fragments in a
`
`
`
`
`
`
`
`
`
`device having a small screen;
`
`
`
`
`
`
`
`
`[0024] FIG. 5G illustrates a multi-menu structure in a
`
`
`
`
`
`
`
`
`large screen device;
`
`
`
`
`
`
`Page 29 of 48
`
`

`

`
`
`US 2004/0049574 A1
`
`
`
`
`
`Mar. 11, 2004
`
`
`
`
`
`
`
`
`
`[0025] FIG. 5H illustrates the relationship between con-
`
`
`
`
`
`
`
`trol segments and content segments in the layout of FIG.
`
`
`
`
`
`
`
`
`
`
`5G;
`
`[0026] FIG. 6 illustrates the hierarchy of a device policy
`
`
`
`
`
`
`
`
`tablc;
`
`[0027] FIG. 7 illustrates schematically the software pro-
`
`
`
`
`
`
`
`vided to the web server;
`
`
`
`
`
`[0028] FIG. 8 illustrates schematically the hardware
`
`
`
`
`
`
`rcquircd by thc wcb scrvcr;
`
`
`
`
`
`[0029] FIG. 9 illustrates schematically the separation of
`
`
`
`
`
`
`
`
`content code and presentation of information for use by the
`
`
`
`
`
`
`
`
`
`
`code generating engine;
`
`
`
`[0030] FIG. 10 illustrates schematically a system com-
`
`
`
`
`
`
`
`prising a production server and a development server;
`
`
`
`
`
`
`
`
`[0031] FIG. 11 illustrates the exchange of signals in the
`
`
`
`
`
`
`
`
`
`
`system of FIG. 10 when a new type of user device is
`
`
`
`
`
`
`
`
`
`
`
`
`encountered for the first time;
`
`
`
`
`
`[0032] FIG. 12 illustrates schematically a server having a
`
`
`
`
`
`
`
`
`cache memory;
`
`
`[0033] FIG. 13 is a flowchart illustrating the method of
`
`
`
`
`
`
`
`
`
`operation of a gateway server of FIG. 12;
`
`
`
`
`
`
`
`[0034] FIG. 14 is a flowchart illustrating operation of a
`
`
`
`
`
`
`
`
`
`dynamic web page server of FIG. 12;
`
`
`
`
`
`
`
`[0035] FIG. 15 is a schematic diagram illustrating a
`
`
`
`
`
`
`
`
`component logic software module;
`
`
`
`
`[0036] FIG. 16 is a flowchart illustrating operation of
`
`
`
`
`
`
`
`
`code generation using the component logic software mod-
`
`
`
`
`
`
`
`ule;
`
`[0037] FIG. 17 is a diagram illustrating the hierarchy of
`
`
`
`
`
`
`
`
`
`
`data objccts which are diffcrcnt vcrsions of data rcfcrcnccd
`
`
`
`
`
`
`
`
`
`by a single component name;
`
`
`
`
`
`[0038] FIG. 18 illustrates the hierarchy of text objects
`
`
`
`
`
`
`
`
`with different text code sizes and languages;
`
`
`
`
`
`
`
`[0039] FIG. 19 illustratcs the signal flow in a wcb scrvcr
`
`
`
`
`
`
`
`
`
`
`in which pane dissection occurs;
`
`
`
`
`
`[0040] FIG. 20 is a flowchart illustrating pane dissection;
`
`
`
`
`
`
`
`
`[0041] FIG. 21 illustrates the dissection of a pane into
`
`
`
`
`
`
`
`
`
`shards;
`
`[0042] FIG. 22 illustrates use of a user session memory
`
`
`
`
`
`
`
`
`
`during form filling;
`
`
`
`[0043] FIG. 23 illustrates the dissection of a pane used in
`
`
`
`
`
`
`
`
`
`form filling;
`
`
`[0044] FIG. 24 illustrates the function of the graphical
`
`
`
`
`
`
`
`
`user interface; and
`
`
`
`[0045] FIG. 25 is a flowchart illustrating a method of file
`
`
`
`
`
`
`
`
`
`
`
`storagc.
`
`illustrates a web server 1 connected to
`[0046] FIG. 1
`
`
`
`
`
`
`
`
`
`
`remote user devices 2 via the internet 3. The remote user
`
`
`
`
`
`
`
`
`
`
`
`devices are illustrated to be a PC, television, PDA, and a
`
`
`
`
`
`
`
`
`
`
`
`mobilc tclcphonc with WAP facility but can includc any
`
`
`
`
`
`
`
`
`
`number of different devices with internet capability. The
`
`
`
`
`
`
`
`
`web server 1 is provided with a web server GUI (Graphical
`
`
`
`
`
`
`
`
`
`
`
`User Interface) 4 enabling an operator of the web server to
`
`
`
`
`
`
`
`
`
`
`
`author documents and generally control and maintain opera—
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`tion of the web server. The web server 1 is also connected
`
`
`
`
`
`
`
`
`
`
`
`
`via the internet 3 to a service centre 5 which acquires
`
`
`
`
`
`
`
`
`
`
`
`information concerning any new types of user device and
`
`
`
`
`
`
`
`
`
`provides the web server 1 with consequential software
`
`
`
`
`
`
`
`
`revision when required.
`
`
`
`[0047] FIG. 2A is a simplified schematic diagram of the
`
`
`
`
`
`
`
`
`
`
`wcb server 1 of FIG. 1. Thc wcb scrvcr 1 includcs a
`
`
`
`
`
`
`
`
`
`
`
`
`processor 20 which operates a code generating engine 21 in
`
`
`
`
`
`
`
`
`
`
`the form of an application which is run by the processor on
`
`
`
`
`
`
`
`
`
`
`
`
`demand in order to generate web page code. The code
`
`
`
`
`
`
`
`
`
`
`generating engine 21 in this embodiment is written in the
`
`
`
`
`
`
`
`
`
`
`Java programming language and during operation of the web
`
`
`
`
`
`
`
`
`
`server exists in the working memory of the processor 20 in
`
`
`
`
`
`
`
`
`
`
`
`compiled form as byte codes and is implementable within a
`
`
`
`
`
`
`
`
`
`
`Java run time environment.
`
`
`
`
`[0048] A memory 22 stores content code 23 which defines
`
`
`
`
`
`
`
`
`
`
`web page information in the form of documents written in a
`
`
`
`
`
`
`
`
`
`
`
`mark up language which in the present example is JSPI. 1
`
`
`
`
`
`
`
`
`
`
`
`(Java Scrvcr Pagcs). Thcsc documcnts are typically authorcd
`
`
`
`
`
`
`
`
`by the operator of the web server 1 using the graphical user
`
`
`
`
`
`
`
`
`
`
`
`
`interface 4. The memory 22 also stores operational data 24
`
`
`
`
`
`
`
`
`
`
`which includes for example data which may need to be
`
`
`
`
`
`
`
`
`
`
`incorporated into web page code generated at run time in
`
`
`
`
`
`
`
`
`
`
`response to specific queries originating from the user device
`
`
`
`
`
`
`
`
`
`2 and data acquired by monitoring usage of the web server.
`
`
`
`
`
`
`
`
`
`
`
`Data objects referenced by the content code 23 are stored in
`
`
`
`
`
`
`
`
`
`
`
`a database 19. These data objects may include files contain-
`
`
`
`
`
`
`
`
`
`ing images or text and other forms of data objects which an
`
`
`
`
`
`
`
`
`
`
`
`
`author may wish to include in the web page code to be
`
`
`
`
`
`
`
`
`
`
`
`
`generated.
`
`[0049] Device dependent information 25 is also stored in
`
`
`
`
`
`
`
`
`
`memory 22 and consists primarily of policy tables described
`
`
`
`
`
`
`
`
`
`below. The memory 22 also stores program code 26 which
`
`
`
`
`
`
`
`
`
`
`may be accessed by the processor 20 during operation of the
`
`
`
`
`
`
`
`
`
`
`
`server 1 or used to retrieve software such as the code
`
`
`
`
`
`
`
`
`
`
`
`generating engine 21 at the time of startup. The program
`
`
`
`
`
`
`
`
`
`
`code 26 also includes code defining a set of tags used in a
`
`
`
`
`
`
`
`
`
`
`
`
`
`mark up language in which the documents are authored as
`
`
`
`
`
`
`
`
`
`
`described below.
`
`
`[0050] An interface 27 communicates between a databus
`
`
`
`
`
`
`
`28 serving the processor 20 and memory 22 and external
`
`
`
`
`
`
`
`
`
`connection to the internet 3 for receiving request messages
`
`
`
`
`
`
`
`
`and transmitting response messages.
`
`
`
`
`[0051] A device identification engine 29 is provided for
`
`
`
`
`
`
`
`
`
`extracting from received messages a device type identifier
`
`
`
`
`
`
`
`
`for identifying the remote user device 2 by type. The device
`
`
`
`
`
`
`
`
`
`
`
`identification engine 29 in the present example is imple-
`
`
`
`
`
`
`
`
`mented in software by the processor 20. In this example, a
`
`
`
`
`
`
`
`
`
`
`request message received via the internet contains a Hyper-
`
`
`
`
`
`
`
`
`Text Transfer Protocol (HTTP) header which includes an 1D
`
`
`
`
`
`
`
`
`
`string declaring the name of the user agent which the
`
`
`
`
`
`
`
`
`
`
`originating device has used when generating the request
`
`
`
`
`
`
`
`
`message. The name of the user agent software defines for
`
`
`
`
`
`
`
`
`
`
`example the browser version and markup language capabil-
`
`
`
`
`
`
`
`ity of the device and is used by the device identification
`
`
`
`
`
`
`
`
`
`
`engine 29 to identify the originating device using the device
`
`
`
`
`
`
`
`
`
`type identifier which may for example be stored as a lookup
`
`
`
`
`
`
`
`
`
`
`table.
`
`[0052] Thc HTTP hcadcr may also yield information con-
`
`
`
`
`
`
`
`
`tained in a cookie regarding details of the user who has
`
`
`
`
`
`
`
`
`
`
`originated the request message. Such cookies may contain
`
`
`
`
`
`
`
`other data used for personalisation of the response made by
`
`
`
`
`
`
`
`
`
`the web server 1.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Page 30 of 48
`
`Page 30 of 48
`
`

`

`
`
`US 2004/0049574 A1
`
`
`
`
`
`Mar. 11, 2004
`
`
`
`
`
`[0053] FIG. 2B is a further illustration of the web server
`
`
`
`
`
`
`
`
`
`
`
`1 showing functional elements in a manner which illustrates
`
`
`
`
`
`
`
`
`
`the signal
`flow. A front end processor 300 provides a
`
`
`
`
`
`
`
`
`
`
`communications interface for request messages received
`
`
`
`
`
`
`from the internet 3 and response messages transmitted to the
`
`
`
`
`
`
`
`
`
`user device 2 Via the internet. The front end processor 300
`
`
`
`
`
`
`
`
`
`
`
`sends URL information 301 to a web application processor
`
`
`
`
`
`
`
`
`
`302 which determines from the URL the appropriate infor-
`
`
`
`
`
`
`
`
`mation to be included in a web page requested by the user.
`
`
`
`
`
`
`
`
`
`
`
`
`The web application processor 302 has access to a database
`
`
`
`
`
`
`
`
`
`
`303 which may be local to the processor or may be at a
`
`
`
`
`
`
`
`
`
`
`
`
`
`remote location which is accessible via an appropriate
`
`
`
`
`
`
`
`
`communications link.
`
`
`
`[0054] The web application processor 302 outputs a docu-
`
`
`
`
`
`
`
`ment 304 comprising instructions for generating web page
`
`
`
`
`
`
`
`code. The document 304 is not
`itself capable of being
`
`
`
`
`
`
`
`
`
`interpreted by a browser of a user device and therefore does
`
`
`
`
`
`
`
`
`not constitute “web page code” for the purpose of the present
`
`
`
`
`
`
`
`
`
`
`description.
`
`
`
`
`
`
`
`[0055] The document 304 is input to the code generating
`
`
`
`
`
`
`
`
`
`
`engine 21 which generates web page code with reference to
`
`
`
`
`
`
`
`
`
`
`content data structure 305 and the set of policy tables 40.
`
`
`
`
`
`
`
`
`
`
`
`The output of the code generating engine is a web page code
`
`
`
`
`
`
`
`
`
`
`
`document 306 which is now in a form which is capable of
`
`
`
`
`
`
`
`
`
`
`
`
`being interpreted by the browser of the user device 2. The
`
`
`
`
`
`
`
`
`
`
`
`web page code document 306 is received by the front end
`
`
`
`
`
`
`
`
`
`
`
`processor 300 and packaged as a response message trans-
`
`
`
`
`
`
`
`
`mitted via the internet 3 through the user device 2.
`
`
`
`
`
`
`
`
`
`
`
`[0056] To enable the code generating engine 21 to select
`
`
`
`
`
`
`
`
`
`
`the appropriate data from the content data structure 305 and
`
`
`
`
`
`
`
`
`
`
`to access the appropriate policy tables 40 ,it also requires the
`
`
`
`
`
`
`
`
`
`
`
`input of a device type identifier 45 which is provided by
`
`
`
`
`
`
`
`
`
`
`
`device identification engine 29 in response to receiving a
`
`
`
`
`
`
`
`
`
`message header signal 307 from the front end processor 300
`
`
`
`
`
`
`
`
`
`
`,this signal comprising information e

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