Abstract:
Collaborative generation of digital content with interactive reports is enabled. An editor selects a layout and assigns story blocks to authors. Story blocks include a textual component and an interactive report component. In one embodiment, the interactive report includes static data captured at authorship time. In another embodiment, the interactive report includes live data updated at read time. After an author creates a story block, it is submitted to the editor for review and approval. The editor may send the story block back to the author for subsequent editing prior to approval. Once the editor approves all of the content from all of the authors, the editor can publish the content. The resulting content is published as an interactive report or magazine, enabling readers to see not just the story content of the publication, but to interact with the reports and underlying data.

Description:
CROSS-REFERENCE TO RELATED APPLICATION 
     This application claims the benefit of U.S. Provisional Application No. 61/486,750, entitled “Collaborative Generation of Digital Content with Interactive Reports,” filed May 16, 2011, which is incorporated herein by reference in its entirety. 
    
    
     BACKGROUND 
     1. Field 
     The disclosure generally relates to collaborative generation of digital content with interactive reports. In particular, described embodiments enable creation of interactive analytic reports embedded into multidimensional pages. 
     2. Description of Related Art 
     Digital content is typically edited either by a single editor, or without any access control. Digital editions of media publications such as newspapers, magazines, annual reports, and the like are typically scanned or high-resolution versions of the same documents published on paper. 
     SUMMARY 
     Collaborative generation of digital content with interactive reports is enabled. An editor selects a layout and assigns each of a plurality of stories to an author. The author accepts or rejects the assignment. Stories typically include a textual component and an interactive report component. In one embodiment, the interactive report includes static data captured at authorship time. In another embodiment, the interactive report includes live data updated at read time. After an author creates a story, it is submitted to the editor for review and approval. The editor has the opportunity to send the story back to the original owner for subsequent editing prior to approval. Once the editor approves all of the content from all of the authors, the editor can publish the content. The resulting content is published as an interactive report or magazine, enabling readers to see not just the story content of the publication, but to interact with the reports and underlying data. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram of a system for collaborative generation of digital content with interactive reports in accordance with one embodiment. 
         FIG. 2  illustrates a layout interface according to one embodiment. 
         FIG. 3  illustrates a layout and assignment view of a page in accordance with one embodiment. 
         FIG. 4  illustrates a manner in which an editor assigns a story in one embodiment. 
         FIG. 5  is a screen shot including a story block assigned to an author in accordance with one embodiment. 
         FIG. 6  is a screen shot illustrating an author&#39;s assignment view in accordance with one embodiment. 
         FIG. 7  illustrates a layout interface according to one embodiment. 
         FIG. 8  illustrates a layout interface according to one embodiment. 
         FIG. 9  illustrates an editor user interface for approving a submitted story in accordance with one embodiment. 
         FIG. 10  illustrates steps in a method for collaborative generation of digital content with interactive reports in accordance with one embodiment. 
     
    
    
     DETAILED DESCRIPTION 
       FIG. 1  is a block diagram of a system  100  for collaborative creation of an interactive report in accordance with one embodiment. System  100  includes an assignment engine  102 , content supervisor module  104 , publisher module  106 , content database  108 , and report integrator  114 . Also included in  FIG. 1  is an editor  110  and author  112 . 
     Assignment engine  102  maintains information about which assignments have been made to which authors, and the status of each assignment. Content supervisor  104  controls access to content stored in content database  108 , and provides an interface to editor  110  and author  112  for editing and authoring of content. Report integrator  114  facilitates integration of interactive reports into content stories. Publisher module  106  terminates the authoring, editing and assignment phases of the report and initiates the publication cycle. The function of each module is described further below. 
     Editor  110  is responsible for assigning tasks to authors  112 , reviewing submitted content, and approving submitted content. Editor  110  is also responsible for layout of the digital report. Authors  112  receive assignments to contribute content, and either accept or reject the assignments. Once created, authors  112  submit their content for review by editor  112  and subsequent publication. Although only one editor  110  and one author  112  are included in  FIG. 1 , multiple instances of each may interact with system  100 . 
       FIG. 2  illustrates a layout interface  200  according to one embodiment. Editor  110  uses layout interface  200  to add pages to the digital publication, e.g., by selecting the “+New Page” button  214 . Another control element, “My Projects”  202  returns the view to a list of all available publications. Within the layout interface  200 , each of the pages  204 ,  208 ,  210 ,  206 ,  212  currently included in the publication layout is displayed. Editor  110  can select one of the pages, for example by double-tapping or double-clicking on the page. 
       FIG. 3  illustrates a layout and assignment view of a page  300  in accordance with one embodiment. The displayed page  300  includes a first story block  302  and a second story block  306 . The first story block  302  has already been authored, and includes authored story content  310  and integrated report  304 . The second story block  306  does not include any content, but does illustrate a default layout, including a story text area on the left and an integrated report area  308  to the right. The default layout in one embodiment is created at implementation time, and in various embodiments is customizable by editor  110 . 
       FIG. 4  illustrates a manner in which editor  110  assigns a story in one embodiment. First, the editor  110  selects the block on the page to be assigned, in this case block  306 . Editor  110  next activates the “assign writer” control  402 , which in the illustrated embodiment is an icon at the top of the display. Activating the control causes assignment engine  102  to display a list  404  of authors  112  to whom the story can be assigned. In one embodiment, a control icon such as a “+” sign enables addition of an author not already listed. When an author  110  is selected, assignment engine  102  in one embodiment contacts the author  112 , e.g., via e-mail, pager, telephone, or client software, to inform the author  112  of the assignment. In one embodiment, the author  112  may accept or decline the assignment. Once the assignment has been made, the story block area  306  is updated to reflect the assignment, as is shown in  FIG. 5 . 
       FIG. 6  is a screen shot illustrating an author&#39;s assignment view. Assignment engine  102  maintains a mapping between authors  112  and story blocks. In a first region  602 , the author&#39;s assignment view lists each of the assignments made to and accepted by the author  112 , the editor who made the assignment, when the assignment was accepted, when the content was last edited, and whether the assignment has been assigned, submitted or accepted. When a particular assignment is selected, e.g., by highlighting or clicking, additional information about the assignment is displayed in a second region  604 , including, for example, a preview of the content. Additional controls enable the author  112  to open  606  the content to begin or continue editing, or to submit  608  the content once complete. 
     As noted, a story block in various embodiments includes both story text  310  ( FIG. 3 ) and an integrated interactive report  304 . The interactive report enables a reader of the published content to interact with the report and its underlying data. In various embodiments, interactions include viewing, analyzing, modifying and sharing the report visualization. Examples of suitable interactive reports include those provided by MeLLmo Inc. of Solana Beach, Calif. In one embodiment, author  112  uses report integrator  114  to select from among available reports for insertion into the story block. Report integrator  114  in one embodiment makes a copy of the report available to content supervisor  104 , which inserts the copy of the report into the story block. In this manner, the report continues to be interactive, but the underlying data from which the report was created is a static copy. In an alternative embodiment, report integrator  114  links the integrated report to a live data source, such that if the underlying data changes, the published report changes as well. 
       FIG. 7  provides another example of a layout interface  700  in accordance with one embodiment. In this view, each story block is labeled and/or color coded to illustrate its status. For example, cover  702 , table of contents  704  and page  708  are colored green, indicating that their contents have been approved by editor  110  and are ready for publication. Story blocks  706  and  712  are grey and marked “Unassigned,” indicating that the story blocks have not yet been assigned to an author. Story block  714  is orange, and marked as “Submitted,” indicating that author  112  has submitted content for review by editor  110 . Story block  710  is blue and marked “Assigned,” indicating that an author  112  has been assigned to prepare the content for that story block. Finally, story block  716  is colored red and marked “Declined,” indicating that the author  112  assigned to write the story has declined to prepare it. Note that the particular coloring and wording above is only an example, and is at the discretion of the implementer. 
     In one embodiment, editor  110  can obtain more information about any of the story blocks by mousing over, pointing to, touching or otherwise gesturing to a particular story block. Referring to  FIG. 8 , it can be seen that author “Claire Remillard” submitted a story on Feb. 14, 2010 as indicated in information bubble  802 . 
     When an author  112  submits a story for review by editor  110 , assignment engine  102  marks the status of the assignment as “Submitted,” and content supervisor  104  informs editor  110  that the story is available for review, e.g., via e-mail or through a dashboard interface of system  100 . Referring to  FIG. 9 , editor  110  views the submitted content, and using interface controls either approves  902  or revises  904  the story. If the editor  110  revises the story, revisions and comments are returned to author  112  for execution of the changes. If editor  110  approves the story, assignment engine  102  marks the story as accepted, and content supervisor  104  locks in the content as ready for publication. 
       FIG. 10  is a flowchart illustrating a method for collaborative creation of an interactive digital publication in accordance with one embodiment. Editor  110  sets  1000  an initial layout, including number of pages, arrangement of story blocks within each page, and the like. In one embodiment, editor  110  creates the layout from scratch. In alternative embodiments, predefined templates are available. Once the layout has been selected  1000 , editor  110  then selects  1002  a particular story block to assign, as described above with respect to  FIG. 4 . Editor  110  then chooses  1004  an author  112  from the list of available authors  112 , or adds a new author name to the list. Once the selection is made, assignment engine  102  creates a mapping from the story block to the author  112 , and notifies  1006  the author  112  of the assignment, e.g., by e-mail, text, telephone or via a client interface. If  1008  author  112  accepts the assignment, content supervisor  104  makes the story block available for editing by author  112 . In one embodiment, only an author  112  assigned to a particular story block can edit content for that story block, in order to provide appropriate security and avoid editing collisions. If the author  112  does not accept  1008  the assignment, editor  110  is notified and chooses  1010  a different author to whom to assign the story. 
     Author  112  then creates  1012  the requested content, and includes one or more interactive reports, which are then inserted by report integrator  114 . Once the author  112  submits the story, assignment engine  102  marks the story as submitted and notifies editor  110 . Content supervisor  104  in one embodiment then locks the content so that only editor  110  can make further changes. Editor  110  then reviews  1014  the content, and determines whether  1016  it is ready for publication. If so, editor  110  approves  1020  the submission, and assignment engine  102  changes the status to “accepted”. Alternatively, if the editor  110  wants the author  112  to make revisions to the story, the story is returned  1018  to the author, assignment engine  102  changes the status to “assigned,” and content supervisor  104  locks the content for editing by author  112 . 
     Once editor  110  has approved  1022  all content, the content can be published  1024 , e.g., in the format of a digital magazine, which includes embedded interactive analytics. Publisher  106  includes logic to make the publication available either to a distribution list, via a URL on a publisher web site, or through manual distribution, e.g., e-mail. In one embodiment, viewers read the published content using client software such as software available from MeLLmo Inc. adapted for such a purpose. In various embodiments, publisher  106  produces revised versions of the publication in response to updates provided by editor  110 , for example if an error is detected after the initial publication. In various embodiments, consumers subscribe to a notification system and receive the update automatically, e.g., by syncing a device, an over-the-air update, via e-mail, etc. 
     In addition to the embodiments specifically described above, those of skill in the art will appreciate that the invention may additionally be practiced in other embodiments. 
     Within this written description, the particular naming of the components, capitalization of terms, the attributes, data structures, or any other programming or structural aspect is not mandatory or significant unless otherwise noted, and the mechanisms that implement the described invention or its features may have different names, formats, or protocols. Further, the system may be implemented via a combination of hardware and software, as described, or entirely in hardware elements. Also, the particular division of functionality between the various system components described here is not mandatory; functions performed by a single module or system component may instead be performed by multiple components, and functions performed by multiple components may instead be performed by a single component. Likewise, the order in which method steps are performed is not mandatory unless otherwise noted or logically required. It should be noted that the process steps and instructions of the present invention could be embodied in software, firmware or hardware, and when embodied in software, could be downloaded to reside on and be operated from different platforms used by real time network operating systems. 
     Algorithmic descriptions and representations included in this description are understood to be implemented by computer programs. Furthermore, it has also proven convenient at times, to refer to these arrangements of operations as modules or code devices, without loss of generality. 
     Unless otherwise indicated, discussions utilizing terms such as “selecting” or “computing” or “determining” or the like refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system memories or registers or other such information storage, transmission or display devices. 
     The present invention also relates to an apparatus for performing the operations herein. This apparatus may be specially constructed for the required purposes, or it may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer readable storage medium, such as, but is not limited to, any type of disk including floppy disks, optical disks, DVDs, CD-ROMs, magnetic-optical disks, read-only memories (ROMs), random access memories (RAMs), EPROMs, EEPROMs, magnetic or optical cards, application specific integrated circuits (ASICs), or any type of media suitable for storing electronic instructions, and each coupled to a computer system bus. Furthermore, the computers referred to in the specification may include a single processor or may be architectures employing multiple processor designs for increased computing capability. 
     The algorithms and displays presented are not inherently related to any particular computer or other apparatus. Various general-purpose systems may also be used with programs in accordance with the teachings above, or it may prove convenient to construct more specialized apparatus to perform the required method steps. The required structure for a variety of these systems will appear from the description above. In addition, a variety of programming languages may be used to implement the teachings above. 
     Finally, it should be noted that the language used in the specification has been principally selected for readability and instructional purposes, and may not have been selected to delineate or circumscribe the inventive subject matter. Accordingly, the disclosure of the present invention is intended to be illustrative, but not limiting, of the scope of the invention. Various modifications, changes and variations, which will be apparent to those skilled in the art, may be made in the arrangement, operation and details of the method and apparatus disclosed herein without departing from the spirit and scope defined in the appended claims.