Digital publisher's produce printed and electronic books, magazines and other viewable material on demand. Such products can be referred to as publications. Publications, in this context, are products that when produced convey information to a viewer. A publication can take the physical form of a printed product or the form of an electronic product such as an eBook. The raw materials of a publication include digital content that can be processed to generate the publication and metadata associated with the publication. Such metadata can be used to identify the publication's title, author, price and any other associated information that may be used to advertize the publication.
INTRODUCTION: As industry shifts from analog to digital publishing, the raw materials for collections of publications are obtained and made available for on demand fulfillment of those publications. Prior to delivering the content of a publication for production, the content needs to be first qualified to ensure that it can be used to produce a requested publication, when produced, the publication meets or exceeds some predetermined standard. The qualification of content for larger collections can take significant amounts of time and can prove to be a major expense in enabling the fulfillment of on demand publication orders.
Various embodiments described below were developed in an effort to enable collections of publications to be advertised or otherwise offered for on-demand production without first confirming that the content for any product can be qualified. In a particular example, metadata and content for each of a plurality of publications are obtained. The plurality of publications are advertised as being available for production without first confirming that content for any of the plurality of publications can be qualified. Once a given one of the advertised publications is ordered, an attempt is made to qualify the content for that publication. The order is fulfilled with qualified content only if the attempt is successful.
The following description is broken into sections. The first, labeled “Environment,” describes an exemplary environment in which various embodiments may be implemented. The second section, labeled “Components,” describes examples of various physical and logical components for implementing various embodiments. The third section, labeled as “Operation,” describes steps taken to implement various embodiments.
ENVIRONMENT:
Fulfillment device 14 represents generally any computing device configured to obtain the raw materials from content owner 12 and utilizing those materials to fulfill orders for the publications. Data store 16 represents generally any memory device that can be used to store the raw materials obtained from content owner 12.
Order device 18 represents generally any computing device that can be used to place orders for publications from fulfillment device 14. Production service 20 represents resources configured to produce printed publications such as books, magazines, and the like. Production service 22 represents resources configured to produce electronic publications such as eBooks.
Link 24 represents generally one or more of a cable, wireless, fiber optic, or remote connections via a telecommunication link, an infrared link a radio frequency link, or any other connectors or systems that provide electronic communication. Link 24 may include, at least in part, an intranet, the Internet, or a combination of both Link 24 may also include intermediate proxies, routers, switches, load balancers, and the like.
In the example of
COMPONENTS:
In the example of
Catalog service 26 is also responsible for advertising the availability of the plurality of publications for production without first confirming that content for any of the plurality of publications can be qualified for production. Advertising, in this context, can include communicating electronic data representing a catalog that lists the plurality of publications as being available for production. With respect to
Content service 28 represents generally any combination of hardware and programming configured to obtain content for the plurality of publications, attempt to qualify content for an ordered one of the publications having been advertised by the catalog service, and to fulfill the order with qualified content only if the attempt is successful. Again referring to
Ingesting can include characterizing the content and, if indicated by the characterization, converting the content to a format from which it can be used to produce the publication. It is initially noted that the characterization may indicate that a conversion would not be successful or that the content is suitable as is and need not be converted to be used for producing the publication. When characterizing the content, the details of the content are examined. For example content is examined to determine whether the content file or files appear to be intact. An intact PDF file should end in “%%EOF”. The content is also examined to identify color and page characteristics. With respect to color, content may be mono or may have color. With respect to page characteristics, content can be examined to extract a page count, page dimensions, and page orientations. The content can be examined to determine if page sizes and orientations are consistent. The content can be examined to determine if the pages contain images, text, or both, and, if both, which if either is predominant.
As noted, content service 28 is responsible for making a determination as to whether ingested content can be used to produce the ordered publication at or above a predetermined standard. In doing so, content service 28 may evaluate the information gleaned from characterizing the content and the results of converting the content. It is noted, however, that ingesting the content may not result in the content being converted. Such may be because content service 28 determines that, based on the characterization, the content is ready for use to produce the publication as is. Alternatively, content service 28 may determine based on the characterization that the content is simply not suitable for converting.
Take a collection of novels for example. It may be desirable to offer multiple publications for each novel:
Before catalog service 26 advertises publications as being available for production, content service 28, in an example, is responsible for performing a sanity check on the content for each publication. In this example, catalog service 26 advertises a publication if the content for that publication passes the sanity check. A sanity check is an examination of the content to determine a likelihood that that the content can be used to produce a given publication and is less comprehensive and computationally intensive than qualifying the content as discussed above. In performing a sanity check on PDF content for an eReader publication, for example, the PDF content may be examined to determine if it contains true vectors, fonts and pictures. If so, then there is a reasonable likelihood that the content can be used to produce the eReader publication. If instead, the PDF is all page scans, resealing the content is much more difficult and the content is not suitable for an eReader publication due to the likely size and aspect-ratio mismatches. In the latter case, content service 28 reports to catalog service failure of the sanity check, and catalog service refrains from advertising that given publication.
Data store 16 is shown to include a collection of publication materials 30. In this example, these are depicted as records 30 each corresponding to a particular publication. Each record 30 is associated with a given publication and includes metadata 32, content 34, and status 36. As catalog service 26 obtains metadata it populates records 30. Likewise, as content service 28 obtains content it populates records 30 with that content. After performing a sanity check on the content of a record 30, content service 28, the results are made available as status 36 in that record 30. Thus, prior to advertising the publication associated with record 30, catalog service 26 reviews status 36 to confirm that the content for the publication has passed the sanity check.
After attempting to qualify content 34 for a given record 30, content service 28 updates status 36 for that record 30 to indicate either the content passed or failed the qualification. If status 36 indicated that the content 34 failed qualification, catalog service 26, in an example, is responsible for no longer advertising the associated publication as available for production. As described above, a failed qualification is an indication that the corresponding content 34 cannot be used to produce the publication at or above a predetermined standard. Where catalog service 26 generates a catalog of publications, it removes the publication associated with status 36 reflective of a qualification failure.
In the example of
If content distribution service 40 determines that the content fails qualification, order distribution service 30 is responsible for rejecting the order of the given publication. Upon a determination that the content has passed qualification and can be used to produce the publication at or above the predetermined standard, order distribution service 40 is responsible for communicating a production instruction for the content. Content distribution service 38 is responsible for communicating the ingested content for use in producing the ordered publication according to the production instruction. Referring to
Upon receiving an order for a publication, content distribution service 38 may examine status 36 of record 30 associated with the publication. Where status 36 indicates that content 34 for record 30 has already passed qualification, order distribution service 38 may communicate the production instruction without first requesting that the content distribution service 40 ingest the content for the ordered publication. Where content for a given publication has passed qualification, content distribution service 40 can then communicate the previously ingested content so that it may be used to produce the publication.
In foregoing discussion, various components were described as combinations of hardware and programming. Such components may be implemented in a number of fashions. Looking at
In one example, the program instructions can be part of an installation package that when installed can be executed by processor 44 to implement system 25. In this case, memory 42 may be a portable medium such as a CD, DVD, or flash drive or a memory maintained by a server from which the installation package can be downloaded and installed. In another example, the program instructions may be part of an application or applications already installed. Here, memory 42 can include integrated memory such as a hard drive.
In
As a further example,
Memory 50 is shown to include operating, system 56 and applications 58. Operating system 56 represents a collection of programs that when executed by processor 52 serve as a platform on which applications 58 can run. Examples of operating systems include, but are not limited, to various versions of Microsoft's Windows® and Linux®. Applications 58 represent program instructions that when execute by processor 52 implement system 25 of
Looking at
OPERATION:
The availability of the plurality of products for production is advertised without first confirming that content for any of the plurality of publications can be successfully qualified (step 62). Referring to
An attempt is made to qualify the content for an ordered one of the publications having been advertised (step 64). That order is fulfilled with qualified content only if the attempt is successful (step 65). Step 64, for example, can include receiving the order, ingesting the content for the ordered publication, and determining if the ingested content can be used to produce the ordered publication at or above a predetermined standard. Ingesting can include characterizing the content and, if indicated by the characterization, converting the content to a format from which it can be used to produce the publication. Referring to
Step 65 can include upon a determination that the content can be used to produce the publication at or above the predetermined standard, communicating a production instruction for the content and communicating the ingested content for use in producing the ordered publication according to the production instruction. Upon a determination that the content cannot be used to produce the ordered publication at or above the predetermined standard, a rejection of the order may be communicated and the particular one of the publications ceased to be advertised.
Upon a determination that the content can be used to produce the ordered publication at or above the predetermined standard, the content may be identified as qualified. Referring to
Order distribution service 38 receives an order for a specified one of the collection of publications from order service 18 (step 74) and communicates an ingestion request to content distribution service 40 (step 76). Content distribution service 40 ingests the content for the ordered publication and determines if that content can be used to produce the ordered publication at or above a predetermined standard (step 78). Content distribution service 40 communicates the results to catalog service 26 (step 80), so that catalog service 26 can update the status of the publication and cease to advertise the publication if the content failed qualification (step 82).
Catalog service 26 informs order distribution service 38 as to whether or not the order for the publication can be fulfilled (step 84). If the order cannot be fulfilled, order distribution service 38 communicates a rejection to order device 18 (step 86a). If the order can be fulfilled, order distribution service 38 communicates a production instruction to production service 20 or 22 (step 86b). Content distribution service 40 then communicates the content ingested for the ordered publication to production service 20 or 22 (step 88).
CONCLUSION:
Embodiments can be realized in any computer-readable media for use by or in connection with an instruction execution system such as a computer/processor based system or an ASIC (Application Specific Integrated Circuit) or other system that can fetch or obtain the logic from computer-readable media and execute the instructions contained therein. “Computer-readable media” can be any media that can contain, store, or maintain programs and data for use by or in connection with the instruction execution system. Computer readable media can comprise any one of many physical media such as, for example, electronic, magnetic, optical, electromagnetic, or semiconductor media. More specific examples of suitable computer-readable media include, but are not limited to, a portable magnetic computer diskette such as floppy diskettes or hard drives, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory, or a portable compact disc.
Although the flow diagram of
The present invention has been shown and described with reference to the foregoing exemplary embodiments. It is to be understood, however, that other forms, details and embodiments may be made without departing from the spirit and scope of the invention that is defined in the following claims.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US2011/045989 | 7/29/2011 | WO | 00 | 1/27/2014 |