WO2016007539A1 - Personnalisation d'un contenu de documents - Google Patents

Personnalisation d'un contenu de documents Download PDF

Info

Publication number
WO2016007539A1
WO2016007539A1 PCT/US2015/039422 US2015039422W WO2016007539A1 WO 2016007539 A1 WO2016007539 A1 WO 2016007539A1 US 2015039422 W US2015039422 W US 2015039422W WO 2016007539 A1 WO2016007539 A1 WO 2016007539A1
Authority
WO
WIPO (PCT)
Prior art keywords
document
rendering
user
pages
layers
Prior art date
Application number
PCT/US2015/039422
Other languages
English (en)
Inventor
Benjamin N. Dilts
Alma T. Madsen
Quinn A. MORGAN
Original Assignee
Lucid Software, Inc.
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 Lucid Software, Inc. filed Critical Lucid Software, Inc.
Priority to EP15818334.3A priority Critical patent/EP3167381A4/fr
Publication of WO2016007539A1 publication Critical patent/WO2016007539A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/134Hyperlinking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • G06F40/106Display of layout of documents; Previewing

Definitions

  • Some embodiments described herein generally relate to customizing content in documents.
  • a document may be sent to multiple users and may be viewed by the users.
  • Existing solutions may present the same content in the same document to each of the users, even if the users have different roles and different information in the document is pertinent to different users. For example, existing solutions may provide a page-to-page navigation in the document and may present the same content to each of the users.
  • Some example embodiments described herein generally relate to techniques for customizing content in documents.
  • a method of customizing a rendering of a document may include receiving customization data associated with the rendering of the document.
  • the method may additionally include determining one or more layers to be rendered on one or more pages of the document based at least in part on the customization data.
  • the method may additionally include determining a rendering path including the one or more layers on the one or more pages.
  • the method may additionally include rendering the document based at least in part on the rendering path.
  • a method of distributing documents is described.
  • the method may include receiving customization data for customizing a first document.
  • the method may additionally include creating a plurality of links based at least in part on the customization data.
  • the plurality of links may be configured to point to a common document.
  • the method may additionally include creating a plurality of copies of the first document based at least in part on the plurality of links. Each of the plurality of copies of the first document may be customized to include a different one of the plurality of links. The method may additionally include distributing the plurality of copies of the first document.
  • Figure 1 is a block diagram of an example operating environment including a server and one or more client devices configured to customize content in documents;
  • Figure 2 shows an example flow diagram of a method of creating a document including one or more layers on each page of the document
  • Figure 3 shows an example flow diagram of a method of customizing a rendering of a document
  • Figure 4 shows an example flow diagram of a method of distributing documents with links
  • Figure 5 shows an example flow diagram of a method of customizing content in a document based on an associated link
  • Figure 6 includes a graphic representation that illustrates aspects of an example embodiment of the methods of Figures 2 and 3;
  • Figure 7 includes a graphic representation that illustrates two example links used to customize content in a document for two different users.
  • Figure 8 is a block diagram illustrating an example computing device that is arranged for customizing content in documents.
  • Embodiments described herein generally relate to techniques for customizing content in documents.
  • the customization of the content may be performed by a server serving content to a browser, a native app on a smartphone or other mobile device, or another suitable application.
  • the customization of the content may be performed by the browser, the native app on the smartphone or other mobile device, or another suitable application.
  • a browser (or an app) on a client device may be used to receive a document and customize content in the document for a user associated with the client device.
  • Some embodiments described herein may allow customizing a rendering of a document for different users. For example, different users may receive a common document respectively. Depending on user inputs provided by the different users during the respective rendering of the common document, user types related to the different users may be determined. Different pages and/or different layers on pages of the common document may be rendered on client devices associated with the different users based on the corresponding user types. In these and other embodiments, each user may be presented with different content in the common document based on a corresponding user input and/or other customization data associated with the corresponding user. In some embodiments, a user may provide a user input at a branch point of the document. Layers to be rendered on subsequent pages after the branch point may depend on the user input provided at the branch point.
  • Some embodiments described herein may also allow customizing a common document for different users using different links.
  • user types of the different users may be known in advance before the document customization.
  • Different links may be created for the different users based on the corresponding user types and/or other customization data associated with the different users.
  • the different links may point to the common document.
  • the different links may be respectively distributed to client devices associated with the different users using electronic mail merge.
  • a user receiving a link may select the link to view the common document, causing the common document to be customized for the user based on the corresponding link.
  • different content in the common document may be presented to different users based on the corresponding links received by the different users.
  • Figure 1 is a block diagram of an example operating environment 100 including a server 101 and one or more client devices 111, 119, 121, arranged in accordance with at least some embodiments described herein.
  • the server 101 and/or the client devices 111, 119, 121 may be configured to customize content in documents. Each document may be created locally by one or more of the client devices 111, 119, 121 and/or may be stored on and accessed from the server 101.
  • the operating environment 100 may more generally include one or more servers 101 and one or more client devices 111, 119, 121.
  • the operating environment 100 may include other servers and/or devices not illustrated in Figure 1 , such as one or more publishing platforms configured to publish digital documents.
  • Example publishing platforms may include, but are not limited to, the server 101, a web server (not shown), a social network server (not shown), and other suitable publishing platforms for publishing digital documents and/or other content.
  • the operating environment 100 may additionally include a network 109.
  • the network 109 may include one or more wide area networks (WANs) and/or local area networks (LANs) that enable the server 101 and the client devices 111, 119, 121 to communicate with each other.
  • the network 109 may include the Internet, including a global internetwork formed by logical and physical connections between multiple WANs and/or LANs.
  • the network 109 may include one or more cellular radio frequency (RF) networks and/or one or more wired and/or wireless networks such as, but not limited to, 802.xx networks, Bluetooth access points, wireless access points, Internet Protocol (IP)-based networks, or the like.
  • the network 109 may also include servers that enable one type of network to interface with another type of network.
  • the server 101 may host a web-based publishing application ("application 104") that allows the client devices 111, 119, 121 to create, edit, publish, and/or access documents 107 as described herein.
  • application 104 a web-based publishing application
  • the server 101 may facilitate collaboration between multiple client devices 1 11, 119, 121 by cooperating with the client devices 111, 119, 121 to implement version control and synchronization of the documents 107.
  • the server 101 may additionally include a processor 103 and a storage medium 105.
  • the processor 103 may be of any type including, but not limited to, a central processing unit (CPU), a microprocessor ( ⁇ ), a microcontroller ⁇ C), a digital signal processor (DSP), or any combination thereof.
  • the processor 103 may be configured to execute computer instructions that, when executed, cause the processor 103 to perform one or more of the operations described herein with respect to the server 101.
  • the storage medium 105 may include volatile memory such as random access memory (RAM), persistent or non-volatile storage including, but not limited to, read only memory (ROM), electrically erasable and programmable ROM (EEPROM), compact disc- ROM (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage device, NAND flash memory or other solid state storage device, or other persistent or non- volatile computer storage medium.
  • volatile memory such as random access memory (RAM), persistent or non-volatile storage including, but not limited to, read only memory (ROM), electrically erasable and programmable ROM (EEPROM), compact disc- ROM (CD-ROM) or other optical disk storage, magnetic disk storage or other magnetic storage device, NAND flash memory or other solid state storage device, or other persistent or non- volatile computer storage medium.
  • RAM random access memory
  • ROM read only memory
  • EEPROM electrically erasable and programmable ROM
  • CD-ROM compact disc- ROM
  • the storage medium 105 may store computer instructions that may be executed by the
  • the storage medium 105 may additionally store the documents 107 created and/or published by users.
  • the documents 107 may be downloaded from the server 101 and rendered on one or more client devices 111, 119, 121.
  • the documents 107 may include print documents and digital documents.
  • Example documents 107 may include, but are not limited to, a flyer, a brochure, a newsletter, a magazine, a book, a photo book, a web page, an e-email, and any other suitable digital document file.
  • the documents 107 may include text, images, scrolling areas, videos, photo galleries, links (e.g., uniform resource locators (URLs) or other hyperlinks), and/or other interactivity such as interactive sections allowing users to provide inputs.
  • links e.g., uniform resource locators (URLs) or other hyperlinks
  • other interactivity such as interactive sections allowing users to provide inputs.
  • the server 101 may be configured to cooperate with the client devices 111, 119, 121 to allow the client devices 111, 119, 121 to create a new document, to access a document from the server 101 using a corresponding browser (or app), such as a browser 117, to edit a document, to store a document on the server 101, to render a document on a display device, to publish a document on a publishing platform, and/or to perform another suitable operation on a document.
  • a corresponding browser or app
  • Each of the client devices 111, 119, 121 may execute an application, such as the browser 117, configured to communicate through the network 109 with the server 101.
  • Each of the other client devices 119, 121 may be similarly configured to execute a browser, such as the browser 117.
  • the browser 117 may include an Internet browser or other suitable application for communicating through the network 109 with the server 101.
  • the browser 117 may download and/or interact with content, such as websites including web pages, documents, and/or applications hosted by the server 101 or other servers (not shown) in the operating environment 100. For example, a document published on the server 101 may be accessed and rendered by the browser 117 on the client device 111.
  • Each of the client devices 111, 119, 121 may include, but is not limited to, a desktop computer, a laptop computer, a tablet computer, a mobile phone, a smartphone, a personal digital assistant (PDA), a wearable device (e.g., a smart watch), or another suitable client device.
  • a desktop computer e.g., a laptop computer, a tablet computer
  • a mobile phone e.g., a smartphone
  • PDA personal digital assistant
  • a wearable device e.g., a smart watch
  • Each of the client devices 111, 119, 121 may additionally include a processor and a storage medium, such as a processor 1 13 and a storage medium 115 as illustrated for the client device 111 in Figure 1.
  • Each of the other client devices 119, 121 may be similarly configured.
  • the processor 113 may be of any type including, but not limited to, a CPU, a ⁇ , a a DSP, or any combination thereof.
  • the processor 113 may be configured to execute computer instructions that, when executed, cause the processor 113 to perform one or more of the operations described herein with respect to the client device 111 and/or the browser 117.
  • the storage medium 115 may include volatile memory such as RAM, persistent or non-volatile storage including, but not limited to, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage device, NAND flash memory or other solid state storage device, or other persistent or non-volatile computer storage medium.
  • volatile memory such as RAM
  • persistent or non-volatile storage including, but not limited to, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage device, NAND flash memory or other solid state storage device, or other persistent or non-volatile computer storage medium.
  • the storage medium 1 15 may store computer instructions that may be executed by the processor 1 13 to perform one or more of the operations described herein with respect to the client device 111 and/or the browser 117.
  • the storage medium 115 may additionally store, at least temporarily, a document and/or other content obtained from the server 101 and/or created locally on the client device 111.
  • the storage medium 115 may store customization data 116 for customizing content in documents.
  • the customization data 116 may include user interaction data (e.g., inputs provided by users that access the documents), user geographic data (e.g., IP addresses associated with the client devices 111, 119, 121, cellular geo-locations associated with cellular phones operated by users), user profile data (e.g., social network profiles including user names, addresses, interests, hobbies, education, working experiences, occupations, and other demographic information), links customized for users, and/or other data suitable for customizing content in documents.
  • user interaction data e.g., inputs provided by users that access the documents
  • user geographic data e.g., IP addresses associated with the client devices 111, 119, 121, cellular geo-locations associated with cellular phones operated by users
  • user profile data e.g., social network profiles including user names, addresses, interests, hobbies, education, working experiences, occupations, and other demographic information
  • links customized for users e.g., links customized for users, and
  • Embodiments described herein are not limited to using a browser to customize content in documents.
  • the client devices 111, 119, 121 may include a native app as are often used on client devices such as mobile devices including smartphones and tablet computers.
  • embodiments described herein generally include customizing content in documents using a browser, a native app, or another suitable application.
  • Embodiments described herein may alternately or additionally include the server 101 customizing content in the documents 107 based on the customization data 116 in the storage medium 115 or customization data in the storage medium 105.
  • the customization of the documents may be discussed as being performed on documents obtained from the server 101 that is remote from the client devices 111, 119, 121 and by a browser such as the browser 1 17.
  • the documents may be local documents stored in a storage medium of a client device, such as the storage medium 115 of the client device 111. It is understood, however, with the benefit of the present disclosure, that a source location of the documents may instead be local, such as the storage medium 115, and that the customization of the documents may be done on the client devices 111, 119, 121 by a browser, a native app, or another suitable application.
  • the documents described herein may include documents sent from a first client device to a second client device.
  • Figure 2 shows an example flow diagram of a method 200 of creating a document including one or more layers on each page of the document, arranged in accordance with at least some embodiments described herein.
  • the method 200 may be performed in whole or in part by, e.g., any of the client devices 111, 119, 121 of Figure 1. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.
  • the method 200 may begin at block 202 in which a request to create a document may be received.
  • a user may use an application or a browser executing on a client device (e.g., the browser 117 on the client device 111) to create a new document.
  • the user may click on a document creation symbol displayed in the browser, causing a new document to be created in the browser.
  • other input may be effective to request creation of a document and may be received by the method 200.
  • one or more layers may be added to one or more pages of the document.
  • the document may include a single page or multiple pages. For each page of the document, one or more layers may be added to the corresponding page.
  • a layer may include one or more content items configured for that layer.
  • Example content items may include, but are not limited to, a piece of text, a video, an image, a link, a photo gallery, a scrolling box, and other suitable content items.
  • different layers on the same page may include different content items.
  • different layers on the same page may include one or more content items in common.
  • a set of content items may be received and added to a corresponding page of the document.
  • the set of content items may be grouped into one or more layers on the page. For example, an editor of the document may add a set of content items to a page of the document. The editor may group the set of content items into multiple layers so that each layer includes one or more different content items from the set of content items.
  • a rendering setting associated with the document may be configured.
  • the rendering setting may be configured based on configuration data provided by a creator, an owner, and/or an editor of the document.
  • the rendering setting may specify how the document can be rendered for different users based on corresponding customization data associated with the different users.
  • the rendering setting may specify how different layers on pages of the document may be rendered based on the customization data. For example, based on user input data provided on one or more previous pages before a particular page of the document, the rendering setting may specify that some layers on the particular page may be rendered to the user while some other layers on the particular page may be hidden from viewing.
  • the rendering setting may specify that a first set of layers on a first set of pages of the document may be rendered to a viewer that is located within a first geographic region.
  • the first set of layers may include content items customized for the first geographic region.
  • the rendering setting may specify that a second set of layers on a second set of pages of the document may be rendered to the viewer.
  • the second set of layers may include content items customized for the second geographic region.
  • the first set of pages may include different pages from the second set of pages.
  • the first set of pages and the second set of pages may include one or more pages in common. Accordingly, geographic data indicating a geographic region of a viewer is an example of customization data that may determine which set of layers and/or which set of pages may be rendered to the viewer.
  • a rendering of a document described herein may include rendering content included in one or more pages of the document, where the one or more pages may represent a subset of or all the pages in the document.
  • an operation to render a document on a client device may include displaying one or more pages of the document on the client device and hiding one or more other pages of the document.
  • Rendering content included in a page may include rendering one or more layers on the page, where the one or more layers may represent a subset of or all the layers associated with the page.
  • an operation to render a page on a client device may include displaying one or more layers on the page and hiding one or more other layers on the page.
  • Rendering a layer on a page may include rendering one or more content items configured for the layer on the page.
  • an operation to render a layer on a page may include displaying one or more content items grouped in that layer on the page.
  • the document and the rendering setting may be stored.
  • the document and the rendering setting may be stored on the storage medium 105 of the server 101 or a storage medium of a client device performing the method 200, such as the storage medium 115 of the client device 111.
  • the method 200 may additionally include sharing the document with other users.
  • the method 200 may additionally include publishing the document on a publishing platform (e.g., a web server) so that other users may access the document from the publishing platform via the network 109.
  • a publishing platform e.g., a web server
  • the method 200 may include sending the document from a client device performing the method 200 to other client devices so that users associated with the other client devices may access the document on the other client devices. Additionally, in some embodiments, the rendering of the document for each of the other users may be different and may be customized based on corresponding customization data associated with the corresponding user, which is described below with reference to Figure 3.
  • Some embodiments disclosed herein include an article of manufacture such as a non-transitory computer storage medium having instructions stored thereon that are executable by a computing device to perform operations included in the method 200 of Figure 2, such as the operations illustrated by blocks 202, 204, 206, and/or 208 in Figure 2, and/or variations thereof.
  • the non-transitory computer storage medium may be included in or may be accessible to one or more of the client devices 111, 119, 121 of Figure 1.
  • the computing device may include any of the client devices 111, 119, 121, and/or a processor or other processing device of the client devices 111, 119, 121, such as the processor 113.
  • Figure 3 shows an example flow diagram of a method 300 of customizing a rendering of a document, arranged in accordance with at least some embodiments described herein.
  • the method 300 may be performed in whole or in part by, e.g., the server 101 and/or any of the client devices 111, 119, 121 of Figure 1.
  • the method 300 will be described as being performed on a client device. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.
  • a browser or an application on a client device performing the method 300 may receive a document from the server 101 and/or from another client device via the network 109.
  • the document may be a local document stored on a storage medium of the client device, such as the storage medium 115 of the client device 11 1.
  • a user operating the client device may request to view the document, causing the browser or the application on the client device to display the document on a display device by performing operations similar to those described herein with reference to Figure 3.
  • the method 300 may begin at block 302 in which customization data associated with a rendering of the document may be received.
  • the customization data may include, but is not limited to, user interaction data (e.g., user input data), user geographic data, user profile data, and other data associated with the user.
  • user interaction data e.g., user input data
  • user geographic data e.g., user geographic data
  • user profile data e.g., user profile data
  • other data associated with the user e.g., user interaction data
  • user input data e.g., user input data
  • user geographic data e.g., user geographic data
  • user profile data e.g., user profile data associated with the user.
  • a profile of the user may be received from the server 101 so that the document may be renderer to the user based on the profile of the user.
  • the document may be rendered to the user based on a combination of user interaction data, geographic data, user profile data, and/or other data.
  • the customization data may be received during a rendering of a branch point of the document.
  • a branch point may include a document page from which a rendering of one or more subsequent pages may be split into two or more paths. For example, different users viewing a particular document may be provided with the same content on a first page of the document. If a user selects a first button on the first page or otherwise provides first input data, a first set of layers on subsequent pages may be presented to the user; however, if the user selects a second button on the first page or otherwise provides second input data, a second set of layers on subsequent pages may be presented to the user.
  • the first page may act as a branch point in the document since the rendering of subsequent pages after the first page may be split into two paths.
  • a user may need to provide an input at the branch point of the document before content on subsequent pages can be presented to the user.
  • a user input may be optional at the branch point of the document.
  • one or more layers to be rendered on one or more pages of the document may be determined based at least in part on the customization data.
  • the customization data may be received during a rendering of a branch point of the document, and the one or more pages may be one or more document pages after the branch point.
  • a user type related to the user viewing the document may be determined based on the customization data.
  • the one or more layers to be rendered on the one or more pages may be determined based on the user type. For example, if the user type is determined as a manager based on an input from the user, one or more layers customized for managers may be selected and rendered on one or more pages of the document.
  • one or more layers customized for engineers may be selected and rendered on one or more pages of the document.
  • the one or more layers may be determined based on user inputs provided on one or more previous pages before the one or more pages.
  • the one or more layers to be rendered on the one or more pages of the document may be determined based on user geographic data and/or user profile data.
  • the one or more determined layers may match the user geographic data and/or the user profile data. For example, if the user profile data indicates that the user is less than 40 years old, the method 300 may determine one or more first layers on one or more pages of the document, where the one or more first layers include content items targeted for users that are less than 40 years old. However, if the user profile data indicates that the user is above 40 years old, the method 300 may determine one or more second layers on one or more pages of the document, where the one or more second layers include content items targeted for users that are above 40 years old.
  • Figure 3 has been discussed to this point in the context of the user (or the user's computer) providing the customization data as input at or prior to a branch point of the document.
  • the one or more layers to be rendered on the one or more pages may be determined based on a link that includes customization data.
  • the user may receive a link including user specific information.
  • the one or more layers to be rendered on the one or more pages may be determined based on the user specific information included in the link, as described in more detail with respect to Figures 4 and 5.
  • each of the one or more determined layers may be associated with a different page from the one or more pages.
  • two or more of the determined layers may be associated with a common page from the one or more pages.
  • a rendering path including the one or more layers on the one or more pages may be determined.
  • a rendering path may be a path through which pages of a document may be rendered.
  • a rendering path may include one or more pages of the document, including corresponding layers on each of the one or more pages.
  • a first rendering path for rendering a document to a first type of user e.g., a manager
  • a first rendering path for rendering a document to a first type of user may include a first layer on a first page, a second layer on a second page, and a third layer on a third page.
  • a second rendering path for rendering the document to a second type of user e.g., an engineer
  • the second rendering path may skip the third page altogether or may include the same or a different layer as the first rendering path
  • a rendering path may include a subset of pages in the document. Alternatively, in some embodiments, a rendering path may include all the pages in the document.
  • a rendering path may start from a first page of the document and may end at a second page of the document. For example, a rendering path may start from a branch point of the document and may include one or more subsequent pages after the branch point. Alternatively, a rendering path may start from the beginning page of the document and may end at the last page of the document.
  • an operation to render the document may include one or more of the following: (1) rendering the one or more layers included in the rendering path on the one or more associated pages of the document; (2) blocking other layers that are not included in the rendering path from rendering on the one or more associated pages so that the other layers are not rendered to the user; and (3) blocking other pages that are not included in the rendering path from rendering so that the other pages are not displayed to the user.
  • a document may include Layer 1 on a first page, Layer 2 and Layer 3 on a second page, and Layer 4 on a third page. If the rendering path of the document for the user includes Layer 1 on the first page and Layer 2 on the second page, rendering the document for the user may include one or more of the following: (1) rendering Layer 1 on the first page and Layer 2 on the second page; (2) hiding Layer 3 on the second page during the rendering of the second page in the document; and (3) hiding the third page as well as Layer 4 on the third page during the rendering of the document.
  • rendering the document for the user may include (1) rendering Layer 1 on the first page, Layer 3 on the second, and Layer 4 on the third page; and (2) hiding Layer 2 on the second page during the rendering of the second page in the document.
  • An example use of the method 300 may include removing page-to-page navigation of a document and selectively displaying customized layers on pages of the document to a user. For example, on a particular page of the document such as a branch point of the document, a user viewing the document may provide a user input on the particular page before navigating to subsequent pages in the document.
  • layers on subsequent pages may be selected based on the user input and may be rendered on a client device associated with the user.
  • different users viewing the same document may provide different user inputs.
  • different users may be presented with different layers on different pages of the document based on their corresponding inputs.
  • a document may include multiple branch points.
  • the branch points may be nested or the branch points may be sequential.
  • a nested branch point may include a branch point within at least one of the rendering paths between an initial branch point where rendering paths diverge and either a last page of the document or a page where the rendering paths converge (hereinafter a "convergence point") before the document proceeds to subsequent pages.
  • a sequential branch point may include a branch point that follows a paired branch point and convergence point.
  • Some embodiments disclosed herein include an article of manufacture such as a non-transitory computer storage medium having instructions stored thereon that are executable by a computing device to perform operations included in the method 300 of Figure 3, such as the operations illustrated by blocks 302, 304, 306, and/or 308 in Figure 3, and/or variations thereof.
  • the non-transitory computer storage medium may be included in or may be accessible to one or more of the client devices 111, 119, 121 of Figure 1.
  • the computing device may include any of the client devices 111, 119, 121, and/or a processor or other processing device of the client devices 111, 119, 121, such as the processor 113.
  • Figure 4 shows an example flow diagram of a method 400 of distributing documents with links, arranged in accordance with at least some embodiments described herein.
  • the method 400 may be performed in whole or in part by, e.g., the server 101 and/or any of the client devices 111, 119, 121 of Figure 1.
  • the method 400 will be described as being performed on a client device. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.
  • a browser or an application on a client device performing the method 400 may create a first document under directions of a user operating on the client device.
  • the first document may be a local document stored on a storage medium of the client device.
  • the first document may be received from the server 101.
  • the user may request to transmit the first document to a plurality of recipients, causing the browser or the application on the client device to distribute the first document to the plurality of recipients by performing operations similar to those described herein with reference to Figure 4.
  • a recipient may represent a user to whom a copy of the first document is sent.
  • a recipient may represent a client device associated with a user to whom a copy of the first document is sent.
  • the method 400 may begin at block 402 in which customization data for customizing the first document may be received.
  • the first document may include an e-mail.
  • the customization data for customizing the e-mail may include user names associated with the plurality of recipients, user types related to the plurality of recipients, user geographic data associated with the plurality of recipients, and/or user profile data associated with the plurality of recipients.
  • a plurality of links may be created based on the customization data.
  • the plurality of links may be configured to point to a common document.
  • the common document may include a web page, a text file, or another suitable document file.
  • each of the plurality of links may include a unique link (e.g., a unique URL) customized for a corresponding recipient of the first document, so that the corresponding recipient may use the unique link to obtain a customized copy of the common document as illustrated and described below with reference to Figure 5.
  • each of the plurality of links may include unique information that can be used to customize the common document for a corresponding recipient.
  • each of the plurality of links may include a different pointer to a corresponding record that includes unique information used to customize the common document for a corresponding recipient.
  • each link in the plurality of links may be encoded with a user name, a user type or other specific data associated with a corresponding recipient.
  • a plurality of copies of the first document may be created based on the plurality of links. For example, each created copy of the first document may include a different link from the plurality of links.
  • the plurality of copies of the first document may be distributed. For example, the plurality of copies of the first document may be transmitted to the plurality of recipients. Each recipient may receive a corresponding copy of the first document that includes a corresponding link from the plurality of links, where the corresponding link may be customized for the corresponding recipient.
  • the plurality of copies of the first document may be created and distributed in a manner similar to electronic mail merge.
  • An example use of the method 400 may include sharing a web page with a plurality of users by sending an e-mail to the plurality of users.
  • a plurality of unique links pointing to the same web page may be created based on customization data associated with the plurality of users.
  • each unique link from the plurality of links may include a unique user identifier (ID) identifying a corresponding user and/or other user-specific data.
  • ID unique user identifier
  • a plurality of copies of the e-mail may be created and sent to the plurality of users.
  • each copy of the e-mail may include a unique link related to a corresponding recipient and may be sent to the corresponding recipient.
  • a recipient may select a corresponding link in the copy of the e-mail, causing content in the web page to be customized and presented to the recipient based on the corresponding link.
  • content in the web page may be customized and presented to the recipient based on the corresponding link.
  • different content on the web page may be presented to the different recipients, respectively.
  • all of the users may be directed to the same web page where a portion of the content on the web page is customized for each user.
  • Some embodiments disclosed herein include an article of manufacture such as a non-transitory computer storage medium having instructions stored thereon that are executable by a computing device to perform operations included in the method 400 of Figure 4, such as the operations illustrated by blocks 402, 404, 406, and/or 408 in Figure 4, and/or variations thereof.
  • the non-transitory computer storage medium may be included in or may be accessible to one or more of the client devices 111, 119, 121 of Figure 1.
  • the computing device may include any of the client devices 111, 119, 121, and/or a processor or other processing device of the client devices 111, 119, 121, such as the processor 113.
  • Figure 5 shows an example flow diagram of a method 500 of customizing content based on an associated link, arranged in accordance with at least some embodiments described herein.
  • the method 500 may be performed in whole or in part by, e.g., the server 101 and/or any of the client devices 111, 119, 121 of Figure 1.
  • the method 500 will be described as being performed on a client device. Although illustrated as discrete blocks, various blocks may be divided into additional blocks, combined into fewer blocks, or eliminated, depending on the desired implementation.
  • the method 500 may begin at block 502 in which a first document that includes a link pointing to a second document may be received.
  • a browser or an application on a client device performing the method 500 may receive an e-mail that includes a link to a web page.
  • data indicating a selection of the link may be received. For example, a user operating on the client device may click on the link in the first document to access the second document.
  • the second document pointed to by the link may be received.
  • the browser or the application on the client device may download the second document using the link.
  • the second document may be customized based on the link.
  • the second document may be customized based on information included in the link.
  • the information included in the link may include user specific information such as a user name and/or a user type.
  • Content in the second document may be customized based on the user specific information.
  • the link may include a pointer to a record of user information such as a user name, a user type, and/or other profile data associated with the user.
  • Content in the second document may be customized based on the record of user information.
  • the customization of the second document based on the link may include one or more of: (1) inserting new content into the second document; (2) showing some portions of content in the second document; and (3) hiding some other portions of content in the second document.
  • the second document may be rendered.
  • a customized version of the second document may be displayed on a display device so that the user may view the customized version of the second document on the display device.
  • Some embodiments disclosed herein include an article of manufacture such as a non-transitory computer storage medium having instructions stored thereon that are executable by a computing device to perform operations included in the method 500 of Figure 5, such as the operations illustrated by blocks 502, 503, 504, 506, and/or 508 in Figure 5, and/or variations thereof.
  • the non-transitory computer storage medium may be included in or may be accessible to one or more of the client devices 111, 119, 121 of Figure 1.
  • the computing device may include any of the client devices 111, 119, 121, and/or a processor or other processing device of the client devices 111, 119, 121, such as the processor 113.
  • Figure 6 includes a graphic representation 600 that illustrates aspects of an example embodiment of the methods of Figures 2-3, arranged in accordance with at least some embodiments described herein. With combined reference to Figures 1-3 and 6, an example embodiment of the methods 200 and 300 will now be described.
  • a document including multiple document pages 601 may be created.
  • the document includes Page 1, Page 2, Page 3, Page 4, and Page 5.
  • One or more layers may be added to a corresponding page of the document.
  • Layer 1-A is added to Page 1.
  • Layer 2-A, Layer 2-B, and Layer 2-C are added to Page 2.
  • Layer 3-A and Layer 3-B are added to Page 3.
  • Layer 4-A and Layer 4-B are added to Page 4.
  • Layer 5-A, Layer 5-B, and Layer 5-C are added to Page 5.
  • the document may be published on a publishing platform, allowing users to access the document.
  • the document may be rendered using different rendering paths 605.
  • Layer 1 -A on Page 1 will be rendered on a client device associated with the user.
  • Page 1 may act as a branch point of the document.
  • the document may continue being rendered on the client device using one of the following rendering paths: (1) a first rendering path including Layer 2-A on Page 2, Layer 3-A on Page 3, Layer 4-B on Page 4, and Layer 5-A on Page 5; (2) a second rendering path including Layer 2-B on Page 2, Layer 3-B on Page 3, Layer 4-A on Page 4, and one or more layers on Page 5 as described below; and (3) a third rendering path including Layer 2-C on Page 2 and Layer 5-B and Layer 5-C on Page 5.
  • Page 4 may act as another branch point of the document, e.g., a nested branch point.
  • the second rendering path may be split into two separate sub-paths based on the other input.
  • a first sub-path may include Layer 5-B on Page 5
  • a second sub-path may include Layer 5-B and Layer 5-C on Page 5.
  • content on Page 5 may be rendered on the client device using the first sub-path or the second sub-path.
  • Figure 7 includes a graphic representation 700 that illustrates example links 702 and 704, in accordance with at least some embodiments described herein.
  • the link 702 is associated with a first user (e.g., John ABC) and includes a name of the first user.
  • the link 704 is associated with a second user (e.g., Jane XYZ) and includes a name of the second user.
  • the links 702 and 704 may point to a common document such as a common web page.
  • the links 702 and 704 may be sent to the first user and the second user respectively using electronic mail merge.
  • the first user may receive a first copy of an e- mail including the link 702
  • the second user may receive a second copy of the e-mail including the link 704.
  • the common document may be customized for the first user based on the link 702.
  • a first customized version of the common document may be rendered on a first client device associated with the first user.
  • the second user selects the link 704 from the second copy of the e-mail
  • the common document may be customized for the second user based on the link 704.
  • a second customized version of the common document may be rendered on a second client device associated with the second user.
  • FIG 8 is a block diagram illustrating an example computing device 800 that is arranged for customizing content in documents, in accordance with at least some embodiments described herein.
  • the computing device 800 may be included in or correspond to any of the client devices 111, 119, 121, and/or the server 101 of Figure 1, for example.
  • the computing device 800 may typically include one or more processors 804 and a system memory 806.
  • a memory bus 808 may be used for communicating between the processor 804 and the system memory 806.
  • the processor 804 may be of any type including, but not limited to, a CPU, a ⁇ , a a DSP, or any combination thereof.
  • the processor 804 may include one or more levels of caching, such as a level one cache 810 and a level two cache 812, a processor core 814, and registers 816.
  • the example processor core 814 may include an arithmetic logic unit (ALU), a floating point unit (FPU), a digital signal processing core (DSP core), or any combination thereof.
  • An example memory controller 818 may also be used with the processor 804, or in some implementations the memory controller 818 may be an internal part of the processor 804.
  • the system memory 806 may be of any type including, but not limited to, volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory), or any combination thereof.
  • the system memory 806 may include an operating system (OS) 820, one or more applications 822, and program data 824.
  • the application 822 may include a browser 826, an app, an application server, or other application that may be arranged to perform one or more of the functions as described herein including those described with respect to the methods 200, 300, 400, and/or 500 of Figures 2-5.
  • the program data 824 may include document(s) 828 that may be pulled into the browser 826 for customizing content on one of the client devices 111, 119, 121 of Figure 1, for example.
  • the program data 824 may also include customization data that may be used to customize the documents 828 using the browser 826 or another application on the client devices 111, 119, 121 of Figure 1.
  • the application 822 may be arranged to operate with the program data 824 on the OS 820 such that implementations of methods for creating documents with one or more layers on each page of the documents, customizing content to be rendered in documents, distributing documents with links, and/or customizing content based on associated links, such as the methods 200, 300, 400, and 500 of Figures 2-5, may be provided as described herein.
  • the computing device 800 may have additional features or functionality, and additional interfaces to facilitate communications between the basic configuration 802 and any required devices and interfaces.
  • a bus/interface controller 830 may be used to facilitate communications between the basic configuration 802 and one or more data storage devices 832 via a storage interface bus 834.
  • the data storage devices 832 may be removable storage devices 836, non-removable storage devices 838, or a combination thereof.
  • removable storage and non-removable storage devices include magnetic disk devices such as flexible disk drives and hard-disk drives (HDD), optical disk drives such as compact disk (CD) drives or digital versatile disk (DVD) drives, solid state drives (SSD), and tape drives to name a few.
  • Example computer storage media may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, program modules, or other data.
  • the system memory 806, removable storage devices 836, and non-removable storage devices 838 are examples of computer storage media.
  • Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which may be used to store the desired information and which may be accessed by the computing device 800. Any such computer storage media may be part of the computing device 800.
  • the computing device 800 may also include an interface bus 840 for facilitating communication from various interface devices (e.g., output devices 842, peripheral interfaces 844, and communication devices 846) to the basic configuration 802 via the bus/interface controller 830.
  • Example output devices 842 include a graphics processing unit 848 and an audio processing unit 850, which may be configured to communicate to various external devices such as a display or speakers via one or more A/V ports 852.
  • Example peripheral interfaces 844 include a serial interface controller 854 or a parallel interface controller 856, which may be configured to communicate with external devices such as input devices (e.g., keyboard, mouse, pen, voice input device, touch input device) or other peripheral devices (e.g., printer, scanner) via one or more I/O ports 858.
  • the example communication device 846 may include a network controller 860, which may be arranged to facilitate communications with one or more other computing devices 862 over a network communication link via one or more communication ports 864.
  • the network communication link may be one example of a communication media.
  • Communication media may typically be embodied by computer-readable instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and may include any information delivery media.
  • a "modulated data signal" may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
  • communication media may include wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, radio frequency (RF), microwave, infrared (IR), and other wireless media.
  • RF radio frequency
  • IR infrared
  • the term computer-readable media as used herein may include both storage media and communication media.
  • the computing device 800 may be implemented as a portion of a small-form factor portable (or mobile) electronic device such as a cell phone, a personal data assistant (PDA), a personal media player device, a wireless web-watch device, a personal headset device, an application- specific device, or a hybrid device that includes any of the above functions.
  • a small-form factor portable (or mobile) electronic device such as a cell phone, a personal data assistant (PDA), a personal media player device, a wireless web-watch device, a personal headset device, an application- specific device, or a hybrid device that includes any of the above functions.
  • PDA personal data assistant
  • the computing device 800 may also be implemented as a personal computer including both laptop computer and non-laptop computer configurations.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

L'invention concerne un procédé de personnalisation de la restitution d'un document. Le procédé peut comprendre l'étape consistant à recevoir des données de personnalisation associées à la restitution du document. Le procédé peut de plus comprendre l'étape consistant à déterminer une ou plusieurs couches à restituer sur une ou plusieurs pages du document en se basant au moins en partie sur les données de personnalisation. Le procédé peut de plus comprendre l'étape consistant à déterminer une trajectoire de restitution comprenant la ou les couches sur la ou les pages. Le procédé peut de plus comprendre l'étape consistant à restituer le document en se basant au moins en partie sur la trajectoire de restitution.
PCT/US2015/039422 2014-07-07 2015-07-07 Personnalisation d'un contenu de documents WO2016007539A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
EP15818334.3A EP3167381A4 (fr) 2014-07-07 2015-07-07 Personnalisation d'un contenu de documents

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201414325072A 2014-07-07 2014-07-07
US14/325,072 2014-07-07

Publications (1)

Publication Number Publication Date
WO2016007539A1 true WO2016007539A1 (fr) 2016-01-14

Family

ID=55064783

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2015/039422 WO2016007539A1 (fr) 2014-07-07 2015-07-07 Personnalisation d'un contenu de documents

Country Status (2)

Country Link
EP (1) EP3167381A4 (fr)
WO (1) WO2016007539A1 (fr)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040062213A1 (en) * 1998-06-29 2004-04-01 Koss Michael C. Location-based web browsing
US20080065981A1 (en) * 2006-07-31 2008-03-13 Rich Voslow Custom document generation system and method
US20080082907A1 (en) * 2006-10-03 2008-04-03 Adobe Systems Incorporated Embedding Rendering Interface

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130080471A1 (en) * 2011-08-26 2013-03-28 Deborah Forte Interactive electronic reader with parental control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040062213A1 (en) * 1998-06-29 2004-04-01 Koss Michael C. Location-based web browsing
US20080065981A1 (en) * 2006-07-31 2008-03-13 Rich Voslow Custom document generation system and method
US20080082907A1 (en) * 2006-10-03 2008-04-03 Adobe Systems Incorporated Embedding Rendering Interface

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3167381A4 *

Also Published As

Publication number Publication date
EP3167381A4 (fr) 2018-02-28
EP3167381A1 (fr) 2017-05-17

Similar Documents

Publication Publication Date Title
US10769350B2 (en) Document link previewing and permissioning while composing an email
US10685471B2 (en) Methods and systems for playing video while transitioning from a content-item preview to the content item
KR102079816B1 (ko) 전자장치에서 콘텐츠 큐레이션 서비스를 제공하기 위한 방법 및 장치
JP6022540B2 (ja) 複数の動的アイコンパネルを更新するプッシュ通知
CN104769581B (zh) 用于提供经链接的笔记记录的系统和方法
US9465572B2 (en) Dynamic server-side image sizing for fidelity improvements
US20160162591A1 (en) Web Content Tagging and Filtering
EP3644160B1 (fr) Appareil et procédés d'extension de services d'application
JP6617179B2 (ja) コンテンツ内のハイライトコメントを処理するための方法およびシステム
US20180203839A1 (en) Fast page loading in hybrid applications
CN113254121A (zh) 与一个或多个扩展应用程序对接的消息应用程序
KR20180051590A (ko) 비-브라우저 애플리케이션들에서의 콘텐츠 통합
US20100235788A1 (en) Favorites list sharing
CN109074264B (zh) 一种用于跨程序的用户设置的方法和系统
JP2009540415A (ja) 端末への情報の自動配信を提供するための方法、装置、およびコンピュータプログラム
EP3357017A1 (fr) Commande de conversation et de version pour des objets dans des communications
CN110058854B (zh) 用于生成应用的方法、终端设备和计算机可读介质
CN113841181A (zh) 三维环境中的结构切换
US8346284B2 (en) Handheld electronic device
JP2020198102A (ja) 情報提示装置、情報提示システム、情報提示方法および情報提示プログラム
US10387519B2 (en) Method and system for automatic generation of personalized applications
US20140025595A1 (en) Applying for a job using social network information
WO2015116437A1 (fr) Fourniture de vue d'impression de document pour édition dans une application web
EP3167381A1 (fr) Personnalisation d'un contenu de documents
US9811333B2 (en) Using a version-specific resource catalog for resource management

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 15818334

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

REEP Request for entry into the european phase

Ref document number: 2015818334

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2015818334

Country of ref document: EP