WO2001041018A2 - System and method for evaluating and purchasing digital content - Google Patents

System and method for evaluating and purchasing digital content Download PDF

Info

Publication number
WO2001041018A2
WO2001041018A2 PCT/US2000/032699 US0032699W WO0141018A2 WO 2001041018 A2 WO2001041018 A2 WO 2001041018A2 US 0032699 W US0032699 W US 0032699W WO 0141018 A2 WO0141018 A2 WO 0141018A2
Authority
WO
WIPO (PCT)
Prior art keywords
electronic document
garbled
document
wherem
user
Prior art date
Application number
PCT/US2000/032699
Other languages
French (fr)
Other versions
WO2001041018A3 (en
Inventor
Randy Thompson
Original Assignee
Ibooks.Com
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibooks.Com filed Critical Ibooks.Com
Priority to AU18106/01A priority Critical patent/AU1810601A/en
Publication of WO2001041018A2 publication Critical patent/WO2001041018A2/en
Publication of WO2001041018A3 publication Critical patent/WO2001041018A3/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions

Definitions

  • TITLE "SYSTEM AND METHOD FOR EVALUATING AND PURCHASING DIGITAL CONTENT"
  • the present invention generally relates to the field of electronic documents. More particularly, the present invention relates to a system and method for evaluating and purchasmg digital books and other content
  • an improved system and method is desired for enablmg a prospective purchaser to evaluate and/or browse a book or other digital content prior to purchase
  • the system and method is also desired for enabling a prospective purchaser to browse a book while not providing or "giving away" too much content of the book or other digital content, thereby obviating the prospective purchaser's need to actually purchase the book
  • a system and method are provided for enablmg evaluation and purchase of digital books and other content.
  • Digital books and other content may be referred to as "electronic documents.”
  • the evaluation and purchase of electronic documents may occur over the Internet.
  • a document server may be provided
  • the document server may include a Web server supporting one or more Web sites.
  • a user on a client system such as a computer system, may generate a request for at least a portion of an electronic document, such as a page (e.g., web page) of the document, to be evaluated.
  • the document server may receive the request for the page of the electronic document from the client system.
  • the document server may then perform a garblmg operation on the page of the electronic document and provide the page of the electronic document to the client system
  • the client system may then display the page of the electronic document on a display device for the user to evaluate.
  • the page of the electronic document may be partially garbled and partially non-garbled.
  • the garbled portion of the page of the electronic document is unintelligible to the user, while the non-garbled portion is intelligible to the user of the client system
  • the user may select a link m the electronic document to one or more other pages of the electronic document
  • the document server may then garble the one or more other pages of the electronic document and provide the one or more other pages of the electronic document to the client system, which may then display the one or more pages on the client system display device
  • An electronic document may comprise one or more markup tags Each of the one or more markup tags is associated with one or more content items in the electronic document
  • a markup tag may be used to determine whether the markup tag's one or more associated content items are to be garbled by the document server prior to bemg provided to the client system
  • the document server may examine a markup tag associated with one or more content items in the electronic document
  • the document server may garble the one or more content items associated with the markup tag in response to the markup tag indicating the one or more content items are
  • the document server may comprise a table of markup tags
  • the document server may search the table for a markup tag associated with one or more content items in the electronic document
  • the document server may garble the one or more content items associated with the markup tag in response to the markup tag not being found in the table, or the document sever may not garble the one or more content items associated with the markup tag in response to the markup tag bemg found in the table
  • Each of the one or more markup tags m the table may be associated with an action indicator
  • the action indicators may be stored in the table with the markup tags
  • the document server may garble the one or more content items associated with the markup tag m response to the markup tag being found in the table and an action indicator associated with the markup tag indicating that the one or more content items associated with the markup tag are to be garbled
  • the document server may not garble the one or more content items associated with the markup tag in response to the markup tag being found in the table and the action indicator associated with the markup tag indicating that the one or more content items associated with the markup tag are not to be garbled
  • the document server may garble the one or more content items associated with the markup tag if the one or more content items are textual content, and may not garble non-textual content
  • a markup tag may comprise one or more attributes
  • a markup tag attribute may be used to indicate whether the markup tag's one or more associated content items are to be garbled
  • the document server may examine a markup tag associated with one or more content items m the electronic document The document server may garble the one or more content items associated with the markup tag in response to an att ⁇ bute of the markup tag indicating the one or more content items are to be garbled The document server may not garble the one or more content items associated with the markup tag in response to an attribute of the markup tag indicating the one or more content items are not to be garbled
  • the document server may comprise a table of markup tag attributes
  • the document server may search the table for a markup tag att ⁇ bute of a markup tag associated with one or more content items in an electronic document
  • the document server may garble the one or more content items associated with the markup tag response to the markup tag attribute not bemg found m the table
  • the document server may not garble the one or more content items associated with the markup tag m response to the markup tag attribute bemg found in the table
  • Each of the one or more markup tag attributes in the table may be associated with an action mdicator
  • the document server may garble the one or more content items associated with a markup tag in response to a markup tag att ⁇ bute being found in the table and an action mdicator associated with the markup tag attribute indicating that the one or more content items associated with the markup tag are to be garbled
  • the document server may not garble the one or more content items associated with the markup tag in response to the markup tag attribute bemg
  • Garblmg of content may also mclude maskmg one or more content items to render the one or more content items unintelligible to the user by replacing the content item with a shaded block
  • the shaded block may be of substantially similar shape and size as the original content item
  • Garbling of content may also mclude removing one or more content items such that the one or more content items are not displayed on the client system display device
  • the layout of a displayed portion of an electronic document with at least some of the content garbled before displaying may be substantially the same as the layout of the displayed portion would appear if displayed without garblmg This may operate to provide the user a more accurate "look and feel" of the origmal document, which may affect the user's decision to purchase the document
  • the garblmg of portions of the electronic document may not be performed m response to the portions of the electronic document bemg available for full evaluation by the user of the client system
  • a portion of the electronic document may mclude one or more desc ⁇ ptive words, and the document server may not garble the portion m response to locating the descriptive word m the document
  • the document server may mclude a table of descriptive words, and may search the portion of the document for the desc ⁇ ptive words m the table, and may not garble the portion in response to locating one of the descriptive words from the table in the portion of the document
  • a user may initiate a search operation to locate one or more keywords m the electronic document
  • the search operation may locate one or more mstances of the one or more keywords m the electronic document
  • a portion of the electronic document proximate to the one or more located keywords may be displayed to the user without garblmg, while other portions of the electronic document are garbled before bemg displayed
  • the electronic document may comprise one or more paragraphs comprised of one or more sentences
  • a first sentence comprising a first mstance of a located keyword withm a paragraph of the electronic document may be displayed without garblmg, while other sentences in the paragraph not comprismg located keywords may be garbled before bemg displayed
  • the paragraph comprises a second sentence comprismg a second mstance of the located keyword, a portion of the second sentence precedmg the second mstance of the located keyword and a portion of the second sentence following the second instance of the located keyword may be displayed without garbling, and the remamder of the second sentence may be garbled before bemg displayed
  • a user of the document server may select an electronic document for evaluation from a plurality of electronic documents displayed on a client system display screen The user may then initiate a request to evaluate at least a portion of the electronic document on the client system
  • the user may initiate a search operation to locate one or more keywords m a plurality of electronic documents
  • the search operation may locate one or more mstance
  • Figure 1 illustrates a document browser client/server system according to one embodiment of the invention
  • Figure 2 is a block diagram illustrating the data flow between a document server system and a document viewer client system according to one embodiment of the mvention
  • Figure 3 is a flow diagram illustrating the process of a user requesting and viewing a garbled electronic document preview accordmg to one embodiment of the invention
  • Figure 4 is a flow diagram illustrating the process of a user previewmg and purchasmg one or more documents accordmg to one embodiment of the invention
  • Figure 5 is a flow diagram illustrating the process of a user requestmg a preview of a page of a document accordmg to one embodiment of the mvention
  • Figure 6 is a flow diagram expandmg on step 314 of Figure 5, and illustrates the process a Garbled Preview program may use to select and garble portions of text and other content m a document accordmg to one embodiment of the mvention,
  • Figure 7 is a flow diagram expandmg on step 320 of Figure 6, and illustrates the processmg of keyword search hits m a document by a Garbled Preview program accordmg to one embodiment of the mvention,
  • Figure 8 is a flow diagram expandmg on step 322 of Figure 6, and illustrates the processmg of desc ⁇ ptive words in a document by a Garbled Preview program accordmg to one embodiment of the mvention
  • Figure 9 is a flow diagram expanding on step 324 of Figure 6, and illustrates the processmg of markup tags m a document by a Garbled Preview program accordmg to one embodiment of the mvention
  • Figure 10 is a flow diagram expanding on step 386 of Figure 9, and illustrates the processmg of a markup tag located in a markup tag table accordmg to one embodiment of the invention
  • Figure 11 is a flow diagram expandmg on step 384 of Figure 9, and illustrates the processmg of a markup tag that is not located m a markup tag table accordmg to one embodiment of the mvention
  • Figure 12 is a block diagram illustrating one embodiment of a tag and attribute table
  • Figure 13 is a block diagram illustrating one embodiment of a descriptive word table
  • Figure 14A illustrates an example document for displaying text and other content on a Web browser
  • Figure 14B illustrates the displayed text and other content from the document of Figure 14A without garbling of content
  • Figure 14C illustrates the displayed text and other content from the document of Figure 14A with garblmg of content accordmg to one embodiment of the invention
  • FIG 1 A document browser client/server system
  • Figure 1 illustrates a document browser system according to one embodiment of the invention
  • Figure 1 illustrates a simplified example of a client/server system for accessmg and viewing or evaluating documents
  • the present mvention may be included m any of various types of systems as desired
  • Figure 1 includes at least one document server system 10 that connects through a network 12 to one or more document viewer client systems 14A and 14B
  • Server system 10 is preferably a computer system and may mclude various standard components, mcludmg one or more processors or CPUs, a memory medium, one or more buses, one or more network ports for connecting to and communicating over networks such as network 12 etc
  • Client systems 14A and 14B may be any of various types of devices, mcludmg a computer system, Internet appliance, information appliance, personal digital assistant (PDA), television (e g , digital television), set top box or cable modem, or other similar devices
  • Each of client systems 14A and 14B may comprise standard computer components such as a processor or CPU, memory medium, and/or display
  • the term "computer system” as used herem generally describes the hardware and software components that in combination allow the execution of computer programs
  • the computer programs may be implemented in software, hardware, or a combination of software and hardware
  • a computer system's hardware generally mcludes a processor, memory medium, and input/output (VO) devices
  • a computer system may take va ⁇ ous forms, mcludmg a personal computer system, mamframe computer system, workstation, network appliance, Internet appliance, information appliance, personal digital assistant (PDA), television system or other device
  • PDA personal digital assistant
  • the term “computer system” can be broadly defined to encompass any device havmg a processor that executes instructions from a memory medium
  • the term “processor” generally desc ⁇ bes the logic circuitry that responds to and processes the basic instructions that operate a computer system
  • memory medium mcludes va ⁇ ous types of memory mcludmg an installation medium, e g , a CD-ROM, or floppy disks, a volatile computer system memory such as D
  • the memory medium comprised in the server computer system 10 preferably stores a software program or programs for enablmg server computer system 10 to store, retrieve, and send digital content to client systems 14A and 14B, and to garble digital content prior to sendmg the content to client systems 14A and 14B
  • the memory medium comprised in the client systems 14A and 14B may include browser software for enablmg the client systems 14A and 14B to display content received from the server computer system 10
  • the software program(s) may be implemented m any of various ways, mcludmg procedure-based techniques, component-based techniques, and/or object-oriented techniques, among others
  • the software program may be implemented usmg ActiveX controls, C++ objects, JavaBeans, Microsoft Foundation Classes (MFC), or other technologies or methodologies, as desired
  • a CPU executmg code and data from a memory medium mcludes a means for creatmg and executing the software program or programs accordmg to the methods, flowcharts, and/or block diagrams described below Va ⁇ ous embodiments
  • a Web server may be a program that uses the client/server model and Hypertext Transfer Protocol (HTTP) to serve the files that form Web pages to Web users, whose computers contam HTTP clients, or Web browsers
  • HTTP Hypertext Transfer Protocol
  • a Web browser may be a client program that may use HTTP or similar protocols to make requests of Web servers throughout the Internet Examples of Web servers mclude, but are not limited to Microsoft's Internet Information Server (IIS), NetScape's FastTrack and Enterprise servers, Novell's Web Server for NetWare operatmg system, and IBM's family of Lotus Domino servers Examples of Web browsers mclude, but are not limited to Netscape
  • IIS Internet Information Server
  • NetScape's FastTrack and Enterprise servers Novell's Web Server for NetWare operatmg system
  • IBM's family of Lotus Domino servers Examples of Web browsers mclude, but are not limited to Netscape
  • a Web server may support one or more Web sites
  • a Web site is a related collection of Web files that includes a beginning file called a home page The home page and other pages of the Web site may be reached usmg a Uniform Resource Locator (URL)
  • a URL is the address of a file or resource accessible on the Internet From the home page, all the other Web pages on a Web site may be reached
  • a Web site is not a Web server
  • a Web server may hold the files for one or more Web sites
  • a Web site may be spread over a number of Web servers
  • Web frames may be used m creating multiple, mdependently controllable sections on a Web page
  • Web frames may be created by describmg each section m a separate Web file and havmg one Web file identify all of the sections
  • the address requested is that of the Web file that defines the Web frames
  • Multiple Web files are returned m response to the request, one for each section of the Web page Hyperlinks in one Web frame may request another Web file that may appear m another (or the same) Web frame
  • An example of the use of Web frames is to have a file selection menu m a first frame, and a second frame for displaying the contents of a selected file
  • Web page generally includes Web pages implemented with Web frames, as well as Web pages implemented without Web frames
  • the document server system 10 may operate to garble a portion or all of an electronic document provided to client system 14A or 14B
  • the followmg is a general description of the organization of and markup language used m electronic documents m the prefe ⁇ ed embodiment
  • the followmg also describes garblmg used in the preferred embodiment of the invention
  • markup refers to a sequence of characters or other symbols that may be inserted m a document, such as a text or word processmg file to mdicate how the document should appear when it is printed or displayed, or to desc ⁇ be the document's logical structure
  • the markup mdicators may be called "markup tags" or "tags " For example, a paragraph may be preceded by a ⁇ p>, or paragraph tag, so that it will be separated by an empty line from the preceding line Markup may be inserted directly by typing the symbols in, by usmg an editor and selecting prepackaged markup symbols, or by usmg a more sophisticated editor that lets the user create the document as it will appear
  • Markup tags may be classified mto several categories Examples of markup tag categories mclude, but are not limited to meta tags, document tags, outlme tags, style tags, break tags, link tags, and custom tags Meta tags may allow a document to be embedded mto another document, possibly of another markup language For example, meta tags, meta tags,
  • HTML Hypertext Markup Language
  • markup tags may comprise a left angle bracket ( ⁇ ), a tag name, and a right angle bracket (>) Markup tags are usually paired (e g , ⁇ H1> and ⁇ /Hl>) to start and end the tag instruction
  • the end tag may look like the start tag except for a slash (/) precedmg the text withm the brackets
  • the start and end tags may be referred to as a "tag pair"
  • Markup tags may be nested Line 108 of Figure 14A shows an example of
  • XML Extensible Markup Language
  • HTML is similar to HTML Like HTML, XML mcludes markup tags to describe the contents of a page or file XML is a flexible way to create common information formats and share both the format and the data on the World Wide Web, intranets, and elsewhere HTML desc ⁇ bes the content of a Web page only in terms of how the page is to be displayed and interacted with
  • a ⁇ P> starts a new paragraph
  • XML describes the content in terms of what data is being described
  • a ⁇ PHONENUM> could mdicate that the data that followed it was a telephone number
  • An XML file may be processed purely as data by a program, may be stored with similar data on another computer or, like an HTML file, may be displayed
  • XML is extensible because, unlike HTML, the markup tags are unlimited and self-defining HTML and XML may be used together m Web applications
  • a "hyperlink" is a selectable connection from one word, picture, or information object to another usmg hypertext
  • objects can include sound and motion video sequences
  • Hyperlinks may also be used to initiate programs and applets such as Java applets, and tasks such as a download of a file to a client system
  • the most common form of hyperlink is the highlighted word or picture that may be selected by a user (with a mouse or m some other fashion), resultmg in the substantially immediate delivery and view of another object such as a document, Web page, etc, or the initiation of a program, applet, or task
  • the highlighted object may be referred to as an anchor
  • Electronic documents may mclude hyperlinks that, when selected, may deliver and display another section or page in the current document, or may deliver and display a page in another document, another Web page, another Web site, etc
  • Electronic documents may also mclude hyperlinks that, when selected, initiate a program, apple
  • a "document” may be a collection of one or more of text, image, hyperlink, tabular, or other information or content
  • An "electronic document” is a document that is m a form suitable for storing on a memory medium, transmittal via electronic connection such as a network, and/or viewmg on a computer, such as on a computer display screen
  • An electronic document may have mteractive elements that may perform one or more actions m response to user input, such as a hyperlink that, when selected by a user, may link the user to another portion of the electronic document, or to another electronic document
  • Electronic documents may include, but are not limited to books, manuals, journals, newspapers, magazines, articles, papers, video, movies, images, sounds, and combinations thereof
  • an "element” is a fundamental component of the structure of a document Some examples of elements are heads, tables, paragraphs, and lists Markup tags may be used to mark the elements of a file for a browser Elements may mclude plain text, other elements, or both
  • a document may be segmented mto sections, chapters, pages, articles, or other logical units for organizational or viewing purposes
  • an entire electronic document may be stored and viewed as one Web page, or the document may be segmented mto a plurality of Web pages
  • One or more logical units or portions of logical units of the document may be stored and viewed on each Web page
  • one Web page may be used to store and view one page of an electronic book
  • one Web page may be used to store and view one page and a portion of a second page of an electronic book
  • one Web page may be used to store and view multiple pages of the electronic book
  • one Web page may be used to store and view one page or article of an electronic magazine or newspaper
  • theie may be hyperlinks on the Web pages that may allow a viewer to navigate through the document
  • there may be hyperlinks to the previous Web page and to the next Web page hyperlinks to a Web page mcludmg a document index from which other sections of
  • an electronic document may be stored and viewed as a plurality of Web frames on a Web page
  • at least one Web frame on a Web page may be used to display the contents of sections or portions of sections of the electronic document
  • at least one Web frame on the Web page may be used to display a table of contents, mdex, or other document mformation with hyperlinks useable to navigate among the sections of the document
  • portion when referring to an electronic document, may refer to one or more of the logical units, portions of logical units, sections, Web pages, or other parts of electronic documents as described above
  • the term “at least a portion” may mclude one or more portions and/or the entire electronic document
  • a Web page may be too large to be viewed m its entirety on a client system display screen
  • a portion of the Web page may be displayed on the display screen, and an mterface on the client system may provide one or more methods to allow the user of the client system to view other portions of the Web page
  • scroll bars or buttons may be provided to allow the user to scroll to other portions of the Web page
  • the term "content” is used to desc ⁇ be the objects or data that may appear in electronic documents
  • Examples of content may include, but are not limited to text, lists, tables, images, graphs, charts, hyperlinks, movies, sound files, animations, and advertisements
  • an electronic document may mclude "content” that, by itself, would be considered an electronic document
  • the content in an electronic document may be enclosed withm markup tag pairs
  • a tag pair may enclose a paragraph of text
  • Another tag pan- may enclose a list
  • Yet another tag pair may enclose an image
  • the term “garbled preview” refers to displaying a requested document with selected content items garbled It is noted that the content items to be garbled may be selected through a pre-deterrmned algo ⁇ thm or table(s), or may be randomly selected, or combinations thereof
  • a "garbled preview” may optionally preserve enough content items to give the requestor an understandmg of the general nature or contents of the document, without “giving away” the
  • the term “ungarbled” refers to content of the electronic document that has not been garbled, and is therefore intelligible to a user prevtewmg the document Content may be said to be intelligible to a user when it is readable or potentially understandable by the user (e g , assuming the user is capable of understanding the technical nature of the content)
  • scramble content in an electronic document is to render the content unintelligible by rearranging, replacmg, or otherwise modifying the elements withm the content
  • Examples of scramblmg of content in an electronic document may include, but are not limited to randomly (or pseudo randomly) substituting a character for each character m a paragraph of text in the document, randomly (or pseudo randomly) substituting nonsense words for each word m the document, and randomly (or pseudo randomly) reorde ⁇ ng the pixels withm a digital image in the document
  • mask content in an electronic document is to render the content unintelligible by displaying optionally shaded blocks in place of, or on top of, the content to be masked
  • Examples of maskmg of content in an electronic document may mclude, but are not limited to replacmg the words in a paragraph of text in the document with shaded blocks, replacmg entire sections of text (such as paragraphs) with shaded blocks, and replacmg digital images m the document with shaded rectangles
  • to "remove" content in an electronic document is to render the content invisible by not displaying the content
  • the area where the content would appear if not removed may optionally display the background of the electronic document
  • a user may not be able to discern that there is missing content
  • a hyperlink that initiates a download of an image may be removed from a portion of an electronic document displayed on a Web page, and the normal background of the Web page may be displayed where the hyperlink would be if displayed
  • document content such as words, sentences or paragraphs withm textual content items
  • garblmg or not garblmg An example of random selection of content for garblmg or not garbling is to garble words within paragraphs, leavmg an occasional, randomly selected word ungarbled
  • Figure 2 Presentmg a Garbled Document to a User
  • FIG. 2 illustrates the data flow between a document server system and a document viewer client system accordmg to one embodiment of the mvention.
  • the document server system 10 shown m Figure 1 may store various server programs. As shown m Figure 2, the document server system 10 may mclude a document server program 50 and a Garbled Preview program 52. Document server system 10 may also be coupled to one or more storage devices or memory medium for stormg documents 54. Documents 54 may mclude any type of electronic document such as books, magazines, articles, manuals, etc.
  • document server system 10 may include a Web server program (not shown) to provide Web-based access to the server and its programs and services, including Web pages on the server
  • Document viewer client system 14 in Figure 2 is an example of a client system, such as client systems 14A and 14B shown m Figure 1.
  • Document viewer client system 14 may mclude a document viewer program 60.
  • document viewer program 60 is a Web browser Examples of Web browsers include, but are not limited to: Microsoft Internet Explorer and Netscape Navigator.
  • a user of document viewer client system 14 may request to view, or preview, a document available on document server system 10.
  • the user may select the document from a plurality of documents available on document server system 10.
  • a document request 70 may be sent from document viewer client system 14 to document server system 10.
  • document viewer program 60 is a Web browser, and requestmg a preview of a document may mclude the user selecting the document on a document preview Web page served to the Web browser by a Web server program on document server system 10, the user requestmg a preview of the selected document, and the Web server forwarding the document request 70 to document server program 50
  • Document server program 50 may retrieve the requested document 72 from stored documents 54 in response to receivmg the document request 70.
  • Document server program 50 may then send document 72 to Garbled Preview program 52
  • Garbled preview program 52 may garble various portions of the text and other content of document 72, and send the garbled document 74 to document viewer client system 14.
  • Garbled Preview program 52 may be a separate program from document server program 50.
  • Garbled Preview program 52 may be mtegrated as a function withm document server program 50
  • document viewer program 60 is a Web browser
  • Garbled Preview program 52 may send garbled document 74 to a Web server program on document server system 10, and the Web server program may then send garbled document 74 to be displayed on a Web page displayed by document viewer program 60.
  • Document viewer program 60 may display garbled document 74 on a display screen 62 coupled to document viewer client system 14 m response to receivmg garbled document 74. Some or all of the text and other contents of the displayed document may be garbled.
  • a requested document may have more than one page, and document viewer program 60 may provide an mterface for the user to browse through the multiple pages of the document one page at a time.
  • document server system 10 may read, garble and send one page of the requested document at a time for display by document viewer program 60.
  • more than one page of a multi-page document may be read, garbled, and sent for display at a time.
  • the document server system 10 may perform dynamic garblmg.
  • dynamic garblmg the document server system 10 garbles a portion of an electronic document m response to a user requestmg to view the portion of the electronic document durmg an evaluation of the document
  • the document server 10 mamtams a garbled and non-garbled version of one or more documents stored on a memory medium coupled to the document server system 10
  • the document server system 10 may perform a garblmg operation on the electronic document and store the electronic document on the memory medium coupled to the document server system 10 prior to the user requestmg to evaluate the electronic document The document server system 10 then may provide a previously garbled portion of the document to the user in response to the user requestmg to view the portion of the electronic document durmg the evaluation of the document
  • one or more electronic documents may be provided for evaluation by a user by electronic methods other than a network such as the Internet
  • a carrier medium such as a CD-ROM mcludmg one or more electronic documents
  • the carrier medium may mclude a program, similar to the document server and browser programs as described herein, executable by the computer system used by the user, with a user interface for searching and otherwise browsmg the electronic documents on the carrier medium
  • the earner medium may also mclude a Garblmg Program, similar to the Garblmg Program described herem, executable by the computer system used by the user to garble portions or all of an electronic document selected for evaluation by the user
  • the programs required to browse, garble, and view the electronic documents may reside on a separate memory medium, such as a hard disk m a computer system coupled to a CD-ROM drive used by the user For mstance, the user may download one or more programs for searchmg, selecting, garblmg and
  • a document server program and Garblmg Program may be separate programs or executable files
  • the programs may be mcluded m one program or executable file
  • one or more of the programs may be software modules usable by other programs, for mstance through an Application Programming Interface (API)
  • the Garblmg Program may be implemented as a software module callable by a document server program or by other programs that may want to garble content as described herein
  • a document server program, Garblmg Program, and document browser program may be mtegrated into one program or executable file, or may be stored m one or more separately executable files
  • Figure 3 is a high-level flow diagram of a process of requestmg and viewmg or evaluating an electronic document accordmg to one embodiment of the mvention
  • a user of a client system 14 may request to view a portion or all of an electronic document
  • the request to view a portion or all of the electronic document may be received by a document server 10 m electronic communications with the client system 14
  • the document server 10 may include a Web server, and the user may access a Web site on the document server 10 usmg a Web browser on the client system 14
  • the electronic document may be chosen for viewmg by the user from a list of one or more electronic documents displayed to the user on a Web page of the Web site
  • the user may then select the electronic document, e g , a portion of the electronic document, for viewmg
  • the user may select an electronic book for viewmg
  • a table of contents of the book may be displayed to the user, and the user may then select a chapter of the book for viewing
  • the electronic document selectable for viewmg by the user may be stored m a Web page document
  • a Web page document may mclude the markup language and content required to display Web pages on a Web browser For example, if a document is segmented mto chapters for viewmg, each chapter may be stored m one Web page document
  • the Web page document may be used by the Web server to present one Web page on the Web browser on the client system
  • An HTML Web page document may be stored m a file with an HTML file extension
  • Other markup languages may use other formats and nomenclatures for stormg Web page documents
  • the document server 10 may perform a garblmg operation on the portion of the document selected for viewing by the user Portions of the content of the selected portion of the document may be garbled, and portions of the content may be left ungarbled for the user to view Text and other content to be garbled may be scrambled, masked, removed, or otherwise garbled Garblmg is described m detail below
  • the garbled portion of the electronic document may be sent to the client system for viewmg by the user
  • the document server mcludes a Web server coupled to the Internet 12, and the client system 14 is also coupled to the Internet 12
  • the client system 14 may mclude a Web browser for receivmg and displaying the garbled portion of the electronic document from the document server
  • the garbled portion of the electronic document may be displayed on the client system 14 for viewmg by the user
  • the client system Web browser may display the portion of the electronic document in a Web page on the client system display screen
  • the displayed garbled portion of the electronic document may retam the general format and/or characteristics of the portion of the document without garblmg
  • the scramblmg, maskmg, and removal of contents m a section of the electronic document may be performed so that the scrambled, masked, and removed content does not alter the layout of the document section
  • one symbol oi character is replaced with only one different symbol or character, and thus word sizes and paragraph sizes remain the substantially the same
  • one or more of the font characteristics of scrambled text may be retained
  • uppercase letters may be replaced with randomly selected uppercase letters
  • Lowercase letters with ascenders and descenders may be replaced with randomly selected lowercase letters with similar ascenders and descenders, where possible
  • the letters [b, d, f, h, k, 1] have ascenders, and may be replaceable with each other, and the letters [g, j, p, q, y] have descenders and
  • Figure 4 Previewing and purchasmg one or more documents
  • the user may access a document server Web site
  • the document server 10 may present an interface to the user for selecting one or more of the electronic documents on the document server for preview
  • the user may use a Web browser on a client system 14 connected to the document server 10 via the Internet to access the document server Web site, and the document server Web site may present one or more Web pages to the user on the Web browser for displaying mformation and accepting user input as described herem
  • the document server may present an mterface to the user for searchmg the electronic documents for one or more keywords
  • the user may enter one or more keywords to be searched for m the interface presented by the document server 10 in step 202
  • the document server may allow the user to enter one or more logical and/or grouping operators for locatmg more than one word Examples of logical operators mclude, but are not limited to an AND operator entered between two words that instructs the search process to locate documents containing both words, and an OR operator entered between two words that instructs the search process to locate documents containing either word
  • An example of a grouping operator are quotation marks placed around a group of words, or phrase, that instruct the search process to locate documents containing the entire group of words or phrase Any of various electronic document content search systems may be used
  • the documents on the document server 10 may be searched for occurrences of the entered keywords
  • the document server 10 may display to the user a list of one or more documents containing at least one occurrence of at least one of the one or more
  • the user may select one of the one or more displayed documents for viewmg
  • the user may select a document from the list of documents contammg search hits, if the user previously entered one or more keywords for searching, and one or more documents was located contammg search hits for the keywords
  • the document may be selected from among all of the documents available on the document server
  • the display of a document for selection by a user may mclude a description of the contents of the document to aid the user in selecting a document from the list
  • the display of a document for selection from a list of documents mcludmg search hits may include the number of hits and/or one or more examples of occurrences of keywords in the document to aid the user in selectmg a document from the list
  • the document server 10 may provide at least a portion of the document to the user for preview
  • the document server 10 may provide a first portion of the document, such as a first Web page of the document In one embodiment, the first Web page may mclude an introduction and table of contents of the document
  • the document server 10 may garble at least a portion of the document prior to the document bemg provided to the user for preview Garblmg may include scrambling at least a portion of the text content of the portion of the document, and/or masking or removmg other parts of the document content, such as graphics, images and hyperlinks Portions of the displayed portion of the document may be left ungarbled to provide the user with a preview of the document, without revealmg the entire contents of the document For example, search hits may be left ungarbled In one embodiment, part or all of the sentence contammg a search hit may be left ungarbled to provide the user with the context of the search hit Portions of the document with certain attnbutes may be left ungarbled For example, the table of contents, bibliography, and sections mcludmg the descriptive words "Introduction” and "Overview" may be left ungarbled Sections with other attnbutes, and sections mcludmg other descriptive words, may be left un
  • step 214 the user may decide whether to purchase the electronic document If the user decides to purchase the document, the document may be purchased m step 216 Purchasmg the document may be accomplished with any of a va ⁇ ety of electronic purchasmg options such as by credit card, debit card, etc In one embodiment, the document may be added to an "electronic shoppmg cart" for later purchase A purchased document may be delivered to the user as an electronic document, or may be delivered to the user as a prmted document In one embodiment, a purchased electronic document may be mamtamed for the user on the document server 10, and the user may view the purchased ungarbled electronic document through a Web browser usmg a logon and password, or by other authentication methods After the user purchase the document m step 216, or if the user decides not to purchase the document at this time in step 214, the process may proceed to Step 218 In step 218, the user may decide whether to review or evaluate another electronic document If the user decides to evaluate another document, the process may return to step a
  • Figure 5 illustrates the process of a user requesting a preview of a page of a document according to one embodiment of the invention
  • a "page" may mclude a portion of the document viewable m one Web page on a Web browser, and, for example, may include one or more numbered pages of an electronic book, magazme, etc
  • the request may be made by the user from a Web browser to the document server 10
  • the document may have been previously selected by the user for preview in a process similar to that described m Figure 4
  • the document server 10 may display a list of pages for selection m an mterface presented to the user on the Web browser
  • the user may select a page to be viewed from among one or more pages of the document displayed by the document server 10
  • the document browser may provide an mterface on the Web browser for the user to enter a page number, or other document section number such as a chapter number, to allow the user to select a page or other section of the document for preview
  • Step 300 is similar to step 208 of Figure 4
  • the document server 10 may retrieve the page of the document requested by the user m step 300
  • the electronic document may be stored on a non-volatile memory such as a magnetic medium or disk drive coupled to the document server 10
  • at least a portion of the document may have been previously loaded (or cached) mto system memory of document server 10 to provide faster access to the document
  • the document server 10 may examine preferences and access privileges of the user
  • the user's preferences may be used m determmmg one or more display preferences for viewmg the page of the document, such as whether to highlight keyword search hits, and what color is to be used for highlighting the search hits
  • the user's access pnvileges may be used m determmmg what the user may view m the document For example, if the user has already purchased the document, the user's access privileges may allow the user to view the entire document without garblmg A user may pay a sub
  • the document server 10 may determine if the user has previously entered one or more keywords to search for m the document If the user has entered keywords to search for, the document server 10 may check if the user has requested search hit highlighting m step 308 If the user has requested search hit highlighting, the document server 10 may insert highlight markup tags around search hits located on the requested page m step 310, and then proceed to step 312. If the user has not entered keywords to search for, or if the user has not requested search hit highlighting, step 310 may be bypassed and the processing may proceed to step 312
  • the document server 10 may determine if the user has full access to the requested page If the user does have full access to the requested page, the ungarbled requested page may be returned to the client system 14 in step 316, and may be displayed by the Web browser on the client system 14 for the user to view If the user does not have full access to the requested page, the Garbled Preview program may be run on the requested page in step 314 prior to returning the requested page to the client system for the user to view.
  • the Garbled Preview program is preferably run dynamically in real-time as document pages are requested by the user. Step 314 is illustrated in detail m Figure 6.
  • Figure 6 expands on step 314 of Figure 5, and illustrates the high-level processmg of a user-requested page by a Garbled Preview program accordmg to one embodiment of the invention.
  • the steps m Figure 6 may occur concu ⁇ ently or in different orders
  • the Garbled Preview program may process keyword search hits
  • the search hits are instances of one or more user-specified keywords that were searched for in a portion of the document, in the entire document, or in a plurality of documents on the document server 10
  • Processing a search hit may mclude inserting one or more markup tag pairs around the search hit.
  • An mserted markup tag pair may mdicate that the content enclosed m the markup tag pair is not to be garbled.
  • the markup tags may be mserted around the search hit word, or alternatively may be inserted around a portion of or the entire sentence where the search hit word is located.
  • Step 320 is further illustrated in Figure 7.
  • the Garbled Preview program may process one or more descriptive words Processmg the one or more descriptive words may mclude searching for the one or more descnptive words m the portion of the document selected by the user to be viewed.
  • the descriptive words to be searched for may be read from a descriptive word table on the document server 10.
  • Processing the one ore more descnptive words may include inserting one or more markup tag pairs m the section of the document wherein a desc ⁇ ptive word is located by the search.
  • An mserted markup tag pair may indicate that the content enclosed m the markup tag pair is not to be garbled.
  • the markup tag pair may be inserted around a portion or all of the section of the document contammg the located descriptive word In another embodiment, the markup tag pair may be inserted around a portion or all of the section of the document following the section contammg the located descriptive word. In yet another embodiment, the markup tag pair may be mserted around the entire Web page to be displayed, thus not garblmg the entire Web page for display.
  • Step 322 is further illustrated m Figure 8
  • the portion of the document to be displayed to the user on the Web page may be searched for markup tags, the markup tags enclosmg content may be exammed and processed, and the contents of the markup tags may be garbled or left ungarbled and therefore intelligible to the user in response to the processmg of the markup tags.
  • processmg the markup tags may include searchmg for occurrences of the markup tags from the portion of the document m a tag and att ⁇ bute table.
  • the tag and att ⁇ bute table may be combmed m one table.
  • the markup tag, att ⁇ bute, and descriptive word table may be combmed mto one table
  • an action mdicator for the located markup tag in the table may be examined.
  • the action mdicator may indicate that the contents are to be masked, removed, or left ungarbled If a markup tag is not located m the table, the contents of the markup tag may be examined to see if the markup tag includes one or more attributes If the markup tag includes one or more attributes, the tag and att ⁇ bute table may be searched for occurrences of the attributes.
  • an action mdicator for the located attribute in the table may be exammed.
  • the action mdicator may mdicate that the contents are to be masked, removed, or left ungarbled
  • FIG. 7- Step 320 of Figure 6; Processmg keyword search hits m a document Figure 7 is a flow diagram expanding on step 320 of Figure 6, and illustrates the processing of keyword search hits in a document by a Garbled Preview program accordmg to one embodiment of the mvention
  • the user may have previously requested a portion (page) of the document for viewmg as described m Figure 5
  • the Garbled Preview program may check to see if the requested page contains one or more search hits
  • search hits may have been marked in the document by inserting a ⁇ h ⁇ t> tag pair around each search hit
  • the Garbled Preview program may search the requested page for occurrences of keywords previously entered by the user. If the requested page contains no search hits, the rest of the flow diagram of Figure 7 is skipped. If the requested page contains one or more search hits, processmg may proceed to step 332
  • the Garbled Preview program may get the next search hit to be processed on the requested page.
  • the Garbled Preview program may proceed from the first search hit to the last search hit, from top to bottom on the requested page.
  • the Garbled Preview program may examine each paragraph on the requested page for search hits, and may perform different actions on the first occu ⁇ ence of a keyword than on a subsequent occu ⁇ ence of the keyword m a paragraph.
  • the Garbled Preview program may check to see if the search hit is the first search hit withm the cu ⁇ ent paragraph If the first paragraph on the requested page continues from the previous page, the Garbled Preview program may check to see if the portion of the paragraph on the preceding page contains a first search hit.
  • the Garbled Preview program may insert a tag pair around the entire sentence contammg the search hit in step 336, wherein the mserted tag pan mdicate that the sentence is not to be garbled. If this is not the first search hit withm the current paragraph, the Garbled Preview program may insert the tag pair around a portion of the sentence contammg the search hit in step 338, wherein the mserted tag pair indicate that the portion of the sentence is not no be garbled.
  • the tag parr may be mserted before the word precedmg and the after the word followmg the search hit Other embodiments may mclude other numbers of words preceding and followmg the search hit in the tag pair.
  • the first tag in the tag pair may be mserted just prior to the search hit. If the search hit is the last word m the sentence, the second tag m the tag pair may be mserted just after the search hit. Alternatively, the tag pair may be extended mto the sentence precedmg and/or followmg the sentence contammg the search hit when the search hit's location m the sentence requires the extension of the ungarbled portion beyond the boundaries of the sentence.
  • step 340 if there are more search hits on the requested page, processing may return to step 332, where the next search hit may be processed If the requested page contains no more search hits, then the processmg of keyword search hits may end
  • Figure 8 is a flow diagram expandmg on step 322 of Figure 6, and illustrates the processmg of descriptive words m a document by a Garbled Preview program accordmg to one embodiment of the invention
  • the document server 10 may mclude a descriptive word table wherem one or more descriptive words may be stored
  • a descnptive word is a word that, when occurring in the document, causes at least a portion of the document contammg the descriptive word to not be garbled
  • the descriptive word table may include words such as "Introduction,” "Copyright,” and “Overview " Descriptive words differ from keywords m that descriptive words are predefined m the descriptive word table or elsewhere in the document server 10, while keywords are entered by the user durmg a document preview session on the document server 10
  • An example of one embodiment of a descriptive word table is illustrated m Figure 13 The user may have previously requested a page of the document for viewing as described m Figure 5
  • the Garbled Preview program may access and examine the descriptive word table If the table cont
  • step 360 if there are more descriptive words m the descriptive word table, processmg may return to step 352 to get the next descriptive word If there are no more descriptive words, the processmg of desc ⁇ ptive words may end Figure 9 Step 324 of Figure 6, Processmg of markup tags in a document
  • Figure 9 is a flow diagram expandmg on step 324 of Figure 6, and illustrates the processmg of markup tags in a document by a Garbled Preview program accordmg to one embodiment of the mvention
  • the document server 10 may mclude a tag and attribute table wherein one or more markup tags and attributes may be stored
  • An example of one embodiment of a tag and attribute table is illustrated m Figure 12
  • markup tags may come m pairs, with a first markup tag and a second markup tag enclosmg a portion of the document to which the tag action is to be applied
  • Tag pairs may be nested, with a first tag pair enclosmg a second tag pair
  • Some markup tags may not come m pairs
  • a smgle markup tag may be inserted at the beginnmg of a section and may specify an action be taken on the entire section
  • the Garbled Preview program may parse the markup tags from the first markup tag appearmg m the requested page to the last
  • the Garbled Preview program begms processing markup tags and attnbutes in the requested page
  • the Garbled Preview program may get the first tag pair m the requested page
  • the Garbled Preview program may search the tag and attribute table for an occurrence of the markup tag in step 372
  • step 374 if an occu ⁇ ence of the markup tag is found m the tag and attribute table, the contents of the tag pair may be processed usmg an action indicator that may be stored with the occu ⁇ ence of the markup tag m the tag and attribute table m step 386
  • Step 386 is further illustrated in Figure 10
  • the Garbled Preview program may examine the markup tag to see if
  • Figure 10 Step 386 of Figure 9; Processmg of a markup tag located in a tag and att ⁇ bute table
  • Figure 10 is a flow diagram expandmg on step 386 of Figure 9, and illustrates the processmg of a markup tag located in a tag and attribute table accordmg to one embodiment of the invention.
  • the document server 10 may mclude a tag and att ⁇ bute table wherein one or more markup tags and attributes may be stored
  • An example of one embodiment of a tag and attribute table is illustrated m Figure 12.
  • the user may have previously requested a page of the document for viewing as described m Figure 5 Keyword search hits and descriptive words in the requested page may have already been processed as described m Figures 7 and 8.
  • the Garbled Preview program may have a ⁇ ived at step 386 of Figure 9 by locatmg an occu ⁇ ence of either the markup tag or an attribute contained in the markup tag in the tag and attribute table.
  • An action indicator may be stored with the occu ⁇ ence of the markup tag or att ⁇ bute in the tag and attribute table
  • the garbled preview program may examine the action mdicator for the markup tag or att ⁇ bute in step 400 of Figure 10
  • the action mdicator may indicate to the Garbled Preview program one of a plurality of actions to be performed on the contents of the tag pair In this embodiment, three actions to be performed on the contents are illustrated
  • a first action mdicator 402 may instruct the Garbled Preview program to mask the contents of the tag pair
  • the Garbled Preview program may replace the contents of a tag pair for which a mask contents action indicator is specified with a shaded block m step 404.
  • an HTML tag pair ⁇ IMG>... ⁇ /IMG> may enclose an image to be displayed. If the markup tag ⁇ IMG> appears in the tag and attribute table, and the action indicator associated with the markup tag instructs the Garbled Preview program to mask the tag pair's contents, the Garbled Preview program may replace the image with a shaded rectangle on the requested page for viewing by the user
  • a second action indicator 406 may instruct the Garbled Preview program to remove the tag pair's contents.
  • the Garbled Preview program may remove the contents of a tag pair for which a remove contents action indicator is specified.
  • an HTML tag pair ⁇ lmk>... ⁇ /lmk> may enclose a hyperlink If the markup tag ⁇ l ⁇ nk> appears in the tag and attribute able, and the action mdicator associated with the markup tag instructs the Garbled Preview program to remove the tag pair's contents, the Garbled Preview program may remove the hyperlink from the requested page for viewing by the user.
  • a third action indicator 410 may instruct the Garbled Preview program that the tag pair's contents are not to be garbled.
  • the Garbled Preview program may not garble the contents of a tag pair for which a do not garble contents action indicator is specified. For example, an HTML tag pair ⁇ h ⁇ t>... ⁇ /h ⁇ t> may enclose a sentence contammg a search hit m the requested page If the markup tag ⁇ h ⁇ t> appears m the tag and att ⁇ bute table, and the action mdicator associated with the markup tag instructs the Garbled Preview program to not garble the tag pair's contents, the Garbled Preview program may leave the tag pair's contents ungarbled on the requested page for viewmg by the user.
  • action mdicators may instruct the Garbled Preview program to perform one or more other actions on the contents of tag pairs associated with the action mdicators
  • an action mdicator may be used to instruct the Garbled Preview program to scramble text content enclosed in the tag pair
  • Figure 11 is a flow diagram expanding on step 384 of Figure 9, and illustrates the processmg of a markup tag that is not located in a tag and attribute table according to one embodiment of the invention
  • the document server 10 may include a tag and attribute table wherein one or more markup tags and attributes may be stored
  • An example of one embodiment of a tag and attribute table is illustrated m Figure 12
  • the user may have previously requested a page of the document for viewmg as described m Figure 5 Keyword search hits and descriptive words m the requested page may have already been processed as described m Figures 7 and 8
  • the Garbled Preview program may have amved at step 384 of Figure 9 by not locatmg an occu ⁇ ence of either the markup tag or an attribute of the markup tag m the tag and attribute table
  • the Garbled Preview program may examine the tag pair's contents If the tag pair's contents are not text, the Garbled Preview program may perform no garblmg process on the tag pair's contents m step 424
  • the Garbled Preview program may scrambled the text in step 422
  • scramblmg the text may include randomly selectmg a replacement character for each character in the text
  • random characters may be selected to match the general appearance of the characters For mstance, capital letters may be replaced with capital letters, numbers may be replaced with numbers, lowercase letters with ascenders may be replaced with lowercase letters with ascenders, text m Italics may be replaced with text m Italics, etc
  • Other embodiments may include other methods of scramblmg text content
  • any text scrambling method that makes the text content unintelligible to the viewer may be used
  • a random method that is not decipherable is used
  • Figure 12 is a block diagram illustrating one embodiment of a tag and att ⁇ bute table
  • the markup and attribute table may be stored on the document server 10
  • the markup and attribute table may be used by a Garbled Preview program as illustrated in Figures 6 through 11
  • the table may mclude two columns, and one row for each occu ⁇ ence of a markup tag or attribute in the table
  • Column 140 may mclude the markup tags and attnbutes for which actions are to be taken
  • Column 142 may mclude the action indicatois associated with the markup tags and attnbutes of column 140
  • the table mcludes nme rows Some of the rows contam markup tags, and some contam tag attributes
  • markup tag names may be enclosed m angle brackets o to differentiate the markup tags from attributes Other methods may be used to differentiate markup tags and attributes
  • the first row contams the markup tag ⁇ IMG> and the action mdicator "Mask " The "Mask” mdicator may specify that the contents of an ⁇ IMG> tag pair are to be replaced with a shaded block
  • the second row contains the markup tag ⁇ h ⁇ t> and the action indicator "None "
  • the "None” mdicator may specify that the contents of a ⁇ h ⁇ t> tag pair are not to be garbled
  • the third row illustrates that custom markup tags may be created and entered m the tag and attributes table In this example, ⁇ custom tag> is associated with the action mdicator "Remove " The "Remove” indicator may specify that the contents of a ⁇ custom tag> tag pair are to be removed from the document section for display
  • the sixth row contams the markup tag attribute Bold and the action mdicator "None "
  • the "None" mdicator may specify that the contents of a tag pair with a Bold attribute are not to be garbled
  • Figure 13 is a block diagram illustrating one embodiment of a descriptive word table
  • the descriptive word table may be stored on the document server 10
  • the descriptive word table may be used by a Garbled Preview program as illustrated in Figures 6 through 11
  • the descriptive word table may mclude one column 150, wherein each row contams one descriptive word
  • a descriptive word is a word that, when occu ⁇ mg in the document, causes at least a portion of the document contammg the descriptive word to not be garbled
  • the descnptive word table illustrated in Figure 13 includes the descriptive words
  • Figure 14A An example document with markup tags for display mg content on a Web browser
  • Figure 14A illustrates an example of a document marked up for displaying text and other content m a computer program capable of reading the markup tags, text and other content, formattmg the text and other content usmg the markup tags, and displaying the formatted text and other content
  • the marked up document is an example of a document that may be requested for preview by a user of a document browser system
  • the document may mclude text and other content enclosed within various markup tag pairs
  • Some markup tags may be defined as garble tags.
  • a garble tag is a markup tag that, when present in a document, signifies that the contents of the garble tag pair are to be garbled, and thus unmtelligible, when displayed to a user who does not have viewmg access to the portion of the document contammg the garble tag pair
  • An ungarble tag is a markup tag that, when present in a document, signifies that the contents of the ungarble tag are not to be garbled, and thus intelligible, when
  • markup tags that do not appear in a tag and attribute table may be garble tags, and markup tags that do appear m the tag and attnbute table may be ungarble tags
  • markup tags that do appear m a tag and att ⁇ bute table may be garble tags, and markup tags that do not appear in the tag and attribute table may be ungarble tags
  • markup tags that do not appear m a tag and attribute table may be garble tags, and markup tags that do appear m the tag and attribute table may be garble or ungarble tags determined by action mdicators associated with the markup tags in the table
  • the contents of markup tags that do not appear in a tag and attribute table may determine if the contents are to be garbled or not garbled, for mstance, all text content may be garbled, and all image, table and other content may not be garbled
  • Figure 14B Displayed content from the document of Figure 14A without garblmg
  • Figure 14B illustrates what the displayed text and other content from the tagged document of Figure 14A may look like without garblmg of content
  • lme 110 displays the first header described by lme 100 of the tagged document
  • line 112 displays the second header described by lme 102 of the tagged document
  • lme 114 displays the line of text described by lme 104 of the tagged document
  • Image 116 is described by line 106 of the tagged document
  • hyperlink 118 is described by line 108 of the tagged document
  • Figure 14C illustrates what the displayed text and other content from the tagged document of Figure 14A may look like with garblmg of content accordmg to one embodiment of the invention
  • Figure 14C illustrates how one embodiment of a Garbled Preview program may scramble text withm garble tags, mask content withm garble tags, and remove content withm garble tags before displaying the requested page
  • the markup tags ⁇ h2> and ⁇ p> are garble tags to scramble text withm the tags
  • ⁇ mg src> is a garble tag to mask images withm the tag
  • ⁇ a href is a garble tag to remove the tag's contents from the displayed page
  • the Garbled Preview program parses tagged text and other content
  • the program may garble text, mask content, and remove content withm garble tags, and preserves text and other content withm ungarble tags
  • lme 120 displays the first header described by line 100 of the tagged document without garblmg Line 122
  • text may be scrambled by generatmg random, nonsense words from the origmal text content
  • a new random character may be generated for each character, and used to replace the character in the scrambled text
  • a new random character may be selected for each occu ⁇ ence of a particular character
  • punctuation marks and spaces may be left unscrambled
  • the random selection of characters and nonsense words may be such that the characters and words are not decipherable
  • a character or sequence of characters may be used to replace the characters in the origmal text For example, the letter "X", the character "*", or the sequence of letters "XO" may be substituted for all non-punctuation and non-space characters to be scrambled
  • Image 126 described by lme 106 of the tagged document, has been masked, or replaced with a gray box
  • content may be masked with other methods, for example, with other colors of boxes
  • the Garbled Preview program may be customizable to mask content m a variety of ways, for example, with boxes of other colors, patterns, pictures, etc
  • the hyperlink described by lme 108 of the tagged document has been removed (128)
  • the Garbled Preview program removes the tag's contents, thereby preventing the user from accessmg the hyperlink Any tagged text may be defined for scramblmg Any tagged content may be defined for masking or removal In one embodiment, any tagged text may be marked for scramblmg, masking or removal

Abstract

A system and method are provided for evaluating and purchasing digital books and other content. A user of a document server system may evaluate and purchase digital books and other content, generally referred to as electronic documents. The user may access the document server system from a client system. The document server system and client system may be in electronic communications over a network such as the Internet. The user may perform keyword searches to locate documents that include keywords of interest to the user. The user may select an electronic document for evaluation or purchase from a plurality of electronic documents accessible from the document server system. The user may select a portion of the document or the entire document for evaluation. A Garbling Program on the document server system may garble part or all of the contents of the electronic document prior to sending the electronic document to the user for evaluation. Garbling may include scrambling, masking, or removing portions of the content. Scrambling may include randomly replacing characters in textual content. Masking may include covering the content with a shaded area of essentially the same shape and size of the content. Portions of the document proximate keywords located in the document may be left ungarbled. Portions of the document that include certain pre-defined descriptive words may also be left ungarbled. The electronic document may include markup tags around content items. The garbling program may examine the markup tags enclosing one or more content items to determine whether the content items are to be garbled or not garbled. The user may choose to purchase one or more electronic documents. The user may be granted full access privileges to purchased documents, allowing the user to view the documents without garbling. Purchased electronic documents may be delivered to the user in electronic or hardcopy form.

Description

TITLE: "SYSTEM AND METHOD FOR EVALUATING AND PURCHASING DIGITAL CONTENT"
Background of the Invention
Field of the Invention
The present invention generally relates to the field of electronic documents. More particularly, the present invention relates to a system and method for evaluating and purchasmg digital books and other content
Description of the Related Art
Various systems have been developed for purchasing digital books and other content by various methods, such as over the Internet. However, these systems have generally provided a very limited browsing capability by the prospective purchaser or user. For example, some systems display a static page that may explain the general nature of the book However, the user is required to purchase and download the book before viewing any content of the book. This does not provide the purchaser with an opportunity to evaluate the book, e.g , to view or browse the book to determine if the content fits the user's needs or requirements
One category of books where the purchase of a digital form of the book is greatly desired takes the form of "how to" books such as books on information technology or other technologies In many instances, an electronic shopper may desire to purchase a digital book to answer one or more questions in the book's technology area However, current systems provide a very limited mechanism for a prospective purchaser to browse a book to determine if the book fits the purchaser's requirements or answers the purchaser's questions
Therefore, an improved system and method is desired for enablmg a prospective purchaser to evaluate and/or browse a book or other digital content prior to purchase The system and method is also desired for enabling a prospective purchaser to browse a book while not providing or "giving away" too much content of the book or other digital content, thereby obviating the prospective purchaser's need to actually purchase the book
Summary of the Invention
A system and method are provided for enablmg evaluation and purchase of digital books and other content. Digital books and other content may be referred to as "electronic documents." In some embodiments, the evaluation and purchase of electronic documents may occur over the Internet. A document server may be provided In one embodiment, the document server may include a Web server supporting one or more Web sites. A user on a client system, such as a computer system, may generate a request for at least a portion of an electronic document, such as a page (e.g., web page) of the document, to be evaluated. The document server may receive the request for the page of the electronic document from the client system. The document server may then perform a garblmg operation on the page of the electronic document and provide the page of the electronic document to the client system The client system may then display the page of the electronic document on a display device for the user to evaluate. Thus, the page of the electronic document may be partially garbled and partially non-garbled. The garbled portion of the page of the electronic document is unintelligible to the user, while the non-garbled portion is intelligible to the user of the client system On the client system, the user may select a link m the electronic document to one or more other pages of the electronic document The document server may then garble the one or more other pages of the electronic document and provide the one or more other pages of the electronic document to the client system, which may then display the one or more pages on the client system display device An electronic document may comprise one or more markup tags Each of the one or more markup tags is associated with one or more content items in the electronic document A markup tag may be used to determine whether the markup tag's one or more associated content items are to be garbled by the document server prior to bemg provided to the client system The document server may examine a markup tag associated with one or more content items in the electronic document The document server may garble the one or more content items associated with the markup tag in response to the markup tag indicating the one or more content items are to be garbled, or the document server may not garble the one or more content items associated with the markup tag in response to the markup tag indicating the one or more content items are not to be garbled
The document server may comprise a table of markup tags The document server may search the table for a markup tag associated with one or more content items in the electronic document The document server may garble the one or more content items associated with the markup tag in response to the markup tag not being found in the table, or the document sever may not garble the one or more content items associated with the markup tag in response to the markup tag bemg found in the table
Each of the one or more markup tags m the table may be associated with an action indicator The action indicators may be stored in the table with the markup tags The document server may garble the one or more content items associated with the markup tag m response to the markup tag being found in the table and an action indicator associated with the markup tag indicating that the one or more content items associated with the markup tag are to be garbled The document server may not garble the one or more content items associated with the markup tag in response to the markup tag being found in the table and the action indicator associated with the markup tag indicating that the one or more content items associated with the markup tag are not to be garbled If the markup tag is not found in the table, the document server may garble the one or more content items associated with the markup tag if the one or more content items are textual content, and may not garble non-textual content
A markup tag may comprise one or more attributes A markup tag attribute may be used to indicate whether the markup tag's one or more associated content items are to be garbled The document server may examine a markup tag associated with one or more content items m the electronic document The document server may garble the one or more content items associated with the markup tag in response to an attπbute of the markup tag indicating the one or more content items are to be garbled The document server may not garble the one or more content items associated with the markup tag in response to an attribute of the markup tag indicating the one or more content items are not to be garbled
The document server may comprise a table of markup tag attributes The document server may search the table for a markup tag attπbute of a markup tag associated with one or more content items in an electronic document The document server may garble the one or more content items associated with the markup tag response to the markup tag attribute not bemg found m the table The document server may not garble the one or more content items associated with the markup tag m response to the markup tag attribute bemg found in the table Each of the one or more markup tag attributes in the table may be associated with an action mdicator The document server may garble the one or more content items associated with a markup tag in response to a markup tag attπbute being found in the table and an action mdicator associated with the markup tag attribute indicating that the one or more content items associated with the markup tag are to be garbled The document server may not garble the one or more content items associated with the markup tag in response to the markup tag attribute bemg found in the table and the action mdicator associated with the markup tag attπbute mdicatmg that the one or more content items associated with the markup tag are not to be garbled If the markup tag attribute is not found in the table, the document server may garble the one or more content items associated with the markup tag if the one or more content items are textual content, and may not garble non-textual content Garbling of content may include scrambling one or more textual content items to render the one or more textual content items unintelligible to the user A textual content item compπses one or more characters, and scrambling the textual content item comprises replacmg each of the one or more characters with a different character Replacmg each of the one or more characters with a different character may comprise randomly (or pseudo randomly) selecting a different character from a plurality of characters In one embodiment, each of the one or more characters may be replaced with a character randomly selected from a set of characters with one or more font characteristics similar to font charactenstics of the oπgmal character Font characteπstics mclude, but are not limited to typeface, size, styles such as bold, Italics, and underline, lowercase and uppercase, and ascenders and descenders Characters such as punctuation marks, accent marks, and white spaces between words, sentences and paragraphs may be left in the textual content item m their oπgmal form (unscrambled) Thus, the textual content items may retam a similar appearance to the origmal, unscrambled textual content items, while being unintelligible to the user
Garblmg of content may also mclude maskmg one or more content items to render the one or more content items unintelligible to the user by replacing the content item with a shaded block The shaded block may be of substantially similar shape and size as the original content item Garbling of content may also mclude removing one or more content items such that the one or more content items are not displayed on the client system display device
The layout of a displayed portion of an electronic document with at least some of the content garbled before displaying may be substantially the same as the layout of the displayed portion would appear if displayed without garblmg This may operate to provide the user a more accurate "look and feel" of the origmal document, which may affect the user's decision to purchase the document
The garblmg of portions of the electronic document may not be performed m response to the portions of the electronic document bemg available for full evaluation by the user of the client system A portion of the electronic document may mclude one or more descπptive words, and the document server may not garble the portion m response to locating the descriptive word m the document The document server may mclude a table of descriptive words, and may search the portion of the document for the descπptive words m the table, and may not garble the portion in response to locating one of the descriptive words from the table in the portion of the document
A user may initiate a search operation to locate one or more keywords m the electronic document The search operation may locate one or more mstances of the one or more keywords m the electronic document A portion of the electronic document proximate to the one or more located keywords may be displayed to the user without garblmg, while other portions of the electronic document are garbled before bemg displayed
The electronic document may comprise one or more paragraphs comprised of one or more sentences A first sentence comprising a first mstance of a located keyword withm a paragraph of the electronic document may be displayed without garblmg, while other sentences in the paragraph not comprismg located keywords may be garbled before bemg displayed If the paragraph comprises a second sentence comprismg a second mstance of the located keyword, a portion of the second sentence precedmg the second mstance of the located keyword and a portion of the second sentence following the second instance of the located keyword may be displayed without garbling, and the remamder of the second sentence may be garbled before bemg displayed A user of the document server may select an electronic document for evaluation from a plurality of electronic documents displayed on a client system display screen The user may then initiate a request to evaluate at least a portion of the electronic document on the client system The user may initiate a search operation to locate one or more keywords m a plurality of electronic documents The search operation may locate one or more mstances of the one or more keywords in one or more of the plurality of electronic documents The user may then select an electronic document for evaluation from the one or more of the plurality of electronic documents The document server may then provide at least a portion of the selected electronic document to the user for evaluation A portion of the selected electronic document proximate to the one or more located keywords may be displayed without garblmg Other portions of the electronic document may be garbled before bemg displayed
Brief Description of the Drawings
A better understandmg of the present mvention can be obtained when the following detailed description is considered in conjunction with the following drawings, in which
Figure 1 illustrates a document browser client/server system according to one embodiment of the invention, Figure 2 is a block diagram illustrating the data flow between a document server system and a document viewer client system according to one embodiment of the mvention,
Figure 3 is a flow diagram illustrating the process of a user requesting and viewing a garbled electronic document preview accordmg to one embodiment of the invention,
Figure 4 is a flow diagram illustrating the process of a user previewmg and purchasmg one or more documents accordmg to one embodiment of the invention,
Figure 5 is a flow diagram illustrating the process of a user requestmg a preview of a page of a document accordmg to one embodiment of the mvention,
Figure 6 is a flow diagram expandmg on step 314 of Figure 5, and illustrates the process a Garbled Preview program may use to select and garble portions of text and other content m a document accordmg to one embodiment of the mvention,
Figure 7 is a flow diagram expandmg on step 320 of Figure 6, and illustrates the processmg of keyword search hits m a document by a Garbled Preview program accordmg to one embodiment of the mvention,
Figure 8 is a flow diagram expandmg on step 322 of Figure 6, and illustrates the processmg of descπptive words in a document by a Garbled Preview program accordmg to one embodiment of the mvention, Figure 9 is a flow diagram expanding on step 324 of Figure 6, and illustrates the processmg of markup tags m a document by a Garbled Preview program accordmg to one embodiment of the mvention,
Figure 10 is a flow diagram expanding on step 386 of Figure 9, and illustrates the processmg of a markup tag located in a markup tag table accordmg to one embodiment of the invention, Figure 11 is a flow diagram expandmg on step 384 of Figure 9, and illustrates the processmg of a markup tag that is not located m a markup tag table accordmg to one embodiment of the mvention,
Figure 12 is a block diagram illustrating one embodiment of a tag and attribute table,
Figure 13 is a block diagram illustrating one embodiment of a descriptive word table,
Figure 14A illustrates an example document for displaying text and other content on a Web browser, Figure 14B illustrates the displayed text and other content from the document of Figure 14A without garbling of content, and
Figure 14C illustrates the displayed text and other content from the document of Figure 14A with garblmg of content accordmg to one embodiment of the invention
While the invention is susceptible to various modifications and alternative forms, specific embodiments are shown by way of example in the drawmgs and will herein be descnbed in detail It should be understood however, that drawmgs and detailed descπptions thereto are not mtended to limit the mvention to the particular forms disclosed But on the contrary the invention is to cover all modifications, equivalents and alternatives following with the spirit and scope of the present invention as defined by the appended claims
Detailed Description of the Preferred Embodiment
Figure 1 A document browser client/server system
Figure 1 illustrates a document browser system according to one embodiment of the invention Figure 1 illustrates a simplified example of a client/server system for accessmg and viewing or evaluating documents However, it is noted that the present mvention may be included m any of various types of systems as desired Figure 1 includes at least one document server system 10 that connects through a network 12 to one or more document viewer client systems 14A and 14B Server system 10 is preferably a computer system and may mclude various standard components, mcludmg one or more processors or CPUs, a memory medium, one or more buses, one or more network ports for connecting to and communicating over networks such as network 12 etc Client systems 14A and 14B may be any of various types of devices, mcludmg a computer system, Internet appliance, information appliance, personal digital assistant (PDA), television (e g , digital television), set top box or cable modem, or other similar devices Each of client systems 14A and 14B may comprise standard computer components such as a processor or CPU, memory medium, and/or display, one or more network ports for connecting to and communicating over networks such as network 12, etc The network 12 may be any of various types or combinations of local area network and/or wide area network, mcludmg the Internet
The term "computer system" as used herem generally describes the hardware and software components that in combination allow the execution of computer programs The computer programs may be implemented in software, hardware, or a combination of software and hardware A computer system's hardware generally mcludes a processor, memory medium, and input/output (VO) devices A computer system may take vaπous forms, mcludmg a personal computer system, mamframe computer system, workstation, network appliance, Internet appliance, information appliance, personal digital assistant (PDA), television system or other device In general, the term "computer system" can be broadly defined to encompass any device havmg a processor that executes instructions from a memory medium As used herem, the term "processor" generally descπbes the logic circuitry that responds to and processes the basic instructions that operate a computer system The term "memory medium" mcludes vaπous types of memory mcludmg an installation medium, e g , a CD-ROM, or floppy disks, a volatile computer system memory such as DRAM, SRAM, EDO RAM, Rambus RAM, etc , or a non- volatile memory such as optical storage or a magnetic medium, e g , a hard dπve The term "memory" is used synonymously with "memory medium" herem The memory medium may compnse other types of memory or combmations thereof In addition, the memory medium may be located m a first computer in which the programs are executed, or may be located m a second computer that connects to the first computer over a network In the latter instance, the second computer provides the program instructions to the first computer for execution
The memory medium comprised in the server computer system 10 preferably stores a software program or programs for enablmg server computer system 10 to store, retrieve, and send digital content to client systems 14A and 14B, and to garble digital content prior to sendmg the content to client systems 14A and 14B The memory medium comprised in the client systems 14A and 14B may include browser software for enablmg the client systems 14A and 14B to display content received from the server computer system 10 The software program(s) may be implemented m any of various ways, mcludmg procedure-based techniques, component-based techniques, and/or object-oriented techniques, among others For example, the software program may be implemented usmg ActiveX controls, C++ objects, JavaBeans, Microsoft Foundation Classes (MFC), or other technologies or methodologies, as desired A CPU executmg code and data from a memory medium mcludes a means for creatmg and executing the software program or programs accordmg to the methods, flowcharts, and/or block diagrams described below Vaπous embodiments further include receivmg or storing instructions and/or data implemented m accordance with the foregomg description upon a earner medium Suitable carrier media include memory media or storage media such as magnetic or optical media, e g , disk or CD-ROM, as well as signals such as electrical, electromagnetic, or digital signals, conveyed via a communication medium such as networks and/or a wireless link A server program may be defined as a computer program that, when executed, provides services to other computer programs executing in the same or other computer systems The computer system on which a server program is executmg may be referred to as a server, though it may contam a number of server and client programs In the client/server model, a server program may await and fulfill requests from client programs in the same or other computer systems An example of a computer program that may serve as a server is Wmdows NT server, available from Microsoft Corporation
A Web server may be a program that uses the client/server model and Hypertext Transfer Protocol (HTTP) to serve the files that form Web pages to Web users, whose computers contam HTTP clients, or Web browsers A Web browser may be a client program that may use HTTP or similar protocols to make requests of Web servers throughout the Internet Examples of Web servers mclude, but are not limited to Microsoft's Internet Information Server (IIS), NetScape's FastTrack and Enterprise servers, Novell's Web Server for NetWare operatmg system, and IBM's family of Lotus Domino servers Examples of Web browsers mclude, but are not limited to Netscape
Navigator and Microsoft Internet Explorer
A Web server may support one or more Web sites A Web site is a related collection of Web files that includes a beginning file called a home page The home page and other pages of the Web site may be reached usmg a Uniform Resource Locator (URL) A URL is the address of a file or resource accessible on the Internet From the home page, all the other Web pages on a Web site may be reached A Web site is not a Web server A Web server may hold the files for one or more Web sites A Web site may be spread over a number of Web servers
Web frames may be used m creating multiple, mdependently controllable sections on a Web page Web frames may be created by describmg each section m a separate Web file and havmg one Web file identify all of the sections When a user requests a Web page that uses Web frames, the address requested is that of the Web file that defines the Web frames Multiple Web files are returned m response to the request, one for each section of the Web page Hyperlinks in one Web frame may request another Web file that may appear m another (or the same) Web frame An example of the use of Web frames is to have a file selection menu m a first frame, and a second frame for displaying the contents of a selected file As used herein, the term "Web page" generally includes Web pages implemented with Web frames, as well as Web pages implemented without Web frames
Garbling Electronic Documents
The document server system 10 may operate to garble a portion or all of an electronic document provided to client system 14A or 14B The followmg is a general description of the organization of and markup language used m electronic documents m the prefeπed embodiment The followmg also describes garblmg used in the preferred embodiment of the invention
The term "markup" as used herein refers to a sequence of characters or other symbols that may be inserted m a document, such as a text or word processmg file to mdicate how the document should appear when it is printed or displayed, or to descπbe the document's logical structure The markup mdicators may be called "markup tags" or "tags " For example, a paragraph may be preceded by a <p>, or paragraph tag, so that it will be separated by an empty line from the preceding line Markup may be inserted directly by typing the symbols in, by usmg an editor and selecting prepackaged markup symbols, or by usmg a more sophisticated editor that lets the user create the document as it will appear Markup tags may be classified mto several categories Examples of markup tag categories mclude, but are not limited to meta tags, document tags, outlme tags, style tags, break tags, link tags, and custom tags Meta tags may allow a document to be embedded mto another document, possibly of another markup language For example, meta tags m an HTML document may allow the document to be embedded mto a larger SGML (Standard Generalized Markup Language) document and be properly displayed SGML is a standard for how to specify a document markup language or markup tag set SGML is not in itself a document language, but a description of how to specify one Document tags may be used to divide a document mto parts For example, document tags may be used to divide a document mto one or more headmgs and a body Outlme tags may be used to divide a document mto major sections and subsections Style tags may be used to define the kmd of text bemg displayed, text formatting, etc Style tags may mclude literal character style tags, logical character style tags, various lands of list tags, figure tags, table tags, etc Break tags may be used to break a document mto pieces separated by white space Link tags may be used to insert hypertext links (hyperlinks) in a document
HTML (Hypertext Markup Language) is a set of markup tags inserted in a file mtended for display on a World Wide Web browser The markup tags tells a Web browser how to display a Web page's words and images for the user HTML is a standard recommended by the World Wide Web Consortium and adhered to by major browsers, mcludmg Microsoft's Internet Explorer and Netscape's Navigator Web browsers may also provide some additional non-standard markup tags In addition, custom markup tags may be created for documents In HTML, markup tags may comprise a left angle bracket (<), a tag name, and a right angle bracket (>) Markup tags are usually paired (e g , <H1> and </Hl>) to start and end the tag instruction The end tag may look like the start tag except for a slash (/) precedmg the text withm the brackets The start and end tags may be referred to as a "tag pair " Markup tags may be nested Line 108 of Figure 14A shows an example of nested tags, where <B> and </B> are nested withm <A> and </A> A markup tag may mclude one or more attributes A markup tag attπbute may be enclosed m the brackets <> enclosmg the tag For example, m the HTML tag <FONT SIZE=7 COLOR="red">, the attπbute SIZE may be used to change the text size of the text followmg the tag, and the attribute COLOR may be used to change the text color of the text following the tag The value assigned to a tag attribute may be refeπed to as the attribute value In the example above, the attribute SIZE has the attribute value 7
XML (Extensible Markup Language) is similar to HTML Like HTML, XML mcludes markup tags to describe the contents of a page or file XML is a flexible way to create common information formats and share both the format and the data on the World Wide Web, intranets, and elsewhere HTML descπbes the content of a Web page only in terms of how the page is to be displayed and interacted with For example, a <P> starts a new paragraph XML describes the content in terms of what data is being described For example, a <PHONENUM> could mdicate that the data that followed it was a telephone number An XML file may be processed purely as data by a program, may be stored with similar data on another computer or, like an HTML file, may be displayed XML is extensible because, unlike HTML, the markup tags are unlimited and self-defining HTML and XML may be used together m Web applications
As used herem, a "hyperlink" is a selectable connection from one word, picture, or information object to another usmg hypertext In a multimedia environment such as the World Wide Web, such objects can include sound and motion video sequences Hyperlinks may also be used to initiate programs and applets such as Java applets, and tasks such as a download of a file to a client system The most common form of hyperlink is the highlighted word or picture that may be selected by a user (with a mouse or m some other fashion), resultmg in the substantially immediate delivery and view of another object such as a document, Web page, etc, or the initiation of a program, applet, or task The highlighted object may be referred to as an anchor The anchor and the object the anchor refers to constitute a hyperlink Electronic documents may mclude hyperlinks that, when selected, may deliver and display another section or page in the current document, or may deliver and display a page in another document, another Web page, another Web site, etc Electronic documents may also mclude hyperlinks that, when selected, initiate a program, applet, or task
As used herem, a "document" may be a collection of one or more of text, image, hyperlink, tabular, or other information or content An "electronic document" is a document that is m a form suitable for storing on a memory medium, transmittal via electronic connection such as a network, and/or viewmg on a computer, such as on a computer display screen An electronic document may have mteractive elements that may perform one or more actions m response to user input, such as a hyperlink that, when selected by a user, may link the user to another portion of the electronic document, or to another electronic document Electronic documents may include, but are not limited to books, manuals, journals, newspapers, magazines, articles, papers, video, movies, images, sounds, and combinations thereof
As used herem, an "element" is a fundamental component of the structure of a document Some examples of elements are heads, tables, paragraphs, and lists Markup tags may be used to mark the elements of a file for a browser Elements may mclude plain text, other elements, or both
A document may be segmented mto sections, chapters, pages, articles, or other logical units for organizational or viewing purposes On the Internet, an entire electronic document may be stored and viewed as one Web page, or the document may be segmented mto a plurality of Web pages One or more logical units or portions of logical units of the document may be stored and viewed on each Web page For example, one Web page may be used to store and view one page of an electronic book, one Web page may be used to store and view one page and a portion of a second page of an electronic book, one Web page may be used to store and view multiple pages of the electronic book, or one Web page may be used to store and view one page or article of an electronic magazine or newspaper When an electronic document is segmented mto more than one Web page, theie may be hyperlinks on the Web pages that may allow a viewer to navigate through the document For example, there may be hyperlinks to the previous Web page and to the next Web page, hyperlinks to a Web page mcludmg a document index from which other sections of the document may be reached via hyperlinks, hyperlinks to the Web page at the beginning of the current chapter or at the beginnmg of the next chapter, hyperlinks to the beginning of the document, etc
Alternatively, an electronic document may be stored and viewed as a plurality of Web frames on a Web page In one embodiment, at least one Web frame on a Web page may be used to display the contents of sections or portions of sections of the electronic document, and at least one Web frame on the Web page may be used to display a table of contents, mdex, or other document mformation with hyperlinks useable to navigate among the sections of the document
As used herem, the term "portion," when referring to an electronic document, may refer to one or more of the logical units, portions of logical units, sections, Web pages, or other parts of electronic documents as described above The term "at least a portion" may mclude one or more portions and/or the entire electronic document A Web page may be too large to be viewed m its entirety on a client system display screen A portion of the Web page may be displayed on the display screen, and an mterface on the client system may provide one or more methods to allow the user of the client system to view other portions of the Web page For mstance, scroll bars or buttons may be provided to allow the user to scroll to other portions of the Web page
As used herein, the term "content" is used to descπbe the objects or data that may appear in electronic documents Examples of content may include, but are not limited to text, lists, tables, images, graphs, charts, hyperlinks, movies, sound files, animations, and advertisements Note that an electronic document may mclude "content" that, by itself, would be considered an electronic document The content in an electronic document may be enclosed withm markup tag pairs For example, a tag pair may enclose a paragraph of text Another tag pan- may enclose a list Yet another tag pair may enclose an image As used herem, the term "garbled preview" refers to displaying a requested document with selected content items garbled It is noted that the content items to be garbled may be selected through a pre-deterrmned algoπthm or table(s), or may be randomly selected, or combinations thereof A "garbled preview" may optionally preserve enough content items to give the requestor an understandmg of the general nature or contents of the document, without "giving away" the entire contents of the document For example, chapter and section headings m a document may be intelligibly displayed, while the paragraph text is unintelligibly garbled A "garbled preview" may also optionally preserve the origmal layout of the electronic document, e g , by maintaining origmal paragraph and word sizes and other layout features of the electronic document
As used herein, the term "garble," m regards to the content of an electronic document, refers to one or more of scramblmg, maskmg, removmg, or otherwise rendering at least a portion of the contents of the electronic document unintelligible, so as to provide a preview of the document without "giving away" the entire contents of the document As used herein, the term "ungarbled" refers to content of the electronic document that has not been garbled, and is therefore intelligible to a user prevtewmg the document Content may be said to be intelligible to a user when it is readable or potentially understandable by the user (e g , assuming the user is capable of understanding the technical nature of the content)
As used herem, to "scramble" content in an electronic document is to render the content unintelligible by rearranging, replacmg, or otherwise modifying the elements withm the content Examples of scramblmg of content in an electronic document may include, but are not limited to randomly (or pseudo randomly) substituting a character for each character m a paragraph of text in the document, randomly (or pseudo randomly) substituting nonsense words for each word m the document, and randomly (or pseudo randomly) reordeπng the pixels withm a digital image in the document
As used herein, to "mask" content in an electronic document is to render the content unintelligible by displaying optionally shaded blocks in place of, or on top of, the content to be masked Examples of maskmg of content in an electronic document may mclude, but are not limited to replacmg the words in a paragraph of text in the document with shaded blocks, replacmg entire sections of text (such as paragraphs) with shaded blocks, and replacmg digital images m the document with shaded rectangles
As used herem, to "remove" content in an electronic document is to render the content invisible by not displaying the content The area where the content would appear if not removed may optionally display the background of the electronic document Thus, a user may not be able to discern that there is missing content For example, a hyperlink that initiates a download of an image may be removed from a portion of an electronic document displayed on a Web page, and the normal background of the Web page may be displayed where the hyperlink would be if displayed
In one embodiment, document content, such as words, sentences or paragraphs withm textual content items, may be randomly selected for garblmg or not garblmg An example of random selection of content for garblmg or not garbling is to garble words within paragraphs, leavmg an occasional, randomly selected word ungarbled Another example is to garble words withm paragraphs, leavmg every nth word ungarbled, where n is a value greater than one, for example, every tenth word may be left ungarbled Figure 2: Presentmg a Garbled Document to a User
Figure 2 illustrates the data flow between a document server system and a document viewer client system accordmg to one embodiment of the mvention. The document server system 10 shown m Figure 1 may store various server programs. As shown m Figure 2, the document server system 10 may mclude a document server program 50 and a Garbled Preview program 52. Document server system 10 may also be coupled to one or more storage devices or memory medium for stormg documents 54. Documents 54 may mclude any type of electronic document such as books, magazines, articles, manuals, etc. In one embodiment, document server system 10 may include a Web server program (not shown) to provide Web-based access to the server and its programs and services, including Web pages on the server Document viewer client system 14 in Figure 2 is an example of a client system, such as client systems 14A and 14B shown m Figure 1. Document viewer client system 14 may mclude a document viewer program 60. In one embodiment, document viewer program 60 is a Web browser Examples of Web browsers include, but are not limited to: Microsoft Internet Explorer and Netscape Navigator.
A user of document viewer client system 14 may request to view, or preview, a document available on document server system 10. In one embodiment, the user may select the document from a plurality of documents available on document server system 10. A document request 70 may be sent from document viewer client system 14 to document server system 10. In one embodiment, document viewer program 60 is a Web browser, and requestmg a preview of a document may mclude the user selecting the document on a document preview Web page served to the Web browser by a Web server program on document server system 10, the user requestmg a preview of the selected document, and the Web server forwarding the document request 70 to document server program 50 Document server program 50 may retrieve the requested document 72 from stored documents 54 in response to receivmg the document request 70. Document server program 50 may then send document 72 to Garbled Preview program 52 Garbled preview program 52 may garble various portions of the text and other content of document 72, and send the garbled document 74 to document viewer client system 14. In one embodiment, Garbled Preview program 52 may be a separate program from document server program 50. In another embodiment, Garbled Preview program 52 may be mtegrated as a function withm document server program 50 In one embodiment, document viewer program 60 is a Web browser, and Garbled Preview program 52 may send garbled document 74 to a Web server program on document server system 10, and the Web server program may then send garbled document 74 to be displayed on a Web page displayed by document viewer program 60. Document viewer program 60 may display garbled document 74 on a display screen 62 coupled to document viewer client system 14 m response to receivmg garbled document 74. Some or all of the text and other contents of the displayed document may be garbled.
A requested document may have more than one page, and document viewer program 60 may provide an mterface for the user to browse through the multiple pages of the document one page at a time. In the preferred embodiment, document server system 10 may read, garble and send one page of the requested document at a time for display by document viewer program 60. In another embodiment, more than one page of a multi-page document may be read, garbled, and sent for display at a time.
In the preferred embodiment, the document server system 10 may perform dynamic garblmg. In dynamic garblmg, the document server system 10 garbles a portion of an electronic document m response to a user requestmg to view the portion of the electronic document durmg an evaluation of the document In another embodiment, the document server 10 mamtams a garbled and non-garbled version of one or more documents stored on a memory medium coupled to the document server system 10 In this embodiment, the document server system 10 may perform a garblmg operation on the electronic document and store the electronic document on the memory medium coupled to the document server system 10 prior to the user requestmg to evaluate the electronic document The document server system 10 then may provide a previously garbled portion of the document to the user in response to the user requestmg to view the portion of the electronic document durmg the evaluation of the document
In some embodiments, one or more electronic documents may be provided for evaluation by a user by electronic methods other than a network such as the Internet For example, a carrier medium such as a CD-ROM mcludmg one or more electronic documents may be provided to the user by a vendor The carrier medium may mclude a program, similar to the document server and browser programs as described herein, executable by the computer system used by the user, with a user interface for searching and otherwise browsmg the electronic documents on the carrier medium The earner medium may also mclude a Garblmg Program, similar to the Garblmg Program described herem, executable by the computer system used by the user to garble portions or all of an electronic document selected for evaluation by the user Alternatively, the programs required to browse, garble, and view the electronic documents may reside on a separate memory medium, such as a hard disk m a computer system coupled to a CD-ROM drive used by the user For mstance, the user may download one or more programs for searchmg, selecting, garblmg and viewmg electronic documents from a Web site to a local memory medium, and may receive the carrier medium mcludmg one or more electronic documents for evaluation separately If the user purchases an electronic document, an electronic key such as a password may be provided to the user by the vendor supplying the carrier medium to "unlock" the document for full viewing without garbling Alternatively, the vendor may send the user an ungarbled, printed version or an ungarbled, electronic version of the document In other embodiments, the user may be provided electronic documents previously garbled by a Garblmg Program as described herein, and the user may view the documents with a viewer program provided with the documents or with one or more other programs such as word processors If the user purchases an electronic document, the vendor may provide ungarbled versions of the document to the user
In some embodiments, a document server program and Garblmg Program may be separate programs or executable files In other embodiments, the programs may be mcluded m one program or executable file In yet other embodiments, one or more of the programs may be software modules usable by other programs, for mstance through an Application Programming Interface (API) For example, the Garblmg Program may be implemented as a software module callable by a document server program or by other programs that may want to garble content as described herein In the embodiments described above where electronic documents are delivered to the user on a carrier medium such as a CD-ROM, a document server program, Garblmg Program, and document browser program may be mtegrated into one program or executable file, or may be stored m one or more separately executable files Figure 3 Requestmg and viewmg a garbled electronic document preview
Figure 3 is a high-level flow diagram of a process of requestmg and viewmg or evaluating an electronic document accordmg to one embodiment of the mvention In step 80, a user of a client system 14 may request to view a portion or all of an electronic document The request to view a portion or all of the electronic document may be received by a document server 10 m electronic communications with the client system 14 In one embodiment, the document server 10 may include a Web server, and the user may access a Web site on the document server 10 usmg a Web browser on the client system 14 The electronic document may be chosen for viewmg by the user from a list of one or more electronic documents displayed to the user on a Web page of the Web site The user may then select the electronic document, e g , a portion of the electronic document, for viewmg For example, the user may select an electronic book for viewmg A table of contents of the book may be displayed to the user, and the user may then select a chapter of the book for viewing
The electronic document selectable for viewmg by the user may be stored m a Web page document A Web page document may mclude the markup language and content required to display Web pages on a Web browser For example, if a document is segmented mto chapters for viewmg, each chapter may be stored m one Web page document The Web page document may be used by the Web server to present one Web page on the Web browser on the client system An HTML Web page document may be stored m a file with an HTML file extension Other markup languages may use other formats and nomenclatures for stormg Web page documents
In step 82, the document server 10 may perform a garblmg operation on the portion of the document selected for viewing by the user Portions of the content of the selected portion of the document may be garbled, and portions of the content may be left ungarbled for the user to view Text and other content to be garbled may be scrambled, masked, removed, or otherwise garbled Garblmg is described m detail below
In step 84, the garbled portion of the electronic document may be sent to the client system for viewmg by the user In one embodiment, the document server mcludes a Web server coupled to the Internet 12, and the client system 14 is also coupled to the Internet 12 The client system 14 may mclude a Web browser for receivmg and displaying the garbled portion of the electronic document from the document server
In step 86, the garbled portion of the electronic document may be displayed on the client system 14 for viewmg by the user In one embodiment, the client system Web browser may display the portion of the electronic document in a Web page on the client system display screen
In one embodiment, the displayed garbled portion of the electronic document may retam the general format and/or characteristics of the portion of the document without garblmg In other words, the scramblmg, maskmg, and removal of contents m a section of the electronic document may be performed so that the scrambled, masked, and removed content does not alter the layout of the document section In one embodiment, one symbol oi character is replaced with only one different symbol or character, and thus word sizes and paragraph sizes remain the substantially the same Also, one or more of the font characteristics of scrambled text may be retained For example, uppercase letters may be replaced with randomly selected uppercase letters, and lowercase letters with randomly selected lowercase letters Lowercase letters with ascenders and descenders may be replaced with randomly selected lowercase letters with similar ascenders and descenders, where possible For example, the letters [b, d, f, h, k, 1] have ascenders, and may be replaceable with each other, and the letters [g, j, p, q, y] have descenders and may be replaceable with each other In the above mstances, the character replacement may be described as pseudo random, instead of purely random Text m italics or bold may be replaced with random text also in italics or bold Underlmed text may be replaced with underlmed text In one embodiment, spaces and punctuation marks may be left unscrambled Masked images may be masked with shaded rectangles of the same size as the images Removed content may be replaced with "white space" or background of the same dimension as the removed content to retam the origmal format of the document The retention of the origmal layout m the garbled portion of a displayed electronic document operates to provide the user with the approximate "look and feel" of the document, which may be useful to the user in selecting the document for purchase
Figure 4 Previewing and purchasmg one or more documents Figure 4 is a flow diagram illustrating the process of a user previewing and purchasmg one or more documents according to one embodiment of the invention In step 200, the user may access a document server Web site In one embodiment, the document server 10 may present an interface to the user for selecting one or more of the electronic documents on the document server for preview In one embodiment, the user may use a Web browser on a client system 14 connected to the document server 10 via the Internet to access the document server Web site, and the document server Web site may present one or more Web pages to the user on the Web browser for displaying mformation and accepting user input as described herem
In one embodiment, the document server may present an mterface to the user for searchmg the electronic documents for one or more keywords The user may enter one or more keywords to be searched for m the interface presented by the document server 10 in step 202 In one embodiment, the document server may allow the user to enter one or more logical and/or grouping operators for locatmg more than one word Examples of logical operators mclude, but are not limited to an AND operator entered between two words that instructs the search process to locate documents containing both words, and an OR operator entered between two words that instructs the search process to locate documents containing either word An example of a grouping operator are quotation marks placed around a group of words, or phrase, that instruct the search process to locate documents containing the entire group of words or phrase Any of various electronic document content search systems may be used In step 204, the documents on the document server 10 may be searched for occurrences of the entered keywords In step 206, the document server 10 may display to the user a list of one or more documents containing at least one occurrence of at least one of the one or more keywords m response to locating the keywords in the one or more documents An occuπence of a keyword may also be called a "search hit " If no document contammg a search hit is located, a message may be displayed to the user statmg that no occuπence of the one or more keywords was found in the documents, and no list of documents may be displayed to the user
In step 208, the user may select one of the one or more displayed documents for viewmg The user may select a document from the list of documents contammg search hits, if the user previously entered one or more keywords for searching, and one or more documents was located contammg search hits for the keywords Alternatively, the document may be selected from among all of the documents available on the document server The display of a document for selection by a user may mclude a description of the contents of the document to aid the user in selecting a document from the list The display of a document for selection from a list of documents mcludmg search hits may include the number of hits and/or one or more examples of occurrences of keywords in the document to aid the user in selectmg a document from the list In step 210, the document server 10 may provide at least a portion of the document to the user for preview The document server 10 may provide a first portion of the document, such as a first Web page of the document In one embodiment, the first Web page may mclude an introduction and table of contents of the document The document server 10 may provide an mterface to the user for navigatmg among Web pages mcludmg sections of the document For example, the document server 10 may provide "Previous" and "Next" buttons that allow the user to view previous and next sections of the document Another example of an mterface that may be provided to the user for navigatmg among sections of the document is a list of sections mcludmg search hits that may be displayed, allowing the user to display one or more sections in the document contammg search hits
The document server 10 may garble at least a portion of the document prior to the document bemg provided to the user for preview Garblmg may include scrambling at least a portion of the text content of the portion of the document, and/or masking or removmg other parts of the document content, such as graphics, images and hyperlinks Portions of the displayed portion of the document may be left ungarbled to provide the user with a preview of the document, without revealmg the entire contents of the document For example, search hits may be left ungarbled In one embodiment, part or all of the sentence contammg a search hit may be left ungarbled to provide the user with the context of the search hit Portions of the document with certain attnbutes may be left ungarbled For example, the table of contents, bibliography, and sections mcludmg the descriptive words "Introduction" and "Overview" may be left ungarbled Sections with other attnbutes, and sections mcludmg other descriptive words, may be left ungarbled Garblmg portions of the document, while leavmg ungarbled portions of the document with certain attributes, keyword search hits, or descnptive words, may provide the user with a preview of the document that may assist the user m decidmg if the document being previewed is to be purchased in steps 212 and 214 For reference books, the selective garblmg of the document may provide the user with sufficient ungarbled content to evaluate the content contamed therein, while not providmg the user with answers to the specific questions the user may have, thereby not obviatmg the need for the user to purchase the book and thus view the entire contents of the book ungarbled In step 212, the user may evaluate the document Evaluatmg the document may include the user navigatmg among and viewmg several sections of the document For example, the user may select and view all sections contammg search hits The user may read ungarbled portions of the document durmg the evaluation As mentioned above, garbled portions of the document may be visually formatted as if the portions were left ungarbled, thus providmg the user with the visual format or layout of the document without revealmg the contents of the document
In step 214, the user may decide whether to purchase the electronic document If the user decides to purchase the document, the document may be purchased m step 216 Purchasmg the document may be accomplished with any of a vaπety of electronic purchasmg options such as by credit card, debit card, etc In one embodiment, the document may be added to an "electronic shoppmg cart" for later purchase A purchased document may be delivered to the user as an electronic document, or may be delivered to the user as a prmted document In one embodiment, a purchased electronic document may be mamtamed for the user on the document server 10, and the user may view the purchased ungarbled electronic document through a Web browser usmg a logon and password, or by other authentication methods After the user purchase the document m step 216, or if the user decides not to purchase the document at this time in step 214, the process may proceed to Step 218 In step 218, the user may decide whether to review or evaluate another electronic document If the user decides to evaluate another document, the process may return to step 208 to allow the user to select another document from the one or more displayed documents If the user decides not to evaluate another document at this time, the process may proceed to step 220 In step 220, the user may decide to perform another keyword search If the user decided to perform another keyword search, the process may return to step 202 to allow the user to enter one or more keywords for searchmg the documents If the user decides not to perform another keyword search at this time, the process illustrated m Figure 4 may end If one or more documents were placed in an "electronic shoppmg cart" for later purchase, the documents may be purchased
Figure 5 Requesting a preview of a page of a document
Figure 5 illustrates the process of a user requesting a preview of a page of a document according to one embodiment of the invention A "page" may mclude a portion of the document viewable m one Web page on a Web browser, and, for example, may include one or more numbered pages of an electronic book, magazme, etc The request may be made by the user from a Web browser to the document server 10 The document may have been previously selected by the user for preview in a process similar to that described m Figure 4
The document server 10 may display a list of pages for selection m an mterface presented to the user on the Web browser In step 300 of Figure 5, the user may select a page to be viewed from among one or more pages of the document displayed by the document server 10 Alternatively, the document browser may provide an mterface on the Web browser for the user to enter a page number, or other document section number such as a chapter number, to allow the user to select a page or other section of the document for preview Step 300 is similar to step 208 of Figure 4
The following steps 302-316 roughly coπespond to step 210 of Figure 4 In step 302, the document server 10 may retrieve the page of the document requested by the user m step 300 In one embodiment, the electronic document may be stored on a non-volatile memory such as a magnetic medium or disk drive coupled to the document server 10 In one embodiment, at least a portion of the document may have been previously loaded (or cached) mto system memory of document server 10 to provide faster access to the document In step 304, the document server 10 may examine preferences and access privileges of the user The user's preferences may be used m determmmg one or more display preferences for viewmg the page of the document, such as whether to highlight keyword search hits, and what color is to be used for highlighting the search hits The user's access pnvileges may be used m determmmg what the user may view m the document For example, if the user has already purchased the document, the user's access privileges may allow the user to view the entire document without garblmg A user may pay a subscπption fee to enable the user to view electronic documents with reduced garblmg of contents, and the subscription status of the user may be stored m the user's access privileges
In step 306, the document server 10 may determine if the user has previously entered one or more keywords to search for m the document If the user has entered keywords to search for, the document server 10 may check if the user has requested search hit highlighting m step 308 If the user has requested search hit highlighting, the document server 10 may insert highlight markup tags around search hits located on the requested page m step 310, and then proceed to step 312. If the user has not entered keywords to search for, or if the user has not requested search hit highlighting, step 310 may be bypassed and the processing may proceed to step 312
In step 312, the document server 10 may determine if the user has full access to the requested page If the user does have full access to the requested page, the ungarbled requested page may be returned to the client system 14 in step 316, and may be displayed by the Web browser on the client system 14 for the user to view If the user does not have full access to the requested page, the Garbled Preview program may be run on the requested page in step 314 prior to returning the requested page to the client system for the user to view. Thus, the Garbled Preview program is preferably run dynamically in real-time as document pages are requested by the user. Step 314 is illustrated in detail m Figure 6.
Figure 6: Step 314 of Figure 5, Garblmg content m a document
Figure 6 expands on step 314 of Figure 5, and illustrates the high-level processmg of a user-requested page by a Garbled Preview program accordmg to one embodiment of the invention. The steps m Figure 6 may occur concuπently or in different orders In step 320, the Garbled Preview program may process keyword search hits The search hits are instances of one or more user-specified keywords that were searched for in a portion of the document, in the entire document, or in a plurality of documents on the document server 10 Processing a search hit may mclude inserting one or more markup tag pairs around the search hit. An mserted markup tag pair may mdicate that the content enclosed m the markup tag pair is not to be garbled. In one embodiment, the markup tags may be mserted around the search hit word, or alternatively may be inserted around a portion of or the entire sentence where the search hit word is located. Step 320 is further illustrated in Figure 7.
In step 322 of Figure 6, the Garbled Preview program may process one or more descriptive words Processmg the one or more descriptive words may mclude searching for the one or more descnptive words m the portion of the document selected by the user to be viewed. In one embodiment, the descriptive words to be searched for may be read from a descriptive word table on the document server 10. Processing the one ore more descnptive words may include inserting one or more markup tag pairs m the section of the document wherein a descπptive word is located by the search. An mserted markup tag pair may indicate that the content enclosed m the markup tag pair is not to be garbled. In one embodiment, the markup tag pair may be inserted around a portion or all of the section of the document contammg the located descriptive word In another embodiment, the markup tag pair may be inserted around a portion or all of the section of the document following the section contammg the located descriptive word. In yet another embodiment, the markup tag pair may be mserted around the entire Web page to be displayed, thus not garblmg the entire Web page for display. Step 322 is further illustrated m Figure 8 In step 324 of Figure 6, the portion of the document to be displayed to the user on the Web page may be searched for markup tags, the markup tags enclosmg content may be exammed and processed, and the contents of the markup tags may be garbled or left ungarbled and therefore intelligible to the user in response to the processmg of the markup tags. In one embodiment, processmg the markup tags may include searchmg for occurrences of the markup tags from the portion of the document m a tag and attπbute table. In one embodiment, there may be at least one table for markup tags and at least one table for markup tag attributes. In another embodiment, the tag and attπbute table may be combmed m one table. In yet another embodiment, the markup tag, attπbute, and descriptive word table may be combmed mto one table When a markup tag is located m the tag and attribute table, an action mdicator for the located markup tag in the table may be examined. In one embodiment, the action mdicator may indicate that the contents are to be masked, removed, or left ungarbled If a markup tag is not located m the table, the contents of the markup tag may be examined to see if the markup tag includes one or more attributes If the markup tag includes one or more attributes, the tag and attπbute table may be searched for occurrences of the attributes. If one of the one or more attributes is located m the table, an action mdicator for the located attribute in the table may be exammed. In one embodiment, the action mdicator may mdicate that the contents are to be masked, removed, or left ungarbled
Figure 7- Step 320 of Figure 6; Processmg keyword search hits m a document Figure 7 is a flow diagram expanding on step 320 of Figure 6, and illustrates the processing of keyword search hits in a document by a Garbled Preview program accordmg to one embodiment of the mvention The user may have previously requested a portion (page) of the document for viewmg as described m Figure 5 In step 330 of Figure 7, the Garbled Preview program may check to see if the requested page contains one or more search hits In one embodiment, search hits may have been marked in the document by inserting a <hιt> tag pair around each search hit In another embodiment, the Garbled Preview program may search the requested page for occurrences of keywords previously entered by the user. If the requested page contains no search hits, the rest of the flow diagram of Figure 7 is skipped. If the requested page contains one or more search hits, processmg may proceed to step 332
In step 332, the Garbled Preview program may get the next search hit to be processed on the requested page. In one embodiment, the Garbled Preview program may proceed from the first search hit to the last search hit, from top to bottom on the requested page. In one embodiment, the Garbled Preview program may examine each paragraph on the requested page for search hits, and may perform different actions on the first occuπence of a keyword than on a subsequent occuπence of the keyword m a paragraph. In step 334, the Garbled Preview program may check to see if the search hit is the first search hit withm the cuπent paragraph If the first paragraph on the requested page continues from the previous page, the Garbled Preview program may check to see if the portion of the paragraph on the preceding page contains a first search hit. If this is the first search hit withm the current paragraph, the Garbled Preview program may insert a tag pair around the entire sentence contammg the search hit in step 336, wherein the mserted tag pan mdicate that the sentence is not to be garbled. If this is not the first search hit withm the current paragraph, the Garbled Preview program may insert the tag pair around a portion of the sentence contammg the search hit in step 338, wherein the mserted tag pair indicate that the portion of the sentence is not no be garbled. In one embodiment, the tag parr may be mserted before the word precedmg and the after the word followmg the search hit Other embodiments may mclude other numbers of words preceding and followmg the search hit in the tag pair.
If the search hit is the first word m a sentence, the first tag in the tag pair may be mserted just prior to the search hit. If the search hit is the last word m the sentence, the second tag m the tag pair may be mserted just after the search hit. Alternatively, the tag pair may be extended mto the sentence precedmg and/or followmg the sentence contammg the search hit when the search hit's location m the sentence requires the extension of the ungarbled portion beyond the boundaries of the sentence. In step 340, if there are more search hits on the requested page, processing may return to step 332, where the next search hit may be processed If the requested page contains no more search hits, then the processmg of keyword search hits may end
Figure 8 Step 322 of Figure 6, Processing descriptive words in a document
Figure 8 is a flow diagram expandmg on step 322 of Figure 6, and illustrates the processmg of descriptive words m a document by a Garbled Preview program accordmg to one embodiment of the invention In one embodiment, the document server 10 may mclude a descriptive word table wherem one or more descriptive words may be stored A descnptive word is a word that, when occurring in the document, causes at least a portion of the document contammg the descriptive word to not be garbled For example, the descriptive word table may include words such as "Introduction," "Copyright," and "Overview " Descriptive words differ from keywords m that descriptive words are predefined m the descriptive word table or elsewhere in the document server 10, while keywords are entered by the user durmg a document preview session on the document server 10 An example of one embodiment of a descriptive word table is illustrated m Figure 13 The user may have previously requested a page of the document for viewing as described m Figure 5 In step 350 of Figure 8, the Garbled Preview program may access and examine the descriptive word table If the table contams one or more descπptive words, the Garbled Preview program may get the first descπptive word from the table in step 352 The Garbled Preview program may then search the requested page for occurrences of the descriptive word in step 354 In step 356, if the descπptive word is found m the requested page, processmg proceeds to step 358, if the descriptive word is not found in the requested page, processmg proceeds to step 360 In step 358, a tag pair may be inserted around at least a portion of the requested page to mdicate that the portion of the requested page enclosed in the tag pair is not to be garbled In one embodiment, the tag pair may be mserted around the entire section contammg the located descriptive word In another embodiment, the tag pair may be mserted around the entire section immediately followmg the section contammg the descriptive word In yet another embodiment, the tag pair may be mserted around the section including the descriptive word and the section immediately followmg For example, a header section may mclude the word "Introduction " If "Introduction" is in the descnptive word table, it may be desirable to not garble the header section, plus the section followmg (the body of the introduction) Thus, the tag pair may be inserted around both sections In one embodiment, the descriptive word table may mclude an action mdicator with each descriptive word The action indicators may be used to mdicate the insertion pomts for the tag pairs m the document for each descπptive word For example, one action indicator may specify that the tag pair is to be mserted around a section containing the descriptive word, a second action mdicator may specify that the tag pair is to be inserted around the section followmg the section containing the tag pair, and a third action mdicator may specify that the tag parr is to be inserted around both sections
In step 360, if there are more descriptive words m the descriptive word table, processmg may return to step 352 to get the next descriptive word If there are no more descriptive words, the processmg of descπptive words may end Figure 9 Step 324 of Figure 6, Processmg of markup tags in a document
Figure 9 is a flow diagram expandmg on step 324 of Figure 6, and illustrates the processmg of markup tags in a document by a Garbled Preview program accordmg to one embodiment of the mvention In one embodiment, the document server 10 may mclude a tag and attribute table wherein one or more markup tags and attributes may be stored An example of one embodiment of a tag and attribute table is illustrated m Figure 12 As mentioned previously, markup tags may come m pairs, with a first markup tag and a second markup tag enclosmg a portion of the document to which the tag action is to be applied Tag pairs may be nested, with a first tag pair enclosmg a second tag pair Some markup tags may not come m pairs For example, a smgle markup tag may be inserted at the beginnmg of a section and may specify an action be taken on the entire section The Garbled Preview program may parse the markup tags from the first markup tag appearmg m the requested page to the last markup tag appearmg in the requested page Nested tag pairs may be parsed from the outermost tag pair to the innermost tag pair In one embodiment, if a tag pair is processed that indicates the tag pair's contents are not to be garbled, tag pairs nested in the tag pair are not processed, the entire contents of the outer tag pair, including contents enclosed in nested tag pairs, may be left ungarbled In another embodiment, if a tag pair is processed that indicates the tag pair s contents are not to be garbled, tag pairs nested m the tag pair are processed, contents enclosed in a nested tag pair may or may not be garbled, depending upon the nested tag pair
The user may have previously requested a page of the document for viewing as described m Figure 5 Keyword search hits and descriptive words m the requested page may have already been processed as described m Figures 7 and 8 In step 370 of Figure 9, the Garbled Preview program begms processing markup tags and attnbutes in the requested page The Garbled Preview program may get the first tag pair m the requested page The Garbled Preview program may search the tag and attribute table for an occurrence of the markup tag in step 372 In step 374, if an occuπence of the markup tag is found m the tag and attribute table, the contents of the tag pair may be processed usmg an action indicator that may be stored with the occuπence of the markup tag m the tag and attribute table m step 386 Step 386 is further illustrated in Figure 10 In step 374, if no occuπence of the markup tag is found in the tag and attribute table, processing may proceed to step 376 In step 376, the Garbled Preview program may examine the markup tag to see if the markup tag contams one or more attributes If the markup tag does not contam attributes, processmg may proceed to step 384 for the processing of the tag pair's contents Step 384 is further illustrated m Figure 11 Refemng again to Figure 9, if the markup tag does contain one or more attributes, the Garbled Preview program begms processmg the one or more attributes contained m the markup tag in step 378 The Garbled Preview program may examine the tag and attribute table for an occuπence of a first attπbute m step 378 In step 380, if an occurrence of the attribute is found m the tag and attribute table, the contents of the markup tag contammg the attπbute may be processed usmg an action mdicator that may be stored with the occuπence of the attribute in the tag and attribute table m step 386 Step 386 is further illustrated m Figure 10 In step 380, if no occuπence of the attribute is found m the tag and attribute table, processmg may proceed to step 382 In step 382, if the markup tag contains more attnbutes, processmg may return to step 378 to select and process the next attπbute If the markup tag does not contam any more attributes, processmg proceeds to step 384 for the processmg of the tag pair's contents Step 384 is further illustrated m Figure 11 After the tag pair and its contents are processed by either step 384 or 386, the Garbled Preview program may examine the requested page to see if there are more tag pairs to be processed If there are more tag pairs to be processed, the process may return to step 370 to get and process the next tag pair. If there are no more tag pairs to be processed, the Garblmg Program may end, and return the requested page to the user as illustrated in steps 314 and 316 of Figure 5.
Figure 10: Step 386 of Figure 9; Processmg of a markup tag located in a tag and attπbute table
Figure 10 is a flow diagram expandmg on step 386 of Figure 9, and illustrates the processmg of a markup tag located in a tag and attribute table accordmg to one embodiment of the invention. In one embodiment, the document server 10 may mclude a tag and attπbute table wherein one or more markup tags and attributes may be stored An example of one embodiment of a tag and attribute table is illustrated m Figure 12.
The user may have previously requested a page of the document for viewing as described m Figure 5 Keyword search hits and descriptive words in the requested page may have already been processed as described m Figures 7 and 8. The Garbled Preview program may have aπived at step 386 of Figure 9 by locatmg an occuπence of either the markup tag or an attribute contained in the markup tag in the tag and attribute table. An action indicator may be stored with the occuπence of the markup tag or attπbute in the tag and attribute table The garbled preview program may examine the action mdicator for the markup tag or attπbute in step 400 of Figure 10 The action mdicator may indicate to the Garbled Preview program one of a plurality of actions to be performed on the contents of the tag pair In this embodiment, three actions to be performed on the contents are illustrated A first action mdicator 402 may instruct the Garbled Preview program to mask the contents of the tag pair
The Garbled Preview program may replace the contents of a tag pair for which a mask contents action indicator is specified with a shaded block m step 404. For example, an HTML tag pair <IMG>...</IMG> may enclose an image to be displayed. If the markup tag <IMG> appears in the tag and attribute table, and the action indicator associated with the markup tag instructs the Garbled Preview program to mask the tag pair's contents, the Garbled Preview program may replace the image with a shaded rectangle on the requested page for viewing by the user A second action indicator 406 may instruct the Garbled Preview program to remove the tag pair's contents. The Garbled Preview program may remove the contents of a tag pair for which a remove contents action indicator is specified. For example, an HTML tag pair <lmk>...</lmk> may enclose a hyperlink If the markup tag <lιnk> appears in the tag and attribute able, and the action mdicator associated with the markup tag instructs the Garbled Preview program to remove the tag pair's contents, the Garbled Preview program may remove the hyperlink from the requested page for viewing by the user.
A third action indicator 410 may instruct the Garbled Preview program that the tag pair's contents are not to be garbled. The Garbled Preview program may not garble the contents of a tag pair for which a do not garble contents action indicator is specified. For example, an HTML tag pair <hιt>...</hιt> may enclose a sentence contammg a search hit m the requested page If the markup tag <hιt> appears m the tag and attπbute table, and the action mdicator associated with the markup tag instructs the Garbled Preview program to not garble the tag pair's contents, the Garbled Preview program may leave the tag pair's contents ungarbled on the requested page for viewmg by the user. In another example, the tag pair <FONT sιze=24>...< FONT> may instruct a Web browser to display the tag pair's text contents m font size 24. If the FONT tag attπbute (sιze=24) appears m the tag and attribute table, and the action mdicator associated with the attribute instructs the Garbled Preview program to not garble the tag pair's contents, the Garbled Preview program may leave the FONT tag pair's contents ungarbled on the requested page for viewing by the user
In other embodiments, other action mdicators may instruct the Garbled Preview program to perform one or more other actions on the contents of tag pairs associated with the action mdicators In one embodiment, an action mdicator may be used to instruct the Garbled Preview program to scramble text content enclosed in the tag pair
Figure 11 Step 384 of Figure 9, Processmg a markup tag that is not located in a tag and attribute table
Figure 11 is a flow diagram expanding on step 384 of Figure 9, and illustrates the processmg of a markup tag that is not located in a tag and attribute table according to one embodiment of the invention In one embodiment, the document server 10 may include a tag and attribute table wherein one or more markup tags and attributes may be stored An example of one embodiment of a tag and attribute table is illustrated m Figure 12 The user may have previously requested a page of the document for viewmg as described m Figure 5 Keyword search hits and descriptive words m the requested page may have already been processed as described m Figures 7 and 8 The Garbled Preview program may have amved at step 384 of Figure 9 by not locatmg an occuπence of either the markup tag or an attribute of the markup tag m the tag and attribute table In step 420, the Garbled Preview program may examine the tag pair's contents If the tag pair's contents are not text, the Garbled Preview program may perform no garblmg process on the tag pair's contents m step 424
If the tag pair's contents are text, the Garbled Preview program may scrambled the text in step 422 In one embodiment, scramblmg the text may include randomly selectmg a replacement character for each character in the text In one embodiment, random characters may be selected to match the general appearance of the characters For mstance, capital letters may be replaced with capital letters, numbers may be replaced with numbers, lowercase letters with ascenders may be replaced with lowercase letters with ascenders, text m Italics may be replaced with text m Italics, etc Other embodiments may include other methods of scramblmg text content In general, any text scrambling method that makes the text content unintelligible to the viewer may be used Preferably, a random method that is not decipherable is used
Figure 12 A tag and attribute table
Figure 12 is a block diagram illustrating one embodiment of a tag and attπbute table In one embodiment, the markup and attribute table may be stored on the document server 10 The markup and attribute table may be used by a Garbled Preview program as illustrated in Figures 6 through 11 In one embodiment, the table may mclude two columns, and one row for each occuπence of a markup tag or attribute in the table Column 140 may mclude the markup tags and attnbutes for which actions are to be taken Column 142 may mclude the action indicatois associated with the markup tags and attnbutes of column 140 In this example, the table mcludes nme rows Some of the rows contam markup tags, and some contam tag attributes In one embodiment, markup tag names may be enclosed m angle brackets o to differentiate the markup tags from attributes Other methods may be used to differentiate markup tags and attributes
The first row contams the markup tag <IMG> and the action mdicator "Mask " The "Mask" mdicator may specify that the contents of an <IMG> tag pair are to be replaced with a shaded block The second row contains the markup tag <hιt> and the action indicator "None " The "None" mdicator may specify that the contents of a <hιt> tag pair are not to be garbled The third row illustrates that custom markup tags may be created and entered m the tag and attributes table In this example, <custom tag> is associated with the action mdicator "Remove " The "Remove" indicator may specify that the contents of a <custom tag> tag pair are to be removed from the document section for display
The sixth row contams the markup tag attribute Bold and the action mdicator "None " The "None" mdicator may specify that the contents of a tag pair with a Bold attribute are not to be garbled The ninth row contains the tag attribute and value Sιze=24 and the action indicator "None " This row illustrates that some attnbutes may be evaluated with an attribute value, while other attributes may be evaluated without attribute values For example, if the attribute Size appears in the tag and attribute table without an attribute value, then any markup tag with the attribute Size, regardless of the attribute value, may be processes with the action mdicator associated with the Size attribute
Figure 13 A descriptive word table Figure 13 is a block diagram illustrating one embodiment of a descriptive word table In one embodiment the descriptive word table may be stored on the document server 10 The descriptive word table may be used by a Garbled Preview program as illustrated in Figures 6 through 11 In one embodiment, the descriptive word table may mclude one column 150, wherein each row contams one descriptive word A descriptive word is a word that, when occuπmg in the document, causes at least a portion of the document contammg the descriptive word to not be garbled For example, the descnptive word table illustrated in Figure 13 includes the descriptive words
"Introduction," "Copyπght," and "Overview " The use of the descriptive word table is described m Figure 8
Figure 14A An example document with markup tags for display mg content on a Web browser
Figure 14A illustrates an example of a document marked up for displaying text and other content m a computer program capable of reading the markup tags, text and other content, formattmg the text and other content usmg the markup tags, and displaying the formatted text and other content The marked up document is an example of a document that may be requested for preview by a user of a document browser system The document may mclude text and other content enclosed within various markup tag pairs Some markup tags may be defined as garble tags As used herein, a garble tag is a markup tag that, when present in a document, signifies that the contents of the garble tag pair are to be garbled, and thus unmtelligible, when displayed to a user who does not have viewmg access to the portion of the document contammg the garble tag pair An ungarble tag is a markup tag that, when present in a document, signifies that the contents of the ungarble tag are not to be garbled, and thus intelligible, when displayed to the user, regardless of the user's viewmg access status for the portion of the document containing the ungarble tag pair Garblmg may mclude scrambling content, maskmg content, removmg content, or otherwise makmg the content unmtelligible when displayed to the user Line 100 in Figure 14A mcludes the HTML tag <hl> Line 102 mcludes the HTML tag <h2> Lme 104 mcludes the HTML tags <p> and <em> Lme 106 mcludes the image tag <ιmg> to display an image Lme 108 mcludes the href tag and attribute <a href> to display a hyperlink In this example, the markup tags <h2> and <p> are garble tags to scramble text withm the tags, <ιmg> is a garble tag to mask images withm the tag, and <a href> is a garble tag to remove the tag's contents from the displayed page
In one embodiment, markup tags that do not appear in a tag and attribute table may be garble tags, and markup tags that do appear m the tag and attnbute table may be ungarble tags In another embodiment, markup tags that do appear m a tag and attπbute table may be garble tags, and markup tags that do not appear in the tag and attribute table may be ungarble tags In yet another embodiment, markup tags that do not appear m a tag and attribute table may be garble tags, and markup tags that do appear m the tag and attribute table may be garble or ungarble tags determined by action mdicators associated with the markup tags in the table In still yet another embodiment, the contents of markup tags that do not appear in a tag and attribute table may determine if the contents are to be garbled or not garbled, for mstance, all text content may be garbled, and all image, table and other content may not be garbled
Figure 14B Displayed content from the document of Figure 14A without garblmg
Figure 14B illustrates what the displayed text and other content from the tagged document of Figure 14A may look like without garblmg of content In Figure 14B, lme 110 displays the first header described by lme 100 of the tagged document, line 112 displays the second header described by lme 102 of the tagged document, and lme 114 displays the line of text described by lme 104 of the tagged document Image 116 is described by line 106 of the tagged document, and hyperlink 118 is described by line 108 of the tagged document
Figure 14C The content from the document of Figure 14A with garblmg
Figure 14C illustrates what the displayed text and other content from the tagged document of Figure 14A may look like with garblmg of content accordmg to one embodiment of the invention Figure 14C illustrates how one embodiment of a Garbled Preview program may scramble text withm garble tags, mask content withm garble tags, and remove content withm garble tags before displaying the requested page In the tagged document of Figure 14A, the markup tags <h2> and <p> are garble tags to scramble text withm the tags, <ιmg src> is a garble tag to mask images withm the tag, and <a href is a garble tag to remove the tag's contents from the displayed page When the Garbled Preview program parses tagged text and other content, the program may garble text, mask content, and remove content withm garble tags, and preserves text and other content withm ungarble tags In Figure 14C, lme 120 displays the first header described by line 100 of the tagged document without garblmg Line 122 displays the second header described by line 102 of the tagged document, with the text scrambled Lme 124 displays a lme of text described by line 104 of the tagged document, with the text scrambled except for the keyword "scripting," which was tagged with the ungarble <em> tag in lme 104 of the tagged document
In one embodiment, text may be scrambled by generatmg random, nonsense words from the origmal text content In one embodiment, a new random character may be generated for each character, and used to replace the character in the scrambled text In one embodiment, a new random character may be selected for each occuπence of a particular character Thus, when a word appears more than once m a document, each occuπence may be replaced with a different random sequence of letters In one embodiment, punctuation marks and spaces may be left unscrambled In some embodiments, the random selection of characters and nonsense words may be such that the characters and words are not decipherable In some embodiments, a character or sequence of characters may be used to replace the characters in the origmal text For example, the letter "X", the character "*", or the sequence of letters "XO" may be substituted for all non-punctuation and non-space characters to be scrambled
Image 126, described by lme 106 of the tagged document, has been masked, or replaced with a gray box In other embodiments, content may be masked with other methods, for example, with other colors of boxes In one embodiment, the Garbled Preview program may be customizable to mask content m a variety of ways, for example, with boxes of other colors, patterns, pictures, etc The hyperlink described by lme 108 of the tagged document, has been removed (128) The Garbled Preview program removes the tag's contents, thereby preventing the user from accessmg the hyperlink Any tagged text may be defined for scramblmg Any tagged content may be defined for masking or removal In one embodiment, any tagged text may be marked for scramblmg, masking or removal

Claims

What is claimed is:
1 A method for providing an electronic document for evaluation, the method comprismg performing a garbling operation on at least a portion of the electronic document, providing the at least a portion of the electronic document to a client system after said performing the garbling operation; and wherein the at least a portion of the electronic document is operable to be displayed on a display device of the client system
2 The method of claim 1, further comprismg receiving a request for the at least a portion of the electronic document from the client system prior to said performing the garbling operation on the at least a portion of the electronic document
3 The method of any of the preceding claims, wherein the at least a portion of the electronic document mcludes a garbled portion, and wherein the garbled portion of the at least a portion of the electronic document is unintelligible to a user of the client system
4 The method of any of the preceding claims, wherein the at least a portion of the electronic document includes a garbled portion and a non-garbled portion, wherein the garbled portion of the at least a portion of the electronic document is unintelligible to a user of the client system; and wherem the non-garbled portion is intelligible to the user of the client system
5 The method of any of the preceding claims, further comprising receiving user input from the client system to select a link m the electronic document, wherein the link references one or more new pages of the electronic document, performing a garbling operation on the one or more new pages of the electronic document; and providing the one or more new pages of the electronic document to the client system after said performing the garblmg operation on the one or more new pages of the electronic document, wherein the one or more new pages of the electronic document are operable to be displayed on the display device of the client system
6 The method of any of the precedmg claims, wherem the electronic document comprises one oi more markup tags, wherem each of the one or more markup tags is associated with one or more content items m the electronic document
7 The method of claim 6, wherem a markup tag mdicates whether the markup tag's one or more associated content items is to be garbled
8 The method of claim 6 or 7, further comprismg examining a first markup tag associated with one or more content items in the electronic document, and garblmg the one or more content items associated with the first markup tag m response to the first markup tag indicating the one or more content items are to be garbled, wherem the one or more content items associated with the first markup tag are not garbled m response to the first markup tag mdicatmg the one or more content items are not to be garbled
9 The method of any of the preceding claims 6 through 8, further comprismg searching a table comprismg one or more markup tags for a first markup tag associated with one or more content items in the electronic document, and garblmg the one or more content items associated with the first markup tag m response to the first markup tag not being found m the table, wherem the one or more content items associated with the first markup tag are not garbled in response to the first markup tag bemg found m the table
10 The method of claim 9, wherem each of the one or more markup tags in the table is associated with an action indicator, the method further comprismg garblmg the one or more content items associated with the first markup tag m response to the first markup tag bemg found in the table and an action indicator associated with the first markup tag mdicatmg that the one or more content items associated with the first markup tag are to be garbled, wherein the one or more content items associated with the first markup tag are not garbled in response to the first markup tag bemg found in the table and the action mdicator associated with the first markup tag indicating that the one or more content items associated with the first markup tag are not to be garbled
11 The method of claim 9 or 10, further comprismg garbling the one or more content items associated with the first markup tag m response to the first markup tag not bemg found in the table and the one or more content items being textual content, wherein the one or more content items associated with the first markup tag are not garbled in response to the first markup tag not bemg found m the table and the one or more content items not bemg textual content
12 The method of any of the preceding claims 6 through 11, wherein a markup tag comprises one or more attributes, the method further comprismg examining a first markup tag associated with one or more content items in the electronic document, and garblmg the one or more content items associated with the first markup tag in response to an attribute of the first markup tag indicating the one or more content items are to be garbled, wherem the one or more content items associated with the first markup tag are not garbled m response to the attribute of the first markup tag mdicatmg the one or more content items are not to be garbled
13 The method any of the precedmg claims 6 through 12, wherein a markup tag comprises one or more attributes, wherein a markup tag attribute indicates whether the markup tag's one or more associated content items is to be garbled
14 The method of claim 13, further compπsmg seaichmg a table compnsing one or more markup tag attributes for a first markup tag attribute of a first markup tag associated with one or more content items in the electronic document, and garblmg the one or more content items associated with the first markup tag m response to the first markup tag attribute not bemg found in the table, wherem the one or more content items associated with the first markup tag are not garbled m response to the first markup tag attribute being found in the table
15 The method of claim 14, wherein each of the one or more markup tag attributes m the table is associated with an action mdicator, the method further comprismg garblmg the one or more content items associated with the first markup tag in response to the first markup tag attribute being found m the table and an action indicator associated with the first markup tag attribute indicating that the one or more content items associated with the first markup tag are to be garbled, wherem the one or more content items associated with the first markup tag are not garbled in response to the first markup tag attribute bemg found in the table and the action mdicator associated with the first markup tag attribute indicating that the one or more content items associated with the first markup tag are not to be garbled
16 The method of claim 14 or 15, further comprismg garbling the one or more content items associated with the first markup tag in response to the first markup tag attribute not bemg found in the table and the one or more content items being textual content, wherem the one or more content items associated with the first markup tag are not garbled m response to the first markup tag attribute not bemg found m the table and the one or more content items not being textual content
17 The method of any of the precedmg claims 6 through 16, wherein the markup tags comprise at least one of Hypertext Markup Language (HTML) markup tags and Extensible Markup Language (XML) markup tags
18 The method of any of the precedmg claims, wherem said performing the garblmg operation mcludes scramblmg one or more textual content items to render the one or more textual content items unmtelligible to a user of the client system, wherein a textual content item comprises one or more characters, and wherem scramblmg the textual content item comprises replacmg each of the one or more characters with a different character
19 The method of claim 18, wherem said replacmg each of the one or more characters with a different character comprises randomly selecting a different character from a plurality of characters
20 The method of claim 18 or 19, wherein said replacing each of the one or more characters with a different character comprises replacmg an origmal character with a replacement character randomly selected from a set of replacement characters with one or more similar font characteristics to the origmal character
21 The method of claim 20, wherein the original character and the replacement character comprise one or more of ascenders and descenders
22 The method of claim 20 or 21, wherem the original character and the replacement character are at least one of uppercase, boldface, Italics, and underlmed
23 The method of any of the precedmg claims, wherein said performing the garblmg operation includes masking one or more content items to render the one or more content items unintelligible to a user of the client system, wherein maskmg a content item comprises replacmg the content item with a shaded block
24 The method of claim 23, wherem the shaded block is of substantially similar shape and size as the original content item
25 The method of any of the precedmg claims, wherem said performing the garbling operation includes removing one or more content items such that the one or more content items are not displayed on the display device of the client system
26 The method of any of the precedmg claims, wherem the garbling operation on the at least a portion of the electronic document is not performed m response to the at least a portion of the electromc document bemg available for full evaluation by a user of the client system
27 The method of any of the preceding claims, wherem the garbling operation on the at least a portion of the electronic document is not performed in response to the at least a portion of the electronic document mcludmg at least one occuπence of one or more descriptive words
28 The method of any of the preceding claims, further comprismg readmg a first descriptive word from a table comprismg one or more descriptive words, searchmg the at least a portion of the electronic document for an occurrence of the first descπptive word, and locating an occuπence of the first descriptive word m the at least a portion of the electronic document, wherem at least a portion of the at least a portion of the electronic document is not garbled m response to locatmg the occuπence of the first descπptive word m the at least a portion of the electronic document
29. The method of any of the precedmg claims 2 through 28, wherem said receivmg the request for at least a portion of the electronic document comprises: receivmg user input from the client system requesting a search operation to locate one or more keywords in the electronic document; and performing the search operation, wherem the search operation locates one or more instances of the one or more keywords in the electronic document; wherem, after said performing the garblmg operation, a portion of the electronic document proximate to the one or more located keywords is not garbled, and wherein other portions of the electronic document are garbled.
30 The method of claim 29, wherem the electronic document comprises one or more paragraphs comprising one or more sentences, wherein a first sentence comprising a first mstance of a located keyword withm a paragraph of the electronic document is not garbled, and wherem other sentences m the paragraph not comprising located keywords are garbled.
31 The method of claim 30, wherein the paragraph comprises a second sentence compπsmg a second mstance of the located keyword, wherein a portion of the second sentence precedmg the second instance of the located keyword is not garbled, wherein a portion of the second sentence following the second instance of the located keyword is not garbled, and wherem the remainder of the second sentence is garbled
32 The method of claim 31 , wherein the preceding portion of the second sentence comprises one word, and wherein the followmg portion of the second sentence comprises one word.
33 The method of any of the preceding claims 2 through 32, wherein said receivmg the request for the at least a portion of the electronic document comprises receivmg user mput from the client system selecting the electronic document for evaluation from a plurality of electronic documents displayed on the display device of the client system
34 The method of any of the preceding claims 2 through 33, wherein said receiving the request for at least a portion of the electronic document comprises: receiving user input from the client system requestmg a search operation to locate one or more keywords m a plurality of electronic documents, wherem the plurality of electronic documents mcludes the electronic document; and performing the search operation, wherein the search operation locates one or more mstances of the one or more keywords in one or more of the plurality of electronic documents, wherem the one or more of the plurality of electronic documents includes the electronic document, wherein, after said performing the garblmg operation, a portion of the electronic document proximate to the one or more located keywords is not garbled, and wherem other portions of the electromc document are garbled 35 The method of any of the precedmg claims, wherem the at least a portion of the electronic document is one of a Web page and a Web frame
36 The method of any of the precedmg claims, wherem the at least a portion of the electronic document mcludes a garbled portion after said performing the garblmg operation, wherem the garbled portion of the at least a portion of the electronic document is unmtelligible to a user of the client system, and wherein a layout of the at least a portion of the electronic document after said performmg the garbling operation is substantially the same as a layout of the at least a portion of the electronic document prior to said performmg the garblmg operation
37 The method of claim 36, wherem the layout of the at least a portion of the document comprises the size and location of the content of the at least a portion of the document
38 The method of claim 37, wherem the content comprises headings, paragraphs, sentences, words, graphics, tables, images, hyperlinks, and white spaces
39 The method of any of the precedmg claims, wherein the at least a portion of the electronic document is operable to be evaluated by a user of the client system, the method further compπsmg providing an electronic document purchasmg interface to the display device of the client system, where the electronic document purchasing mterface is operable by the user to purchase the electronic document m response to user input
40 The method of any of the precedmg claims 2 through 39, wherein said performing the garbling operation on the at least a portion of the electronic document comprises dynamically performmg the garbling operation on the at least a portion of the electronic document after said receiving the request for at least a portion of the electronic document from the client system and prior to said providing the at least a portion of the electronic document to the client system
41 A system for providing an electronic document for evaluation, which performs a method accordmg to any of the preceding claims 1 -40
42 The system of claim 41 , wherem the system compnses a server computer system compπsmg a processor, a memory medium coupled to the processor, wherem the memory medium stores the electronic document and a garblmg program, and a network port which is operable to receive a request for at least a portion of the electronic document, wherem the garblmg program is executable by the processor for performing a garblmg operation on the at least a portion of the electronic document
43 The system of claim 42, further comprismg a client system, and a display device coupled to the client system, wherem the memory medium further stores a document server program executable by the processor for providmg the at least a portion of the electronic document to the client system after said performing the garblmg operation, and wherem the at least a portion of the electronic document is operable to be displayed on the display device coupled to the client system
44 A caπier medium comprising program instructions, wherein the program instructions are executable to perform a method according to any of the preceding claims 1-40
45 A method for evaluating an electronic document, the method comprising submitting a request for at least a portion of the electronic document, receiving the at least a portion of the electronic document, wherem the at least a portion of the electronic document includes a garbled portion and a non-garbled portion, and displaying the at least a portion of the electronic document, wherein the garbled portion is unmtelligible to a user, and wherem the non-garbled portion is intelligible to the user
46 The method of claim 45, further comprising receiving user mput to select a link in the electronic document, wherem the link references one or more new pages of the electronic document, submitting a request for the one or more new pages of the electronic document in response to receiving the user mput to select a link, receiving the one or more new pages of the electronic document, wherein the one or more new pages of the electronic document include a garbled portion and a non-garbled portion, and displaying the one or more new pages of the electronic document, wherem the garbled portion is unmtelligible to a user, and wherem the non-garbled portion is intelligible to the user
47 The method of any of the precedmg claims, further comprismg selectmg the electronic document for evaluation from a plurality of electronic documents prior to submitting the request for the at least a portion of the electronic document
48 The method of any of the precedmg claims, further comprismg submitting a request for a search operation to locate one or more keywords m the electronic document, receiving at least a portion of the electronic document, wherem the at least a portion of the electronic document includes one or more keywords located in the requested search operation, and displaying the at least a portion of the electronic document, wherein a portion of the electronic document proximate to the one or more located keywords is not garbled, and wherem other portions of the electronic document aie garbled
49 The method of any of the precedmg claims, wherein a layout of the at least a portion of the electronic document, mcludmg said garbled and non-garbled portions, is substantially the same as a layout of the at least a portion of the electronic document prior to bemg garbled
50 The method of any of the precedmg claims, wherem the at least a portion of the electronic document includes scrambled textual content items which are unintelligible to a user of the client system
51 The method of claim 50, wherem each of the scrambled textual content items comprises one or more characters which replaced original characters in a nongarbled version of the at least a portion of the electronic document
52 The method of claim 51, wherein each of the one or more characters in the scrambled textual content items comprises similar font characteristics to the replaced original characteis m the nongarbled version of the at least a portion of the electromc document
53 The method of any of the preceding claims, wherein the at least a portion of the electronic document includes one or more masked content items
54 The method of any of the preceding claims, wherein the at least a portion of the electronic document is one of a Web page and a Web frame
55 A client system for evaluating an electronic document, wherem the client system is operated by a user, and wherem the client system is operable to perform a method accordmg to any of the precedmg claims 45- 54
56 The client system of claim 55, comprismg a processor, a memory medium coupled to the processor, wherein the memory medium stores document browser software, and a display device coupled to the processor and the memory medium, wherein the document browser software is executable by the processor for submitting a request for at least a portion of the electronic document, wherem the document browser software is further executable by the processor for receiving the at least a portion of the electronic document, wherein the at least a portion of the electronic document includes a garbled portion and a non-garbled portion, wherem the memory medium is further operable to store the at least a portion of the electronic document upon receipt of the at least a portion of the electronic document by the document browser software, and wherem the document browser software is further is further executable by the processor for displaying the at least a portion of the electronic document on the display device, wherein the garbled portion is unintelligible to the user, and wherein the non-garbled portion is intelligible to the user
57 A earner medium comprising program instructions, wherein the program instructions are executable to perform a method accordmg to any of the preceding claims 45-54
58 A earner medium for carrying signals m a network system, wherem the earner medium is operable to carry at least a portion of a garbled electronic document, wherem the garbled electronic document comprises a garbled portion comprising one or more garbled content items, wherein the garbled portion of the at least a portion of the electronic document is unintelligible when displayed to a user, and a non-garbled portion comprismg one or more non-garbled content items, wherein the non-garbled portion is intelligible when displayed to the user
PCT/US2000/032699 1999-12-03 2000-12-01 System and method for evaluating and purchasing digital content WO2001041018A2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU18106/01A AU1810601A (en) 1999-12-03 2000-12-01 System and method for evaluating and purchasing digital content

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US45445599A 1999-12-03 1999-12-03
US09/454,455 1999-12-03

Publications (2)

Publication Number Publication Date
WO2001041018A2 true WO2001041018A2 (en) 2001-06-07
WO2001041018A3 WO2001041018A3 (en) 2002-07-11

Family

ID=23804670

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2000/032699 WO2001041018A2 (en) 1999-12-03 2000-12-01 System and method for evaluating and purchasing digital content

Country Status (2)

Country Link
AU (1) AU1810601A (en)
WO (1) WO2001041018A2 (en)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003079248A2 (en) * 2002-03-15 2003-09-25 Melvyn Stamelman Provision of graphic designs
WO2004046982A1 (en) * 2002-11-15 2004-06-03 Creo Il. Ltd. System for stock images peer-to-peer services over the world wide web
EP1515215A2 (en) * 2003-05-22 2005-03-16 Copyright Clearance Center, Inc. Method and apparatus for secure delivery and rights management of digital content by means of document indexing
WO2005071580A1 (en) * 2004-01-22 2005-08-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method for supplying a virtual product to a third party
EP1668586A2 (en) * 2003-09-05 2006-06-14 Limelight Networks, Inc. Management of digital content licenses
US7324648B1 (en) 2003-07-08 2008-01-29 Copyright Clearance Center, Inc. Method and apparatus for secure key delivery for decrypting bulk digital content files at an unsecure site
US7574378B2 (en) 2002-11-15 2009-08-11 Kodak Il Ltd. System for stock images peer-to-peer services over the world wide web
US8069489B2 (en) 2002-02-27 2011-11-29 Ashish K Mithal Method and system for facilitating search, selection, preview, purchase evaluation, offering for sale, distribution, and/or sale of digital content and enhancing the security thereof
WO2013098477A1 (en) * 2011-12-29 2013-07-04 P2S Media Group Oy Method and apparatus for approving multimedia data
WO2013044048A3 (en) * 2011-09-23 2014-05-22 Apple Inc. Generating a visual depiction of a cover for a digital item
EP2738685A1 (en) * 2011-07-26 2014-06-04 ZTE Corporation Touch screen terminal and method for locating electronic file thereof
US9448984B2 (en) 2011-07-26 2016-09-20 Zte Corporation Keyboard type terminal and location method for electronic document therein
US20170149710A1 (en) * 2015-11-23 2017-05-25 Yahoo! Inc. Selective screen sharing
US10073819B2 (en) 2014-05-30 2018-09-11 Hewlett-Packard Development Company, L.P. Media table for a digital document
US20220129618A1 (en) * 2020-10-23 2022-04-28 Saudi Arabian Oil Company Text scrambling/descrambling

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0464306A2 (en) * 1990-06-29 1992-01-08 International Business Machines Corporation Structured document tags invoking specialized functions
EP0466146A2 (en) * 1990-07-11 1992-01-15 FONTECH Ltd Graphic matter and process and apparatus for producing, transmitting and reading the same
US5442701A (en) * 1992-12-29 1995-08-15 France Telecom Establissement Autonome De Droit Public Process for the broadcasting of conditional access programs permitting a progressive access to such programs
US5541993A (en) * 1994-05-10 1996-07-30 Fan; Eric Structure and method for secure image transmission
US5933498A (en) * 1996-01-11 1999-08-03 Mrj, Inc. System for controlling access and distribution of digital property
US5963916A (en) * 1990-09-13 1999-10-05 Intouch Group, Inc. Network apparatus and method for preview of music products and compilation of market data

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0464306A2 (en) * 1990-06-29 1992-01-08 International Business Machines Corporation Structured document tags invoking specialized functions
EP0466146A2 (en) * 1990-07-11 1992-01-15 FONTECH Ltd Graphic matter and process and apparatus for producing, transmitting and reading the same
US5963916A (en) * 1990-09-13 1999-10-05 Intouch Group, Inc. Network apparatus and method for preview of music products and compilation of market data
US5442701A (en) * 1992-12-29 1995-08-15 France Telecom Establissement Autonome De Droit Public Process for the broadcasting of conditional access programs permitting a progressive access to such programs
US5541993A (en) * 1994-05-10 1996-07-30 Fan; Eric Structure and method for secure image transmission
US5933498A (en) * 1996-01-11 1999-08-03 Mrj, Inc. System for controlling access and distribution of digital property

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
A. NATRAJAN, A. L. POWELL, J. C. FRENCH: "Using N-grams to Retrieve Hindi Queries with Transliteration Variations" UNIVERSITY OF VIRGINIA, [Online] 1 July 1997 (1997-07-01), XP002197508 Retrieved from the Internet: <URL:http://www.anandnatrajan.com/papers/T echRep-CS-97-17.pdf> [retrieved on 2002-04-25] *
D. ABILOCK: "Performing Precise Searches" NUEVASCHOOL, [Online] 14 August 1996 (1996-08-14), XP002197801 Retrieved from the Internet: <URL:http://nuevaschool.org/~debbie/librar y/research/sharpsearch.html> [retrieved on 2002-04-29] *
H. BINGHAM: "SGML Syntax Summary " OASIS, [Online] 1996, XP002197506 Retrieved from the Internet: <URL:http://www.oasis-open.org/cover/sgmls yn/contents.htm> [retrieved on 2002-04-25] *
T. BRAY, C. M. SPERBERG-MCQUEEN: "Extensible Markup Language (XML)" W3C, [Online] 14 November 1996 (1996-11-14), XP002197800 Retrieved from the Internet: <URL:http://www.w3.org/TR/WD-xml-961114.ht ml#sec3.4> [retrieved on 2002-04-26] *

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8069489B2 (en) 2002-02-27 2011-11-29 Ashish K Mithal Method and system for facilitating search, selection, preview, purchase evaluation, offering for sale, distribution, and/or sale of digital content and enhancing the security thereof
US10554424B2 (en) 2002-02-27 2020-02-04 Nytell Software LLC Enhanced security preview of digital content
WO2003079248A2 (en) * 2002-03-15 2003-09-25 Melvyn Stamelman Provision of graphic designs
WO2003079248A3 (en) * 2002-03-15 2004-07-22 Melvyn Stamelman Provision of graphic designs
WO2004046982A1 (en) * 2002-11-15 2004-06-03 Creo Il. Ltd. System for stock images peer-to-peer services over the world wide web
US7574378B2 (en) 2002-11-15 2009-08-11 Kodak Il Ltd. System for stock images peer-to-peer services over the world wide web
GB2409080A (en) * 2002-11-15 2005-06-15 Creo Il Ltd System for stock images peer-to-peer services over the world wide web
EP1515215A2 (en) * 2003-05-22 2005-03-16 Copyright Clearance Center, Inc. Method and apparatus for secure delivery and rights management of digital content by means of document indexing
US7493499B1 (en) 2003-05-22 2009-02-17 Copyright Clearance Center, Inc. Method and apparatus for secure delivery and rights management of digital content
EP1515215A3 (en) * 2003-05-22 2005-04-13 Copyright Clearance Center, Inc. Method and apparatus for secure delivery and rights management of digital content by means of document indexing
US8638934B2 (en) 2003-07-08 2014-01-28 Imophaze Research Co., L.L.C. Method and apparatus for secure key delivery for decrypting bulk digital content files at an unsecure site
US8130963B2 (en) 2003-07-08 2012-03-06 Imophaze Research Co., L.L.C. Method and apparatus for secure key delivery for decrypting bulk digital content files at an unsecure site
US7324648B1 (en) 2003-07-08 2008-01-29 Copyright Clearance Center, Inc. Method and apparatus for secure key delivery for decrypting bulk digital content files at an unsecure site
EP1668586A2 (en) * 2003-09-05 2006-06-14 Limelight Networks, Inc. Management of digital content licenses
EP1668586A4 (en) * 2003-09-05 2007-02-07 Limelight Networks Inc Management of digital content licenses
EP1770632A3 (en) * 2004-01-22 2007-11-28 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method for providing virtual goods to third parties
WO2005071580A1 (en) * 2004-01-22 2005-08-04 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Method for supplying a virtual product to a third party
US8615472B2 (en) 2004-01-22 2013-12-24 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. Method of providing a virtual product to third parties
US9448984B2 (en) 2011-07-26 2016-09-20 Zte Corporation Keyboard type terminal and location method for electronic document therein
EP2738685A1 (en) * 2011-07-26 2014-06-04 ZTE Corporation Touch screen terminal and method for locating electronic file thereof
EP2738685A4 (en) * 2011-07-26 2015-04-29 Zte Corp Touch screen terminal and method for locating electronic file thereof
US9256352B2 (en) 2011-07-26 2016-02-09 Zte Corporation Touch screen terminal and method for locating electronic document thereof
WO2013044048A3 (en) * 2011-09-23 2014-05-22 Apple Inc. Generating a visual depiction of a cover for a digital item
US9609036B2 (en) 2011-12-29 2017-03-28 P2S Media Group Oy Method and apparatus for approving multimedia data
WO2013098477A1 (en) * 2011-12-29 2013-07-04 P2S Media Group Oy Method and apparatus for approving multimedia data
US10073819B2 (en) 2014-05-30 2018-09-11 Hewlett-Packard Development Company, L.P. Media table for a digital document
US20170149710A1 (en) * 2015-11-23 2017-05-25 Yahoo! Inc. Selective screen sharing
US11233758B2 (en) * 2015-11-23 2022-01-25 Verizon Patent And Licensing Inc. Selective screen sharing
US20220129618A1 (en) * 2020-10-23 2022-04-28 Saudi Arabian Oil Company Text scrambling/descrambling
US11886794B2 (en) * 2020-10-23 2024-01-30 Saudi Arabian Oil Company Text scrambling/descrambling

Also Published As

Publication number Publication date
AU1810601A (en) 2001-06-12
WO2001041018A3 (en) 2002-07-11

Similar Documents

Publication Publication Date Title
WO2001041018A2 (en) System and method for evaluating and purchasing digital content
US7251778B1 (en) Method and system for dynamically adapting the layout of a document to an output device
US5815663A (en) Distributed posting system using an indirect reference protocol
US6626958B1 (en) Adaptive rendering of hypermedia documents
US5870767A (en) Method and system for rendering hyper-link information in a printable medium from a graphical user interface
US7278092B2 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
US6078921A (en) Method and apparatus for providing a self-service file
US6373502B1 (en) Method and apparatus for facilitating popup links in a hypertext-enabled computer system
US7418657B2 (en) Automatically inserting relevant hyperlinks into a webpage
AU699439B2 (en) Web browser with dynamic display of information objects during linking
US20020174145A1 (en) Automatic data formatting using a hypertext language
EP1280077A2 (en) Content clipping method
US20050131992A1 (en) System, method and apparatus for selecting, displaying, managing, tracking and transferring access to content of web pages and other sources
WO2000039666A1 (en) Converting content of markup data for wireless devices
EP2323347A2 (en) Serving font files in varying formats based on user agent type
US7472082B2 (en) Method and system for browsing a custom catalog via the internet
US20070288660A1 (en) Automatic Conversion System
US20030048294A1 (en) System and method for the creation of interactive display ads
US6344851B1 (en) Method and system for website overview
US20070198943A1 (en) System and Method for Distributing News Articles and Other Information in an Organization
EP1597680A2 (en) Markup language cut-and-paste
JP2000137668A (en) Link procesing method/processor
US5991514A (en) Method and apparatus for printing a hyperspacial document
EP0976053A1 (en) Automatic conversion system
EP1186992A2 (en) Document delivery system with automatically adjusted copy inserts

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A2

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A2

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
REG Reference to national code

Ref country code: DE

Ref legal event code: 8642

AK Designated states

Kind code of ref document: A3

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BY BZ CA CH CN CR CU CZ DE DK DM DZ EE ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NO NZ PL PT RO RU SD SE SG SI SK SL TJ TM TR TT TZ UA UG UZ VN YU ZA ZW

AL Designated countries for regional patents

Kind code of ref document: A3

Designated state(s): GH GM KE LS MW MZ SD SL SZ TZ UG ZW AM AZ BY KG KZ MD RU TJ TM AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE TR BF BJ CF CG CI CM GA GN GW ML MR NE SN TD TG

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: COMMUNICATION PURSUANT TO RULES 85A AND 85B EPC(EPO FORM 1218 DATED 19.03.03) AND COMMUNICATION PURSUANT TO RULE 85A(1) EPC (EPO FORM 1217N DA

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 69 (1) EPC EPO FORM 1209 DATED 02.07.03

122 Ep: pct application non-entry in european phase
NENP Non-entry into the national phase in:

Ref country code: JP