Apparatus and methods for creating, updating, and using learning tools
First Claim
1. An apparatus that is a system for automated creation, update, distribution, acquisition, and use of learning tools, comprisingone or more tables or databases of unique identifier containers for data elements or linked sets of data elements, each said unique identifier container comprising a unique identifier, a reference to a data element or references to a linked set of data elements, a hash code for each reference, and classification information,one or more learning tools that each comprise presentation and data structures, data, references, and unique identifier containers, said learning tool or tools residing in a computer-readable memory,learning tool descriptors for each learning tool wherein each said learning tool descriptor comprises a description of the learning tool, information and instructions on locating and downloading the learning tool and any associated files, verification information, and version information,one or more learning tool engines comprising a computing device, user interface components, computer-readable memory, and computer instructions, said one or more learning tool engines providing user interaction as well as learning tool operation and update, comprising acquisition, use in both single user and multi-user sessions, creation, editing, and automated updating based on references to data elements,one or more builders comprising a computing device or set of computing devices that create and update learning tools, either manually, in response to user input, or automatically,one or more swarms, each comprising a server computer or set of server computers that respond to requests from learning tool engines, said swarm or swarms managing learning tool descriptors, facilitating communication between users of learning tools, and distributing learning tools and updates to said learning tools,one or more databases of learning tool descriptors, said learning tool descriptors stored on computer-readable media, accessed by a computer server or servers in response to requests from learning tool engines, builders, and swarms.
0 Assignments
0 Petitions
Accused Products
Abstract
Apparatus and methods are presented for the automated creation, update, distribution, acquisition, and use of learning tools designed to aid users in memorizing information and learning new concepts. Apparatus comprises learning tools that contain the data to be presented to users as well as information describing how the data is to be presented, a learning tool engine that provides user interaction and learning tool operation, an optional peer-to-peer client that may be combined with a learning tool engine to acquire and distribute learning tools, a swarm that manages learning tools and descriptors and user-to-user communications, and a builder that creates and updates learning tools. Methods comprise creating new learning tools, updating learning tools as new, improved, or corrected materials become available, creating and managing unique identifiers, sharing learning tools with others, and coordinating the activities of multiple simultaneous users of learning tools.
-
Citations
8 Claims
-
1. An apparatus that is a system for automated creation, update, distribution, acquisition, and use of learning tools, comprising
one or more tables or databases of unique identifier containers for data elements or linked sets of data elements, each said unique identifier container comprising a unique identifier, a reference to a data element or references to a linked set of data elements, a hash code for each reference, and classification information, one or more learning tools that each comprise presentation and data structures, data, references, and unique identifier containers, said learning tool or tools residing in a computer-readable memory, learning tool descriptors for each learning tool wherein each said learning tool descriptor comprises a description of the learning tool, information and instructions on locating and downloading the learning tool and any associated files, verification information, and version information, one or more learning tool engines comprising a computing device, user interface components, computer-readable memory, and computer instructions, said one or more learning tool engines providing user interaction as well as learning tool operation and update, comprising acquisition, use in both single user and multi-user sessions, creation, editing, and automated updating based on references to data elements, one or more builders comprising a computing device or set of computing devices that create and update learning tools, either manually, in response to user input, or automatically, one or more swarms, each comprising a server computer or set of server computers that respond to requests from learning tool engines, said swarm or swarms managing learning tool descriptors, facilitating communication between users of learning tools, and distributing learning tools and updates to said learning tools, one or more databases of learning tool descriptors, said learning tool descriptors stored on computer-readable media, accessed by a computer server or servers in response to requests from learning tool engines, builders, and swarms.
-
4. A method for creating unique identifier containers for individual data elements and linked sets of data elements from contents of said data elements wherein said unique identifier containers comprise references to said data elements, comprising the steps of
accessing, by at least one computing device, an existing table or database of unique identifier containers or creating a new table or database of unique identifier containers, searching, by the at least one computing device, existing unique identifier container references to ensure that a data element or linked set of data elements does not already have a unique identifier container, if the data element or linked set of data elements does not have a unique identifier container, creating, by the at least one computing device, a unique identifier container for said data element or linked set of data elements, creating, by the at least one computing device, a reference for each data element, computing, by the at least one computing device, hash codes for the data elements, such that said hash codes provide a mechanism for determining whether or not the data elements referenced by the unique identifier container have changed, creating, by the at least one computing device, a unique identifier container comprising length in bytes of said unique identifier container, a unique identifier for said unique identifier container, classification information, pairs of references to data elements and hash codes for said data elements, recording, by the at least one computing device, the unique identifier container into a global set of unique identifier containers or into a subset of unique identifier containers.
-
5. A method of creating automatically updateable learning tools comprising the steps of
identifying, locating, and selecting, by at least one computing device, data sources, selecting, by the at least one computing device, data elements or linked sets of data elements within the selected data sources, if a table or database of unique identifier containers exists, searching, by the at least one computing device, said table or database for unique identifier containers corresponding to the selected data elements or linked sets of data elements, if a table or database of unique identifier containers does not exist, creating, by the at least one computing device, a table or database of unique identifier containers, if unique identifier containers for the selected data elements or for the linked set of data elements do not exist, creating, by the at least one computing device, unique identifier containers, each said unique identifier container comprising a unique identifier, a reference to a data element or references to a linked set of data elements, a hash code for each reference, and classification information, for the selected data elements or linked set of data elements within the selected data sources, creating, by the at least one computing device, a user interface and operation template for a learning tool, using unique identifier containers, by the at least one computing device, to link each templated location to one or more data elements, creating, by the at least one computing device, a learning tool descriptor that defines the learning tool and how it is to be found, downloaded, and uploaded, creating, by the at least one computing device, entries in databases or tables of learning tools and learning tool descriptors, wherein said entries identify and link learning tools to learning tool descriptors and user interface and operation templates.
-
6. A method for automatic and manual updates of learning tools, components, and descriptors, comprising the steps of
identifying, by at least one computing device, a learning tool to be updated, where said learning tool comprises one or more references to learning tool descriptors, said learning tool descriptors comprising a description of the learning tool, information and instructions on locating and downloading the learning tool and any associated files, verification information, and version information, and said learning tool also comprises a template that connects user interface elements to data elements within specified data sources using unique identifier containers for data elements or linked sets of data elements, each said unique identifier container comprising a unique identifier, a reference to a data element or references to a linked set of data elements, a hash code for each said reference, and classification information, identifying, by the at least one computing device, data elements of the learning tool and data sources for said data elements, setting up notifiers, by the at least one computing device, such that any changes to the data elements that are referenced by the learning tool will trigger either an automatic update of the learning tool or a notification to one or more users that updates are available, scanning, by the at least one computing device, the data elements, using version information and hash codes to identify changes, and propagating those changes to the learning tool, changing, by the at least one computing device, the learning tool with or without changing references to the data elements, saving, by the at least one computing device, a new version of the learning tool, creating and saving, by the at least one computing device, a new learning tool descriptor that corresponds to the new version of the learning tool, said new learning tool descriptor comprising a description of the new version of the learning tool, information and instructions on locating and downloading the new version of the learning tool and any associated files, verification information, and version information.
-
7. A method of operating on an automatically updateable learning tool to provide a user with a computer-assisted learning experience, comprising the steps of
keeping learning tool session information, by at least one computing device, when a user uses a learning tool so that said learning tool session information can be saved and used to resume an earlier learning tool session, accepting, by the at least one computing device, user input as to whether to resume a previously saved learning tool session, to load, validate, or edit an existing learning tool, or to create a new learning tool wherein each learning tool comprises one or more references to learning tool descriptors, said learning tool descriptors comprising a description of the learning tool, information and instructions on locating and downloading the learning tool and any associated files, verification information, and version information, and said learning tool also comprises a template that connects user interface elements to data elements within specified data sources using unique identifier containers for data elements or linked sets of data elements, each said unique identifier container comprising a unique identifier, a reference to a data element or references to a linked set of data elements, a hash code for each said reference, and classification information, in cases where the user elects to resume a previously saved learning tool session, allowing, by the at least one computing device, the user to resume the saved session, in cases where the user elects to browse or search for an existing learning tool, using, by the at least one computing device, learning tool descriptors to locate and access learning tools that meet the user'"'"'s searching or browsing criteria, in cases where the user elects to create a new learning tool, creating, by the at least one computing device, the new learning tool, loading, by the at least one computing device, a user-selected learning tool into a computer memory, presenting, by the at least one computing device, learning tool information to the user, waiting, by the at least one computing device, for a response from the user, evaluating and scoring, by the at least one computing device, a user response, adjusting, if necessary, by the at least one computing device, presentation or operation based on user responses, updating, by the at least one computing device, contents of the learning tool based on any changes to data elements referenced by said learning tool, either automatically or in response to a request from the user, repeating, by the at least one computing device, presentation of learning tool materials until the user masters the learning tool materials, pauses, or quits.
-
8. A method of coordinating simultaneous use of an automatically updateable learning tool by multiple users, comprising the steps of
managing, by at least one computing device, a database of ongoing multi-user sessions, allowing, by the at least one computing device, a user to use subject, data source, and version information to find and join an existing multi-user session, allowing, by the at least one computing device, the user to create a new multi-user session using either an existing learning tool or a newly created or updated learning tool, each learning tool comprising one or more references to learning tool descriptors, said learning tool descriptors comprising a description of the learning tool, information and instructions on locating and downloading the learning tool and any associated files, verification information, and version information, and said learning tool also comprises a template that connects user interface elements to data elements within specified data sources using unique identifier containers for data elements or linked sets of data elements, each said unique identifier container comprising a unique identifier, a reference to a data element or references to a linked set of data elements, a hash code for each reference, and classification information, allowing, by the at least one computing device, the user to create an invitation to a multi-user session, notifying, by the at least one computing device, the user when a minimum number of users have joined the multi-user session, starting, by the at least one computing device, the multi-user session and adding, by the at least one computing device, its information to a list or database of multi-user sessions, presenting, by the at least one computing device, learning tool materials to users in accordance with a learning tool template, starting, by the at least one computing device, a timer for responses, evaluating and scoring, by the at least one computing device, responses, determining, by the at least one computing device, if there is a winner, updating, by the at least one computing device, contents of the learning tool based on any changes to the data elements referenced by said learning tool, either automatically or in response to a request from the user, if there is no winner, continue presenting, by the at least one computing device, materials to users until there is a winner or all users quit.
Specification