`United States Patent
`4,805,134
`Calo et al.
`[45] Date of Patent:
`Feb. 14, 1989
`
`[11] Patent Number:
`
`OTHER PUBLICATIONS
`
`Kutnamoto et al. “Captain System." Japan Telecommu-
`nication Review (Jul. 1980). pp. 215-222.
`Marti et al. "The Antiope Videoteit System." IEEE
`Transaction on Computer Electronics, vol. CE—25. No.
`3 (Jul. 1979), pp. 327-333.
`Robinson et al. “Touch-—Tone Teletext a Combined
`Teletext—Viewdata System." IEEE Transactions on
`Computer Electronics, vol. CE—25, No. 3 (Jul. 1979).
`pp. 298-303.
`J. P. Gray, “Network Services in Systems Network
`Architecture." IEEE Transactions on Commum'cari'ons.
`vol. COM—25. No. 1. pp. 104-116. Jan. 1977.
`
`Primary Examiner—David Y. Eng
`Assistant Exm-m'ner—Robert B. Harrell
`Artomey, Agent. or Fi'rm—Thomas P. Dowd; Marc D.
`Schecliter
`
`[51]
`
`ABSTRACT
`
`An architecture for the implementation of an informa-
`tion utility for accessing information and executing
`transactions on an interactive basis between Videotex
`databases and individual end user tenninals. some or all
`of which may be remotely located with respect to each
`other. The utility may be associated with a Videotex
`Application Network (VAN) and includes a combina-
`tion of distributed, semiautonomous Operations Nodes
`(01%), each characterized by (1) one or more affiliated
`users. (2) the inclusion of some form of database. and (3)
`one or more customized application programs. and each
`is also capable of “sl:andalone" operation. Each data-
`base comprises pages of control information and dis-
`playable data. Each node comprises a directory of data-
`bases at other nodes.
`
`50 Claim, 12 Drawing Sheets
`
`[54] ELECTRONIC SYSTEM FOR ACCESSING
`GRAPI-IICAL AND TEXTUAL
`INFORMATION
`
`[75]
`
`Inventors: Serapliin B. Cale, Peekskill;
`Krisl:.na.murrli.l Kannan, Yorktown
`Heights; Snk S. Soo. Mount Kisco;
`Tlioinas G. Burket. Pleasantville;
`John W. Wiley. Jr., Yorktown
`Heights. all of N.Y.
`
`[73] Assignee:
`
`International Business Machines
`Corporation, Armonlr, N.Y.
`
`[21] Appl. No.: 317,339
`
`[22] Filed:
`
`Jan. 9, 1986
`
`Int. 0.‘ ............................................ .. GCISF 13/00
`[SI]
`
`[52] US. Cl.
`....... .. 364/900
`[58} Field of Search
`364/200 MS File, 9&1 MS File;
`358/85, 36, 142: 370/89, 86. 90. 60. 58. 54, B5,
`103, 104; 340/717, T21. 711. 203. 797; 379/94.
`221. 40. SD, 280, 1C0. 94-, 96
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`6/1932 Guillclu ............................. .. 353/I14
`4.337.433
`6/1932 Chambers
`J58/147
`4,337,485
`4,379,941 4/I933 Warner
`..... .. 179/]
`4,419,196 10/I934 Ferrel‘ et al.
`364./900
`4.533.948 S/I985 McNamara et sl.
`.... .. JSSKB6
`4.555.281 ll/1935 Baldry et al.
`.... .. 370/E0
`.
`4.649.533 H1987 Chorley et al.
`.. 320/S8
`4.691.340 W198? Maeds et al.
`....................... .. 379/96
`
`
`
`la
`
`‘El
`,0
`Dllill-II
`............. W --
`
`la
`
`C
`
`@
`amnion
`llllflliE
`
`PROGRAI
`U’E'llaAlIlfl6
`
`SYSIEII
`tFE'R&¥iIl5
`
`VAN
`
`w
`
`CARE IV
`#-
`
`M m...
`want I
`DUI
`
`..
`
`IERIIIHAI.
`omunous
`“I Mam”
`not
`
`""““"'
`nmus:
`
`C
`mums: W '
`El‘-‘ERATIINS
`mtg;
`nan:
`
`0l'|{R
`luau
`
`I‘
`
`Nlfllflati
`IPEIIATIUIS
`lflli
`
`aflw
`
`IIAMIAS
`
`;
`
`C
`tsmusuiitni E '
`Mlftzfflm 3%”
`mums:
`OPINIONS W
`'93)) *0
`m nmust
`Iw @
`
`PMC Exhibit 2099
`
`Apple v. PMC
`
`|PR2016-00755 Page 1
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 1
`
`
`
`3U
`
`F
`
`989
`
`.
`
`.
`
`u.a<=._'m3%__.._%._3.s3oP.
`.Ew.,..:=:a.ElE00E4m3OKa§.:a
`
`Ema...z.z_o9_._Mn3.‘;fim3Bo:moo:So:H.J$5......__.5_mzo_:.E%_:.E.amzo_:$%2:93w_=.m.__:m:m<_$
`
`
`
`
`
`
`39.
`
`
`
`ufiza..£o_:.m..o24>mas:.Emmégca2:91E
`
`
`
`
`
`
`m.._a:sEo39..,.2...uEEI339.
`
`
`..jm5.;g_xxmflfl%DE_ wmmm.3:__.mn_..__.M_~w._.“.._.
`
`m.1,
`
`MI._3g3 33.4u...a.:._a
`
`H52
`
`PMC Exhibit 2099
`
`Apple v PMC
`|PR2016-00755
`
`Page 2
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 2
`
`
`
`U.S. Patent
`
`Feb. 14, 1939
`
`Sheet 2 of 12
`
`4,805,134
`
`
`
`Database. Network
`and Transactional -1—j 20
`Machine {HOST}
`
`22 j---—bt
`COHHUHICATIOH CHANNEL
`Subsystenfisl
`
`Distribution
`
`4———23—»
`
`Terminal Population connected via dial—up or
`
`local area network
`
`Overall Architecture of Q, Videntex Operations Node.
`
`FIG. 2
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`
`
`Page 3
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 3
`
`
`
`US. Patent
`
`Feb. 14, 1989
`
`Sheet 3 of 12
`
`4,805,134
`
`FIG. 3
`
`
`HOST
`30
`
`ND CLASS MACH I HE
`
`
`
`
`
`
`
`
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 4
`
`
`
`Lurmzzpxn
`
`CHTRLR
`
`TERMINAL
`EHTROLLER
`
`TELECOH
`CONTROL
`UNIT
`
`
`
`
`Example Hardware Configuration for an ON Host
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 4
`
`
`
`Usfifinmn
`
`II.
`
`4",
`
`w91
`
`4
`
`95000O14
`
`
`b.:Em...2_=m.£zo_Sx
`
`
`e.a_:_..__:.=.5.2.32.F.__._SSzS=mmx2223fl:..._.o_:..$..omm
`
`.a_Sn_.:m:_
`
`S2:?9;
`.m$m¢._3.
`t3...:
`
`1;.I:H5.43:30..:._._.=..:$z
`
`H222...
`
`
`
`n.._._o=onEouofifiaxuB503Enicouo:_uR_m-ZO.0n_fi:o_:__3.V.O—Ii
`
`
`
`
`
`MMP1..P
`
`mmmpmmmc;D};CAR
`megs
`mmmm
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 5
`
`
`
`
`U.S. Patent
`
`Feb. 14,1939
`
`Sheet 5 of 12
`
`4,805,134
`
`
`
`
`
`Hark CB:
`1 per agent
`
`Task Control Blocks
`
`EPATABLE entry;
`
`System Control Figs
`
`Resource Ctl Tab -D
`
`
`
`
`
`
`
`
`
`
`
`
`XFIDI-GF‘-‘I150l_1D@OF"fl'3
`
`HOST Control Blocks Built
`
`at Initialization
`
`
`
`Cache Hgmt
`Structures
`
`
`
`
`
`Scheduler Q anchors ‘
`
`Hark Agent Table -9
`
`Resource Bit HAP —b H
`
`Resource Eontrol Table
` a
`
`Active Element Data
`
`
`Class Q Rnchors
`Global Data Block in an ON Host
`F I G ' 5
`
`
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 6
`
`TRANSACTION APPLICATION SUESYSTEH
`
`{Th5}
`
` Transaction
`Subsystem
`Initiator
`
`F I G , 6 Overview of Transaction Application Subsystem
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 6
`
`
`
`US. Patent
`
`Feb. 14,1989
`
`Sheet 6 of12
`
`4,805,134
`
`
`
`_aa4<_azo_»u¢m=¢¢».moancum:
`
`
`
`
`
`nounx»:In:u._:n
`
`
`was:>_mecuco:
`
`
`teaonugaluom
`
`._u:_E.auLon:
`
`
`
`uuconnu;uuauuxo
`
`
`
`:_auI_aaunt
`
`u:a:_Low:10.;
`
`
`
`u:a:_outmuuuu
`
`co_uumm:aLu0co
`
`
`
`mamax»:UHUULU
`
`
`
`Du.._:3uO._9...!
`
`.unan
`
`..u__ou
`
`x.»
`
`¢_h
`
`
`
`
`
`Hugh:nasu:n:_:
`
`
`
`«uneaseuco:aE.oago
`
`
`
`uuegom_#uIuuoum
`
`
`
`niou:_omenxha
`
`za_»u¢nz<¢»
`
`uu<m¢m»=_
`
`mmz_p:o=
`
`...¢¢:>u¢
`
`anuuo.n
`
`n__»ascuao
`
`.mu«¢hmu.um=4_=a
`
`snowaswas.
`:ouu_>9.»uuxmzohm
`
`uca¢¢::u¢.¢¢:azwm
`
`
`
`ILODOasuuu
`
`
`
`qua“now»a_
`
`
`
`:u_3scum...
`
`
`
`uoae_mgamdz
`
`....¢<:azum
`
`co_uao
`
`gun:wasgum
`
`_aae.¢<:=u¢
`
`.un:oawu.
`
`oucoamo.
`
`u>am...
`
`wwflUUuQ
`
`
`
`omenu_£n:>u
`
`uaqmmmohm
`
`uuouo.n
`
`u.a4_=¢
`
`uum:_E.uu
`
`mmuuoun
`
`co_uunu:a.uozupa
`
`
`
`nun:mou_>unmxuu
`
`.Eu»uogn
`
`
`
`o_._==.OEnhmoi:c_.oua:E._.u____EawN.O—h_
`
`
`
`
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 7
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 7
`
`
`
`
`U.S. Patent
`
`Feb. 14, 1989
`
`Sheet 7 of 12
`
`4,805,134
`
`TRAHSAETION SESSION HANAGEHENT CONTROL STRUCTURES
`
`Host Anchor Point
`|
`
`EOHHOH STORAGE AREA {multiple regions]
`
`
`SSBLOCK
`TAS TABLE
`ASEB ADDFI
`
`SUBID
`ECB ADDR
`
`
`
`GLOBPTR —
`QEHSIFLGS
`
`ADDRESS SPACE
`
`HOST
`GLOBAL
`DATA
`
`RETF TR
`
`RGT SEGHENTS
`
`I
`
`ADDRESS SPACE
`
`
`TAS GLOBAL
`DATA AREA
`
`UORK AGENT
`REQUEST
`BLOCK TBL
`POINTER
`
`
`
`
`REQUEST
`BLOCK ENTRY
`
`
`
`
`
`TED ADDR
`
`TACION
`
`
`
`trans entry
`
`trans entry
`
`DAD -908 entry
`
`SAC :0-user entry
`
`
`
`
`
`
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 8
`
`
`
`Overview 0!‘ Transaction Data Areas
`
`FIG. 8
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 8
`
`
`
`L
`
`mmP
`
`Feb. 14, 1939
`
`Sheet 3 or 12
`
`4,805,134
`
`_u:o_uo_u.
`
`m.oE...::
`
`
`
`
`...u...__.._o2»..cuncugutluqpugnum
`
`
`
`
`
`32._o.._o_ua_u._menu:cofiuumcmb_“me:o.__auIv:m».a
`chum
`
`_m¢pu.m.n_44¢uE
`
`=u__auu«m
`
`onunohzu
`
`
`
`
`
`J295%.”E....33.:uh.33u.__En._
`
`
`
`
`
`Euumxnnamco_u=n_.uu_aEOL&
`
`
`
`ouaammmo.uu¢mqpuuanm«mo.uu¢hue:zo
`
`
`
`
`
`xuuoouw:oamu.LHHDZ
`
`
`
`mo.um::uuou
`
`
`
`"con:xuol
`
`onxc_4
`
`
`
`
`
`3D—n—u_ma4:o=oun=E.—.tflm
`
`
`
`xuu:_m«~u_m.a_4%«u
`
`
`
`rmpnaaha;
`
`uuagumcou
`
`
`
`am:uhuum
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 9
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 9
`
`
`
`
`
`
`
`U.S. Patent
`
`Feb. 14, 1939
`
`Sheet 9 of 12
`
`4,805,134
`
`To/From Host Machine (20)
`
`channel {Z2}
`
`channel attachment feature
`
`4-—e diskette
`
`e—e disk
`
`U0 controller
`
`
`
`. -
`Ill
`user terminalsI25l
`
`
`
`
`terminal 4—>
`
`Processor
`
`1
`1-
`
`5l2KB — 102lil(a storage
`
`I/0 controller - .
`
`.
`
`Example Distribution Subsystem Hardware Environment
`
`To/From Distribution Subsystem E21}
`
`asynchronous line
`
`line control ler
`
`4—> diskette
`
`e—I- disk
`
`
`
`color 4:
`monitor
`
`256KB or more storage
`
`23
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 10
`
`
`
`keyboard
`
`Inonoch rome monitor
`
`F I G °
`
`1 2 Example Hardware Configuration for End-User Interiace.
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 10
`
`
`
`..lHmPQMU
`
`411
`
`9
`
`tm
`
`O011
`
`,
`
`
`
`co:uu__u_::H
`
`8nun»:FJFa*m:bl E_:oo..n.
`
`E—flc_ELOhQ:
`
`m.uc_E.uu2._E1.
`
`la3..
`
`
`
`Eugmogm$nun.....ouu.c..___.....
`
`uuuwaa
`
`5I'II'|J1'IIII.IIluIIl|l..I'IIIIII|II'JIlI'I.|%23:3
`
`
`
`
`
`
`
`4993:0...guufiu_u_.Eu_._u3u_..Cu>o_uhuluuom&auuuxmnam:o_.aa_.um_a
`
`
`
`Cuuuonaam.ou_:o:
`
`.ac:ncu
`
`
`
`zuuaudUU:flELO&Lflm
`
`mueunuch;
`
`
`
`:1cuuuux_c¢cuzu
`
`2.o:
`
`
`
`m__.q:o._._._o..:_ou>._,:.____.o._._mm_u__:_m.m
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 11
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 11
`
`
`
`
`
`U.S. Patent
`
`Feb. 14,1989
`
`Sheet 11 or 12
`
`4,805,134
`
`Application Manager
`
`132
`
`‘.53
`
`Dispiay functions
`
`.g..._....j....e.
`
`“D
`no
`
`¢
`
`i/O Controller Subsys
`
`I
`
`
`
`Graphics Support
`
`
`
`
`
`Distribution Subsystem
`
`monitor
`
`S E R V 1
`
`E
`
`E S
`
`P R O V
`
`I
`
`D E D
`
`B Y
`
`C 0 N T R 0 L
`
`P R 0 G R A H
`
`Soltware Configuration 1’ or End-User Terminal
`
`FIG. 13
`
`
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 12
`
`NAPLPS
`decoder
`
`
`
`
`
`31
`1“
`
`134
`
`/
`
`
`
`keyboard
`i
`+——v Screen
`Manager
`
`Transaction Functions
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 12
`
`
`
`U.S. Patent
`
`Feb. 14., 1939
`
`Sheet 12 0112
`
`4,805,134
`
`Task
`
`140
`
`{----—-—-b
`
`H211
`
`150
`
`Q
`
`Task
`
`IIU Service
`Hanager
`
`142
`
`Hardware and Operating System
`
`F I G .
`
`1 4 IOCS Structure on the End-User Terminal
`
`Interrupt handler
`9"“
`Cp Interface
`
`Key gags
`/
`*—r*--- ‘M
`
`
`
`commands and field
`data
`
`r
`
`152
`
`Command Parsing
`
`and
`
`Command Handlers
`
`_,15i
`
`window Manager
`
`
`
`Character
`fonts
`
`
`
`msgs +
`help
`
`H0
`Communications4
`Layer
`(IDES)
`
`PMC Exhibit 2099
`
`Apple v. PMC
`|PR2016-00755
`
`Page 13
`
`
`
`EEHHAHENHEH!
`
`153
`
`
`
`
`
`154
`
`\
`
`155
`
`F I G .
`
`1 5 Keyboard Processing on the End-User Terminal
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 13
`
`
`
`1
`
`4,805,134
`
`ELECTRONIC SYSTEM FOR ACCESSING
`GRAPHICAL AND TEXTUAL INFORMATION
`
`BACKGROUND OF THE INVENTION
`
`5
`
`15
`
`25
`
`30
`
`45
`
`The present invention relates to electronic informa-
`tion and communication systems and more particularly
`to a combination of operational nodes incorporating
`databases and application programs
`for providing
`graphical and textual information fVideotex) and trans-
`actional capabilitiea to end-user terminals connected
`thereto.
`A Videotex service is a medium for conveying infor-
`mation electronically in an effective, user friendly, and
`relatively inexpensive manner to a large user popula-
`tion. It combines color. graphics and text in a single
`display to provide an attractive presentation of informa-
`tion to experienced as well as novice users. It is assumed
`that as its popularity increasm the majority of users.
`while not being trained in data processing, will be inter-
`ested in using it for message exchange and transactional
`activities, in addition to using it to access a wide range
`of information bases Experienced users will generally
`wish to obtain specific information in a quick and direct
`fashion while novice users will tend to browse through
`databases trying to determine the value of the informa-
`tion being offered.
`First and second generation Videotex services have
`tended to be limited both in the range of information
`bases offered and in the ability of the system to cater to
`the capabilities of a wide range of end-users. On the
`other hand, Data Processing Networks, such as the
`IBM VNET and the XEROX ETHERNET. have been
`developed to improve and integrate communication
`between and among individual computer terminals and
`databases. However.
`these networks essentially are
`either in-house, local area systems wherein the majority
`of the operating devices, work stations and data bases
`are proximately disposed, such as within an office or a
`plant. or are non-interactive and provide for a file trans-
`fer mode of operation.
`Other networks such as the IBM Information Net-
`work (IN) and IBM's PVM systems do provide on-line
`interactive sessions between centralized data processing
`machines and their users who may be located remotely.
`However, these networks do not offer the consistent
`and easy-to-use interfaces for which Videotex services
`are well known.
`With the increasing growth in large, centralized spe-
`cial-purpose databases along with integrated individual
`compact work stations capable of handling information
`presentations in color, graphics, and text (Videotex), the
`desirability of developing an extended architecture to
`foster cooperation among a wide range of remotely
`located terminals and databases has become manifest.
`
`SUMMARY OF THE INVENTION
`
`The present invention involves an architecture for
`and the implementation of an information utility for
`accessing information and executing transactions on an
`interactive basis between Videotex databases and indi-
`vidual end user terminals, some or all of which may be
`remotely located with respect to each other. A Video-
`tex Application Network (VAN) toward which the
`invention is directed includes a combination of distrib-
`uted, semiautonomous Operations Nodes (ONs), each
`characterized by (1) one or more affiliated users. (2) the
`inclusion of some form of database, and (3) one or more
`
`2
`customized application programs. Each node is also
`capable of “stand alone" operation, that is. it can service
`the needs of its user population and need not be con-
`nected to any other node.
`A typical Operations Node with end-user terminals,
`which may be referred to as an Establishment Opera-
`tions Node (EON), supports a unique user interface
`through which users get controlled and secure access to
`a wide variety of databases stored locally and/or re-
`motely. Through this node. users may also interact with
`a large number of application programs distributed over
`the entire VAN which provide additional and special-
`ized services to users of the node. The user interface.
`the mechanisms for secure access to information, and
`the application environment supported by the ON are
`important features of the invention.
`to be
`Provision is made for Operations Nodes
`adapted to special functions within the network. For
`example. while a typical node may consist of a system
`with one or more databases and end user terminals
`
`(EON), another node may consist only of specialized
`databases (DON) maintained by information providers
`(IFS) without. end users or application programs. Simi-
`larly, a third node may merely consist of a directory
`databasee with a number of unrelated end user terminals
`(TON). An operations node may be configured with a
`directory database and just a set of application pro-
`grams providing services to users on the network
`(PON). A number of small inhouse users may cooperate
`to form a tnultiorganization node (MOON) and special
`nodes may be formed to handle access to other net-
`works (NON) or to interface with third party databases
`(ION). Finally, an Operations Node may assume the
`role of a Systems Operations Node (SON) which main-
`tains a global directory of databases and application
`programs available at various nodes and may act to
`supervise and coordinate the interactions and opera-
`tions of all the nodes in the system. In all. the applica-
`tion architecture and specific implementation disclosed
`offer valuable capabilities and services to end users.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`FIG. 1 illustrates a Videotex Application Network
`(VAN) in which the present invention may be imple-
`mented and various configurations that an Operations
`Node may assume.
`FIG. 2 shows the overall architecture of an Opera-
`tions Node (ON) in accordance with the present inven-
`tion.
`FIG. 3 is an example of a hardware and software
`configuration for an ON host.
`FIG. 4 shows the relationship of ON-specific soft-
`ware to other exemplary components that may exist on
`an ON host.
`FIG. 5 illustrates the global data structure in an ON
`host.
`FIG. 6 is an overview of a Transaction Application
`Subsystem (TAS).
`FIG. 7 is an outline of a sample application program
`running under TAS.
`FIG. 8 is an overview of the transaction data area
`maintained by an ON host
`FIG. 9 details the logic involved in starting an appli-
`cation program on the host.
`FIG. 10 is an example of the hardware involved in
`implementing the distribution subsystem.
`
`PMC Exhibit 2099
`
`Apple v. PMC
`
`|PR2016-00755
` Page 14
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 14
`
`
`
`4,305,134
`
`4
`and text form on a display device at the terminal of an
`end user.
`Pages may be organized as scroll sequences for pur-
`poses of continuity of presentation. animation effects or
`for other reasons. Such sequences are known as page-
`sets. There is no conceptual limitation on the number of
`pages comprising a pageset. A group of pagesets that
`are related by sortie semantics may be recognized by the
`system as belonging to a database. Each such database is
`identified by a unique identifier in the fonn of an ON-ID
`concatenated with a Database Access Code (DAC).
`Databases may be owned by Information Providers
`(IPS) who are responsible for their creation and mainte-
`nance.
`
`An I!’ may be one person or may be an organization
`consisting of several people or entities, each with one or
`more assigned roles.
`A VAN database is said to be local to an Operations
`Node if its pages are permanently stored at that ON and
`are maintained by privileged users (IPs) affiliated with
`that ON. Similarly, if the pages of a database are stored
`elsewhere in the VAN, such a database would be
`viewed as being remotely situated. In either case it is
`preferred that all VAN databases share a common
`welldefined structure. and the pages or pagesets of a
`particular database are always stored within and main-
`tained by a single ON.
`One or more exit paths may be defined for a page.
`These exit paths allow the user to navigate from the
`currently displayed page to another page. Two types of
`exit paths are defined. The first type, user-deined exit
`paths. are those that are derived by the system from the
`user's prior behavior. For instance. an exit path to the
`previous page displayed is known to the system because
`it keeps track of a limited history of page accesses by the
`user. Other such exit paths are described more fully
`below. The other types. Information Provider-defined
`exit paths. are embedded in the control area of a page
`and are invoked by certain functions also described
`below.
`Users can request information from VAN databases
`and Third Party Databases (TP135). Information on
`TPDs may be organized differently from VAN data-
`bases. but access mechanisms for the two types of data-
`bases are adapted to be very similar.
`VAN databases, as mtioned, may be locally or
`remotely situated. However. because all such databases
`are structurally identical, accesses to non-local as well
`as local Videotex databases are carried out in such a
`way that the user is unaware of the locality of the data-
`bass. This is done by keeping implicit both the process
`of connecting to a remote ON for access to a non-local
`database. and the process of disconnecting from it when
`the user signals a context change.
`VAN databases. whether local or remote, that are
`accessible from a given ON, have entries in the database
`directory of that ON. This directory enables the On to
`determine the location and type of the database in ques-
`tion. It is to be noted that not all VAN databases are
`necessarily accessible from every ON in the network.
`The accessibility ofa VAN database from a given ON
`will typically be a matter of negotiation between the
`ON wishing access and the database-owning IP.
`The procedures for handling accesses to TPDs, as
`mentioned. will be
`An exit path from a local or
`remotely situated VAN database page will indicate that
`a page from a TPD is to be retrieved. Like VAN data-
`bases. TPDs are also represented by an entry in the
`
`PMC Exhibit 2099
` Apple v. PMC
`IPRZO16-00755
`
`
`
`Page 15
`
`3
`FIG. 11 shows the software involved in executing the
`logic of the distribution subsystem.
`FIG. 12 is an example of a typical end user terminal
`configuration that may be connected to an ON distribu-
`tion subsystem.
`FIG. 13 shows the software involved in executing the
`logic of the end user terminal.
`FIG. 14 provides details of the Input/Output Control
`System on the end user terminal.
`FIG. 15 shows how keystrokes input by end users are
`processed by the terminal software.
`DESCRIPTION OF THE PREFERRED
`EMBODIMENTS
`
`A system generally embodying the main components
`of the present invention connected to a Videotex Appli-
`cation Network (VAN) is illustrated in FIG. 1. A fun-
`damental component in the architecture is the Opera-
`tions Node (ON), which is the unit through which all
`end-user terminals are connected to the system and
`wherein resides one or more databases with Videotex
`information available to other connected nodes. The
`nodes in their various forms. their interactions with end
`users and their services together make up an infonnaion
`utility or system.
`First considering the system conceptually, all of the
`nodes, irrespective of their particular forms. are semiau-
`tonornous in that they are capable of many functions
`and operations on their own. that is. they may carry out
`in—l1ouse data processing and information exchange
`between their local databases and terminals without
`interacting with the system at large. The Operations
`Nodes are also distributed.
`that is, remotely located
`with respect to each other. and each may be connected
`to one or more other nodes in the system. The commu-
`nications paths also support multiple concurrent “con-
`versations" both from and to any particular Operations
`Node as well as between any pair of Operations Nodes.
`At the same time the paths are such that the addition or
`deletion of any one or more nodes causes a minimal
`amount of disruption to the network.
`The VAN does not support a “single system image".
`so that each ON will recognize (hold a user profile for)
`only that set of users with which it expects to be dealing
`on a regular basis. Each such profile is identified by an
`ON-unique identifier. The identifier takes the form of an
`identification name. number, or symbol ( the ON-ID),
`concatenated with a System Access Code ( SAC ). The
`SAC/ON-ID combination is unique within the VAN. A
`user for whom there is an identifiable profile on an
`Operations Node is said to be affiliated with that ON. A
`userlnaybepermittedtobeaffiliatedwithmoretlian
`one ON. Profile records of a user at different 0Ns need
`not be identical; indeed, for various reasons of security
`and economy, a user may have different profiles at
`different ONs. However, a user can be serviced only at
`ONS with which he is affiliated. Servicing includes t.he
`process of logging on to the system. information re-
`trieval, and the conduct of various transactional func-
`tions (e.g.. data collection).
`Information at an Operations Node is preferably or-
`ganized in terms of pages. A page is a variable length
`data structure consisting of control information and
`displayable data. Displayable data in a page is normally
`encoded in accordance with the North American Pre-
`sentation Level Protocol Syntax (NAPLPS), an indus-
`try standard. and preferably read out in color, graphics.
`
`10
`
`20
`
`25
`
`35
`
`45
`
`50
`
`55
`
`65
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 15
`
`
`
`5
`ON‘s database directory. If the requested TPD is acces-
`sible from the ON with which the user is affiliated. then
`an entry will have been set up in the 0N‘s directory.
`This entry enables the ON to make requests to the (ex-
`ternal) system on which the TPD is resident. The TPD
`system, while maintaining its databases independent of
`the VAN, will recognize the page. pageset. and data-
`base semantiu in order to can)’ out a meaningful access
`session with the VAN user. The particular manner in
`which communication between a TPD system and the
`VAN is conducted will vary and be within the purview
`of those skilled in the art and so will not be discussed
`here in detail.
`
`END-USER FUNCTIONS
`
`A comprehensive repertoire of functions is available
`to the end user to access information within the ON
`with which he is affiliated as well as on other 0N5.
`These are discussed in this section in the context of
`using a computer keyboard at the end user terminal to
`call up and control function operation and display.
`A scroll function allows the end user to access pages
`in their sequence order within a pageset. The user may
`scroll forward to access the next page in sequence or
`may scroll back to access the previous page. The point
`of reference in scrolling is always the currently dis-
`played page. The exit paths associated with scrolling
`are always embedded in the control section of the cur-
`rtly displayed page's data stntcture.
`A retrace function allows the end-user to trace back
`
`(in time sequence) to pages previously displayed. The
`exit path for the retrace function is derrived by the
`system based on past user actions.
`A menu selection function allows the end user to
`make a selection ofan integer within a given range such
`that each such selection causes the system to undertake
`a potentially different exit path. Each such exit path
`must be defined in the control section of the currently
`displayed page. The various types of exits for a selection
`are:
`
`5
`
`I0
`
`20
`
`25
`
`35
`
`Null: 'l"his path indicates that the selection is currently
`inactive and is therefore not a valid exit path.
`Direct Reference:
`In this case,
`the exit
`identifies
`uniquely a page within some database in sortie Opera-
`tions Node within the VAN.
`Description based search: This exit provides a program
`identifier that is invoked by the system. The program
`conducts a search of the current database according
`to some search criteria and produces one or more
`pages containing the results of that search. The crite-
`ria may be provided by the end-user in the form of
`responses to prompt strings specified in the exit path.
`Program Trigger: This exit is a generalization of the
`description based search exit. Whereas the descrip-
`tion based search exit provides for the activation of a
`special purpose program to search a VAN database.
`program triggers allow for the activation of any pro-
`gram. The logic of such programs may not be known
`to the system.
`Command String: This exit allows for simulation of
`other types of exits from within a menu selection. For
`example, this exit may be used to simulate the scroll
`function described above.
`It should be noted that not all pages may have menu
`selection exits defined in their control sections. A page
`that has menu selection defined for it is known as an
`index page.
`
`45
`
`50
`
`55
`
`60
`
`E5
`
`4,805, 134
`
`6
`A fnd function permits a page within a database to be
`accessed directly by a user. The find function requires
`the user to specify the database name, the pageset and
`page identifiers. A user session manager at each ON will
`maintain context
`(or present state)
`information for
`every active user. The database context of a user is the
`database to which the currently displayed page belongs.
`Because the current database is always known to the
`system. a user need not specify the database name if he
`wishes to fmd a page within the current database. An IP
`i.I1tendi.ng to create a database for access by the VAN
`user community must specify a database name which is
`used by the session managing ON when accessing that
`database on behalf ofa user. An IP my own more than
`one database within an ON.
`A backup function is used to display the last index
`page prior to display of the currently displayed page.
`Successive backups works backwards through a (lim-
`ited) sequence of previously seen indexes.
`A next function is used to take the next exit path on
`the last index page displayed prior to the display of the
`currently displayed page. It is equivalent to a backup
`followed by an increment of the choice number, saving
`the intermediate display. its prime use is for browsing
`through a list of items.
`A mark function causes the system to ‘‘remember’‘
`the currently displayed page for later access via a recall
`function.
`A recall function is used to display the page that was
`"marked". If several pages are marked before a recall is
`issued, the most recently marked page will be displayed.
`Context information is saved with the mark and re-
`stored with recall, so that if the end user has retrieved a
`page via menu choice. marked it. and later recalled it.
`the backup function would return to the menu from
`which the end user originally retrieved the page.
`A define function allows the end user to define syn-
`onyms for the currently displayed page or to define
`string substitutions. Thus users may “name“ often-dis-
`played pages with identifiers that are most meaningful
`for them and have such pages accessed by name at a
`later time. String substitutions allow users to abbreviate
`frequently used command strings.
`A tell function displays the definition of a specific
`synonym or all the synonyms.
`A last command function causes the system to display
`the last command string that was entered by the user.
`Successive “last commands" work backwards through
`a sequence of previously entered commands, eventually
`returning to the newest command in a circular form.
`Last command has two corollary functions. as well.
`One moves through the list in the opposite direction and
`the second repeatedly retrieves the most recent com-
`mand without moving through the list of saved com-
`mand strings.
`A home function causes a previously designated page
`to be displayed and restores the end-user to a known
`state.
`
`A cancel function allows the user to terminate pro-
`cessing of the last function by the system.
`A help function may be invoked by the user to dis-
`play information about ltow to use the system or to
`provide information pertinent
`to the currently dis-
`played page.
`A reshow functirt redisplays the current page.
`A capture function saves the current page in a file
`local to the end-user terminal for oflline review.
`
`PMC Exhibit 2099
`
`Apple v. PMC
`
`|PR2016-00755
` Page 16
`
`PMC Exhibit 2099
`Apple v. PMC
`IPR2016-00755
`Page 16
`
`
`
`4,805,134
`
`8
`
`Modes of Interaction
`There are two distinct modes of interaction which the
`user might be in at any time. a display mode and an
`action mode. Once the user has successfully logged on
`the system, he is deemed to be in the display mode.
`In the clispay mode. the user can invoke all of the
`information access functions which include: SCROLL-
`ING; MARKIRECALL; MENU CHOICE SELEC-
`TIONS and accompanying prompts. if any.; BACK-
`UP/NEXT; RETRACE; TELL/DEFINE; FIND;
`HOME; HELP; AND CANCEL. Any of these corn-
`mands may be invoked via a function key/synonym
`combination on the terminal keyboard. Such function
`keys may be defined in one of three ways: (1) shorthand
`cursor control keys. such as those that move the cursor
`back to the beginning of the line; (2) shorthand keys for
`a text string; and (3) keys for direct mapping into a
`command. Cursor control functions never leave screen
`management and are thus not of particular interest here.
`Type (3) keys are routed immediately for processing as
`they already represent the encoding of a command.
`Their functions are not echoed to the screen since they
`have no text, not are they saved in the list of recent
`commands.
`Type (2) keys that map into text. further subdivide
`into two types—those that have termination characters
`and those that don't. The outputs evoked by those that
`do are taken up for execution immediately. while the
`outputs of those that don't are displayed on the com-
`mand line as if they were just typed and the end-user
`may proceed to edit
`the line before pressing the
`(ENTER) key to initiate command processing. A
`key need not map into an entire command. It may sim-
`ply be shorthand for a common text string, with the end
`user supplying the rest of the command. The <CAN-
`CEI.> key has the effect of aborting the execution of
`the current command. ifany. Function keys are defined
`by the user during a customization session, with a set of
`default definitions otherwise provided.
`During display mode. only one command may be
`under execution for a given user; in addition. the system
`will accept one or more type-ahead characters for pend-
`ing anaiysis. The user does not leave the display mode
`unless he explicitly requests the system to do so. Thus.
`he may view Videotex pages and transaction pages
`without leaving the display mode.
`An action key is defined that activates an action menu
`window. The action key may be p