`
`US006031989A
`
`
`United States Patent
`[19J
`Cordell
`
`[11]Patent Number:
`6,031,989
`[45]Date of Patent:
`*Feb.29,2000
`
`[54]METHOD OF FORMATTING AND
`
`DISPLAYING NESTED DOCUMENTS
`
`OTHER PUBLICATIONS
`
`
`
`[75]Inventor:
`
`Laura Lemay, Web Publishing with HTML 3.2, Sams.net,
`
`John P. Cordell, Bellevue, Wash.
`
`1996, Chapter 14, pp. 387-409.
`
`[73]Assignee: Microsoft Corporation, Redmond,
`
`
`
`
`Wash.
`
`Raggett et al., HTML 3, Addison Wesley Longman, Jun.
`
`
`
`
`1996, pp. 213-245.
`
`Laura Lemay, Teach Yourself Web Publishing with HTML
`
`
`
`
`
`pros[ *] Notice: This patent issued on a continued
`
`
`3.2 in 14 Days, Sams.net, Jun. 1996, pp. 687-705.
`
`
`ecution application filed under 37 CFR
`
`
`1.53( d), and is subject to the twenty year
`Primary Examiner-Thomas R. Peeso
`
`
`
`patent term provisions of 35 U.S.C.
`
`Assistant Examiner-Demetra R. Smith
`
`154(a)(2).
`
`
`
`Attorney, Agent, or Firm----Klarquist Sparkman Campbell
`
`Leigh & W hinston, LLP
`
`
`
`[21]Appl. No.: 08/807,637
`
`[22]Filed:Feb. 27, 1997
`
`[57]
`
`ABSTRACT
`
`[56]
`
`
`
`References Cited
`
`A new reference tag is provided as an extension to the
`
`
`
`
`
`Int. Cl.7 ............................. G06F 17/00; G06F 17/30
`[51]
`
`
`HyperText Markup Language (HTML). The new reference
`
`
`
`
`
`U.S. Cl. ........................... 395/701; 707/513; 707/515
`[52]
`
`
`
`tag allows nesting of HTML and other electronic documents
`
`
`
`Field of Search ..................................... 707/513, 515,
`[58]
`
`
`
`within a main HTML document obtained from a computer
`
`
`
`707/516, 517; 395/200.64, 200.57, 701
`
`
`
`network such as the Internet or an intranet while maintaining
`
`all the layout and presentation capabilities of HTML in both
`
`
`
`
`the main and nested documents. The new reference tag is
`
`
`
`
`
`implemented as a container tag. If a client network appli
`
`
`
`
`
`cations understands the new reference tag, nested documents
`
`8/1997 Nielsen . ... ... ... .... ... ... ... ... ... .... ... ... 707 /3
`5,659,729
`
`
`
`are displayed for a user. If the client network application
`
`
`3/1998 Blumer et al. ..................... 395/200.57
`5,732,219
`
`
`
`does not understand the new reference tag, then the other
`
`
`4/1998 Anderson et al. ...................... 707/513
`5,745,908
`
`
`
`HTML information tags contained between the beginning
`
`
`
`4/1998 Perlman et al. ........................ 707/513
`5,745,909
`
`
`
`
`
`and end of the reference tag (i.e. the reference tag container)
`
`4/1998 Piersol et al. ........................... 707/515
`5,745,910
`
`
`are used to display information for a user.
`
`U.S. PATENT DOCUMENTS
`
`FOREIGN PATENT DOCUMENTS
`
`
`
`
`
`
`
`0818742 Al 1/1998 European Pat. Off ......... G06F 17/30
`
`
`
`30 Claims, 7 Drawing Sheets
`
`HTML
`
`DOCUMENT
`
`INFORMATION
`
`34
`
`\
`
`46
`
`48
`
`MODEM
`
`LOCAL
`
`50
`
`COMPUTER
`
`52
`
`DOCUMENT DISPLAY AREA
`
`54
`
`54
`
`IPR2023-00939
`Apple EX1015 Page 1
`
`
`
`U.S. Patent Feb.29,2000 Sheet 1 of 7 6,031,989
`
`FIG. 1
`
`10
`
`INPUT
`----------------
`14 I DEVICE
`;s COMPUTER 12
`�
`I
`I (KEYBOARD,
`CPU
`MEMORY SYSTEM
`I POINTING
`24
`" ALU ,... L DEVICE,
`MODEM,
`( I�
`221 NETWORK
`CONNECTION,
`I
`26�
`ETC.)
`� ( �
`I
`REGISTERS
`�
`I
`OUTPUT
`I
`DEVICE
`I
`28"
`CONTROL ,... -•
`I
`(DISPLAY,
`UNIT -
`\_ ,-
`221 PRINTER,
`I MODEM,
`I NETWORK
`I CONNECTION,
`ETC.)
`-------------------
`
`SECONDARY
`STORAGE
`
`32
`
`---,
`
`-i
`
`MAIN
`MEMORY
`\
`30
`
`IPR2023-00939
`Apple EX1015 Page 2
`
`
`
`U.S. Patent
`6,031,989
`Feb.29,2000 Sheet 2 of 7
`
`FIG. 2
`
`HTML
`
`DOCUMENT
`
`INFORMATION
`
`34
`
`48
`
`I �□
`
`REMOTE
`
`COMPUTER
`
`MODEM
`
`LOCAL
`
`50
`
`COMPUTER
`
`52
`
`DOCUMENT DISPLAY AREA
`
`54
`
`IPR2023-00939
`Apple EX1015 Page 3
`
`
`
`U.S. Patent Feb.29,2000 Sheet 3 of 7
`6,031,989
`
`FIG. 3
`
`START
`
`56
`
`INSERT A
`REFERENCE TAG
`58
`FOR NESTED
`ELECTRONIC
`DOCUMENT(S)
`TOBE
`DISPLAYED
`WITHIN A MAIN
`DOCUMENT
`
`SPECIFY THE
`60
`DISPLAY LAYOUT
`OF THE NESTED
`ELECTRONIC
`DOCUMENT(S)
`WITH THE
`REFERENCE TAG
`
`SPECIFY THE
`DISPLAY
`62
`TECHNIQUES
`USED FOR
`
`DISPLAYING THE
`NESTED
`DOCUMENT(S)
`WITH THE
`REFERENCE TAG
`
`END
`
`IPR2023-00939
`Apple EX1015 Page 4
`
`
`
`U.S. Patent Feb.29,2000 Sheet 4 of 7 6,031,989
`
`FIG. 4
`64
`
`START
`
`PARSE THE MAIN
`DOCUMENT WITH
`THE CLIENT
`NETWORK 66
`APPLICATION
`
`NO
`
`YES
`
`*
`
`( __ EN_D_ )
`
`NO
`
`YES
`
`DETERMINE
`DISPLAY LAYOUT
`INFORMATION
`AND DISPLAY
`TECHNIQUES
`FOR THE
`NESTED
`DOCUMENT(S)
`FROM THE
`REFERENCE TAG
`
`72
`
`DISPLAY THE
`NESTED
`DOCUMENT(S)
`WITHIN THE MAIN
`DOCUMENT
`
`IPR2023-00939
`Apple EX1015 Page 5
`
`
`
`U.S. Patent Feb.29,2000 Sheet 5 of 7
`6,031,989
`
`76
`
`FRAME 1
`78
`
`FRAME 2
`80
`
`FRAME 3
`82
`
`PRIOR ART
`
`84
`
`NESTED DOCUMEl',IT 1
`\._ 90
`
`88
`
`86
`
`92
`1.DISPLAY NESTED DOCUMENT �
`2.DISPLAY NESTED DOCUMENT s---_, 94
`
`IPR2023-00939
`Apple EX1015 Page 6
`
`
`
`U.S. Patent Feb.29,2000 Sheet 6 of 7
`6,031,989
`
`84
`
`86
`
`NESTED DOCUMENT A -�8
`'--110
`
`92
`1.DISPLAY NESTED DOCUMENT A__.)
`2.DISPLAY NESTED DOCUMENT 8'----, 94
`
`IPR2023-00939
`Apple EX1015 Page 7
`
`
`
`U.S. Patent Feb.29,2000 Sheet 7 of 7 6,031,989
`
`FIG. 7
`
`START
`
`112
`
`/ 116
`
`YES
`
`USE <IFRAME>
`REFERENCE TAG
`TO LAYOUT AND
`DISPLAY
`NESTED
`DOCUMENT(S)
`
`NO
`
`120
`
`118
`
`IGNORE
`<IFRAME>
`</IFRAME>
`REFERENCE
`TAGS
`
`IGNORE INFO
`TAGS BETWEEN
`<IFRAME>
`</IFRAME>
`REFERENCE
`TAGS
`
`122
`
`USE INFO TAGS
`BETWEEN THE
`<IFRAME>
`</IFRAME>
`REFERENCE
`TAGS TO
`DISPLAY
`INFORMATION
`
`END
`
`IPR2023-00939
`Apple EX1015 Page 8
`
`
`
`1
`
`METHOD OF FORMATTING AND
`
`6,031,989
`
`
`
`DISPLAYING NESTED DOCUMENTS
`
`FIELD OF INVENTION
`
`BACKGROUND AND SUMMARY OF THE
`INVENTION
`
`2
`frames to display text in one frame, a photographic image in
`
`
`
`
`
`another, and an animated sequence in a third frame. Authors
`
`can also specify a frame specifically for the purpose of
`
`
`
`navigational elements such as graphical toolbars. Clicking
`
`
`
`on the graphical toolbar frames with a mouse or other
`5
`The present invention relates to formatting and displaying
`
`
`
`
`
`
`pointing device will update the content of other frames
`
`
`
`
`information contained within a document obtained from
`displayed.
`
`
`
`
`
`computer networks. More particularly, the present invention
`One problem with HTML frames is that they can only
`
`
`
`
`
`relates to formatting text, graphical images and other infor
`
`
`
`
`
`specify a static "tiling" of the display area. Frames are a set
`
`
`mation for an electronic document nested with a main
`
`
`
`
`very strict 10 of non-overlapping, static rectangles created with
`
`
`
`electronic document used on computer networks like the
`
`
`
`
`layout constraints. This is a very different layout model from
`
`Internet or an intranet.
`
`
`
`which HTML provides. The layout of a document within a
`
`
`frame cannot be changed once the frame is created.
`
`
`
`Yet another problem with HTML frames is that arbitrary
`
`
`
`
`15 HTML documents cannot be "nested." When a HTML frame
`The Internet is a world-wide network of cooperating
`
`
`
`
`
`
`is displayed, a HTML document is used to display HTML
`
`
`
`
`computer networks. Connected to the Internet are thousands
`
`
`information in the frame (e.g., text, images, graphics, etc).
`
`
`
`of individual computers, each with a variety of application
`
`
`The frame behaves like a static "window" which is used by
`
`
`
`
`programs. From a user's point of view, access to the Internet
`
`
`
`
`
`the client network application to display information to a
`
`
`
`
`and its services typically are accomplished by invoking a
`
`
`
`20 user. If a reference is made (e.g., with a link, URL, reference
`
`
`
`
`
`
`network application program (e.g., a network browser). The
`
`tag, etc.) to a second HTML document within the first
`
`
`
`network application program acts as an interface between
`
`
`HTML document used to display the HTML frame, the
`
`
`
`the user and the Internet. Network application programs are
`
`
`
`second HTML document is read in and laid out in the HTML
`
`
`
`
`typically "client" applications that accept commands from
`
`
`
`
`
`frame. The second document layout replaces all of the first
`
`
`
`the user and obtain Internet data and services by sending
`
`
`
`
`document display and layout characteristics in the HTML
`25
`
`
`
`
`requests to "server" applications on other computers at other
`
`
`
`frame. This prevents an author from nesting any arbitrary
`
`locations on the Internet.
`
`
`
`
`HTML document inside another. Without document nesting,
`
`
`There are many types of client network applications
`
`
`
`
`a second HTML document cannot be displayed within a first
`known in the art including network browsers such as the
`
`
`
`
`
`
`
`HTML document without overwriting all the layout and
`Internet Explorer® by Microsoft Corporation of Redmond,
`
`
`
`
`
`
`
`
`It is of the first HTML document. 30 display characteristics
`
`
`
`
`Wash., Netscape Navigator™ by Netscape Communications
`
`
`
`often desirable to keep the layout and display characteristics
`
`
`of Mountain View, Calif., and Mosaic™ by the National
`
`
`
`of the first HTML document ( e.g., a home page) and display
`
`
`Center for Supercomputer Applications (NCSA) of
`
`
`
`a second "nested" HTML document (e.g., a second or
`
`
`
`Champaign-Urbana, Ill. These network browsers send net
`
`
`
`alternate home page) using only a small portion of the
`
`
`
`work requests via the File Transfer Protocol (FTP), Simple
`
`
`
`
`the first HTML frame used to display 35 display area in the
`
`
`
`
`
`Mail Transfer Protocol (SMTP), HyperText Transfer Proto
`
`
`
`document. The <FRAME> and <FRAMESET> tags in
`
`
`
`
`col (HTTP), Gopher document protocol and others. The
`
`
`
`
`HTML do not allow arbitrary document nesting. However,
`
`
`
`network requests are used to exchange data with computer
`
`the <FRAME> and <FRAMESET> tags do allow some
`
`
`networks such as the Internet or an intranet.
`
`
`
`
`degree of nesting, but the containing document is required to
`
`
`
`HTTP is a protocol used to access data on the World Wide
`
`
`
`40 be a <FRAME> document that has restricted layout char
`
`
`Web. The World Wide Web is an information service on the
`
`
`acteristics. HTML frames do allow a number of documents
`
`
`
`Internet containing electronic documents created in the
`
`
`
`
`to be displayed side-by-side, but do not allow overlapping or
`
`
`
`HyperText Markup Language (HTML). HTML allows
`
`
`
`
`true nesting of documents. The frame container itself cannot
`
`
`
`
`
`embedded "links" or Uniform Resource Locators (URLs) to
`
`
`
`display many of the visual presentation and display content
`
`point to other data or electronic documents, which may be
`
`
`45 attributes associated used to display a HTML document, as
`
`
`
`
`found on the local computer or other, remote Internet or
`
`
`
`it is limited by strict frame layout constraints.
`
`
`
`intranet host computers. HTML document links may retrieve
`
`
`
`
`
`
`Yet another problem occurs if an author tries to extend the
`
`
`
`the data by use of HTTP, FTP, Gopher, or other Internet
`
`
`existing HTML <FRAME> and <FRAMESET> tags to
`
`
`
`
`
`application protocols. The Virtual Reality Modeling Lan
`
`
`
`overcome some of the strict frame layout constraints.
`A
`
`
`
`guage (VRML) is also used to create documents for the
`
`
`
`
`50 "downlevel client" problem occurs when existing HTML
`
`
`World Wide Web. Specifically, VRML is typically used to
`
`
`tags are extended. A HTML reference tag is extended when
`
`
`
`
`create three-dimensional graphical information documents.
`
`
`attributes or parameters are added to the HTML reference
`
`
`
`HTML documents are electronic documents that typically
`
`
`
`tag that are not a part of the current HTML standard. Older
`
`
`
`
`contain text, graphical images, animation sequences, audio
`
`
`
`
`
`client software (e.g., earlier versions of a network browser)
`
`
`
`and video clips, and other information that is displayed by
`
`
`
`
`55 cannot interpret the HTML extensions and will not properly
`
`
`
`
`a network browser on a display device for a user.
`
`
`display the extended HTML tags since the older client
`
`
`
`
`
`software was created using the current HTML standard. The
`
`HTML allows the author of a document to split the
`
`
`
`
`browser will typically create an incomplete or garbled
`
`
`
`information displayed by a network browser into a number
`
`
`
`
`display area for a user, or ignore the extensions all together.
`
`
`of rectangular areas called "frames." HTML frames are
`
`
`
`
`60 To prevent improper display of the HTML extensions, an
`
`
`created with the HTML <FRAME> and <FRAMES ET> tags
`
`
`
`
`author would have to create and maintain multiple copies of
`
`which are known to those skilled in the art. For more
`
`
`each HTML document, one for each version of every
`
`
`
`information see Chapter 9, "Designing Tables and Frames"
`
`
`
`
`network browser that could be used to display the document.
`
`
`in Web Publishing Unleased, by William Robert Stanek,
`
`
`
`This is an inefficient process and wasteful process, and
`
`
`
`Sams.Net Publishing, Indianapolis, Ind., 1996. Each frame
`
`
`
`65 causes a significant impact for the server computers on
`
`
`
`can then separately display a HTML document or other
`
`
`
`
`which the multiple documents are stored (e.g., wastes sig
`
`
`
`
`HTML object (e.g., a photographic image) specified by a
`
`
`nificant storage space).
`
`
`
`
`separate URL. For example, an author can create multiple
`
`IPR2023-00939
`Apple EX1015 Page 9
`
`
`
`6,031,989
`
`4
`3
`In accordance with an illustrative embodiment of the
`
`
`
`FIG. 5 is a block diagram showing frames created with the
`
`
`
`
`
`
`
`
`present invention, the problems associated with existing
`
`prior art HTML <FRAMESET> and <FRAME> tags.
`
`
`HTML frames are overcome. A method for formatting a
`
`
`
`FIGS. 6A and 6B are block diagrams illustrating nested
`
`
`HTML document that allows the nesting of other documents
`
`
`
`
`documents for an illustrative embodiment of the present
`
`
`
`
`
`within the HTML document is provided. The method is used 5
`invention.
`
`
`
`
`to specify one or more nested documents (i.e., other elec
`FIG. 7 is a flow diagram illustrating a method according
`
`
`
`
`
`
`
`tronic documents) which will be displayed within a main
`
`
`
`to the invention for displaying nested documents as a
`
`
`
`document by inserting a new reference tag into a main
`
`container tag.
`
`
`
`
`electronic document (e.g., a HTML document). The new
`
`
`
`
`
`
`reference tag is also used to specify the display layout ( e.g.,
`DETAILED DESCRIPTION OF AN
`
`10
`
`
`
`
`and horizontal spacing align ment, border, width, height,
`ILLUSTRATIVE EMBODIMENT
`
`
`
`
`
`vertical spacing) of the nested documents, and the display
`Referring to FIG. 1, an operating environment for the
`
`
`
`
`
`
`
`techniques (e.g., frame border, margin height, margin width,
`
`
`nested document name, and source location after nested
`
`
`
`
`
`preferred embodiment of the present invention is a computer
`
`
`
`
`document) used for presenting the nested electronic docu
`
`
`system 10 with a computer 12 that comprises at least one
`15
`
`
`
`ments within the main document. The method allows the
`
`
`
`high speed processing unit (CPU) 14, in conjunction with a
`
`
`
`nesting of documents within a main electronic document
`
`
`
`
`memory system 16, an input device 18, and an output device
`
`
`while maintaining all the layout and presentation capabilities
`
`
`
`20.These elements are interconnected by a bus structure 22.
`used to display the main electronic document.
`
`
`
`
`The illustrated CPU 14 is of familiar design and includes
`
`
`
`
`
`The illustrative embodiment of the present invention also
`
`
`20 an ALU 24 for performing computations, a collection of
`
`
`includes a method for displaying a main electronic docu
`
`
`registers 26 for temporary storage of data and instructions,
`
`
`
`ment with nested documents. The method includes parsing
`
`
`and a control unit 28 for controlling operation of the system
`
`
`
`
`the main electronic document with nested documents with a
`
`
`
`10.Any of a variety of processors, including those from
`
`
`
`
`
`client network application. When the new reference tag to a
`
`
`
`Digital Equipment, Sun Microsystem, MIPS, IBM,
`
`
`
`nested electronic document is encountered, the layout infor
`
`
`
`
`are25 Motorola, NEC, Intel, Cyrix, AMD, Nexgen and others
`
`
`
`
`mation and display techniques to be used for presenting the
`
`
`equally preferred for CPU 14. Although shown with one
`
`
`nested electronic documents within the main electronic
`
`CPU 14, computer system 10 may alternatively include
`
`
`
`
`document from the reference tag are determined. The nested
`
`
`multiple processing units.
`
`
`
`
`
`electronic document is displayed within the main electronic
`
`
`
`
`
`document using the layout information and display tech
`The memory system 16 includes main memory 30 and
`
`
`
`
`niques determined from the reference tag.
`
`
`
`secondary storage 32. Illustrated main memory 30 is high
`30
`
`speed random access memory (RAM) and read only
`
`
`
`
`The new reference tag achieves good "downlevel client"
`
`memory (ROM). Main memory 30 can include any addi
`behavior by implementing the reference tag as a "container
`
`
`
`
`
`tional or alternative high speed memory device or memory
`
`tag." Everything between a beginning reference and an
`
`
`
`
`
`circuitry. Secondary storage 32 takes the form of long term
`ending reference tag marker (i.e., the other HTML informa
`
`
`
`
`
`
`storage, such as ROM, optical or magnetic disks, organic
`tion tags) is ignored by newer client network applications
`
`
`
`35
`
`
`memory or any other volatile or non-volatile mass storage
`
`
`which can understand the new reference tag. The attributes
`
`
`
`system. Those skilled in the art will recognize that memory
`
`
`
`
`within the new reference tag contain the nested document
`
`
`
`16 can comprise a variety and/or combination of alternative
`
`
`
`information. Older client network applications ignore the
`components.
`
`
`
`
`new reference tag markers, and instead use any HTML
`
`
`
`
`information tags included between the beginning and ending
`The input and output devices 18, 20 are also familiar. The
`
`
`
`40
`
`
`
`
`reference tag markers to display information to a user. This
`
`
`input device 18 can comprise a keyboard, mouse, pointing
`
`
`
`
`
`allows a document author to construct one document with
`
`
`
`
`
`device, audio device (e.g., a microphone, etc.), or any other
`
`
`
`nested documents for newer client software, which can still
`
`
`
`device providing input to the computer system 10. The
`
`
`be properly displayed by older client software.
`
`
`
`
`output device 20 can comprise a display, a printer, an audio
`
`
`
`device providing 45 device (e.g., a speaker, etc.), or other
`The new HTML reference tag provides an extension to the
`
`
`
`
`
`output to the computer system 10. The input/output devices
`
`
`
`
`HTML language and gives an electronic document author
`
`
`
`
`
`18, 20 can also include network connections (e.g., Internet
`
`
`
`the ability to embedded nested documents in a HTML
`
`
`
`
`
`and intranet connections), modems, or other devices used for
`
`
`
`
`document stored on a server computer on the World Wide
`
`
`
`communications with other computer systems or devices.
`
`
`
`Web, the Internet, and other computer networks such as
`intranets.
`
`
`
`in the art, the computer 50 As is familiar to those skilled
`
`
`
`
`system 10 further includes an operating system and at least
`
`
`
`The foregoing and other features and advantages of the
`
`
`
`one application program. The operating system is software
`
`
`
`
`
`illustrated embodiment of the present invention will be more
`
`
`
`which controls the computer system's operation and the
`
`
`
`
`readily apparent from the following detailed description,
`
`
`
`
`allocation of resources. The application program is software
`
`
`
`which proceeds with reference to the accompanying draw-
`
`
`55 that performs a task desired by the user, making use of
`ings.
`
`
`
`
`computer resources made available through the operating
`
`
`
`
`system. Both are resident in the illustrated memory system
`FIG. 1 is a block diagram of a computer system used to
`
`
`16.
`
`
`
`
`implement an illustrative embodiment of the present inven
`In accordance with the practices of persons skilled in the
`
`
`
`
`tion.
`
`
`
`
`60 art of computer programming, the present invention is
`
`
`FIG. 2 is a block diagram illustrating a network browsing
`
`
`
`described below with reference to acts and symbolic repre
`environment.
`
`
`
`sentations of operations that are performed by computer
`
`
`
`FIG. 3 is a flow diagram illustrating a method according
`
`
`
`
`system 10, unless indicated otherwise. Such acts and opera
`
`
`
`
`to the invention for formatting an electronic document.
`
`
`tions are sometimes referred to as being computer-executed.
`
`
`
`
`
`
`
`FIG. 4 is a flow diagram illustrating a method according 65 It will be appreciated that the acts and symbolically repre
`
`
`
`
`
`
`
`
`to the invention for displaying an electronic document with sented operations include the manipulation by the CPU 14 of
`
`nested documents.
`
`
`
`electrical signals representing data bits which causes a
`
`
`
`BRIEF DESCRIPTION OF THE DRAWING S
`
`IPR2023-00939
`Apple EX1015 Page 10
`
`
`
`6,031,989
`
`6
`5
`resulting transformation or reduction of the electrical signal
`
`
`
`
`
`
`other data formats (e.g., Virtual Reality Modeling Language
`
`
`
`
`representation and the maintenance of data bits at memory
`
`
`
`(VMRL), Microsoft® Word documents, etc.) from the local
`
`
`
`locations in memory system 16 to thereby reconfigure or
`
`
`
`computer 36 or remote computer 44. In conformance with
`
`
`
`otherwise alter the computer system's operation, as well as
`
`
`HTML, the illustrated document 46 can incorporate other
`
`
`other processing of signals. The memory locations where
`
`
`
`
`5 additional information content 48, such as graphical images,
`
`
`
`
`data bits are maintained are physical locations that have
`
`
`
`
`audio, video, executable programs, etc. which also reside at
`
`
`particular electrical, magnetic, optical, or organic properties
`
`
`
`the remote computer 44 or other remote computers. The
`
`
`corresponding to the data bits.
`
`
`
`document 46 and information 48 preferably are stored as
`
`
`
`files in a file system of the remote computer 44. The
`
`
`The data bits may also be maintained on a computer
`
`
`
`the information 48 using HTML 10 document 46 incorporates
`readable medium including magnetic disks, and any other
`
`
`
`
`
`
`
`tags and Uniform Resource Locators (URLs) that specify the
`
`
`
`
`volatile or non-volatile mass storage system readable by the
`
`
`
`
`
`location of files or other Internet resources containing the
`
`
`computer 12. The computer readable medium includes
`
`
`
`
`images on the computer network 38. However, other locat-
`
`
`
`cooperating or interconnected computer readable media,
`
`
`ing formats can also be used.
`
`
`which exist exclusively on computer system 10 or are
`
`
`
`
`distributed among multiple interconnected computer sys-15
`When used for browsing documents, the browser displays
`
`
`
`terns 10 that may be local or remote.
`
`
`the document in a window 50 or area of the local computer's
`
`
`
`
`36 display 20 allocated to the browser by the operating
`
`
`
`In an illustrative embodiment of the present invention, the
`
`
`
`system. The illustrated window 50 comprises a document
`computer system 10 preferably uses the Windows® 95
`
`
`
`
`display area 52 and user interface controls 54. The browser
`
`client/server operating system. However, other client/server
`
`
`
`
`
`
`20 displays the document within the document display area 52
`operating systems (e.g. Windows NT™ , Windows CE,
`
`
`
`
`
`of the window 50. However, other display types could also
`
`OS/2®, by IBM, etc.) could also be used. A client/server
`be used.
`operating system is an operating system which is divided
`
`
`into multiple processes of two different types: server The browser and other client network applications within
`
`
`
`
`
`
`
`
`
`
`
`
`
`processes, each of which typically implements a single set of the local computer 36 preferably work with electronic
`25
`
`
`
`
`
`
`
`
`services, and client processes, which request a variety of documents (which have data formats other than those native
`
`
`
`
`
`to the browser or client application) by encapsulating the
`
`
`
`services from the server processes.
`
`
`
`
`document's data into an associated object, and integrating
`
`
`The Windows® 95 operating system allows users to
`
`
`with the object using pre-defined interfaces as described
`
`
`execute more than one program at a time by organizing the
`
`
`
`more fully below. This allows full use of all the features
`
`many tasks that it must perform into "processes." The
`
`
`described below.
`30
`operating system allocates a portion of the computer's
`
`
`
`resources to each process and ensures that each process's Alternatively, the browser or other client network appli
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`program is dispatched for execution at the appropriate time cation can work with an electronic document by launching
`
`and in the appropriate order.
`
`
`
`
`an application program associated with the document and
`
`
`
`
`causing the associated application program to load the
`
`FIG. 2 shows a browsing environment 34 of an illustrative
`35
`
`
`
`document and perform a specified operation on the docu
`
`
`
`
`
`embodiment of the present invention. A local computer 36
`
`
`
`
`ment. In the Microsoft Windows® 95 operating system, this
`
`
`
`(e.g., computer system 10 shown in FIG. 1) runs software,
`
`
`
`
`is done by looking up the application program associated
`
`
`referred to herein as a "browser," for unified browsing of
`
`
`with the document's file name extension in the system
`
`
`
`electronic documents and other data from local sources ( e.g.,
`
`
`documents, 40 registry, ( e.g., ".doc" for Microsoft® Word
`
`the memory system 16 of FIG. 1) and from a computer
`
`
`
`".vsd" for Shapeware's VISIO drawings, etc.) and a text
`
`
`
`
`
`network 38 (e.g., the Internet, an intranet). The browser can
`
`
`
`string command for directing the program to perform a
`
`
`
`be integrated with the operating system software, or can be
`
`
`
`
`desired operation. The application program associated with
`
`
`
`a separate application software. The illustrated remote com
`
`
`
`
`a document also may be identified in the Microsoft Win-
`
`puter network 38 is the Internet, an intranet, or other
`
`
`
`dows® operating system by matching a bit pattern at specific
`
`
`
`
`
`computer network. In the illustrated browsing environment
`45
`
`
`
`offset into the file as also specified in the system registry.
`
`
`
`
`34, the local computer 36 connects to the computer network
`
`
`
`
`The browser or other client network application patches the
`
`38 over a telephone line 40 via a modem 42. Other physical
`
`
`
`document's file name into the text string command and
`
`
`
`connections 41 to the computer network alternatively can be
`
`
`
`
`invokes the operating system's shell execute service to
`
`
`used, such as an ISDN, Tl, DSl or other high speed
`
`
`
`
`execute the command. Shell execute is a well known Win-
`
`
`
`telecommunications connections and appropriate connec
`50
`
`
`
`
`
`dows® operating system service which issues a text string as
`
`
`
`tion device, a television cable and modem, a satellite link, an
`
`
`
`a command to the operating system's command interpreter
`
`
`optical fiber link, an Ethernet or other local area network
`
`
`
`(i.e., the "command.com" program in the Windows® oper
`
`
`technology wire and adapter card, radio or optical transmis
`ating system).
`
`
`
`sion devices, etc. The invention can alternatively be embod-
`ied in a browsing environment for other public or private The text string generally is in the form of an MS-DOS
`
`
`
`
`
`
`55
`
`
`
`computer networks, such as a computer network of a com
`
`
`
`command, which specifies a path and file name of the
`
`
`
`
`mercial on-line service or an internal corporate local area
`
`
`
`
`associated application program's executable file, a flag for
`
`
`
`network (LAN), an intranet, or like computer network.
`
`
`
`
`specifying the desired operation, and the document's path
`
`
`
`and file name. The command interpreter responds by parsing
`
`
`
`Documents for browsing with a browser can reside as files
`
`
`
`
`
`60 the text string, loading the application program specified in
`
`
`of a file system stored in the computer's secondary storage
`
`
`
`
`
`the text string, and passing the flag and the document's path
`
`
`
`
`32 (FIG. 1), or reside as resources at a remote computer 44
`
`
`and file name as command line arguments into the applica
`
`
`
`
`( also referred to as a "site" or "store") connected to the
`
`
`
`
`tion program. The application program then "opens" (i.e.,
`
`
`
`computer network 38, such as a World Wide Web site on the
`
`
`
`
`loads) the document and performs the operation specified by
`
`
`
`
`Internet. The illustrated document 46 residing at the remote
`65 the flag.
`
`
`computer conforms with HTML standards, and may include
`
`
`extensions and enhancements of HTML standards.
`FIG. 3 is a flow diagram illustrating a method 56 accord
`
`
`
`
`
`However, the browser also can browse documents having
`
`
`
`
`ing to the invention for formatting an electronic document
`
`IPR2023-00939
`Apple EX1015 Page 11
`
`
`
`6,031,989
`
`7
`8
`( e.g., a H1ML document) to provide nested documents ( e.g.,
`
`
`
`
`
`reference tag, or an ending reference tag marker. The H1ML
`
`
`
`
`
`
`
`
`
`other HTML documents, graphical images, etc.) within the
`<IFRAME></IFRAME>
`
`reference tag pair has the follow
`
`
`electronic document. In a first step 58, one or more nested
`ing syntax:
`
`
`
`
`electronic documents to be displayed within a main elec
`
`
`
`
`
`
`tronic document are specified with a reference tag (e.g., new 5
`<IFRAME,
`N> H1ML
`
`
`attribute 1, attribute 2, . . . attribute
`
`
`HTML <IFRAME></IFRAME> reference tags described
`
`
`below). In a second step 60, the display layout of the nested
`
`information tags
`
`
`
`
`electronic documents to be displayed within the main elec
`</IFRAME>
`where attribute 1-attribute N include
`
`
`
`
`
`
`tronic document is specified with the reference tag. This
`
`
`alignment, border, frame border, height, horizontal
`
`
`
`
`
`layout includes determining the alignment, border, width,
`10
`
`
`
`spacing, nested document identifier, margin height,
`
`
`
`
`height, horizontal spacing, and vertical spacing of the nested
`
`
`
`
`margin width, nested document name, nested document
`
`
`
`
`document. However, more or fewer display layout charac
`
`
`
`source location, nested document identifier, resizing,
`
`
`teristics can be used. In a third step 62, the display tech
`
`
`
`
`
`
`niques for the nested electronic documents are specified with
`
`
`
`
`
`scrolling, style, vertical spacing, display style, and
`
`
`
`
`the reference tag. The display techniques include the frame
`
`
`
`width attributes used to layout and display a nested
`15
`
`
`
`border, margin height, margin width, nested document
`
`
`
`
`document. Each of these attributes will be explained in
`
`
`
`
`name, the source location of the nested document (i.e., on
`
`
`detail below. The HTML information tags (e.g.,
`
`
`
`the local or remote computer), re-sizing and scrolling capa
`
`<IMG>, <MENU>, <A></A>, etc.) are HTML infor
`
`
`
`
`bilities. However, more or fewer display techniques could
`
`
`
`mation tags contained in the nested document that will
`
`
`also be used. Method steps 58-62 are completed by desig-
`20
`
`
`
`display information to a user if the new HTML
`
`
`
`
`nating display layout display techniques and within a HTML
`
`
`<IFRAME></FRAME> reference tags are not recog
`
`
`<IFRAME><IFRAME> reference tag pair.
`
`
`
`nized by a client network application. The nested
`
`
`A HTML tag pair <IFRAME></IFRAME> is a new
`
`
`
`document may contain URLs to other documents on
`
`
`reference tag used to provide the method 56 described
`
`above, where <IFRAME> designates the beginning
`
`
`
`other computers on the computer network. The
`of a 25
`
`
`</IFRAME> reference tag ends the new <IFRAME>
`
`
`
`
`
`"reference tag" or a beginning reference tag marker, which
`
`
`reference tag. The atttributes used in the <IFRAME>
`
`
`
`
`
`designates nested electronic documents within a main elec
`
`
`
`tronic document, and </IFRAME> designates the end of the
`
`
`tag include those described in Table 1:
`
`
`Attribute
`
`Description
`
`TABLE 1
`
`align
`align-right
`align-left
`border
`border-4
`
`frameborder
`frameborder-0
`
`height
`height-150
`hspace
`hspace-10
`
`id
`id-7
`
`Controls the height of the nested document
`
`Controls the alignment of the nested
`
`
`
`
`
`
`document. Aligns a nested document at the
`
`
`left margin, right margin or center margin.
`
`
`Controls a border type around the nested
`document. A numerical value indicates the
`
`width of the line to be drawn in pixels.
`
`
`Controls a 30 frameborder around the
`
`
`
`nested document, 0= no frame border, 1 =
`frame border
`
`
`
`in pixels.
`Controls the horizontal spacing around a
`
`
`
`
`
`
`nested document in pixels. Can be used to
`
`create a gap around text.
`
`
`Controls the identification of individual
`
`
`
`nested document elements displayed using
`
`numerical values
`Controls the margin height of a container in
`
`
`
`
`
`
`which a nested document appears.
`
`
`
`Controls the margin width of a container in
`
`
`which a nested document appears.
`
`
`
`
`Controls nested document interaction with
`
`
`other nested documents and other windows.
`
`Default is no name. Once a name is
`
`
`
`defined, the nested document can be
`
`
`targeted by the nested documents.