throbber
(12)
`
`United States Patent
`Davis
`
`(10) Patent No.:
`(45) Date of Patent:
`
`US 7,249,328 B1
`Jul. 24, 2007
`
`USOO7249328B1
`
`(54) TREE VIEW FOR REUSABLE DATA
`MARKUPLANGUAGE
`(75) Inventor: Russell T. Davis, Bethesda, MD (US)
`(73) Assignee: E-Numerate Solutions, Inc., McLean,
`VA (US)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/573,419
`
`(22) Filed:
`
`May 18, 2000
`Related U.S. Application Data
`(60) Provisional application No. 60/183,152, filed on Feb.
`17, 2000, provisional application No. 60/135,525,
`filed on May 21, 1999.
`51) Int. C.
`(2006.01)
`G06F 7/II
`(52) U.S. Cl. ....................... 715/853; 715/538; 707/205
`(58) Field of Classification Search ................ 345/853,
`345/854, 855: 715/503, 853–855, 760, 513–514,
`715/509; 707/205
`See application file for complete search history.
`References Cited
`U.S. PATENT DOCUMENTS
`
`(56)
`
`1/1994 Grady et al. .................. T06/48
`5,276,776 A *
`6/1995 Byrd et al.
`5,423,032 A
`5,603,021 A * 2/1997 Spencer et al. ................ 707/4
`5,737,592 A
`4, 1998 Nguyen et al.
`5,838,965 A * 11/1998 Kavanagh et al. ...... TO7/103 R
`5,894,311 A * 4, 1999 Jackson ...................... 345,440
`5.999,944. A * 12/1999 Lipkin .........
`... TO7 104.1
`6,014,661 A
`1/2000 Ahlberg et al. ................ 707/3
`6,026,397 A * 2/2000 Sheppard ....................... 707/5
`6,058,385 A * 5/2000 Koza et al. ..
`... 706.13
`6,097.888 A * 8/2000 Simonyi ..................... T17,144
`6,206.388 B1
`3, 2001 Oluboter
`6,240,407 B1* 5/2001 Chang et al. .................. 707/2
`
`6.256,030 B1* 7/2001 Berry et al. ................ 71.5/854
`6,314.562 B1* 11/2001 Biggerstaff ................. 717,156
`
`(Continued)
`
`OTHER PUBLICATIONS
`
`Bruce Hallberg et al., “Special Edition. Using Microsoft(R) Excell
`97, Bestseller Edition,” Quer) Corporation (1997).
`
`(Continued)
`Primary Examiner Ba Huynh
`(74) Attorney, Agent, or Firm—Finnegan, Henderson,
`Farabow. Garrett & D
`LLP.
`arabow, Qarre
`unner,
`(57)
`ABSTRACT
`
`Methods and systems provide a “tree view” for a markup
`language referred to as Reusable Data Markup Language
`gllag
`p
`gllag
`(“RDML). Generally, a tree view comprises the compo
`nents necessary for automatically manipulating and display
`ing a graphical display of numerical data contained in
`RDML markup documents. RDML is a markup language,
`such as the Hypertext Markup Language (“HTML') or the
`Extensible Markup Language (XML). Generally, RDML
`facilitates the browsing and manipulation of numbers, as
`opposed to text as in HTML, and does so by requiring
`attributes describing the meaning of the numbers to be
`attached to the numbers. Upon receiving RDML markup
`documents, the tree view transforms, formats, manipulates
`and displays data stored in the markup documents using the
`attributes describing the meaning of the data. The tree view
`uses the attributes of the numbers to, for example, facilitate
`the simultaneous display of different series of numbers of
`different types on a single display. It automatically displays
`the relationship between series of numbers while displaying
`appropriate labels, titles, number precision, etc. A tree view
`may be a component of a data viewer used to retrieve,
`manipulate, and view documents in the RDML format.
`
`16 Claims, 40 Drawing Sheets
`
`
`
`
`
`
`
`
`
`
`
`w8w Chart Fawortes Tools help
`
`stag
`
`
`
`start Perioct940
`
`iw
`
`Tokal Surplus efficit.)
`
`1402
`
`1404
`
`sy Table at: Take 1: Summary of Recels, Oasys
`Suriansry of Rscsits, outlays
`
`
`
`
`
`1579.292
`1s23s
`(.333
`
`1422
`
`Teewis
`
`----------
`Focines detaStreetMacros HTMLBrowser
`
`

`

`US 7,249,328 B1
`Page 2
`
`U.S. PATENT DOCUMENTS
`
`T15,501.1
`
`6,317,750 B1 * 1 1/2001 Tortolani et al. ....... TO7/103 R
`6,349,307 B1
`2/2002 Chen
`6,356,920 B1* 3/2002 Vandersluis ...........
`6,366,915 B1
`42002 Rubert et al.
`6,370,537 B1 * 4/2002 Gilbert et al. .............. 707/101
`6,370,549 B1
`42002 Saxton
`6,373,504 B1 * 4/2002 Nielsen ...................... 345,739
`6.421,656 B1* 7/2002 Cheng et al. ..
`... TO7.2
`6,460,059 B1 * 10/2002 Wisniewski ....
`715,503
`6,470,349 B1 * 10/2002 Heninger et al. .
`707/102
`6,493,717 B1 * 12/2002 Junkin ...........
`707/102
`6,505,246 B1* 1/2003 Land et al. ....
`... 709,224
`6,507,856 B1* 1/2003 Chen et al. ....
`... 715,513
`6,591.272 B1* 7/2003 Williams ....
`707/102
`6,594,653 B2 *
`7/2003 Colby et al. ................... 707/3
`
`
`
`6,615.258 B1* 9/2003 Barry et al. ................ 709,223
`6,629,094 B1* 9/2003 Colby et al. .
`... TO7/4
`6,635,089 B1 * 10/2003 Burkett et al. .............. 715,513
`6,745,384 B1* 6/2004 Biggerstaff ................. 717,156
`6,912,293 B1* 6/2005 Korobkin....
`382/100
`2002/009 1696 A1* 7/2002 Craft et al. ................... 707/10
`2002fO198985 A1 12/2002 Fraenkel et al. ............ TO9,224
`2003/0167213 A1* 9, 2003 Jammes et al. .
`... 705/27
`2005/0182709 A1
`8/2005 Belcsak et al. ............... 705/38
`
`OTHER PUBLICATIONS
`Elliotte Rusty Harold, “XMLTM Bible.” IDG Books Worldwide,
`Inc.. An International Data Group Company (1999).
`& 8
`s
`David Megginson, “Structuring XML Documents.” Prentice Hall
`PTR, Upper Saddle River, NJ (1998)
`, Upp
`* cited by examiner
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`mJ
`
`ummcmummam
`
`END£20m
`
`EmEsooQNor
`
`
`
`
`
`
`
`
`
`Mmo—m2505.9505
`
`
`
`9mm.M,30309....__>_om#0?
`
`1a
`Sheet 1 of 40
`0
`
`US 7.249,328 B1
`US 7,249,328 B1
`
`
`
`4352:8E:M>cmEvtoaxmoor
`
`'02
`
`_‘.0."—
`
`
`
`
`

`

`U.S. Patent
`U.S. Patent
`
`l.HJ
`
`70024,
`
`teehS
`
`04
`
`US 7.249,328 B1
`US 7,249,328 B1
`
`$2580
`
`09205
`
`N _
`
`Z
`
`n_com0\
`
`wowDuo0%ommnflmo39:.
`
`
`wow$905«.383
`
`mum§205298
`
`9%$8st9.55
`
`295:898.245:21
`
`.m.mem
`
`2888mm
`
`Ems.
`
`2>92.in
`
`@
`
`mom
`
`
`
`E
`
`IboEoS.
`
`row
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 3 of 40
`
`US 7,249,328 B1
`
`
`
`
`
`
`
`
`
`Existing
`Sigai erver,
`
`Oracle, etc.)
`
`
`
`
`
`226
`
`Main
`components
`
`222
`
`220
`
`RDML
`Document
`Editor
`
`RDSL Style
`Sheet Editor
`
`106
`
`RDML
`DOCument
`
`RDSL Style
`Sheet
`
`RDML
`Document
`Formatter
`
`
`
`
`
`
`
`RDML.
`image
`Database
`
`RDML
`DOCument
`Server
`
`RMML. Macro
`Software
`Development
`Kit
`
`RDML/XML
`Search
`Engine
`
`RMM Macro
`DOCument
`
`RDML Data
`Viewer
`
`Various RDML
`Plug-in
`Applications
`
`FIG. 3
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`Jul. 24, 2007
`
`Sheet 4 of 40
`Sheet 4 of 40
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`807
`wov
`
`
`
`
`
`SN
`
`
`
`maniac—tnc.nab!“
`
`«3385.c.a«2532:.son
`mEmgmmflc.agauge—FEa35.255”5a,.
`
`
`
`
`
`
`“2335.film
`
`,y
`
`
`8.3.51?QRȣ2253E32355.9:
`
`
`
`
` .Hlnq,1:1‘411111‘V1
`
`
`
`
`
`
`
`Em:$3,.9...}
`32.x...fl
`
` ,4.2.8.”.
`
`*Ma
`
`| | |
`
`
`
` éoa...£3.62.58.8w:2.23:3.«5.2.2....3Mi:é329:3birch.
`
`
`
`
`
`3.2:.$2.5.3%?-
`
`
`
`.msficza.3.".7
`
`Z07
`Nov
`
`#707
`vov
`
`
`
`
`
`
`

`

`U.S. Patent
`
`7002
`
`04f05tw
`
`US 7,249,328 B1
`
`05m.9"—
`
`l._u.JOB.
`
`
`
`
`
`zmguflunuounu.-.._.“HS-Io...
`
`
`
`momEgan-8359.,“inheaizflsaonA,_
`
`
`
`hSings?“3.26€28vomSSavagwm55gate$535
`
`7m.cars...838.5261.9..
`4a..
`
`
`
`..51.iii-ammo--BfiomwmcaamEma-2.9
`
`
`
`
`$5....33¢.2mm25m
`
`
`
`
`
`
`
`_..«€535.33
`
`
`
`
`
`
`
`
`
`mom,,..i,.;;..-...2.i....--.---......-22-22-321.-:3:-2,....,1.1%-.,.,-._
`
`
`Egg,VEESUEM..gang-{2..—.._..£58
`
`
`
`
`
`
`
`03.—# 5:2...23.54:2.qu
`
`
`_-if-.._El:.I(EIE!ex?L35139.mg—-3¥¢.,
`
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 6 of 40
`
`US 7,249,328 B1
`
`
`
`User submits data request
`to web server and RDML
`data server via the viewer
`
`602
`
`RDML server queries the
`databases
`
`604
`
`The databases return the
`results to the Server
`
`606
`
`The Server Creates an
`RDML document
`
`608
`
`The server returns the
`RDML document to the Web
`server and on to the viewer
`
`610
`
`FIG. 6
`
`

`

`U.S. Patent
`
`2
`
`7t
`
`1
`
`>658;
`
`u.mumcmzVONJ30509...
`
`3.533.MBummociBEEQX.533.
`
`
`lo.53:E03304.20”.429..
`
`35wow
`
`
`M505323Bowen:0.oazmumaaw
`
`23metawon
`
`:20
`
`28
`
`mK
`
`w:vKNEN2
`
`
`
`
`
`.3952co_._:_._oowe?Emnmfluo
`
`35..
`
`99m
`
`
`
`
`
`Angie:094.29..a523”.42x
`
`.0389.
`
`w0FNwumtw—Eh2058Emma“:9.82Sm2058“.wmn
`
`ma
`
`595.2
`
`0a:_m>.x
`
`
`
`0054.25.:
`
`EwEauoD
`
`vow
`
`355:5leVOF
`
`Eon:
`
`4.22m
`
` .832m0/,42k:hummmwnoiSnow—fin:”fir—MsfinwvEoEBoDM_wdam422m2:.7,canSNmnownwow
`
`
`w<5.9”.n.96
`
`
`
`
`
`
`
`
` 89.25U.83523.0.5638
`
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 8 of 40
`
`US 7.249,328 B1
`
`Text
`Document
`
`Object/
`Process
`
`
`
`
`
`Output
`Application
`("View")
`
`Object
`Storage
`
`
`
`Graphical
`User
`Interface
`("GUI")
`
`Third-Party
`Software
`Component
`
`Input/
`Output
`Process
`
`FIG. 7B
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 9 of 40
`
`US 7.249,328 B1
`
`START
`
`DOCument reader finds
`and receives document
`
`XML parser parses
`text
`
`RDML processor
`processes the text into an object
`
`X-value transformer 810 type
`checks and manipulates x-values
`
`Primary data store 812 stores active
`objects of the same type for display
`
`Views display active objects
`stored in primary data store
`
`802
`
`804
`
`806
`
`808
`
`810
`
`812
`
`END
`
`FIG. 8
`
`

`

`S
`
`m
`
`t
`
`J
`
`42
`
`0
`
`04f0
`
`US 7,249,328 B1
`
`I«Qwv_C=mmgm;
`
`$5
`
`tIeaGE6x:__69E:%wmmNNm
`0I1xEmu
`
`M3m#5
`
`2m«5.
`aDULDOWIUOUFCUH
`
`U.m5mom
`
`3mg05PII
`o2563:8858SS
`
`.vom
`
`
`
`D0238.5”.ouSSImcEmEB.
`
`hovmocloanE
`
`2IIa25«aficoumEB.3:3:
`
`mom
`
`ummlmwocxc:Hwma1vmm1arm
`
`wNm
`
`NNmomm0mm$6IHmmm
`.va
`
`mom
`
`.om|E£_Ioc__
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 11 of 40
`
`US 7,249,328 B1
`
`Locate Documents
`
`Select DOCument to be
`Transformed
`
`ACCeSS Line tem
`
`
`
`
`
`
`
`
`
`
`
`
`
`Determine Desired
`Transformation
`
`Access Unit, Magnitude,
`Modifier, Scale, Measure,
`and Adiustment Attributes
`
`Determine Conversion
`Factors for Each Attribute
`
`Multiply the Conversion
`Factors to Manipulate the
`numbers of the DOCument Or
`Line tem
`
`Display Transformed
`DOCument. On Line tem
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Another
`Line item to be
`ransformed 2
`
`
`
`Another
`Document to be
`ransformed2
`
`
`
`
`
`
`
`
`
`FIG. 10
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 12 of 40
`
`US 7,249,328 B1
`
`START
`
`1102
`
`1104
`
`X-value transformer
`receives a new document
`
`Determines type of active
`documents in primary data store
`
`1108
`
`
`
`Yes
`
`Add to currently
`active documents
`
`New
`object is same
`type as active
`documents
`
`NO
`
`
`
`
`
`User chooses to
`reject object?
`
`Reject the
`document
`
`
`
`
`
`
`
`User chooses to
`erase Current
`active?
`
`
`
`
`
`
`
`Erase Current
`active documents
`1120
`
`Store new
`document
`
`
`
`
`
`
`
`
`
`
`
`
`
`1106
`
`1112
`
`1116
`
`1122
`
`insert new document
`as standby object
`
`END
`
`FIG. 11
`
`

`

`J
`
`70024,2
`
`S
`
`04f0B
`
`US 7.249,328 B1
`US 7,249,328 B1
`
`
`
`<N—..0."—
`
`U.S. Patent
`U.S. Patent
`
`vow?
`
`
`
`aOEm83
`mNew?
`
`
`

`

`U.S. Patent
`U.S. Patent
`
`mJ
`
`70024,
`
`1teehS
`
`04M
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`
`
`4own
`2.New?
`3353..u8I
`
`
`
`
`
`
`
`mwr.0.”—
`
`

`

`U.S. Patent
`U.S. Patent
`
`J
`
`7002
`
`hS
`
`04f0
`
`
`
`.32..EiuI
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`
`
`Our.0."—
`
`
`
`
`
`Mwow.ua?
`
`BOONFmattesn<oON“a,afififim
` 522>5::=5:\.\
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 16 of 40
`
`US 7,249,328 B1
`
`Primary Data Store
`
`712
`
`
`
`RDML Lineltem
`
`FIG. 13
`
`

`

`U.S. Patent
`
`US 7,249,328 B1
`
`
`
`
`
`
`
`
`
`
`
`lamaya ered Taegu ^^
`
`

`

`US 7.249,328 B1
`US 7,249,328 B1
`
`
`
`m3..0."—
`
`U.S. Patent
`U.S. Patent
`
`LHJ
`Jul. 24, 2007
`2
`0
`
`ehS
`04
`Sheet 18 of 40
`.m
`
`8wow?
`
`
`
`
`
`7________
`0.
`
`4,,._____E_E2.1;1x:1xxx.
`
`tébiEBE-EEflung.owe285—851.
`
`1gbolklSung-953.3-9CNN
`VCVFmile—augluhggflaéhigifid_>/k/N—\N—‘
`
`33.55.5:8.\
`
`
`u2:o.953962...3.:I
`
`
`
`3...it...5.»I
`
`
`
`vmm—«8—Saw98—n8—vaFg—
`
`we:
`
`OZZ
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 19 of 40
`
`US 7,249,328 B1
`
`
`
`
`
`
`
`SO7 ), "SDI
`
`OZZ
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 20 of 40
`
`US 7,249,328 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`|
`
`
`
`sausines ospraw- mag
`
`|
`uasan :
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 21 0f 40
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`
`
`
`
`
`
`
`
`”>3Rubia-5'0
`
`IUFIHU
`
`m3.
`
`
`
`..Jl;“.3me
`
`x65«35'
`
`
`
`SUIpad-5..
`
`39.53
`
`#6....x1.-
`
`0E
`
`
`
`own
`
`

`

`U.S. Patent
`U.S. Patent
`
`l.HJ
`
`70
`
`teehS
`
`04
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`mm:
`
`
`
`091.
`
`“.3..
`O.“—
`
`
`
`
`
`
`fz...5.90$3832Banana,2wt..86."
`m22E.35%oa22:2flag.M323m3.53595an.on:a.2.5
` a....§.g.s.......§§%§
`8.30.52...“
`
`
`
`
`Facaxnoavguficsamrtefimgfino
`
`
`4991.0.3,mmu..2aQ2%.32%28H3&2:
`
`teaE.».3ema_c...
`
`133.131..‘1..uiii:|..
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 23 of 40
`
`US 7,249,328 B1
`
`
`
`1502
`
`
`
`1504
`
`
`
`the Line tem
`
`
`
`
`
`1506
`
`
`
`1508
`
`
`
`FIG. 15A
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 24 of 40
`
`US 7,249,328 B1
`
`1512
`
`Remove existing data
`
`1514
`
`Get RDMLDOC from PDS
`
`1516
`
`1518
`
`1520
`
`1522
`
`Get RDMLLineltem
`
`Normalize X data
`
`Fill X Axis With data
`
`Fill YAxis with data
`
`1524
`
`Mark Which Y Axis This Series is On
`
`1526
`
`1528
`
`Yes. Add Axis
`
`NO
`
`1530
`
`Set number formats for axis labels
`
`1532
`
`1534
`
`Set the number precision
`
`Update the footnotes
`
`1536
`
`Run any macros that are applied
`
`FIG. 15B
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 25 of 40
`
`US 7,249,328 B1
`
`1538
`
`1540
`
`1542
`
`1544
`
`1546
`
`1548
`
`Set Y 1 Title
`
`Set Y2 Title
`
`Update the Series Styles
`
`Update the Chart Title
`
`Update the Legend
`
`Update the X Axis
`
`1550
`
`Update the Number Precision
`
`1552
`
`1554
`
`1556
`
`Update the YAxis
`
`Update the Chart Type
`
`Update the Footer
`
`1558
`
`Set the maximum X value
`
`
`
`1560
`
`Repaint the Graphical Chart
`
`END
`
`FIG. 15C
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 26 of 40
`
`US 7,249,328 B1
`
`
`
`_—ccm—menu
`
`
`
`Nmmmmooomvmmmrm:
`
`
`
`
`
`5:335ucw.fia....«coEaSgao.zofiamaxflu
`
`5:92.2833:5I
`
`wocmcflEmEucm5:230I
`
`EuEu=EoiI
`
`
`.0532:>55:I
`
`
`
`once—ans.Eu:-99.50
`
`80.83%
`
`8o8m.5.mBoooémdvmW83938
`_.”-
`
`I.
`
`..so8am.a.w.
`
`26.808
`
`
`
`
`
`flaimmmwm:.1@E@_@
`
`
`
`
`
`
`
`
`
`
`EB.Waco—03369.6gmflgomgemfiug”EH2:”E25000200E.E...
`
`
`
` .,2w:
`
`
`
`
`
`«.02,moigo...55.3»;“3‘2m
`
`8,3523ES.\
`
`
`
`
`
`
`
`_,unmmmm:mmmmmmI.;Emmet;9.3%:
`
`$0332820
`
`
`
`ammmf......BREE
`
`m52Frwmmmxmm
`
`_«anew
`
` fmxm‘mwmr_;.i;:afiEfiEWBaEEEmEm5m@2525Eu4th.EmEaemSmn£0530:Emmomnm:WEoEmsuoEE238Z_,oucwzofifisEB:25anEE883‘35.85.”.
`
`Bag—=2_
`
` 4
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`or
`
`0....—
`
`
`
`
`
`waBEm.__2._.Iwmote—zM‘Emswwfio88:80:,
`
`
`
`o:
`
`VNN
`
`
`
`

`

`U.S. Patent
`U.S. Patent
`
`4
`
`aehS
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`832.
`
`E333233033303:5I,5:33.53«no:9550
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`“EE!5.3523412.1,
`
`,so:202”3.5;“.E5263Ea:
`
`
`
`
`
`.IU...23cozmoavm30anv0EEOIsJcozmoavwan.“000.036..”
`
`
`2322$a>=2=3mcaxooofimmdwm.
`7Iafiaficgmfii._sm98mmmva.
`
`coamoauw.2,m:22E;38:38,:3:51!:9863mmmovk
`:85van22:35.5302:0..I8080vv
`
`
`
`
`
`
`
`
`4"Ea.“uwusuup.26423Hezofiuouo>uouuwuuo.anmufluumM230.25%uafluwunfiflwfimvacaowucusuuHufiuunmuouuauuo.mamagnum
`hucucouumumomuo34.”qu2magnum7Laosuufiuuhung—ovumEBhuouauauauuouuauuo.munufiuum2"Eoflcusum
`
`
`
`0"354835:#355538manufiuum.wNN
`
`
`
`
`
`
`15?};«E;3,($2...xlgia:11s.Etuitti,i$tt.ix..§£iixllféxi454x6
`
`
`
`
`
`
`· ·------~- -> - - - - - - - --&-------- ~~~~ · · ---- - -
`
`t..9".Not
`
`HEEEEEEEIIo__E:9:_.08menu
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 28 of 40
`
`US 7,249,328 B1
`
`RMML Document Type Definition
`
`1800
`
`N
`
`1810
`
`918
`
`macro Source
`
`Contact info
`
`1804
`
`1812
`
`918
`
`1802
`
`macro doc
`
`916
`
`1816
`
`922
`
`1814
`
`1818
`
`1806
`
`1820
`
`1822
`
`1824
`
`1826
`
`gu
`
`926
`
`
`
`1808
`
`macro references
`
`error handling
`
`1828
`
`- - - - - - - - - - - - - - -
`
`- 930
`
`- - -
`
`li class
`
`1830
`
`testing
`
`1802
`
`1834
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`Jul. 24, 2007
`
`S
`
`92m
`
`04f
`
`7S
`
`23,9
`
`1
`
`h35
`
`0H
`
`
`
`.253.Bows.
`
`own
`
`BI8<20.".
`
`Uv9mm?0N2m2?
`
`
`
`EEQJOBNE9%J22m
`
`ommvmoor
`
`
`
`bouomn.9922000422m
`
`
`
`mrmrmom_
`
`
`
`
`
`Emeaoo.__>_s_m
`
`vov
`
`533...000422m
`
`92
`
`
`

`

`U.S. Patent
`
`mJ
`
`e
`
`f
`
`US 7,249,328 B1
`
`
`
` _ovmw“7_mw_2500.692w_nm:m>s."4a_J_
`
`h_cuommv"
`
`
`
`0_0_3=3th50985.IIIIIIIIIIIIIIII_au
`
`0_4_
`
`___
`
`
`
` _.uomwwvmwwwawu
`
`
`
`
`
`§8>|5098228m:50Boas.$3150982u
`
`
`
`m2..0."—
`
`____
`
`
`
`.mcma.mEESmn—_w:mn_cozatommo
`
`
`
`
`
`39390am_20m
`
`
`:o_EE:ww<Bow—2a...3.
`
`mm?
`
`
`
`mm“vaF
`
`
`
`

`

`U.S. Patent
`U.S. Patent
`
`.__m____“.Bmamsm“owe.
`
`____mnn32m_82_M,n_>55:
`98.2
`
`______________________
`
`
`
`.mmmcméSow—2
`
`33..
`
`98:20
`
`m;
`
`
`
`
`
`
`
`c0595“.$203Kw_nm:m>“50Sums. f__M"vmmrNam?ommp"a__m__S___828$.
`
`
`
`
`
`
`
`
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`_
`
`______
`
`u82
`
`cozamoxm
`
`mSEBm
`
`
`
`Dar.0."—
`
`__56.99:._555omom2E5m3E5
`n_\,\omm_.
`
`
`

`

`U.S. Patent
`U.S. Patent
`
`70024.,2LHJ
`Jul. 24, 2007
`
`Sheet 32 of 40
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`Sagnfiozfifiuzaagnfiiig
`t....7220...:5‘50w82.:5&5asf.r,._55:03:600,.5520n,.fl.5550.mEma
`
`
`082lw.92504..:iZ?v.82333.50
`
`h-.29:35.3a”82230
`
`
`...._@®0©m@®gog
`
`
`
`ggtxgfiéafimmg
`
`
`
`5:3:31.131
`
`"Suns.
`
`imo
`
`Z8/
`Nmn
`
`
`
`
`
`«.838mnflvmvflymy;tgfiuhflg;_,HHEWLW.-.53.7.4.:-
`
`NOON0N3
`
`Z
`
`<8.9".
`61-I
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 33 of 40
`
`US 7,249,328 B1
`
`sºnu proffersio O
`
`oboreae yng @
`
`
`
`
`
`© § @ @ @ @ ?
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`Jul. 24, 2007
`
`Sheet 34 of 40
`Sheet 34 of 40
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`
`
`ommw
`
`53:55.5#5:\
`
`Nmn
`
`00Z
`Com
`61-I
`9".
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`Jul. 24, 2007
`
`Sheet 35 of 40
`Sheet 35 of 40
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`
`
`009.
`
`.u.¢(.x,§.....§:§.§{is‘\.n‘\Rx(I)!
`
`
`
`
`
`
`
`
`
`.Hiflhus.3%..SF3.,\‘n\\.~a.¢;‘nzh$.§..45.5315“523545.
`
`.{Sgainiézi.,3.1516;mxH.avnuisfimfisiwuxfiafl,
`.iii».3«flail.-
`
`Nmn
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 36 of 40
`
`US 7,249,328 B1
`
`
`
`2102
`
`User puts data
`in table form
`
`2104
`
`2106
`
`2108
`
`Open and
`initialize dialog
`box
`
`User fills in
`default values
`for attributes
`
`User clicks
`"OK" to Create
`attribute
`Columns
`
`2110
`
`Open and
`initialize dialog
`box
`
`2112
`
`Create each
`element,
`nesting as
`necessary
`
`2114
`
`Save to file
`
`FIG. 21
`
`

`

`U.S. Patent
`U.S. Patent
`
`Jul. 24, 2007
`Jul. 24, 2007
`
`Sheet 37 of 40
`Sheet 37 of 40
`
`US 7,249,328 B1
`US 7,249,328 B1
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`<NN.0."—
`
`
`
`
`
`
`
`
`
`
`
`
`
`M...9:85to::9
`
`
`
`3.3.233932mnew$39,
`
`
`
`3:.megs332:3.
`
`
`
`
`
`
`
`?j?
`
`
`
`
`
`
`
`1.123.2
`
`
`
`
`cozauzuwEE385.65155.112%.28,
`
`| 4
`9
`9 G ??
`
`
`
`gem2.1!:.002w:ouo.u_2m
`
`
`”My?,‘.{;;.:II.figgggfiggfififi
`
`
` 8TIMEIgffiamanages@meQ&@mW@B®.@_
`
`
`
`
`
`
`
`.95.2__E:5:71”;Um“..mmm71.1.anH55.x!:1,‘EHL.392__.m_EH
`
`
`
`
`
`
`
`
`
`
`
` .
`
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 38 of 40
`
`US 7,249,328 B1
`
`| w || (i )
`
`TXTTTTTTTHOE
`
`8.292
`
`C
`
`!!!!!!!!!!!
`
`ZIBITIOI!),
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Xn Spunod
`Sn $·····
`
`
`
`EZZ "SDI
`
`Hill 88.
`
`
`
`ea. al ess
`
`

`

`U.S. Patent
`
`;hfl.24,2007
`
`Sheet 39 of 40
`
`US 7,249,328 B1
`
`
`
`
`
`
`
`was...53.33;”850m
`
`
`
`$32345¥§”350m
`
`
`
`
`
`26;.53.};”3.39m
`
`Ewan.
`
`
`
`“musem;.§w
`263.3.1337»
`
`
`
`
`ml:32%:$5.5:5:29
`
`Ewan.6%
`fifiwflIIl
`
`vi.
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`EmEéuSOEcru".Eat2.:ng.
`
`
`
`.:.:22....::Hm:£o:_:_<:3:1...
`
`
`
`
`
`
`
`
`
`202:6$55.50.8>563
`
`
`
`mamuzm“525260.5SE:
`
`
`
`cozwusumzm
`
`ififlie
`
`egggfia:
`
`12529
`
`
`
`.21.“:._.._..,.
`
`
`
`3.BE:33E:Eamgm@@
`
`23a.....86.3355E
`
`womm
`
`wommwommwommwommwomm
`
`womm
`
`womm
`
`
`
`4§$Laafig:@a3Pawn;
`
`UNN.0_u_
`
`
`
`
`
`
`
`
`
`

`

`U.S. Patent
`
`Jul. 24, 2007
`
`Sheet 40 of 40
`
`US 7,249,328 B1
`
`
`
`
`
`CIZZ "91-)
`
`| ¡ ¿
`
`

`

`US 7,249,328 B1
`
`1.
`TREE VIEW FOR REUSABLE DATA
`MARKUPLANGUAGE
`
`RELATED APPLICATIONS
`
`This patent application claims priority to Provisional U.S.
`Patent Application No. 60/135,525, filed on May 21, 1999,
`and Provisional U.S. Patent Application No. 60/183,152,
`filed on Feb. 17, 2000, which are incorporated herein by
`reference.
`The following identified U.S. patent applications are also
`relied upon and are incorporated by reference in this appli
`cation.
`U.S. patent application Ser. No. 09/573,778, entitled
`“Reusable Data Markup Language,’ and filed on the same
`date herewith.
`U.S. patent application Ser. No. 09/573,780, entitled
`“Reusable Macro Markup Language,’ and filed on the same
`date herewith.
`U.S. patent application Ser. No. 09/573,413, entitled
`“Chart View for Reusable Data Markup Language, and
`filed on the same date herewith.
`
`10
`
`15
`
`BACKGROUND
`
`2
`come some of these limitations. XML is a free-form markup
`language with unspecified tags, which allows developers to
`develop their own tags and, in effect, create their own
`markup languages geared toward specialized tasks. In XML,
`the tags must be organized according to certain rules, but
`their meaning is flexible. Unlike HTML, XML describes
`structure and meaning, but not formatting. As such, different
`professions may develop their own specialized markup
`languages. For example, if a developer were to create a
`markup language that describes books in XML, the devel
`oper could create specifically meaningful tags for "title.”
`“author,” and “publisher, something not possible in HTML.
`Although XML’s free-form structure permits the develop
`ment of markup languages. Such individualized markup
`languages are not compatible with each other because the
`use of the tags is not standardized in that different users use
`the tags for different purposes.
`In today's business world, problems that typically accom
`pany data manipulation often increase expense and diffi
`culty. One such problem is that often data and the docu
`mentation that describes the data are not both in electronic
`form. This conventional approach to database and spread
`sheet information often dictates that expensive database
`administrators are required to make transformations anytime
`data is being transferred from one system to another, expen
`sive analysis of printed documentation is required in con
`nection with any programming tasks, and the output rarely
`contains any indication of the original sources, structures,
`and manipulations that created that output. In PC-based
`systems, creating documentation for data is conventionally
`left up to the user: typically there is no machine-driven effort
`to collect the documentation from the user, format it, and
`save it with the data, thereby eliminating the ease of reuse
`of the data.
`Another obstacle impeding efficiency in conventional
`databases and spreadsheets is that calculations occur at too
`low of a conceptual level. Calculations in typical numerical
`analysis programs operate on a single “cell” in a spreadsheet
`or a single “record in a database. Analytic operations on
`single values at a time can be slow and prove costly when
`many different cells or record values are involved.
`The lack of a standard markup language facilitating the
`browsing of numbers leaves no way to read, automatically
`manipulate and display differing types of numerical data
`read from multiple online sources on a single chart. Human
`intervention is required to recognize differing types of
`numerical data and conform the data so that it may be
`combined and displayed coherently on charts, graphs and
`reports. Conventionally, formatting of graphical charts dis
`playing numerical data requires manual manipulation when
`series of different types of data are combined. Furthermore,
`no visual cue is given regarding the relationship between
`different numerical data sets.
`The computer industry is further hindered by the fact that
`data and analytic routines are not standardized. While the
`computer industry has developed standards for file formats
`and function-level interfaces, it has not developed a general
`data format or content-analysis standards. This results in
`expensive translation of data between systems, industries,
`companies and users using different protocols.
`Analysis routines in conventional spreadsheets typically
`take the form of “spreadsheet macros.” Macros are essen
`tially short programs which perform well-defined, generally
`limited, tasks. Millions of spreadsheet users have used
`spreadsheet macros to automate mechanical tasks involved
`in manipulating the numbers in their spreadsheets. But the
`great investment in spreadsheet macroS has generally been
`
`25
`
`30
`
`35
`
`40
`
`1. Field of the Invention
`The present invention relates generally to data processing
`systems and, more particularly, to a computer markup lan
`guage for use in a data browser and manipulator.
`2. Related Art
`Currently on the Internet, transmissions and communica
`tions are commonly conducted using a communication pro
`tocol called the HyperText Transfer Protocol (“HTTP)
`which can be used to pass files and documents formatted in
`the HyperText Markup Language (“HTML'). A markup
`language is a way of embedding markup "tags, special
`sequences of characters, that describe the structure as well as
`the behavior of a document and instruct a web browser or
`other program on how to display the document. Typically,
`documents or web pages formatted in HTML are simply
`ASCII text files that mix ordinary text with these markup
`tags.
`HTML has a relatively limited structure that defines a
`fixed set of tags with specific purposes. Further, HTML
`typically only works with text and images and typically only
`45
`instructs a browser on how to display a document: the
`browser may read and display characters but does not
`“understand the data content. To the extent that HTML
`browsers present numbers in their display, they still are not
`interpreted as numbers just text. Hence, HTML documents
`are not interpreted as “data” but rather as formatting instruc
`tions for displaying images. Users cannot 'Surf through
`numerical data, to see graphs, apply transformations, com
`bine numbers from different web pages, or load numbers
`into a spreadsheet in a manageable form. The numbers
`cannot be directly read by an analytical program without
`human intervention to cut-and-paste the text, determine the
`data type, etc. Consequently, conventional analytical pro
`grams allow for ad hoc review and manipulation of abstract
`numbers (e.g., a spreadsheet program or database program),
`but do not directly read their data from online sources. Such
`programs may perform statistical analysis, structural analy
`sis and simple transformations on data once it has been
`entered and interpreted.
`Given HTML’s limited capabilities, and SGML’s
`unwieldy complexity, a markup language called Extensible
`Markup Language (XML') was developed to help over
`
`50
`
`55
`
`60
`
`65
`
`

`

`3
`underutilized because Such macros are “write once, use
`once” types of software; they are rarely reused by others.
`There are at least eight reasons that current programming
`languages and spreadsheet macros are not reusable or por
`table. One such problem is that spreadsheet data references
`usually are based on physical locations. Suppose a macro
`writer puts an interest rate assumption in cell “C4, and
`another person has a spreadsheet with the interest rate
`assumption in cell “BR47, a macro that expressly refer
`ences the absolute cell location C4 will not be usable in the
`second spreadsheet.
`Another related problem is that numbers in spreadsheets
`have no measurement or semantic designators describing
`their meaning. One spreadsheet may work with dollars in
`millions, while another works with dollars in thousands. The
`same macro cannot be used on both spreadsheets without
`human intervention to sort out all the inconsistencies and to
`modify one of the spreadsheets to match the other. As
`another example, a macro may be written to divide Stock
`price by earnings to get a P/E ratio, but numbers in a
`spreadsheet have no meaning besides words in the cell to the
`left or above the numbers. Absent a standard location and
`Vocabulary, those indicators are useless.
`An additional problem with conventional spreadsheet
`macros is the lack of documentation. Because macros are
`typically only usable by their creators on the single spread
`sheet they wrote them for, they tend to be totally undocu
`mented: no common-language description, no help files, no
`data standards as to permissible values, Source contact list,
`license information, etc.
`Furthermore, there is no mass distribution mechanism for
`macros. Spreadsheet macros are not web-friendly: they are
`generally limited to one spreadsheet brand and one platform,
`do not support hyperlinks, and cannot be searched by search
`engines. Also, they are not Supported by directory or clas
`sification system, and have no ready market.
`Even further, users typically do not include unit testing,
`validity testing, error handling, and other end-user protec
`tions on the macros that they write. The result is that users
`may be wary of the output of macros that they might try to
`add to their spreadsheets.
`Conventional spreadsheet macros have difficulty making
`graphical interfaces to the data. End users of a foreign macro
`do not want to have to understand every cell and location
`constraint, every limitation on valid values that can be input
`and so forth. The lack of related graphical components
`further fuels this problem.
`Finally, conventional spreadsheet macros are either too
`small to be worth a marketing effort, or too difficult to use
`to find a large audience. This results in a lack of a business
`incentive to make them. It is therefore desirable to overcome
`the aforementioned problems and other related problems.
`
`SUMMARY
`
`Methods and systems in accordance with the present
`invention provide a markup language, referred to as Reus
`able Data Markup Language (“RDML'), that permits the
`browsing and manipulation of numbers and provide a related
`data viewer that acts as a combination Web browser and
`spreadsheet/analytic application that may automatically read
`numbers from multiple online sources and manipulate them
`without human intervention. Using the markup language,
`users may browse online sources using numerical-based
`queries, and the data viewer may automatically combine and
`manipulate multiple documents on a single display.
`
`US 7,249,328 B1
`
`4
`In accordance with an implementation consistent with the
`present invention, a method in a data processing system is
`provided that receives a first markup document and a second
`markup document, both the first markup document and the
`second markup document containing numerical values and
`tags reflecting characteristics of the numerical values. The
`method automatically combines the first markup document
`and the second markup document into a single data set and
`displays the single data set.
`In accordance with another implementation, a method in
`a data processing system is provided that receives a docu
`ment containing numerical values, and receives indications
`of characteristics of the numerical values, the characteristics
`including a unit and a magnitude. Further, it adds the
`received indications into the document as tags associated
`with the numerical values to create a markup document.
`In accordance with yet another implementation, a method
`in a data processing system is provided that receives a
`markup document having a set of numerical values and tags
`indicating characteristics of the numerical values and deter
`mines a transformation for the set of numerical values to
`reflect new characteristics. The method then accesses a
`plurality of the tags of the set of numerical values, the
`plurality of the tags indicating magnitude, Scale, modifier,
`units, measure, adjustment and aggregation. Furthermore,
`the method determines conversion factors for the magnitude,
`scale, modifier, units, measure, adjustment and aggregation
`tags to accomplish the transformation to the new character
`istics and multiplies the set of numerical values by the
`determined conversion factors to transform the set of
`numerical values to reflect the new characteristics.
`Methods and systems in accordance with the present
`invention provide a chart view that automatically manipu
`lates and graphically displays numerical data. The manipu
`lation and display is based on attributes associated with the
`numerical data describing characteristics of the numerical
`data. The chart view facilitates the simultaneous display of
`different series of numerical values of different types on a
`single chart and automatically displays appropriate descrip
`tive textual components (e.g., axis labels, axis titles, chart
`titles, number precision, legends, footnotes, axis Scales, etc.)
`The chart view allows single click transformations of series
`of numerical values and provides automatic formatting of
`descriptive textual components in response.
`In accordance with an implementation of the present
`invention, a method in a data processing system having a
`display showing a chart is provided that receives a series of
`numerical values with tags indicating characteristics of the
`numerical values and displays the numerical values on the
`chart. Further, the method automatically determines a title
`for the numerical values based at least one of the tags and
`displays the determined title on the chart.
`In accordance with another impl

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