`United States Patent
`4,305,134
`Calo et a1.
`{45] Date of Patent:
`Feb. 14, 1989
`
`[11] Patent Number:
`
`OTHER PUBLICATIONS
`
`Kumamoto et :11. “Captain System." Japan Telecommu-
`nication Review (Jul. 1980), pp. 215—222.
`Marti et al. "The Antiope Videoteat System." IEEE
`Transaction on Computer Electronics, vol. CE—ZS. No.
`3 (Jul. 1979), pp. 327—333.
`Robinson et a1. “Touch~Tone Teletext a Combined
`Teletext—Viewdata System." IEEE Transactions an
`Computer Electronics, vol. CE—ZS, No. 3 (Jul. 1979).
`pp. 298—303.
`J. P. Gray, “Network Services in Systems Network
`Architecture.” IEEE Transactions on Communications.
`vol. COM—25. No. 1, pp. 104—116. Jan. 1977.
`
`Primary Examiner—David Y. Eng
`Assistant Examiner—Robert B. Harrell
`Attorney, Agent. or Firm—Thomas P. Dowd; Marc D.
`Schechter
`
`[57]
`
`ABSTRACT
`
`50 Claim, 12 Drawing Sheets
`
`a em: @
`,0
`m 3 mm m o
`‘ik‘llifl‘é"
`rem
`mu"
`m mum
`urns:
`m
`
`.
`mm ml I
`MMTIM
`amass:
`III
`
`[54] ELECTRONIC SYSTEM FOR ACCESSING
`GRAPHICAL AND TEXTUAL
`INFORMATION
`
`[75]
`
`Inventors: Serapbht B. Cale, Peekskill;
`Krishnamurml Kantian, Yorktown
`Heights; Silk S. Soc. Mount Kisco;
`'I'boms G. Burket. Pleasantville;
`John W. Wiley, Jr., Yorktown
`Heights. all of N.Y.
`
`[73] Assignee:
`
`International Business Machines
`Corporation. Armouk, N.Y.
`
`[21] Appl. No; 817,389
`
`[22] Filed:
`
`Jan. 9, 1986
`
`Int. Cl.‘ ............................................ .. G06F 13/00
`[SI]
`
`[52] US. Cl.
`....... .. 364/900
`[58} Field of Search
`364/200 MS File, 900 MS File;
`358/85, 36, 142: 370/89. 86. 90. 60. 58. 54, 85,
`103, 104; 340/717, 721, 711. 703, 797; 379/94.
`221, 40. 50, 280, 100. 94, 96
`
`[56]
`
`References Cited
`U.S. PATENT DOCUMENTS
`
`6/1932 Guillou ............................. .. 353/114
`4.337.483
`6/1932 Chambers
`.. 358/147
`4,337,485
`4,379,941 4/ I933 Warner
`..... .. 179/1
`4379,96 10/1984 Ferret et al.
`364m
`4,533,948
`8/1985 McNamara et al.
`.... .. 358(86
`4,555.781 “[1935 Baldry et al.
`.... .. 370/60
`.
`4.649.533 3! 1987 Chorley et al.
`.. I’D/53
`4.691.340
`93’1987 Mneda et at.
`....................... .. 379M
`
`
`
`3 union
`mm mm
`on m 3
`
`w
`
`
`
`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 terminals. 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, scmiautonomous Operation Nodes
`(0N3), 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 "standalone" operation. Each data-
`base comprises pages of control information and dis-
`playable data. Each node cornprises a directory of data-
`bases at other nodes.
`
`mm smru
`Magus 09tme
`
`VAN
`
`cm: W
`l-
`
`m mm
`mm .
`“I
`
`.
`
`once
`m film“:
`OPERATIONS
`«out
`
`W
`
`amw
`
`mm:
`
`:
`
`C
`[SUEIWNT m '
`avatar” Hag” || Milli!
`commas Hunt
`'9» ‘3
`m mm:
`I9 I”
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 1
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 1
`
`
`
`SU
`
`F
`
`_
`
`oE3;.IEIEooamaax323;.n.mgm:a:366359.3.P.
`.w.'53235as;259.“.
`
`
`
`Auwag—(a95:335.H52mag.32135:322.3.:£22583.25%mzozétoa“a:
`
`w.w39.
`
`
`
`gIf]:g#33390:15.8z4.2wig—:58.a“53:3xgipfl.E
`
`
`Iv.93wzozég3.55..H232“.82!m.535.5535:5%oa
`1~82923:0so:
`:0.339.222225895.28%
`
`
`
`
`
`2
`
`m3an3a3,Pd:0so3429::
`
`2.3aEa
`
`1
`
`MP
`
` .fl.V.n_uPb6mm1aW»ARmm
`
`
`2C02
`mmmm
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 2
`
`
`
`US. Patent
`
`Feb. 14, 1939
`
`Sheet 2 of 12
`
`4,805,134
`
`
`
`Database. Network
`and Transactional 4—— 20
`Machine {HOST}
`
`Distribution
`
`22 ——-——b:
`COHHUHICATIOH CHANNEL
`Subsystemlsl
`
`
`
`4———23—u
`
`Terminal Population connected via dial—up or
`
`local area network
`
`Overall Architecture of a Videotex Operations Node.
`
`FIG. 2
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 3
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 3
`
`
`
`US. Patent
`
`Feb. 14, 1989
`
`Sheet 3 0f 12
`
`4,805,134
`
`FIG. 3
`
` HOST 20
`
`
`
`3N CLASS MACH | NE
`
`
`
`
`
`
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 4
`
`
`
`Lur'mzszn
`
`CHTRLR
`
`TERMINAL
`EHTROLLER
`
`TELECOH
`CONTROL
`UNIT
`
`
`
`
`Example Hardware Configuration for an 0N Host
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 4
`
`
`
`US. Patent
`
`A",I
`
`w9l
`
`.4
`
`4“,
`
`95000
`
`t35:a3:52.$53..a:
`
`2r!H“23:30miscozmz
`
`b.55...:qu3:25:
`e22:33.31«:5:2.F3.55:5mm5552;fl:9.25.53mm
`
`20:32:33
`
`3553
`
`252...?N“
`
`
`
`w11P
`
`CMM
`
`.fl.V.nwPmmmawmAR
` 7_nunu_bwmwe2P.1my
`
`
`
`
`
`
`3:22.58oEEaxuhug—o2Eniafiu=_uoam-20_ominced—“.3....V.oml.—
`
`
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 5
`
`
`
`
`
`US. Patent
`
`Feb. 14,1939
`
`Sheet 5 of 12
`
`4,805,134
`
`Hork CBS
`
`
`
`HOST Control Blocks Built
`
`
`
`at Initialization
`
`Cache Hgmt
`Structures
`
`
`
` XfiOl—W134130rbwor—n
`
`
`
`
`
`
`
` CIass Q Anchors
`Global Data Block in an 0N Host
`F I G . 5
`
`TRANSACTION APPLICATION SUESYSTEH
`
`{Th5}
`
`Initiator
`
` Transaction
`Subsystem
`
`F I G . 6 Overview of Transaction Application Subsystem
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 6
`
`
`
`
`
`
`
`
`1 per agentl
`
`
`
`
`I I I
`
`
`
`Resource Ctl Tab -|
`
`
`
`
`
`Resource Eontrol Table
`__—-—-
`
`Active Element Data
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 6
`
`
`
`
`
`
`
`
`
`
`
`nuc4<_azo_hu¢uz¢xh.mooncum:
`
`US. Patent
`
`Feb.l4,1989
`
`Shmfi6tfi12
`
`4,805,134
`
`Danaup:In:v#_3n
`
`
`was:>_m0:»:0:
`
`
`revupugazuom
`
`.—u:_EuauLon:
`
`
`
`unsound;uuuuuxo
`
`
`
`c.nun—alulu
`
`co_uummcahuaco
`
`
`
`mamaxh>ouauhu
`
`
`
`oneunuchnew
`
`.uman
`
`.Lu._ou
`
`¢_h
`
`
`
`
`
`scum:naiu:Q:_:
`
`
`
`«sonnetacocaihoago
`
`
`
`uoEL0m—#ulnuOum
`
`niou:.nounKh>
`
`zo_hu¢mz<ch
`
`mudmxmhz_
`
`mwz_h:ox
`
`
`
`
`
`u=Q:_Lama:05;
`
`
`
`unac_ou>muuuu
`
`x.»
`
`.«.¢¢:>ux
`
`anuuoun
`
`auntasvan;
`u__wLE:uno
`Iouu_>a.»mutmzopm
`
`can¢¢::u¢.quazwm
`
`.muaahmu.ugnd_=n
`
`
`
`Inaboa:uuu
`
`
`
`an:axonxafi
`
`
`
`gum:acne...
`
`
`
`vane_unamdz
`
`a...m<:azwm
`
`co_uao
`
`gun:was“on
`
`namevn¢zgu¢
`
`.uncoawu.
`
`oncoamog
`
`u>am...
`
`eunuch;
`
`
`
`anonu_En:>u
`
`uaqmmmohm
`
`uuouohn
`
`gang—no
`
`uum:_E.uu
`
`mmuuohn
`
`co_uunwca.uozus:
`
`
`
`an»:mou_>.omxuu
`
`.Euhuogn
`
`
`
`
`
`05.50E2355:93:25.03anN.omh—
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 7
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 7
`
`
`
`
`US. Patent
`
`Feb. 14, 1989
`
`Sheet 7 of 12
`
`4,805,134
`
`TRANSAETION SESSION HANAGEHENT CONTROL STRUCTURES
`
`Host Anchor Point
`I
`
`EOHHOH STORAGE AREA {multiple regions]
`ASEB ADDR
`
`SSBLOCK
`TAS TABLE
`
`SUBID
`ECB ADDR
`
`
`
`GLOBPTR —
`QEHSI‘FLGS
`
`l
`
`ADDRESS SPACE
`
`
`TAS GLOBAL
`DATA RREA
`
`IHOI‘IK AGENT
`REQUEST
`BLOCK TBL
`POINTER
`
`REQUEST
`BLOCK ENTRY
`
`TOE AOOR
`
`TAO/ON
`
`
`
`ADDRESS SPACE
`
`HOST
`GLOBAL
`DATA
`
`RETF TR
`
`RC‘T SEGHENTS
`
`trans entry
`trans entry
`
`ON: -—908 entry
`
`SAE —o-user entry
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`Overview of Transaction Data Areas
`
`FIG. 8
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 8
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 8
`
`
`
`L
`
`naP
`
`mm...
`
`Feb. 14, 1989
`
`Sheet 8 of 12
`
`4,805,134
`
`
`
`muflv—Q¢O_Hfl—ULHUD”:CDHHUImcflLH_“no:an__auIvsupua
`chum
`
`
`
`
`
`
`
`
`
`ouaam«mu.uu¢mqpnuanm«mohuu¢hue:zo
`
`_m¢puann_44¢u
`
`E.w»
`
`
`J2933use2035a...339:3.—
`
`
`
`
`
`Euumxnnawcomu=n_.ua_o50L;
`
`
`
`=u_flauuum
`
`onunohzu
`
`—uco_uu_u»
`
`
`
`
`
`xuucuunugullquugnum
`
`
`
`m.0:5::
`
`...u:__.._oh:
`
`
`
`
`
`xuuoouw:can“.Luna:
`
`
`
`«chum::quu
`
`
`
`neon::50)
`
`Duxc_4
`
`
`
`
`
`Bo."—u_mad5:035;:96
`
`
`
`xuu:_mqpunmga_4uqu
`
`
`
`:mhnaaha;
`
`“ungumcou
`
`
`
`am:“Luau
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page9
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 9
`
`
`
`
`
`
`US. Patent
`
`Feb. 14, 1989
`
`Sheet 9 of 12
`
`4,805,134
`
`To/From Host Hachine {20}
`
`channel {22}
`
`channel attachment feature
`
`terminal H
`
`Processor
`
`1
`£-
`
`SlZKB — 102M“ storage
`
`4——9 diskette
`
`H disk
`
`IIO controller - .
`
`.
`
`
`
`. -
`Ill
`“Sertefmiflalsifil
`
`
`
`
`
`
`1/0 controller
`
`Example Distribution Subsystem Hardware Environment
`
`To/From Distribution Subsystem i2?)
`
`asynchronous line
`
`
`
`line controller
`
`23
`
`H diskette
`
`ZSSKB or more storage H disk
`
`color 4—
`monitor
`
`keyboard
`
`monoch roma monitor
`
`F I G '
`
`1 2 Example Hardware Configuration for End-User Interface.
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 10
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 10
`
`
`
`
`
`tmaPSU
`
`41
`
`w
`
`Itm“h
`
`,
`
`Iam?
`
`.m_Ea:nun;
`JFa:
`
`
`
`5:322::H
`
`E5005
`
`_nc_i._o.po:
`
`Inn”...
`
`F:mun;LIVLam:
`”Slat-Cu»
`
`
`
`5590....won:Bumbag—o
`
`50::
`
`w.IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII8hmozOp
`
`
`
`
`
`
`
`.49330—.:93:_u_._:u_._u30.230sultan”33233.332:me
`
`
`
`Sten—nan.3»_:0:
`
`.accncu
`
`51:4uucnehot:
`
`utaboo;
`
`0.
`
`:mcuuuud.355
`
`S.0:
`
`
`
`
`
`1IQGuOGAJo¢F20u>uaw9_>oznwuu_b¢mm
`
`P
`
`XpoE3CPMI
`
`hb1
`152P1m.
`...HV.n_ua..m6P
`
`2C015M21
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 11
`
`
`
`
`
`US. Patent
`
`Feb. 14,1989
`
`Sheet 11 or 12
`
`4,805,134
`
`Application Manager
`
`Disviay functions
`
`Transaction Functions
`
`132
`
`4......_...—.
`
`keyboard
`i
`+——v Screen
`Manager
`
`31
`
`1
`
`
`
`
`
`1.53
`
`NAPLPS
`decoder
`
`
`
`
`
`i
`
`no
`
`134
`
`/
`
`i/O Controller Subsys
`
`I
`
`
`
`Graphics Support
`
`
`
`
`
`Distribution Subsystem
`
`monitor
`
`S E R V i
`
`E
`
`E S
`
`P R D V
`
`|
`
`D E D
`
`B Y
`
`C 0 N T R O L
`
`P R 0 G R A H
`
`Soltware Configuration for End-User Terminal
`
`FIG. 13
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 12
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 12
`
`
`
`US. Patent
`
`Feb. 14., 1939
`
`Sheet 12 0112
`
`4,805,134
`
`llliliiiiiiiill
`
`Task
`
`140
`
`[----b
`
`IID Service
`Hanager
`
`H211
`
`P rt
`
`Int rr pt
`
`142
`
`150
`
`Hardware and Operating System
`
`F I G .
`
`1 4 IOCS Structure on the End-User Terminal
`
`Interrupt handler
`Cp Interface
`
`/
`«—»«—-—
`
`Key Def:
`
`commands and field
`
`data
`
`r
`
`152
`
`a
`
`Task
`
`
`
`110
`Communications d—J
`Layer
`(IDES)
`
`l!!!!lll!!ll
`
`153
`
`
`
`
`
`154
`
`\
`
`155
`
`F I G .
`
`1 5 Keyboard Processing on the End-User Terminal
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 13
`
`
`
`Command Parsing
`
`and
`
`Command Handlers
`
`
`
`,151
`
`window Manager
`
`
`
`Character
`fonts
`
`
`
`msgs +
`help
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 13
`
`
`
`1
`
`4,805,134
`
`
`
`ELECTRONIC SYSTEM FOR ACCESSING
`GRAPHICAL AND TEX'I'UAL INFORMATION
`
`BACKGROUND OF THE INVENTION
`
`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
`graplucal and textual information (Videotex) and trans-
`actional capabilities to end-user terminals connected
`thereto.
`A Videotex service is a medium for cenveying 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 previde an attractive presentation of informa-
`tion to experienced as well as novice users. It is assumed
`that as its popularity increases 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. 0n 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 iii-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 ofi’e‘r the consistent
`and easy-to-use interfaces for which Videotex services
`are well know.
`With the increasing growth in large, centralized spe-
`cial—purpose databases along with integrated individual
`compact work station capable of handling information
`presentations in color, graphics, and text (Videotex), the
`desirability of deveIOping 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 includm a combination of distrib-
`uted, semiautommous Operations Nodes (0N3), each
`characterized by (1) one or more afi‘tliated users. (2) the
`inclusion of some form of database, and (3) one or more
`
`5
`
`10
`
`15
`
`25
`
`30
`
`35
`
`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 lecaliy 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
`datebasee 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 multiorganization 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 disclorsed
`offer valuable capabitities and services to end users.
`BRIEF DESCRIPTION OF THE DRAWINGS
`
`45
`
`55
`
`65
`
`FIG. 1 illustrates a Videotex Application Network
`(VAN) in which the present invention may he 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 Obi-specific soft-
`ware to other exemplary components that may exist on
`an ON host.
`FIG. 5 illustrates the global data structure in an 0N
`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 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 14
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 14
`
`
`
`
`
`4,305,134
`
`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 informaion
`utility or system.
`First considering the system conceptually, all of the
`nodes. irrespective of their particular forms. are semiau—
`tonomous in that they are capable of many functions
`and operations on their own. that is. they may carry out
`ill-house 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 ICtN-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
`usermaybepermittedtobealfiliatedwithmorethan
`one ON. Profile records of a user at different ONs 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 includea the
`process of logging on to the system. information re-
`trieval. and the conduct of various transactiorial 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
`
`15
`
`20
`
`25
`
`35
`
`as
`
`50
`
`55
`
`65
`
`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 some semantics may be recognized by the
`system as belonging to a database. Each such database is
`identified by a unique identifier in the form of an ON-ID
`concatenated with a Database Access Code (DAC).
`Databases may be owned by Information Providers
`(1P3) 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 (TPDs). Information on
`TPDs may he 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 of a 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 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 15
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 15
`
`
`
`
`
`4,805, 134
`
`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 ON‘s directory.
`This entry enables the UN 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 semantim in order to carry 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 OH
`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 stnicture.
`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:
`
`Null: This 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 some 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.
`
`5
`
`10
`
`IS
`
`20
`
`25
`
`35
`
`45
`
`50
`
`55
`
`60
`
`65
`
`6
`A find 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 page-set 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
`intending 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 how to use the system or to
`provide information pertinent
`to the currently dis-
`played page.
`A reshow functin redisplays the current page.
`A capture function saves the current page in a file
`local to the end-user terminal for offline review.
`
`PMC Exhibit 2152
`
`Apple v. PMC
`|PR2016-01520
`
`Page 16
`
`
`
`PMC Exhibit 2152
`Apple v. PMC
`IPR2016-01520
`Page 16
`
`
`
`7
`An unsolicited keyword search function allows the
`user to enter a term that represents a topic covered
`within the current database. The user is presented with
`a menu specifying the pagesets within the database that
`cover that topic. The user may then examine the "hits"
`if desired through simple menu selection or the other
`navigational functions. Keyword search lets the user
`break out of a menu hierarachy more directly to a topic
`of interest.
`
`SYSTEM/USER INTERFACE
`
`Screen Management
`
`The display area on the end-user's terminal is con-
`trolled by the use of multiple overlaying windows. The
`use of such windows facilitates management of the con-
`tents cf the screen without losing information that may
`be important to the user. and provides for adequate and
`timely interactions between the user and the system.
`In the following discussion, several types of windows
`are described. These windows overlay the underlying
`page image when necessary and the overlayed area. is
`always restored when the window is no longer needed.
`A Command line window—appears, for example, at the
`bottom of the screen whenever the end user begins
`typing something during a display mode. (Dispaly
`modes will be described later in this section.) The
`command line window is preferably wide enough to
`accommodate a single line of text and function key
`definitions. The command window can be made to
`disappear (and have the underlying screen restored)
`by pressing a pare-designated key. This key can be
`used to toggle between the command window and
`the underlying screen. If the key is not used to toggle
`between the window and the screen, the window will
`appear when the user begins a command sequence
`and disappear when the command has been accepted
`for execution by the system. One of the customization
`options would be the placement of this command
`window, e.g.. at the top of the screen or bottom of the
`screen. and another would be the Specific toggle key.
`A Prompt window—allows the system to prompt the
`end user with a short text string and obtain a response
`back. This is used in conjunction with program trig-
`gers that require one or more parameters from the
`user. The prompt window appears when a user makes
`a menu choice requiring a prompt and disappears
`after user input has been received.
`An Action menu window—is a window of variable
`height (depending on the number of action items).
`The window appears on the screen when an action
`keyispressedanddisappearswhentheuserhasse—
`lected a choice from the action menu. (The action key
`and its use are described below).
`A Message window—allows the system to put up infor-
`mational and/or error messages. Error messages usu-
`ally appear in response to a command that could not
`be executed