`Templeman
`
`54) DOCUMENT PROCESSING USING FRAME-
`BASED TEMPLATES WITH HIERARCHICAL
`TAGGING
`
`Inventor: Michael L. Templeman, Seattle, Wash.
`
`Assignee: Netpodium, Inc., Seattle, Wash.
`
`Appl. No. 724,219
`Filed:
`Oct. 2, 1996
`
`Related U.S. Application Data
`
`Continuation of Ser. No. 350,447, Dec. 6, 1994, abandoned.
`
`Int. Cl. ...................................................... G06F 7/06
`U.S. Cl. ........................... 707/517; 707/514; 707/517
`Field of Search ..................................... 395/766, 768,
`395/769, 776, 777, 779, 780, 782, 784,
`788, 802; 382/176; 707/505, 507,508,
`514,515, 517, 518, 520, 522,526, 539
`
`56)
`
`References Cited
`
`U.S. PATENT DOCUMENTS
`
`4,948,283 8/1990 Imaizumi et al. ................... 400/647.1
`5,051,930 9/1991 Kuwabara et al.
`... 395/148
`5,151,975 9/1992 Shiraki et al. ........
`... 395/153
`5,179,646
`1/1993 Kawakami et al.
`... 395/145
`5,181,162
`1/1993 Smith et al. ..........
`... 364/419
`5,263,133 11/1993 Hyakutake et al.
`... 395/147
`5,270,705 12/1993 Duffy ...
`... 340/870.13
`5,276,792
`1/1994 Masaki ......
`... 395/146
`5,293,473 3/1994 Hesse et al.
`... 395/146
`5,319.546
`6/1994 Nishino .........
`... 364/405
`5,333,246 7/1994 Nagasaka ................................ 395/133
`5,347,625 9/1994 Kajimoto et al........................ 395/145
`5,381.523
`1/1995 Hayashi ............
`... 395/145
`5,495,565 2/1996 Millard et al. .......................... 707/506
`
`FOREIGN PATENT DOCUMENTS
`2258552 2/1993 United Kingdom.
`
`USOO5845303A
`Patent Number:
`11
`(45) Date of Patent:
`
`5,845,303
`Dec. 1, 1998
`
`OTHER PUBLICATIONS
`Stallings, Business Data Communications, Macmillan Pub
`lishing Company, 1990, pp. 364 and 569.
`Yeartech Guide to Desktop Publishing Yearbooks, Jostens
`Yearbook Technology, 1992, pp. ii-iX, 3-11 to 3-16 and
`7-1 to 7-12.
`Shu, et al., “Convert: A High Level Translation Definition
`Language for Data Conversion, CACM, 18:10, p. 557
`(1975).
`de Jong, et al., “Intelligent Forms Creation in the System for
`Business Automation.” IBM Technical Report RC8529, Oct.
`1980.
`Luo, et al., “Form Operation by Example-a Language for
`Office Information Processing.” ACM SIGMOD Conference,
`p. 212, (1981).
`Tsichritzis, “Form Management,” CACM, 25:7, p. 453,
`(1982).
`Shu, “Specification of Forms Processing and Business Pro
`cessing and Business Procedures for Office Automation,”
`IEEE Transactions on Software Engineering, SE-8:5, p.
`499, Sep. 1982.
`(List continued on next page.)
`Primary Examiner Stephen S. Hong
`Attorney, Agent, or Firm Townsend and Townsend and
`Crew LLP
`ABSTRACT
`57
`A System and method for manipulating and displaying
`information in a computer System includes a display Screen,
`a processor, a storage device, and a data input device. Input
`data is received in the System through the input device. The
`System determines a display format of the data. The display
`format includes a number of constraints on the display. The
`System associates the input data with the appropriate display
`frame and flows the data into the frame. Constraints on the
`display are Solved as the data is flowed (or moved) into a
`frame or frames. Upon resolution of constraints, the display
`frame is sized to accommodate the input data and the frame
`is displayed on the computer display Screen.
`
`14 Claims, 5 Drawing Sheets
`
`30a
`
`82
`
`130h
`
`130
`
`:
`
`80
`
`ogg
`
`-------
`
`Y-
`
`)
`132a -1 ?
`
`134
`
`132c Title
`
`es
`Header
`
`pe
`t
`
`32d
`
`84
`
`134c
`
`132
`
`---
`
`
`
`90 - - -
`
`Body column
`134
`c ---
`
`Body column
`134f -
`130c
`
`N
`
`130c
`
`88
`
`88
`
`34h
`
`130g
`
`-1-
`
`Amazon v. Audio Pod
`US Patent 10,805,111
`Amazon EX-1053
`
`
`
`5,845,303
`Page 2
`
`OTHER PUBLICATIONS
`Feather, “Program Specification Applied to a Text Format
`ter," IEEE Transactions on Software Engineering, SE-8:5,
`491, Sep. 1982.
`Rowe, et al., “A Form Application Development System,”
`ACM SIGMOD Conference, 28, 1982.
`Archer, Jr., et al. “Display Condensation of Program Text,”
`IEEE Transactions on Software Engineering, SE-8:5, p.
`526, Sep. 1982.
`Ferrans, "SEDL-A Language for Specifying Integrity Con
`straints on Office Forms,” ACM SIGOA Conference On
`Office Information Systems, p. 123, Jun. 1982.
`Noot, “Structured Text Formatting Software Practice and
`Experience,” 13:1, p. 79, 1993.
`Woo, et al., “A System for Interactively Designing Message
`Templates," IEEE CompCon, p. 27 (1983).
`Kitagawa, et al., “Form Document Management System: Its
`Architecture and Implementation,” ACM SIGOA Confer
`ence on Ofice Information Systems, p. 132, Jun. 1984.
`Lee, et al., “Officeaid: An Integrated Document Manage
`ment System,” ACM SIGOA Conference On Ofice Informa
`tion Systems, p. 170, Jun. 1984.
`Embley, et al., “Office Form Definition and Processing
`Using a Relational Data Model,” ACM SIGOA Conference
`On Ofice Information Systems, p. 123, Jun. 1984.
`Sankar, “A Method to Simplify Filling Data Entry Forms,”
`ACM SIGDOC Asterisk, 10:4, p. 15, Dec. 1984.
`Arno, et al., “Document Architecture and Text Formatting.”
`ACM Transactions. On Office Information Systems, 3:4, p.
`347, Oct. 1985.
`
`Trigg, et al., “TEXTNET: A Network-Based Approach to
`Text Handling.” ACM Transactions On Office Information
`Systems, 4:1, Jan. 1986.
`Malone, et al., “Intelligent Information-Sharing Systems.”
`CACM, 30:5, p. 390, 1987.
`Mamrak, “Translation among WYSIWYG Word Processors
`in Chameleon,” ACM SIGOIS Bulletin, 9:1, p. 14 (1988).
`Koo, “A Model for Electronic Documents.” ACM SIGOIS
`Bulletin, 10:1, p. 23, 1989.
`de La Beaujardiere, “Well Established Document Inter
`change Formats,” Xerox PARC, EDL-89–1, 1989.
`Stotts, et al., “Petri-Net-Based Hypertext: Document Struc
`ture with Browsing Semantics,” ACM Transactions. On
`Office Information Systems, 7.1 p. 3, Jan. 1989.
`Guting, “An Algebra for Structured Office Documents.”
`ACM Transactions. On Office Information Systems, 7.4, p.
`123, Apr. 1989.
`Lutz, et al., “MAFIA-An Active Mail-Filter-Agent for an
`Intelligent Document Processing Support,” ACM SIGOIS
`Bulletin, 11:4, p. 16, (1990).
`Marovac, "Document Recognition-Concepts and Imple
`mentation.” ACM SIGOIS Bulletin, 13:3, p. 28, (1992).
`Rada, “Converting a Textbook to Hypertext,” ACM Trans
`actions on Office Information Systems, 10:3, p. 294, Jul.,
`1992.
`Wang, et al., “A New Approach to Modeling Office Docu
`ments,” ACM SIGOIS Bulletin, 14:2, p. 46, 1993.
`Stahl, “The Form is in the (E)Mail.” Information week, p. 42,
`Aug. 8, 1994.
`
`-2-
`
`
`
`U.S. Patent
`
`Dec. 1, 1998
`
`Sheet 1 of 5
`
`5,845,303
`
`GRAPHICS
`FIGURE
`
`HEADER OF
`NEM/SLETTER
`
`TITLE OF STORY
`
`Body of text (column
`one) ...
`
`Body of text (column
`two) ...
`
`FOOTER OF NEWSLETTER
`
`FIG. 1A
`(PRIOR ART)
`
`26
`
`28
`
`Header text C Cr C
`Title text C Crd
`Body text < cr>
`Footer < Cr D
`
`24
`
`
`
`30
`32
`
`34
`
`FIG. 1B
`(PRIOR ART)
`
`-3-
`
`
`
`U.S. Patent
`
`Dec. 1, 1998
`
`Sheet 2 of 5
`
`5,845,303
`
`INFORMATION
`SOURCE
`
`TRANSMISSION
`CHANNEL
`
`als - - as as a
`
`wa as m me sm me sm
`
`CENTRAL
`PROCESSING
`
`
`
`
`
`DISPLAY
`DEVICE
`
`MAN
`MEMORY
`
`46
`
`COMMUNICATIONS
`HARDWARE
`
`DEVICE
`
`52
`
`MASS
`STORAGE
`
`PRINTING
`DEVICE
`
`I/O
`CONTROLLER
`
`
`
`76
`
`72
`
`40
`
`
`
`OPERATING SYSTEM
`COMPUTER HARDWARE
`FIG. 2B
`
`
`
`
`
`
`
`
`
`-4-
`
`
`
`U.S. Patent
`
`Dec. 1, 1998
`
`Sheet 3 of 5
`
`5,845,303
`
`
`
`52
`
`84
`
`FIG. 3A
`
`FIG. 3B
`
`-5-
`
`
`
`U.S. Patent
`
`Dec. 1, 1998
`
`Sheet 4 of 5
`
`5,845,303
`
`\ft....\footer text <cr
`
`\LG....\logo graphics\path\<cr>
`\HD....\neader text<cr>
`\H1....\title text <cr>
`\BD....\\GR....\ \H3....\\H4....\
`\H5....\body column text<cr>
`
`130a
`
`FIG. 3C
`
`130b
`
`
`
`134a
`
`80
`
`132a
`
`99
`
`130c
`
`130e
`
`"
`
`lr
`
`
`Body column
`434
`
`°
`
`
`
`Body column
`134f ——
`130d
`
`130f
`
`134h
`
`130g
`
`FIG. 4
`
`-6-
`
`
`
`U.S. Patent
`
`Dec. 1, 1998
`
`Sheet 5 of 5
`
`5,845,303
`
`
`
`RECEIVE
`INPUT DATA
`
`140
`
`142
`
`IDENTIFYFLOW AND
`STYLE TAGS
`
`144
`
`FLOW DATA AND
`PERFORM
`MODIFICATIONS
`
`
`
`
`
`146
`
`ARE CHANGES
`IN FRAME SIZE
`REQUIRED?
`
`No
`
`ARE ANY
`(MORE)
`CONSTRAINTS
`AFFECTED?
`
`HAS
`CONSTRAINT
`ALREADY
`BEEN
`SOLVED?
`
`No
`
`
`
`152
`
`
`
`
`
`DETERMINE
`DOWNSTREAM
`CONSTRAINTS
`
`
`
`154
`
`EXECUTE THE
`CONSTRAINT(S)
`
`156
`
`158
`Yes | PAGINATION
`
`No
`
`FIG. 5
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`
`-7-
`
`
`
`5,845,303
`
`1
`DOCUMENT PROCESSING USING FRAME
`BASED TEMPLATES WITH HIERARCHICAL
`TAGGING
`
`This is a continuation of application Ser. No. 08/350.447,
`filed Dec. 6, 1994, now abandoned, the disclosure of which
`is incorporated by reference.
`
`2
`An example of one type of hardcopy document which
`uses a structured format to convey information is a news
`letter. A typical newsletter format is shown in FIG. 1A. The
`newsletter 10 may include graphics, Such as a logo 12, and
`text, such as a header 14, a title 16, several columns 18, 20
`and a footer 22. The graphics and text are arranged in a
`manner to improve readability of the document. Most news
`letters are formatted in a manner Similar to the one shown in
`FIG. 1A when they are printed in hardcopy form (e.g.,
`printed on newsprint or other paper). Newsletters and other
`documents are being made available in computer formats in
`increasing frequency. Unfortunately, the formatting of the
`documents is typically lost when the documents are made
`available on-line. For example, were the Sample newsletter
`10 shown in FIG. 1A made available on a typical computer
`bulletin board System, no columns, graphics, or spacing
`would be retained. Instead, the well-designed, highly
`readable newsletter would be reduced to a flat ASCII text file
`with carriage returns and, possibly, a separate graphics file
`for the logo. A representation of the contents of Such a file
`is shown in FIG. 1B. In a typical system, the file 30 includes
`most of the information from the original printed document.
`However, the information is presented in a flat, unstructured
`file. Specifically, each portion of text is followed by one or
`more carriage returns 29 to Set off each Section of text.
`Further, many BBS’s and other data repositories do not
`preserve the graphics content of documents Stored on-line.
`Thus, the logo 12 of the original newsletter 10 may not be
`preserved in a typical file 30.
`Others have attempted to Standardize the formatting of
`on-line information. For example, the HyperText Markup
`Language (HTML) is a simple document markup System
`derived from the Standard Generalized Markup Language
`(SGML) which is used to format hypertext documents.
`HTML codes are used to describe how textual elements,
`Such as paragraphs, lists, and quotes will be displayed.
`However, these markup languages are limited in that they do
`not allow the data to be sized or formatted for specific
`display devices. That is, these markup languages are prima
`rily designed to ensure that a document printed by different
`Systems retains the original Structure. Other attempts to
`Standardize the presentation and formatting of information
`include treating a document as an entire graphic image and
`displaying it in a “what you see is what you get
`(WYSIWYG) format. However, this approach is unsatisfac
`tory as it requires increased file sizes and demands that each
`user System includes document generation Software.
`The problem of presenting information in a readable
`format is compounded by the vast Spectrum of computer
`platforms available. For example, a palm-sized personal
`digital assistant (PDA) has a much Smaller Screen size than
`a desktop WorkStation. The display of a typical busineSS
`memo on the PDA screen presents a much more difficult
`problem than the presentation of the memo on the page
`sized screen of the workstation. One solution would be to
`Shrink the Size of the memo to correspond to the Smaller
`Screen. This, however, is unsatisfactory as it may make the
`memo illegible. It may also result in a document having an
`excess of whitespace (i.e., blank spacing between text and/or
`graphics).
`The increased use of portable computers to communicate
`and transmit information requires that designers minimize
`the Size of files created and transmitted. For example, the
`Smaller the file to be transmitted, the more efficient the
`transmission is in terms of cost, time, and utilization of
`System resources.
`The present invention recognizes that it is highly desirable
`to provide users with an ability to create, transmit, and
`
`1O
`
`15
`
`35
`
`45
`
`25
`
`BACKGROUND OF THE INVENTION
`The present invention relates generally to Systems and
`methods for controlling and displaying information using
`computers.
`Advances in computing technology have revolutionized
`the availability, transfer, presentation, and use of informa
`tion. One advance has come in the area of computer hard
`ware. Computers have shrunk in size while becoming more
`powerful. This has allowed the production of a variety of
`laptop and hand-held computer Systems which enable users
`to create and manipulate data without being confined to an
`office with a desktop computer. Similar advances have
`allowed the creation of compact communications equipment
`Such as credit card sized modems, faxes, and pagers com
`patible with these Smaller computer Systems. The result has
`been the proliferation of computer Systems capable of Send
`ing and retrieving information from a diverse range of
`locations.
`These advances in computing technology have been
`coupled with a tremendous increase in the amount of
`computer-accessible information. Commercial information
`repositories such as those provided by DIALOGTM,
`PRODIGYTM, LEXISTM, and the like store vast amounts of
`information accessible by anyone having a basic computer
`System and access privileges. Other pools of data may be
`accessed via the Internet or bulletin board systems (BBSs).
`Further, Small, medium, and large-size companies frequently
`utilize electronic mail Systems to allow employees to com
`municate with each other.
`These advances enable individuals to access, retrieve, and
`share large amounts of information from a variety of com
`40
`puting platforms. The Sheer Volume of information available
`places a premium on a users ability to efficiently retrieve and
`assimilate the data. Unfortunately, however, all of this
`available data is not formatted in an optimal manner. To
`accommodate the wide range of computer types which can
`access, e.g., a BBS, the information Stored on the System is
`typically formatted in a flat ASCII text file. Graphics, if
`used, are generally Stored in a separate GIF file. Although
`these file formats are readable, they lose the ability to
`convey the information as originally intended. For example,
`when a magazine article is formatted for publication, page
`layout and formatting techniques are employed to make the
`article more legible and informative. A Sidebar may be used
`to explain a relevant related topic which will aid the user in
`understanding the body of the article. The use of footnotes
`or endnotes can direct the reader to other helpful Sources
`without adding unnecessary clutter to the article. Each page
`layout feature is designed to promote overall readability and
`to enhance the author's ability to convey information via the
`written word. All, or most, of these layout features are lost
`when the magazine article is converted for use in an on-line
`database, such as a BBS or DIALOGT.M. Rather than appear
`ing as the author or publisher originally intended, the article
`will, instead, appear as one constant page of text. Although
`the power of the text to convey information is preserved, the
`enhanced ability to present that information in a structured,
`readable format is lost.
`
`50
`
`55
`
`60
`
`65
`
`-8-
`
`
`
`3
`receive information formatted in a legible and useful man
`ner. What is needed is a system and method which receives
`input information from a variety of Sources and which
`displays the file in the manner originally intended by the
`creator of the document. More particularly, the System
`should adapt to enable display of information on a variety of
`platforms and display types. These functions should be
`performed quickly and efficiently.
`
`SUMMARY OF THE INVENTION
`A System and method are disclosed for manipulating and
`displaying information in a computer System. The System
`preferably includes a display Screen and a data input device.
`Input data is received in the System through the input
`device. The System uses information about the input data to
`determine a display format for the data. The display format
`preferably includes a number of constraints on the display.
`The System then associates the input data with an appropri
`ate display frame and flows the data into the frame. By
`“flows it is meant that the input data is put into a virtual area
`defined as a frame. Constraints on the display are Solved as
`the data is flowed (i.e., as more data is put into a specific
`frame). Upon resolution of constraints, the display frame is
`sized to accommodate the input data and the frame is
`displayed on the computer display Screen.
`In one Specific embodiment, the present invention utilizes
`a number of tags located in the input data Stream to associate
`Specific items of data with a specific display frame. The
`frames are also tagged to indicate the type of data which may
`be displayed within each frame. Display frames are orga
`nized into forms called “metaforms.” These metaforms may
`be created to present information in a number of forms,
`including: newsletters, reports, business letters, and the like.
`Embodiments of the present invention allow automatic
`Selection of the appropriate metaform for a particular Set of
`input data. Other embodiments of the present invention
`allow the automatic Selection of alternative metaform Styles
`when the most appropriate form is not available in the host
`System.
`The result is a System which allows the dynamic presen
`tation of information on any host System, from desktop
`computers to personal digital assistants. The System is Small
`and fast and may be used with existing data formats. Input
`file sizes are kept to a minimum, thereby reducing trans
`mission time and costs. The formats are not tied to specific
`Screen sizes or orientations, allowing the presentation of
`easy to read data on any size System.
`For a fuller understanding of the nature and advantages of
`the invention, reference should be made to the ensuing
`description taken in conjunction with the accompanying
`drawings.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`FIG. 1A is a typical format of a common hardcopy
`document;
`FIG. 1B is a representation of a format of a computerized
`representation of the hardcopy document of FIG. 1A;
`FIG. 2A is a block diagram of a computer System in which
`the present invention may be embodied;
`FIG. 2B is a block diagram of a software system of the
`present invention;
`FIG. 3A is a representation of a screen display of the
`present invention displaying the document of FIG. 1A,
`FIG. 3B is a representation of a format of a tag for use in
`the computer and software systems of FIG. 2;
`
`1O
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`5,845,303
`
`4
`FIG. 3C is a representation of a format of a file for use in
`the computer and software systems of FIG. 2;
`FIG. 4 is the screen display of FIG. 3A indicating possible
`constraint relationships, and
`FIG. 5 is a flow diagram depicting operation of a System
`according to the present invention.
`DESCRIPTION OF THE PREFERRED
`EMBODIMENT
`The present invention may be implemented in a computer
`system such as the system 40 of FIG. 2A, which comprises
`a central processor 42, a display device 44, a main memory
`46, an input/output controller 48, a mass Storage System 52
`(e.g., a hard disk, tape System, or the like), and at least a first
`input device 54 (e.g., any combination of keyboard, mouse,
`trackball, pen device, or the like). Additional input/output
`devices, Such as a printing device 50, may be included in the
`system 40 as desired. Communications hardware 56, such as
`a modem, fax, ethernet card, or the like may also be
`connected to the System 40. AS shown, the various compo
`nents of the system 40 communicate with each other through
`a system bus 58 or similar architecture.
`In one specific embodiment, the computer System 40
`receives information or data from an information Source 62
`via a transmission channel 60. Information source 62 may
`comprise any Source of information, including commercial
`databases, bulletin board Systems, company e-mail Systems,
`network Servers, other Stand-alone computer Systems, or the
`like. Transmission channel 60 may be formed from, for
`example, telephone lines, fiber optic cables, wireleSS digital
`or analog channels, or copper wire. Those skilled in the art
`will realize that the present invention may be utilized in
`conjunction with any Source of computer data received via
`any transmission means.
`A Simplified representation of a computer Software System
`70 is shown in FIG.2B. The software system 70 is employed
`to control the operation of computer system 40. -Software
`system 70, which is stored in main memory 46 and in mass
`Storage memory 52, includes a kernel or operating System 72
`and a shell or user interface 74. One or more applications
`programs, Such as applications Software 76, may be
`“loaded” (i.e., transferred from storage memory 52 into main
`memory 46) for execution by the computer system 40.
`Under control of Software 72 and/or application Software 76,
`the System 40 receives user commands and data through user
`interface 74. The interface 74 also serves to display results
`on the display device 44, whereby a user 78 may interact
`with and control the System.
`In one specific embodiment, system 40 is an IBM
`compatible personal computer, available from a number of
`vendors (including IBM of Armonk, N.Y.). Operating sys
`tem 72 is MS-DOS and interface 74 is Microsoft Windows,
`both of which are available from Microsoft Corp. of
`Redmond, Wash. In one specific embodiment, applications
`Software 78 is implemented using Microsoft Visual C++ to
`achieve the functionality described herein. The present
`invention Supports the use of any of a number of computer
`system 40 architectures. For example, computer system 40
`may be a handheld computer, a personal information
`organizer, a personal communicator, a laptop computer, or
`the like. Further, the operating System 72 may additionally
`function as the user interface. Any of a number of operating
`Systems and user interfaces may be used. Examples are
`Windows 95 or WinPad (both also available from Microsoft
`Corp.), Magic Cap (available from General Magic Inc. of
`Mountain View, Calif.), or Newton Script (available from
`
`-9-
`
`
`
`5,845,303
`
`6
`backslash characters “\\” may then be used to set the tag 100
`off from the remainder of the text stream. Those skilled in
`the art will recognize that other techniques for identifying
`tags may also be used.
`The first two character field is referred to as a flow tag
`104. The flow tag 104 identifies the paragraph type and
`indicates the frame to which the paragraph is assigned.
`Examples of flow tags 104 are: BD (body); gr (graphic); lg.
`(logo); ft (footer); HD (header), etc. Other flow tags 104 are
`shown in Table I.
`
`S
`Apple Computer Corp. of Cupertino Calif.). Those skilled in
`the art will recognize that the present invention may be
`embodied in any computer System 40 having an operating
`system 72. Further, applications software 78 may be imple
`mented using any of a number of programming languages.
`Features of the present invention, as will be discussed,
`allow information and documents Such as the newsletter 10
`of FIG. 1 to be presented in a readable format on any
`computer display device 44 when retrieved from an infor
`mation Source 62 Such as a commercial database, bulletin
`board System, or the computer System's own maSS Storage
`device 52. Referring now to FIG. 3A, a representation of a
`metaform 80 as seen on display device 44 is shown.
`Metaforms are layouts or forms which have defined formats,
`including a number of frames into which specific type(s) of
`data may be input. Metaforms 80 may be used to present text
`and graphics data in a number of formats. The data may be
`reordered as well as remapped. Each metaform 80 includes
`a number of defined constraint relationships which govern
`the appearance and content of each metaform. Metaforms 80
`according to the present invention may be displayed, e.g., on
`any size display device 44, including cathode ray tube (CRT)
`displays, liquid crystal displays (LCDS), or the like. These
`displays are typically formed of a plurality of pixel elements,
`positioned and referenced from the “origin” (top left of the
`Screen) to the maximum coordinates located in the lower
`right of the Screen. Metaforms may be customized for use
`with particular display types and Sizes to optimally utilize
`available Screen Space.
`The particular metaform 80 shown in FIG. 3A includes a
`plurality of frames 82-92 arranged in the form of a
`newsletter, Such as the newsletter 10 of FIG. 1A. That is, the
`metaform 80 of FIG. 3A is a newsletter metaform. In the
`present invention, a frame is a dynamic template defined to
`receive Specific items of information. Each of the frames are
`defined to receive either text or graphics data. For example,
`frame 82 has been defined to include graphics data,
`Specifically, the letterhead or logo of a newsletter. Frames
`84-92 contain text data. In this example, frame 84 includes
`header information, frame 86 includes title information,
`frames 88 and 90 contain the body of the newsletter, and
`frame 92 contains footer information. A variety of
`metaforms may be established for use in the present inven
`tion. Examples include memos, busineSS letters, newspaper
`articles, electronic mail messages, technical reports, and the
`like. According to the present invention, as will be discussed
`in more detail infra, the Specific metaform to be used with
`a particular set of data may either be Selected by the user or
`be determined by software. The type of data each frame may
`accept is determined by a tag or Set of tags which identifies
`the frame as accepting certain data. These tags correspond to
`tags used to identify input data.
`Text and graphics data input to a System utilizing the
`present invention are displayed in the appropriate frames of
`a particular metaform using a plurality of tags which identify
`the various components of the metaform. For example, each
`of the components of the newsletter 10 of FIG. 1A would be
`tagged for use in the present invention. AS shown in FIG.3B,
`one specific embodiment of a tagging System for use in the
`present invention may consist of an eight character tag 100
`having a leading field 102, several two character fields
`104-108, and a trailing field 110. In this specific
`embodiment, the leading and trailing fields 102, 110 each
`contain backslash characters ("\") to alert the applications
`Software 78 of impending tag characters. If the tag 100 is
`included in a text stream, the leading and trailing fields 102,
`110 may be expanded to two characters in length. Double
`
`TABLE I
`
`FLOW TAGS
`
`CODE
`
`FLOW TAGS
`
`CODE
`
`Abstract
`Addresses
`Address
`Animation
`Arrows
`Author
`Banner
`BCC
`Bibliography
`Body
`Border
`Byline
`Callout
`Caption
`CC
`Chart
`Colophon
`Copyright
`Credit
`Cross Reference
`Data
`Dedication
`Email Address
`Fax #
`Figure
`Footer
`Footnote
`Foreward
`Graphic
`Header
`Identifier
`Illustration
`Index
`Ink
`Introduction
`
`ab
`aS
`ad
`al
`al
`al
`ba
`bc
`bb
`BD
`br
`by
`Ca
`cp
`CC
`ch
`CO
`C
`ct
`CX
`dt
`did
`e
`fx
`fg
`ft
`fn
`fw
`Sr
`HD
`id
`il
`ix
`ik
`in
`
`ISBN
`Keywords
`Legend
`Level 1
`Level 2
`Level 3
`Level 4
`Level 5
`List
`List 2
`List 3
`List 4
`Logo
`Masthead
`Music
`Page Number
`Phone Number
`Picture
`Postscript
`Preface
`Publication Title
`Publisher
`Pullquote
`Rules
`Salutation
`Sidebar
`Signature
`Sincerely Line
`Story
`Subject
`Sublist
`Table
`Table of Contents
`Video
`Voice
`
`IS
`ky
`1g
`L1
`L2
`L3
`LA
`L5
`L2
`L3
`LA
`L5
`1g
`MH
`S
`pg
`pn
`pc
`ps
`pf
`pt
`pb
`pl
`
`Sa
`sb
`Sg
`S.
`st
`SB
`sl
`tb
`yc
`wd
`WC
`
`The Second two character field is referred to as a Style tag
`106. The style tag 106 identifies any modifications to the
`paragraph type that might be required by a potential conflict
`of Structure. As an example, a portion of a document might
`be tagged as BD (body) with a style tag 106 indicating that
`the content of the body is a list, or that the body should be
`emphasized (i.e., Structured) in a particular way (Such as
`with boxing, outdents, or the like). Example style tags 106
`are listed in Table II.
`
`TABLE II
`
`STYLE
`
`Tags
`Force Just
`Indented
`Justified
`Large
`Ragleft
`Ragright
`Small
`
`CODE
`
`S
`f
`in
`ji
`1g
`r
`
`Sl
`
`The third two character field of the tag 100 is a substyle
`tag 108. This two-character field identifies any modifications
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`-10-
`
`
`
`5,845,303
`
`7
`to be made to individual character formatting within a
`particular paragraph. Typical Substyle tags include bl (bold),
`cn (condensed), double underline (du), italic (it), and the
`like. Other substyle tags 108 are shown in Table III.
`
`TABLE III
`
`SUBSTYLE
`
`CODE
`
`SUBSTYLE
`
`CODE
`
`Bold
`Condensed
`Double
`underline
`Dropfirstcap
`Expanded
`Fat
`Heavy
`Indexed
`Italic
`
`b1
`Cl
`du
`
`dc
`eX
`ft
`hw
`in
`it
`
`Larger
`Light
`Marked
`
`Smaller
`Strikethru
`Subscript
`Superscript
`Underline
`
`r
`li
`
`S
`st
`s1
`s2
`
`1O
`
`15
`
`8
`This simplified and efficient tagging Scheme enables easy
`formatting of files for use in the present invention. The
`Scheme minimizes the amount of tag information required to
`format a file for use in the present invention, thus ensuring
`that file size is kept to a minimum. File size is frequently a
`concern when files are transferred to Small computerS Such
`as personal communicators. These Systems operate most
`efficiently with Small files. Further, users are transmitting
`more and more files over wired and wireless media (Such as
`cellular or wired telephone Systems). Transmission costs and
`transfer times are reduced when Smaller files are used. In
`addition, Storage and archival costs are minimized when
`files are kept as lean as possible.
`Other features of the present invention, which will now be
`described by first referring to FIG. 4, allow dynamic sizing
`of frames displayed on display device 44. FIG. 4 shows a
`Specific metaform 80 displayed on display device 44. Again,
`metaform 80 is a sample newsletter metaform displaying the
`information from the newsletter 10 of FIG. A. Metaform 80
`contains a plurality of frames 82-92 in which specific pieces
`of information are displayed. Metaforms for use in the
`present invention are created, in one Specific embodiment,
`using MicroSoft Visual C++. In defining a metaform, the
`frames are first defined using a base grid. The base grid, or
`page grid, provides a regular division of the overall display
`area. Frames are established and defined to present a specific
`presentation of data, such as the newsletter metaform 80 of
`FIG. 4. Once the frames 82-92 are initially defined, each
`frame is tagged to define the type of data it is to accept. For
`example, frame 82 is tagged to accept logo (or lg) data.
`Frames may include Several tags. Frame 82, being a graphics
`frame, may also be defined as accepting a graphic (gr) or
`even video data (Vd), for example. As will be discussed, by
`providing Several acceptable tags for each frame, the System
`may dynamically port incoming data to alternative frames
`for display. After each frame 82-92 has been defined and
`tagged, the next Step in creating a metaform 80 is to define
`constraint relationships between each of the frames.
`FIG. 4 includes a number of links 130, 132, and 134
`which demonstrate constraint relationships for each of the
`frames 82-92. A constraint describes a relationship that must
`hold between multiple variables. For example, a constraint
`can be defined which will maintain an alignment between
`two objects, despite the ability of the two objects to expand
`or contract. In the present invention, constraints are
`employed to maintain consistent relationships between
`frames as the frames change size and/or location on the
`display device 44.
`Links 130, 132, and 134 demonstrate the constraint rela
`tionship between various frames of metaform 80. For
`example, links 130a–g (displayed as thick lines) indicate
`fixed relationships or required constraints. Link 130a rep
`resents a required constraint between logo frame 82 and the
`edge of display device 44. This relationship may be defined,
`e.g., to maintain a fixed size b