The present invention relates to creating and facilitating electronic book publications with application programming interfaces and a book operating system.
The present invention includes a system and for executing electronic book content on an electronic device having a display screen on which one or more pages of content is displayed. The electronic book comprised three principle parts a book file, an auxiliary file containing entity details and at least trigger based on a reference to a Canonical Fragment Identifier (“CFI”, hereafter), and a reference file that contains an index to the auxiliary file. Each of these files are stored in the memory of the electronic device, e.g., an e-book reading device.
As the electronic device executes the book file it utilizes the reference file as an index for the auxiliary file. The auxiliary file and the reference file are examined during this execution the trigger is executed when an associated CFI is visible on a current page as viewed by a user.
Electronic book readers have been warmly received by avid book readers worldwide and allow mobile access and portability of reading and viewing electronic books and publications (“e-books”, hereafter). One well established e-book standard, “EPUB,” is a free and open e-book standard by the International Digital Publishing Forum (IDPF).
Presently, electronic book and publication creators do not have standard application programming interfaces or any means to efficiently reuse or create e-books. For example, creators need to copy and paste scripts to create e-books.
The subject matter of the present invention is particularity pointed out and distinctly described in the present specification. The subject matter of the present invention, however, both as to organization and method of operation, together with objects, features, and advantages thereof, may best be understood by reference to the following detailed description when read with the accompanying drawings in which:
As previously discussed, electronic book and publication creators do not have standard application programming interfaces or any means to efficiently create and/or reuse the interactive elements of eBooks. For example, creators need to copy and paste scripts.
The present invention facilitates creation of interactive electronic book files by defining and utilizing application programming interfaces to facilitate execution of scripts to facilitate display, execution, graphic icons, audio, and graphics, and any insertion of content. In one embodiment, a generic electronic book in EPUB format is enhanced by utilizing an auxiliary file that is coupled to a particular book or publication.
Hyperlinking on the Web has been a large benefit to facilitate access to information. Unfortunately. EPUB publications have been denied much of the benefit that hyperlinking makes possible, primarily because of the lack of a standardized scheme to link into them.
Although proprietary schemes have been developed and implemented for individual reading systems, it is difficult to achieve cross-platform interoperability without a commonly understood syntax. Furthermore, the functionality that can see significant benefit from breaking down this barrier is varied. For example, functional improvements include reading location maintenance, annotation attachment, navigation, and the ability to point into any publication. These improvements open a new dimension not previously available to developers and authors.
One attempted solution is to define an arbitrary structural reference that uniquely identifies any location or simple range of locations in a publication. The EPUB Canonical Fragment Identifiers (“CFI”, hereafter) specification has been developed by IDPF.
Presently, EPUB book files contain CFI. In one embodiment, the present invention utilizes an auxiliary file to contain information details that correlate to an index in a reference file. The auxiliary file may be in a .xml format and comprises CFI. Also, in another embodiment, the data may be represented as JavaScript Object Notation (JSON) with equivalent functionality. In one aspect, the CFI acts as “directions” to a particular point or range within the electronic book. For example,
Furthermore, the reference file, which also may be in an .xml format in one embodiment, is utilized as an index for the auxiliary file. Upon examination of both the reference file and the auxiliary file, a trigger could result when an associated CFI is visible on a current page as viewed by the user.
Consequently, the present invention facilitates executing a script, or loading a page, or playing a video underlay or overlay, animating via means other than scripting (Cascading Style Sheets (CSS) animations) or fading the content a page in or out, and that is displayed over, under, or to the side of the present page. For example,
Table 1 depicts several pages of an auxiliary file, as utilized by an embodiment to contain information details that correlate to an index in a reference file as shown in Table 2.
indicates data missing or illegible when filed
Table 2 depicts two pages of a reference file that is utilized as an index for the auxiliary file depicted in Table 1;
indicates data missing or illegible when filed
Table 1 depicts several pages of an auxiliary file, as utilized by an embodiment to contain information details that correlate to an index in a reference file as shown in Table 2. As discussed earlier, the present invention creates and utilizes an auxiliary file to contain information details that correlate to an index in a reference file. The auxiliary file may be in a .xml format and comprises CFI. In one aspect, the CFI acts as “directions” to a particular point or range within the electronic book. For example,
In Table 1, which depicts an embodiment of an auxiliary file which is in a XML file format, contains the information entity details, various scripts that may be enabled, used, configured, or referenced, names of characters in the book, settings, and trigger points for when an associated CFI is visible on a current page to initiate or run a script to load a page and display.
One skilled in the art appreciates and understands the syntax depicted in the XML format. Nonetheless, the following explanation will articulate the portions of the Figure for ease of the audience.
In Table 1, a brief summary of content specific tabs is listed along with an identity map for several characters. Table 1 additionally depicts a list of locations that are in the book that incrementally reveal knowledge about the character at that associated location based on the CFI.
In one embodiment, the default tabs are available. For example, for a fiction story, people, places and terms could be default tabs. For other types of stories, one may utilize other types of default tabs.
In Table 1, a list of trigger points is depicted . As discussed earlier, the trigger points are used when an associated CFI is visible on a current page to initiate or run a script to load a page and display. For example in the depicted embodiment for the first trigger point, an icon “playOverlay.png” is defined and a script file “OEBPS/script/RogOverlay.js” is initiated upon the trigger being set when the associated CFI is visible on the current page. Consequently, an icon for a play button might be displayed for this embodiment (as depicted in
The transition from conventional book view to a new window display is shown from transitioning from
Table 2 shows two pages of a reference file that is utilized as an index for the auxiliary file depicted in Table 1. As discussed earlier, the reference file, which also may be in an .xml format in one embodiment, is utilized as an index for the auxiliary file. Upon execution of both the reference file and auxiliary file, a trigger could result when an associated CFI is visible on a current page as viewed by the user. Consequently, the present invention initiates or executes a script, or loads a page, displays an image, etc.
In one embodiment, the reference file and auxiliary file are separate files, in contrast, in another embodiment, the information could be combined from both files into a single file. In this specific embodiment, the reference file acts as an index and articulates the specific character information, setting, etc. and associated CFIs to facilitate the trigger point and displaying of the information as previously discussed.
Electronic device 130 can include any suitable type of electronic device. For example, electronic device 130 can include a portable electronic device that the user may hold in his or her hand, such as a digital media player, a personal e-mail device, a personal data assistant (“PDA”), a cellular telephone, a handheld gaming device, a tablet device or an eBook reader. As another example, electronic device 130 can include a larger portable electronic device, such as a laptop computer. As yet another example, electronic device 130 can include a substantially fixed electronic device, such as a desktop computer.
Control circuitry 500 can include any processing circuitry or processor operative to control the operations and performance of electronic device 130. For example, control circuitry 500 can be used to run operating system applications, firmware applications, media playback applications, media editing applications, or any other application. Control circuitry 500 can drive the display 550 and process inputs received from a user interface, e.g., the display 550 if it is a touch screen.
Storage 510 can include, for example, one or more tangible, non-transitory computer storage mediums including a hard-drive, solid state drive, flash memory, permanent memory such as ROM, magnetic, optical, semiconductor, paper, or any other suitable type of storage component, or any combination thereof. Storage 510 can store, for example, media content, e.g., eBooks, music and video files, application data, e.g., software for implementing functions on electronic device 130, firmware, user preference information data, e.g., content preferences, authentication information, e.g., libraries of data associated with authorized users, transaction information data, e.g., information such as credit card information, wireless connection information data, e.g., information that can enable electronic device 130 to establish a wireless connection), subscription information data, e.g., information that keeps track of podcasts or television shows or other media a user subscribes to, contact information data, e.g., telephone numbers and email addresses, calendar information data, and any other suitable data or any combination thereof. The instructions for implementing the functions of the present invention may, as non-limiting examples, comprise software and/or scripts stored in the computer-readable media 510.
Memory 520 can include cache memory, semi-permanent memory such as RAM, and/or one or more different types of memory used for temporarily storing data. In some embodiments, memory 520 can also be used for storing data and instructions used to operate electronic device applications, or any other type of data that can be stored in storage 510. In some embodiments, memory 520 and storage 510 can be combined as a single storage medium.
I/O circuitry 530 can be operative to convert, and encode/decode, if necessary analog signals and other signals into digital data. In some embodiments, I/O circuitry 530 can also convert digital data into any other type of signal, and vice-versa. For example, I/O circuitry 530 can receive and convert physical contact inputs, e.g., from a multi-touch screen, i.e., display 550, physical movements, e.g., from a mouse or sensor, analog audio signals, e.g., from a microphone, or any other input. The digital data can be provided to and received from control circuitry 500, storage 510, and memory 520, or any other component of electronic device 130. Although I/O circuitry 530 is illustrated in this Figure as a single component of electronic device 130, several instances of I/O circuitry 530 can be included in electronic device 130.
Electronic device 130 can include any suitable interface or component for allowing a user to provide inputs to I/O circuitry 530. For example, electronic device 130 can include any suitable input mechanism, such as a button, keypad, dial, a click wheel, or a touch screen, e.g., display 550. In some embodiments, electronic device 130 can include a capacitive sensing mechanism, or a multi-touch capacitive sensing mechanism.
In some embodiments, electronic device 130 can include specialized output circuitry associated with output devices such as, for example, one or more audio outputs. The audio output can include one or more speakers, e.g., mono or stereo speakers, built into electronic device 130, or an audio component that is remotely coupled to electronic device 130, e.g., a headset, headphones or earbuds that can be coupled to device 130 with a wire or wirelessly.
Display 550 includes the display and display circuitry for providing a display visible to the user. For example, the display circuitry can include a screen, e.g., an LCD screen, that is incorporated in electronics device 130. In some embodiments, the display circuitry can include a coder/decoder (Codec) to convert digital media data into analog signals. For example, the display circuitry or other appropriate circuitry within electronic device 1 can include video Codecs, audio Codecs, or any other suitable type of Codec.
The display circuitry also can include display driver circuitry, circuitry for driving display drivers, or both. The display circuitry can be operative to display content, e.g., media playback information, application screens for applications implemented on the electronic device 130, information regarding ongoing communications operations, information regarding incoming communications requests, or device operation screens, under the direction of control circuitry 500. Alternatively, the display circuitry can be operative to provide instructions to a remote display.
Communications circuitry 540 can include any suitable communications circuitry operative to connect to a communications network and to transmit communications, e.g., data from electronic device 130 to other devices within the communications network. Communications circuitry 540 can be operative to interface with the communications network using any suitable communications protocol such as, for example, e.g., a 802.1 protocol, Bluetooth, radio frequency systems, e.g., 900 MHz, 1.4 GHz, and 5.6 GHz communication systems, infrared, GSM, GSM plus EDGE, CDMA, quadband, and other cellular protocols, VOIP, or any other suitable protocol.
Electronic device 130 can include one more instances of communications circuitry 540 for simultaneously performing several communications operations using different communications networks, although only one is shown in this Figure to avoid overcomplicating the drawing. For example, electronic device 130 can include a first instance of communications circuitry 540 for communicating over a cellular network, and a second instance of communications circuitry 540 for communicating over Wi-Fi or using Bluetooth. In some embodiments, the same instance of communications circuitry 540 can be operative to provide for communications over several communications networks.
In some embodiments, electronic device 130 can be coupled to a host device such as digital content control server 150 for data transfers, synching the communications device, software or firmware updates, providing performance information to a remote source, e.g., providing riding characteristics to a remote server, or performing any other suitable operation that can require electronic device 130 to be coupled to a host device. Several electronic devices 130 can be coupled to a single host device using the host device as a server. Alternatively or additionally, electronic device 130 can be coupled to several host devices, e.g., for each of the plurality of the host devices to serve as a backup for data stored in electronic device 130.
Although the present invention has been described in relation to particular embodiments thereof, many other variations and other uses will be apparent to those skilled in the art. It is preferred, therefore, that the present invention be limited not by the specific disclosure herein, but only by the gist and scope of the disclosure.
Number | Date | Country | |
---|---|---|---|
61656248 | Jun 2012 | US | |
61656267 | Jun 2012 | US |