throbber
(12) United States Patent
`Guttman et al.
`
`USOO6988241B1
`US 6,988,241 B1
`Jan. 17, 2006
`
`(10) Patent No.:
`(45) Date of Patent:
`
`(54) CLIENT SIDE, WEB-BASED SPREADSHEET
`(75) Inventors: Steven Guttman, Oakland, CA (US);
`Joseph Ternasky, Mountain View, CA
`(US)
`(73) Assignee: International Business Machines
`Corporation, Armonk, NY (US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 825 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/714,024
`(22) Filed:
`Nov. 15, 2000
`Related U.S. Application Data
`(60) Provisional application No. 60/241,083, filed on Oct. 16,
`2000.
`(51) Int. Cl.
`G06F I7/00
`
`(2006.01)
`
`(52) U.S. Cl. ........................ 715/503; 71.5/513; 715/504
`(58) Field of Classification Search ................. 715/503,
`715/504,514,513; 705/26, 19
`See application file for complete Search history.
`
`(56)
`
`References Cited
`U.S. PATENT DOCUMENTS
`5,893,123 A * 4/1999 Tuinenga .................... 715/504
`5,926,822 A
`7/1999 Garman ...................... 715/503
`6,341,292 B1
`1/2002 Cho et al. ................... 707/203
`6,473.738 B1 10/2002 Garrett ........................ 705/26
`6,631,497 B1 * 10/2003 Jamshidi et al. ............ 71.5/514
`6,632.249 B2 * 10/2003 Pollock ...................... 71.5/513
`OTHER PUBLICATIONS
`Hallberg et al., “Using Microsoft Excel 97", 1997, pp
`596-6O1.
`Shadoff, “JavaScript Spreadsheet”, 1997, text and source
`code downloaded from http://www.websorcerer.com/h12/
`h12.html.
`
`Flanagan, “JavaScript, The Definitive Guide, 3rd Edition”,
`1999, pp 244-246.*
`Harvey, S., Excel 2000 for Windows for Dummies. Copy
`right 1999.
`Screen Print of Help Menu of Microsoft Excel 2000 Hyper
`link pages captured Oct. 29, 2000 3 pages.
`Tidestone.com web pages online. Tidestone.com retrieved
`Oct. 30, 2000). Retrieved from the Internet: <URL: http://
`www.tidestone.com/> 10 pages.
`The-Ciba.com web pages online). The-Ciba.com re
`trieved Feb. 26, 2001). Retrieved from the Internet: <URL:
`http://www.the-ciba.com/> 1 page, Building Windows
`Applications from Spreadsheets.
`
`(Continued)
`
`Primary Examiner Joseph Feild
`ASSistant Examiner James H. Blackwell
`(74) Attorney, Agent, or Firm-Laura A. Majerus; Rimma
`Budnitskaya; Janet M. Skafer
`(57)
`ABSTRACT
`A method and System that that allows a designer to create
`“spreadsheet' web pages, which can then be viewed and
`used by the designer and/or by other users. The described
`embodiments of the present invention allow people to col
`laborate and to share spreadsheets over the web. The
`described embodiment allows a user of the spreadsheet to
`email the Spreadsheet to others and to embed the Spreadsheet
`into web pages owned by the designer or by third parties. A
`described embodiments of the web-based spreadsheet
`allowed the designer to Specify both web data and real-time
`data in the cells of the “spreadsheet.” The web data includes
`a URL of an image that is to be placed in a cell. The web data
`includes a link to a web page in a cell. The real-time data
`includes Stock quotes and currency conversion information
`in the cells of the spreadsheet. Such data reflects a current (or
`Specified) day's Stock quote or a current (or specified)
`currency conversion value.
`
`64 Claims, 27 Drawing Sheets
`
`
`
`102
`
`CLENT
`
`BROWSER
`
`SPREADSHEET
`PAGE
`14
`
`112
`
`110
`
`SERVER
`SERVER SOFTWARE
`
`SPREADSHEET
`DATAFILE (INCLUDES
`REAL-TIME DATA)
`
`SPREADSHEET
`PAGE
`
`MEMBER FLE
`
`104
`
`120
`
`122
`
`112
`
`126
`
`SOURCE OF
`REAL-TIME
`DATA
`
`SAP Exhibit 1032
`SAP v. Express Mobile, Inc.
`IPR2021-01146
`Page 00001
`
`

`

`US 6,988,241 B1
`Page 2
`
`OTHER PUBLICATIONS
`The-Ciba.com web pages online. The-Ciba.com re
`trieved Feb. 26, 2001). Retrieved from the Internet: <URL:
`http://www.the-ciba.com/> 6 pages, What is Visual Baler.
`Tidestone.com web pages online. Tidestone.com retrieved
`Feb. 26, 2001). Retrieved from the Internet: <URL: http://
`www.tidestone.com/> 3 pages, PreSS Releases and
`Announcements.
`DevX.com web pages online). DevX.com retrieved Feb.
`26, 2001). Retrieved from the Internet: <URL: http://www.
`devX.com/> 3 pages, Formula One for Java 5.5.
`Tidestone.com web pages online. Tidestone.com retrieved
`Feb. 26, 2001). Retrieved from the Internet: <URL: http://
`www.tidestone.com/> 2 pages, PreSS Release.
`Tidestone.com web pages online. Tidestone.com retreived
`Feb. 26, 2001). Retreived from the Internet: <URL: http://
`www.tidestone.com/> 2 pages, PreSS Release.
`Tidestone.com web pages online. Tidestone.com retreived
`Feb. 26, 2001). Retreived from the Internet: <URL: http://
`www.tidestone.com/> 1 page, How to Contact Tidestone
`Technologies.
`Tidestone.com web pages online. Tidestone.com retrieved
`Feb. 26, 2001). Retreived from the Internet: <URL: http://
`www.tidestone.com/> 3 pages, PreSS Release.
`
`Thinkfree.com web pages online. Thinkfree.com re
`trieved Feb. 26, 2001). Retrieved from the Internet: <URL:
`http://www.thinkfree.com/> 1 page, Thinkfree Office.
`Thinkfree.com web pages online. Thinkfree.com re
`trieved Feb. 26, 2001). Retrieved from the Internet: <URL:
`http://www.thinkfree.com/> 2 pages, Thinkfree Office: Find
`Out More.
`About Us Factsheet, online Retrieved on Feb. 19, 2001).
`Retrieved from: <URL://www.thinkfree.com/about us/
`about us factsheet.html>, 2 pages.
`ThinkFree Office, online retrieved on Feb. 19, 2001).
`Retrieved from <URL: http://www.thinkfree.com/land
`ing.jsps, 1 page.
`ThinkFree Office, online retrieved on Feb. 19, 2001).
`Retrieved from <URL: http://www.thinkfree.com/find
`out more/find general .html>, 1 page.
`iReporting for eBusiness-Formula One iReporting Plat
`form Tidestone Technologies, online. retrieved on Feb.
`19, 2001 Retrieved from:<URL: http://www.tidestone.com/
`home/default.jsp>, 1 page.
`Tidestone Technologies-What is iReporting?, online re
`trieved on Feb. 19, 2001). Retrieved from: <URL: http://
`www.tidestone.com/products/default.jsp>, 2 pages.
`* cited by examiner
`
`IPR2021-01146 Page 00002
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 1 of 27
`
`US 6,988,241 B1
`
`102
`
`CLIENT
`BROWSER
`
`SPREADSHEET
`PAGE
`
`114
`
`112
`
`110
`
`FIG. I.
`
`104
`
`SERVER
`sERVER software/120
`
`SPREADSHEET
`DATAFILE (INCLUDES
`REAL-TIME DATA)
`
`122
`
`SPREADSHEET
`
`SOURCE OF
`REAL-TIME
`DATA
`
`MEMBER FLE
`
`126
`
`FIG. 3
`SERVER
`
`RECEIVE AREQUEST
`FOR HTML PAGE
`
`LOOK AT THE PARAMETERS
`OF THE RECEIVED REQUEST
`(DATA ID, MODE)
`
`FIND THE DATA FOR THIS DATA D
`
`302
`
`
`
`304
`
`306
`
`308
`SPREADSHEETNYES
`MODE?
`
`
`
`EMBED DATA AND
`RETURN SPREADSHEET
`HTML PAGE
`
`
`
`
`
`
`
`CALCULATOR
`MODE?
`
`
`
`"EMBED MODE"
`RETURNS AN
`EMBEDDED PAGE
`
`
`
`
`
`
`
`
`
`316
`
`EMBED DATA AND RETURN
`CALCULATOR HTMLPAGE
`
`318
`
`IPR2021-01146 Page 00003
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 2 of 27
`Sheet 2 0127
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`
`
`s
`
`
`FIG.2
`
`
`
`
`S.
`204
`
`
`
`QBlomomBrainMa’derSpreadsheet
`
`
`
`EIIIIIIIIIIIIIIII!II
`
`
`IIIIIIIIIHHHHHEHHIHH,
`
`
`
`
`
`
` 1 1 1 1
`
`
`
`
`
`IPR2021-01146 Page 00004
`
`&
`222
`
`
`
`
`
`
`
`
`
`IPR2021-01146 Page 00004
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 3 of 27
`
`US 6,988,241 B1
`
`426
`
`428
`
`430
`
`
`
`432
`
`FIG. 4
`BROWSER
`
`LOAD AND PARSE HTML PAGE
`
`GENERATE PROGRESS
`BARS DURING LOADING
`
`BUILD A SPREADSHEET VA
`THE JAVASCRIPT IN THE
`LOADED PAGE (SEE FIG. 5)
`
`ALLOW USER TO SAVE FILE
`
`
`
`434
`
`FIG. 5
`BROWSER, DISPLAYING
`SPREADSHEET
`
`
`
`GET NUMBER OF ROWS
`AND COLUMNS FOR
`THE SPREADSHEET
`
`NITIALIZE EACH CELL
`BASED ON THE DATA
`IN THE DATA ARRAY
`
`502
`
`504
`
`BUILD A DEPENDENCY TREE
`
`505
`
`MAKE THE CELLSVISIBLE
`ONCE ALL THE CELLS ARE
`BUILT IN MEMORY
`
`PERFORM FORMULA
`CALCULATION FOREACH
`CELL WHEN NEEDED
`
`506
`
`508
`
`IPR2021-01146 Page 00005
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 4 of 27
`Sheet 4 0127
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`
`
`s
`FIG.6
`
`
`
`2a:
`
`
`
`Eemailthispage
`
`
`
`
`
`
`
`he
`
`
`
`
`
`
`
`CurrencyQuote
`
`WebLink
`
`StockQuote
`
`ImageURL
`
`N n
`
`
`
`
`
`P-----ul-FR
`
`w
`
`IPR2021-01146 Page 00006
`
`.—
`a:a:
`.cIn
`'0
`8L-
`a.
`(n
`‘—OJ
`:t:c
`
`2.
`
`EEa
`
`: Eo‘
`
`2x
`
`IPR2021-01146 Page 00006
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 5 of 27
`Sheet 5 0127
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`
`
`
`v
`IE
`
`IPR2021-01146 Page 00007
`
`s
`FIG.7a
`
`
`
`
`
`
`
`1
`
`U
`
`
`
`:::
`
`
`
`
`i ‘
`
`
`
`
`
` @Blox
`
`comBrainMaitarSpreadsheet
`
`IPR2021-01146 Page 00007
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 6 of 27
`Sheet 6 0127
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`Spreadsheet
`
`
`
`
`
`H
`
`
`
`3N I
`
`n
`
`
`
`Blox.comBrainMaHer
`
`
`
`
`
`
`
`
`
`
`
`s
`FIG.7b
`
`
`
`
`
`£2!
`
`IPR2021-01146 Page 00008
`
`IPR2021-01146 Page 00008
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`J
`
`Sheet 7 of 27
`
`US 6,988,241 B1
`8,8
`
`1B1m.
`
`
`
`QZ (91 H.
`
`on65%
`
`9I'll6I'llmIIIIIIIIIi
`
`
`
`
`
`
`
`.mIll2......2......II.7.Ill3..2......%IIIII.5...Ii.“Hun“H.382......
`IIIIlmlnI'll......._.._a.”II“flu-III.-H...-
`6IIIII2....I.mlllllIasI.n,IIIII,.5II
`
`
`mmmmaz;_E_Mari32¢me
`
`
`AEm.sacs{£8.95Sac\\a§:gomo§uwX\rHEE\
`a:£5=25ngo:3.5:22;:32:
`I'llHI
`
`
`IIIII.3...a...II
`
`
`
`
`
`sfimuumam.mzazEEmEouioag
`
`IPR2021-01146 Page 00009
`
`IPR2021-01146 Page 00009
`
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 8 of 27
`Sheet 8 0127
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`-
`|| ||
`
`313'
` olorIn
`IBIBI-
`
`||||||
`
`
`
`
`
`
`
`E
`
`
`
`
`
`
`
`
`
`
`
`FIG.7d
`
`
`
`
`QBlomomBrainMaHerSpreadsheet
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`O
`.HIIIIIIIIIIIIII
`- -
`------------
`I-HHHHHIHHHEIHEH
`
`
`
`
`
`
`
`IPR2021-01146 Page 00010
`
`IPR2021-01146 Page 00010
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 9 of 27
`Sheet 9 0127
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
` QBloxsom
`
`
`BrainMafierSpreadsheet
`
`
`s
`FIG.8a
`
`s
`
`::::
`
`
`
`IPR2021-01146 Page 00011
`
`IPR2021-01146 Page 00011
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 10 of 27
`
`US 6,988,241 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`s
`
`
`
`
`
`
`
`
`
`
`
`
`
`o
`
`
`
`
`
`
`
`H
`i 3 Al-elease
`
`
`
`
`
`IPR2021-01146 Page 00012
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 11 of 27
`
`US 6,988,241 B1
`
`
`
`
`
`
`
`s
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`||||||||||||||
`
`
`
`
`
`
`
`
`
`|||||||
`
`|||||||||||||||||
`||||||||||||
`Al-------------
`IIII
`/
`S
`
`IPR2021-01146 Page 00013
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 12 of 27
`Sheet 12 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`0i
`
`
`
`
`
`
`mmuma
`||||||||||||||||
`1HIIIIIIIIIIIIIIIIIII
`
`
`IIIIIIIIIIIIIIIIIIII
`s
`
`
`FIG.9a
`
`IIIIIIIIIIIIIIIIIIII
`|||||||||||
`1' HIIIIIIIIIIIIIIIIIII
`
`
`
`DBEQNEafiééIZIIEE-
`
`
`‘ |II|II|I|I|IIIIIIIII
`
`||||||||||||||
`
`FormatHeIp
`
`FileEditTools
`
`
`
`
`33lox.comBrainMafierSpreadsheet
`
`
`
`D
`
`h
`O
`as
`
`3.
`N
`R
`
`s
`se
`D
`
`:
`
`
`
`
`
`ii
`e
`
`IPR2021-01146 Page 00014
`
`IPR2021-01146 Page 00014
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 13 of 27
`Sheet 13 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`|ink("th1//abccorp.com QBloxxom
`
`
`
`
`
`
`
`s
`FIG.9b
`
`
`
`
`
`
`
`
`
`
`
`BrainMaflerSpreadsheet
`
`
`
`
`
`
`
`
`
`
`
`||||||||||||||||||
`|||||||||||||||
`
`
`
`
`
`1
`,
`
`L-
`
`20 :
`
`SI
`N
`
`93:“
`"E'O
`'E‘UIU
`.._
`m
`Q<
`32._..._¥K:
`J
`R
`
`
`
`
`
`ea
`
`
`
`
`
`
`
`
`
`C
`d
`s
`aC
`9
`S4
`s -
`
`IPR2021-01146 Page 00015
`
`IPR2021-01146 Page 00015
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 14 of 27
`Sheet 14 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`
`
`
`
`
`
`
`
`D
`
`
`
`
`Eemailthispage
`
`
`
`
`
`
`_re","puifitocurrencyhere"."09/11/2000”,"bid")
`
`
`
`®B|ox.comBrainMaHerSpreadsheet
`
`
`
`
`
`
`
`
`
`
`FIG.10a
`
`
`
`
`
`
`
`
`
`i
`
`I
`
`
`
`
`:
` currency(gut"
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IPR2021-01146 Page 00016
`
`--------------ee V
`
`
`
`h
`
`IPR2021-01146 Page 00016
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 15 of 27
`Sheet 15 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`In;
`
`
`
`I
`
`II(I
`
`t
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG.10b
`
`
`
`
`
`
`
`
`i
`IIIIIIIIIIIIIIIIIII
`
`
`
`lmleImEl
`i IIIIIIIIIIIIIIIIIII
`
`
`|||||||||||||||
`
`~III|IIII|IIIIIIII|I
`
`
`
`
`09/11/2000","bid")
`IIIIIIIIIIIIIIIIIII
`
`
`
`Ps s a
`HIIIIIIIIIIIIIIIIIII
`
`|||||||||
`s
`usd,gbpfl
`
`HIIIIIIIIIIIIIIIIIII
` currency( {jfllox
`
`IIIIIIIIIIIIIIIIIII
`
`comBroinMaflerSpreadsheet
`
`
`
`
`
`
`
`
`
`
`R
`a
`
`'
`
`'
`
`
`
`\
`.
`
`
`
`v
`
`r~
`
`:
`
`z:
`
`i
`
`1W
`
`IPR2021-01146 Page 00017
`
`IPR2021-01146 Page 00017
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`Jan. 17, 2006
`
`Sheet 16 of 27
`Sheet 16 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`Q I
`
`D
`
`
`
`:1I
`
`N 9
`
`':
`
`
`
`
`
`
`
`s
`FIG.11
`
`
`
`
`
`
`
`||||||||||||
`
`III
`
`
`
`
`
`
`
`
`
`PR2021-01146 Page 00018
`
`
`
`
`
`
`
`Blox.comBrainMaHerSpreadsheet
`
`IPR2021-01146 Page 00018
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 17 of 27
`
`US 6,988,241 B1
`
`FIG. I.2a.
`
`
`
`
`
`
`
`Sove
`Sove as...
`Export to Excel.
`Import Excel file...
`Set size.
`Print.
`Summary...
`
`FIG. I.2b
`Cut
`Copy
`Poste
`Poste Volues
`Clear
`Fill Down
`Fill Right
`Macros...
`
`
`
`
`
`FIG. I2C
`insert Row
`Insert Column
`Delete Row
`Delete Column
`Autofit Row
`Autofit Column
`Row Height...
`Column Width...
`Sort Ascending
`Sort Descending
`Hide Grid
`Calculator Preview
`
`FIG. I.2d
`General
`Custom...
`8,901
`8,901.2
`8,901.22
`$2,345
`$2,345.67
`
`
`
`Wrap Text
`
`
`
`FIG. I.3a
`
`Email a spreadsheet
`applicationexample
`This utility ollows you to email a link to this spreadsheet.
`You can specify up to 5 recipients and include a message.
`Note: This file is private'. Emailing it will change it to public'.
`to (separate multiple email addresses with commas):
`
`message:
`
`surrou cANCEL
`
`IPR2021-01146 Page 00019
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`
`Sheet 18 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`£8.35a:2Eu“.6...mafia:gig QMN.DNK
`z2222’.)-2222222212zzzzzeeztzzzzzzzzezelzzzzezeezezzzzau‘?
`
`.xoaoiz23:3»5Iuz;62223.82523:38.3m.mcoznzccmwa
`
`
`no;Egg—.2522.:28.665.52,:65228233£3no;2.:383
`
`2:9:965g5%.5253:€258€8.358$385a;on:so
`
`
`
`_$2335“E9565uso»28wasE#835
`
`”8
`
`gem5.:,
`
`3:2.3mno»
`
`
`
`sazmuaoam889:3;£56:8.o3.8—
`
`5832:m.EEm5.2,m222122222222222222222222
`
`IPR2021-01146 Page 00020
`
`
`
`
`
`2m:20:228HmomGEEEms.32>=32m—
`
`.umfiugam
`
`IPR2021-01146 Page 00020
`
`
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 19 of 27
`
`US 6,988,241 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`=
`
`
`
`coal
`
`Trail
`----|--|--|--|--||
`
`
`
`IPR2021-01146 Page 00021
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 20 of 27
`
`US 6,988,241 B1
`
`FIG. I.4b.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`vor g = new Object () ;
`function init ()
`g-noteArray = "A
`", "A", "B", "c", "c", "D", "D", "E", "F", "F",
`gflotArray
`("A", "Bb', "B", "c", "Db', "D", "Eb', "E", "f", "Gb",
`odeArray =
`// blues scale
`1, 0, 0, 1, 0, 1, 1, 1, 0, 0, 1, 0,
`// Dorian
`1, 0, 1, 1, 0, 1, 0, 1, 0, l, 1, 0,
`// Harmonic Minor
`1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 0, 1,
`// Locrian
`1, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1, 0,
`// Lydian
`1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1,
`
`// theNote: figures out if the current note belongs in the mode,
`// key and scale
`into TheNote (gstring, fret, key, modelndex, displayindex)
`vor noteName = callmod (gstring+fret-1, 12);
`vor in Mode = gmodeArray I
`+ call, mod (key+fret
`if (in Mode == 1)
`if (displaylindex == 1)
`return (g noteArray noteName);
`else if (displayindex == 3
`return (gflotArray noteName));
`else
`return ("*");
`return ("");
`
`
`
`else
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`IPR2021-01146 Page 00022
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`
`
`===========
`
`Z
`
`Sheet 21 of 27
`
`US 6,988,241 B1
`
`ETTELETELEITEITETETETTE
`
`|TTTTTTTTTTTTTTTTTTTT?L?TIE ???RTL
`
`TTTTTTTTTTTTTTTTTTTTTTTT?????????TILIZ
`
`IPR2021-01146 Page 00023
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`
`Sheet 22 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`E8.x0_mu._2_=oc_2m®
`12:5..x#53533;a.33.32;28%:SE62:ca$.0225£8..38:
`
`
`
`pfw I 19I, I,
`
`3:.UNK
`
`
`
`Lasagna3:52:65
`
`Egg
`
`E28m32mago:
`
`335505
`
`IPR2021-01146 Page 00024
`
`IPR2021-01146 Page 00024
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`
`Sheet 23 0f 27
`
`US 6,988,241 B1
`US 6,988,241 B1
`
`
`
`E
`
`ME.\Eou.xor.m.®_
`023"a.63885..voto&=m6::a3m>2:.3532353:233o26;rcmoov”m3So»23mm;
`
`
`
`MAatum\X:ummolpmmnvmoouEwonouoemcoafisoqxoz.;;;\\a=s:n2.m._atumo>o_.:ucmo=m=a_
`
`
`
`
`
`
`0z.262;5@523+54382323822._o.3.82?”3E2;8.53..22.25“.2.2:non—Eu
`$2.".62302$3385....2:Eu;so»22.;558;2:3one;.50»25.32..9.36:2
`
`
`we?.38.8ova..893no;53So»a.z2”E:a28.5:8a;.232.m_3238...”;$5=32.885“2:2E.a3:36
`
`
`2:38.8cc3.893a;53.5:5z33:8:830>.232.m_sfimuasnmm2:__
`Au\v35%.323;225::23.3.3...p£258"u_~..=o%\E8.xo_ai;;\\a§.12;av
`
`
`2:38%52%£3“35395...”E.22.“2£328.32.53ea£$ficoeamSo»
`
`
`
`
`39.23coonno;.8532%so»£33LW©23a@6
`
`35%32.2395::ofifl
`
`2332;;
`
`.3235%..~33
`
`9:932:
`
`
`
`3mg50>25._E._._9.32.22:
`
`32.385...2:333.5
`
`.2:2:*oSig
`
`IPR2021-01146 Page 00025
`
`
`
`
`
`is?”$525armeoiuuccofi
`
`IPR2021-01146 Page 00025
`
`

`

`U.S. Patent
`
`Jan. 17, 2006
`
`Sheet 24 of 27
`
`US 6,988,241 B1
`
`FIG. 16a
`1600
`
`FIG. I.6b
`1652
`
`
`
`
`
`1608
`
`PRIVATE
`USER2
`
`SIGN UP
`WITH THE
`SYSTEM
`
`1672
`
`
`
`
`
`
`
`
`
`WORK WITH
`THE FILE AS NOT
`A FLE OWNER
`
`
`
`
`
`
`
`1654
`
`USER
`CHANGES
`EDTABILITY
`
`YES
`CHANGE EDTABILITY
`FLAG IN CLIENT-SIDE
`DATA ARRAY
`
`
`
`1653
`
`
`
`
`
`
`
`USER
`CHANGES CONTEN
`IN SPREADSHEET
`
`YES
`CHANGE DATA CONTENT
`N DATA ARRAY
`1662
`
`
`
`
`
`
`
`
`
`USER
`INDICATES
`"SAVE?
`
`1656
`
`1660
`
`YES
`RECEIVE POST IN THE FORM
`OF DATA FROM DATA
`ARRAY FROMA BROWSER
`
`1664
`
`1682
`
`
`
`
`
`
`
`
`
`REGISTER TO
`BECOMEA MEMBER
`
`
`
`
`
`SAVE THE FILE AS
`NOT A FILE OWNER
`
`SAVE INTO NON-FILE
`OWNER ACCOUNT
`
`MEMBER
`COOKE?
`YES 1666
`
`OWNER OF
`THE FILE
`as 1668
`1686
`SAVE THE FILE AS
`A FLE OWNER
`
`1680
`
`END 9\-1688
`
`IPR2021-01146 Page 00026
`
`

`

`U.S. Patent
`US. Patent
`
`Jan. 17, 2006
`7,1n.aJ
`6m
`
`Sheet 25 of 27
`72f052teehS
`
`US 6,988,241 B1
`
`lBl4
`
`6
`
`
`
`29 I '91. H.
`
`
`
`
`
`
`
`3%“32:23is:3.2m_5.2.53.5::comeuiumsc£\Eoo.xo_mflw
`
`9,2:25..
`2a311‘1,11%38:3“.
`SEofiuouamAEgoU523.8A:30
`onN.UNK
`2..36¢Sam.2.m—6:7“.
`23mass:E3mm":Sow_=_.w..2;GSea—Exfl
`:<3”:Sea.2.363:3
`E$888.28Eru-m
`@XUE@_.GH@.Gpnv_
`
`3:513:0522.5:2:
`
`522853”6:13“Egg
`ED:
`Eosc_ot2=u\=3
`am«Sausage.o3225;
`
`
`2m2:.6.
`
`2,2323952325333220
`GÐrae
`
`”2:9:30E3:2”‘awm
`
`D
`D
`
`
`
`2223.823floofiuooam3220
`
`
`
`8.:=6»9.5ch
`
`332295
`
`.03.:E.8533a3.2.
`
`$2.38.%:2.
`
`cozscumoa32.
`
`33
`
`
`
`9%:3;p25:"3tomprone.p.52
`
`.33_22._E22
`
`3.:N.ӣ9255oEEE
`
`.892328
`
`xxxxxx
`
`xxxx
`
`Econ
`
`.8993:33
`
`”35:58:
`
`mgfl
`
`:3EE
`?] [Æ] F. §
`
`=a:EOE:2:2355%
`
`
`
`25:59:3.3m22:0;scam
`
`| ØD EJ §) | © [5] (3) • <a • No.
`
`
`
` 88.33@;E\Eou23:_
`
`cm?
`
`NamV
`
`IPR2021-01146 Page 00027
`
`IPR2021-01146 Page 00027
`
`

`

`US. Patent
`
`Jan. 17, 2006
`
`Sheet26 0f27
`
`US 6,988,241 B1
`
`anN65%
`
`H2duo
`
`
`
`Hm<._._m_o
`
`
`
`
`
`.jmoIo<mSem<zoF<Emou_z_
`
`”KN.
`UNK
`
`OONF
`
`cot/HQ8:
`
`BEmmmEms.
`
`
`
`
`
`$225:58:52.53532228.__m§2©§<H<27:
`
`
`
`
`
`95%mwmmgfizzm203$:emmmsmz
`
`amt
`
`\mewofimmm
`
`
`
`5E<._.<n_$2520.20
`
`Aswz<E<Elww>>z<_>_261.Hm21300.2.m”26¢.2.Em.__nzo_._<._xm_._.l..m:m.r
`
`n:Skam=2<zEm: or:
`mamas.mmfi.”853._82_><I:9#2888SEis25:.HEEE
`
`
`
`
`
`
`
`
`
`
`n§mhmm<>>..<z<om.n_>.H>.=_2<n_>>m_>._>><z.$0.585“.._Em..umN_m>>m=>..mw._<n_.
`
`
`
`
`32pr,5?”Big;.2255?53:55.222.”558%;Ea.
`
`
`.A_Sz_><z.=o>#2$88E2>25226;”m5.381:.m”38':E5.
`
`IIII.
`
`
`
`
`
`
`
`H.553._~.mz<_m<Ewm>>232261.“>523.
`
`>23226:
`
`
`
`whwmnw.25..
`
`20>mm<
`
`$255..
`
`>z<s_25:
`
`mmz<E<Ewm>
`
`IPR2021-01146 Page 00028
`
`IPR2021-01146 Page 00028
`
`
`
`
`
`

`

`US. Patent
`
`Jan. 17, 2006
`
`Sheet 27 0f 27
`
`US 6,988,241 B1
`
`FIG.18
`
`
`
`
`
`
`88
`
`8
`
`8
`
`xiv-v
`
`17
`
`
`
`
`
`IPR2021-01146 Page 00029
`
`
`
`
`aemailthispage
`
`
`Currencsmboltable
`——D36changeofUSD
`—
`
`
`
`
`
` QCurrency
`
`
`Comparison-Blox.comBrainMaflerSpreadsheet
`
`3N3:
`>~>~ml=
`”9-0
`a 558
`00:35
`
`a
`D
`
`IPR2021-01146 Page 00029
`
`

`

`US 6,988,241 B1
`
`1
`CLIENT SIDE, WEB-BASED SPREADSHEET
`
`RELATED APPLICATIONS
`This application claims priority under 35 U.S.C. S 119(e)
`to U.S. Provisional Application No. 60/241,083, entitled:
`Client Side, Web Based Calculator of Steve Guttman and
`Joe Ternasky, filed Oct. 16, 2000, which is herein incorpo
`rated by reference.
`This application is related to U.S. application Ser. No.
`09/714,683, entitled “Client Side, Web-Based Calculator” of
`Steve Guttman and Joe Ternasky, filed Nov. 15, 2000, which
`is herein incorporated by reference.
`
`2
`An embodiment of the web-based spreadsheet allows the
`user to specify both web data and real-time data in the cells
`of the spreadsheet. A described embodiment of the present
`invention allows the spreadsheet designer to enter a URL of
`an image Stored on a network, Such as the Internet. The
`image is then fetched and placed in a cell. The described
`embodiment also allows the spreadsheet designer to enter a
`URL of a web page into a cell. Furthermore, the described
`embodiment allows the spreadsheet designer to Specify
`real-time data, Such as Stock quotes or currency conversion
`information, in the cells of the spreadsheet. Such a cell will
`reflect a current (or specified) day's Stock quote or a current
`(or specified) currency conversion value.
`Moreover, the described embodiment allows the user to
`specify “macros” that enlarge the functionality of the web
`based spreadsheet.
`Advantages of the invention will be set forth in part in the
`description which follows and in part will be apparent from
`the description or may be learned by practice of the inven
`tion. The objects and advantages of the invention will be
`realized and attained by means of the elements and combi
`nations particularly pointed out in the appended claims and
`equivalents.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The accompanying drawings, which are incorporated in
`and constitute a part of this specification, show Several
`embodiments of the invention and, together with the
`description, Serve to explain the principles of the invention.
`FIG. 1 is a block diagram of a network environment in
`which the present invention can be implemented.
`FIG. 2 shows an empty web-based spreadsheet in accor
`dance with a described embodiment of the present invention.
`FIG. 3 is a flow chart showing a method performed by a
`Server of FIG. 1.
`FIG. 4 is a flow chart showing a method performed on a
`client of FIG. 1 to obtain spreadsheet data from the server of
`FIG. 1.
`FIG. 5 is a flow chart showing a method performed on the
`client of FIG. 1 to display a web-based spreadsheet.
`FIG. 6 shows the web-based spreadsheet of FIG. 2
`showing a drop down menu of web data and real-time data
`that can be inserted in the web-based spreadsheet.
`FIG. 7(a) shows an example of adding a web-based image
`to the web-based spreadsheet.
`FIG. 7(b) shows the result of adding a web-based image
`to the web-based spreadsheet.
`FIG. 7(c) shows the result of right clicking on a cell
`containing the web-based image.
`FIG. 7(d) shows an example in which the vertical size of
`the cell containing the web-based image is increased.
`FIG. 8(a) shows an example of adding a real-time Stock
`quote to the web-based spreadsheet.
`FIG. 8(b) shows an intermediate step while the real-time
`Stock quote data is being loaded.
`FIG. 8(c) shows the result of adding real-time stock quote
`data to the web-based spreadsheet.
`FIG. 9(a) shows an example of adding a hypertext link to
`the web-based spreadsheet.
`FIG. 9(b) shows the result of adding the hypertext link to
`the web-based spreadsheet.
`FIG. 10(a) shows an example of adding a real-time
`currency value to the web-based spreadsheet.
`
`15
`
`BACKGROUND OF THE INVENTION
`The present invention relates generally to dynamic hyper
`text markup language (DHTML) web pages and, more
`Specifically, to a method for creating and viewing a spread
`sheet web page.
`Traditional spreadsheets and ledgers are large Sheets of
`paper with columns and rows that accountants use to detail
`Sets of business transactions Such as expenses and revenues.
`A spreadsheet lays out a comprehensive Set of numerical
`values and calculations on a single sheet of paper.
`25
`Conventional electronic spreadsheets are implemented as
`a Standalone program executed on a data processor. A
`desktop electronic spreadsheet is a Spreadsheet that executes
`on a Standalone desktop computer and organizes information
`into columns and rows within an electronic ledger. Like its
`physical counterpart, a desktop electronic spreadsheet can
`add and view data to help explore business issues. An
`advantage of the electronic version of a spreadsheet is that
`data can be added by “formula” instead of by hand. Thus,
`when a number is changed in an electronic spreadsheet cell,
`the effect on the entire Scenario can be seen immediately.
`Ever Since early electronic Spreadsheets, Such as VisiCalc,
`desktop electronic spreadsheets have been used to organize
`and tabulate data. A currently popular spreadsheet is
`Microsoft's Excel 2000 spreadsheet, which allows the user
`to enter data into “cells” of the spreadsheet and to tabulate
`and organize those cells. While Excel 2000 allows the user
`to enter, for example, a link to the World Wide Web (“the
`web’) into a cell, Excel and most desktop spreadsheet
`applications are not designed with the web in mind. What is
`needed is a spreadsheet that allows users to make full use of
`the capabilities of the web and to include data only available
`via the web. This invention allows the spreadsheet to be
`displayed or edited in a web browser, without installing a
`Specific application program.
`
`35
`
`40
`
`45
`
`50
`
`SUMMARY OF THE INVENTION
`A described embodiment of the present invention allows
`a designer to create “spreadsheet' web pages, which can
`then be viewed and used by the designer and/or by others.
`Many people want to use spreadsheets, but only a Small
`percentage actually want to create them. It will be under
`stood that, in the paragraphs that follow, the term “designer'
`is generally used to refer to the person who created and
`designed a web-based spreadsheet, while the term "user'
`generally refers to a person who views or uses the web-based
`Spreadsheet. Some people can be both designer and user. The
`described embodiments of the present invention allow
`people to collaborate and to share spreadsheets over the web.
`The described embodiments allow a user of the spreadsheet
`to email the spreadsheet to others and to embed the spread
`sheet into web pages owned by the user or by third parties.
`
`55
`
`60
`
`65
`
`IPR2021-01146 Page 00030
`
`

`

`15
`
`3
`FIG. 10(b) shows the result of adding the real-time
`currency value to the web-based spreadsheet.
`FIG. 11 shows an example of a cell that contains the sum
`of two other cells.
`FIGS. 12(a)-12(e) show examples of drop down menus
`used in a described embodiment of a web-based spreadsheet
`in accordance with the present invention.
`FIG. 13(a) shows an example window enabling a user to
`email a spreadsheet.
`FIG. 13(b) shows an example email used to send a link to
`a spreadsheet.
`FIGS. 14(a)-14(d) show an example spreadsheet created
`and Viewed in accordance with the present invention and
`including macros.
`FIG. 15 shows a process of allowing a web page user to
`embed a spreadsheet in any web page.
`FIG.16(a) is a flow chart showing a log in process.
`FIG. 16(b) is a flow chart showing a process of saving
`data into “My Files.”
`FIG. 16(c) shows a “My Files' page containing saved
`files.
`FIG. 17(a) shows a format of a member file.
`FIG. 17(b) shows a format of a data file.
`FIG. 18 shows an example of a web-based spreadsheet
`containing real-time data.
`DETAILED DESCRIPTION OF EMBODIMENTS
`Reference will now be made in detail to several embodi
`ments of the present invention, examples of which are
`shown in the accompanying drawings. Wherever
`practicable, the same reference numbers will be used
`throughout the drawings to refer to the same or like parts.
`1. System
`A described embodiment of the present invention allows
`a spreadsheet designer to include web data and real-time
`data in a web-based spreadsheet. The data used in the
`web-based spreadsheet is preferably stored on a server data
`processing System and is sent to a user's browser in response
`to a user request. Thus, a web-based spreadsheet in accor
`dance with the present invention can be viewed from any
`computer or device having browser capability. The user does
`not have to be tied to a spreadsheet stored on a desktop. The
`described embodiment of the present invention is written
`entirely in Dynamic HTML and thus does not require any
`Special downloads, plug-ins or Java. After loading, the
`spreadsheet will execute equally fast with a 28.8 KBPS
`connection or a T3 line. In the described embodiment, a user
`50
`Will always have the most current version of the program
`just as he always has the most recent version of any web
`page he chooses to view. Because it is web-based, the
`described embodiment will not cause any installation prob
`lems and cannot create DLL conflicts. The files describing
`the Web-based spreadsheet are stored on secure servers, so
`a user never needs to worry about backing up data, and can
`access his files from any web-connected computer.
`FIG. 1 is a block diagram of a network environment in
`which the present invention can be implemented. The figure
`includes a client device 102, Such as a computer, data
`processing System network appliance, television-based
`browsing device, wireless telephone, or other wireless
`device. The figure also shows a server data processing
`System 104. In the described embodiment, a web-based
`Spreadsheet is created and displayed from within a user's
`browser 110 on client device 102 using functionality carried
`
`35
`
`40
`
`45
`
`55
`
`60
`
`65
`
`US 6,988,241 B1
`
`5
`
`25
`
`4
`in a spreadsheet page 112 received from the server data
`processing machine 104. The contents of Data Array 114 is
`also included within the spreadsheet web page 112.
`Server data processing System 104 includes server soft
`ware 120, which implements functionality of the server, and
`a spreadsheet datafile 122 that contains information needed
`to create spreadsheet page 112. In Some implementations,
`Spreadsheets of multiple users are stored in a central reposi
`tory on server 104. In such embodiments, server 104 also
`includes a member file 126 listing all the designers who have
`created and stored web-based spreadsheets and listing all
`users who have registered to gain access to the web-based
`Spreadsheets. Certain other embodiments do not include a
`central repository and do not require or use member files.
`The member file 126 includes information for all mem
`bers who have an account with the system. Initially, when a
`user logs into the System, he is asked whether he has an
`account. If the user is a member, he is allowed to access the
`System. In the alternative, if the user is not a member, he is
`prompted to enter his identifying information, which might
`include a password and user ID.
`FIG. 1 includes a source of real-time data 108, which is
`coupled to network 106. Dotted line 107 indicates a path of
`real-time data from source 108, to server 104, to client 102.
`A Member file includes information for all members who
`have an account with the System. Initially, when a user logs
`into the System, he is asked whether he is a member who has
`an account with the System. If the user is a member, he is
`allowed to access the system. In the alternative, if the user
`is not a member, he is offered to enter his identifying
`information, which might include a password and email
`address. The Spreadsheet/Calculator data file contains infor
`mation related to spreadsheets and calculators. Such infor
`mation may include a data ID, which refers to a file name,
`and information for each individual cell of a spreadsheet/
`calculator. In particular, the cell information related to each
`individual cell includes, but is not limited to, the information
`related to cell dependency, formatting, content, and editabil
`ity. The server Software manages the files and communicates
`With the browser. The server Software handles opening,
`Saving, and incorporating live data (such as stock quotes)
`into the files. In addition, the server software returns the
`HTML page and calculator page in response to a request
`received from the client System, via a browser. The client
`system includes browser software and a Data Array. The
`user, Via the browser, sends a request to the server for an
`HTML page. The server software reviews the parameters
`received with the request. If the parameters include a
`“spreadsheet' mode, a spreadsheet HTML page is returned
`to the client. In the alternative, if the parameters include a
`"calculator” mode, the server returns the calculator HTML
`page. If the parameters include an “embed” mode, the server
`returns a fully formed calculator web page. The Dat

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