Abstract:
The present invention provides a system and method of creating electronic files for solving a problem for a learner from the knowledge of an expert comprising the steps of receiving the expert&#39;s knowledge in an area of expertise, providing a template for the electronic files and generating the electronic files from the expert&#39;s knowledge and the template.

Description:
RELATED APPLICATIONS 
   The present application claims priority of U.S. Provisional Patent Application Ser. No. 60/156,838, filed Sep. 30, 1999. The contents of which are expressly incorporated herein by reference. 

   APPENDIX 
   The attached Appendix I is a part of the present specification and is hereby incorporated into the application by reference. 
   TECHNICAL FIELD 
   The present invention relates to the field of computer software. More particularly, the present invention relates to a system which enables an expert to easily share the expert&#39;s knowledge electronically without having an understanding of the technical system by which the knowledge is being shared. 
   BACKGROUND OF THE INVENTION 
   In the past, experts in many different areas have been unable to quickly and easily share their knowledge electronically with others. This is because the expert also had to be an expert in the medium by which the files are shared. Specifically, to publish complicated hierarchies of documents on the world wide web, such as documents which ask a series of questions to diagnose a problem, one had to be an expert in web technology. The complexity and time-consuming nature of publishing knowledge electronically have prevented much knowledge from being shared electronically or, at least, have prevented it from being shared with any easily navigated structure. 
   In order to solve this problem the present invention automates the process of creating hierarchical structures of electronic documents. The hierarchical structure allows the knowledge to be presented to a learner in an interesting and easily navigated way. Other features and advantages of the invention will be apparent from the following detailed description taken in conjunction with the drawings. 
   SUMMARY OF THE INVENTION 
   The present invention provides a system and method of creating electronic files for solving a problem for a learner from the knowledge of an expert comprising the steps of receiving the expert&#39;s knowledge in an area of expertise, providing a template for the electronic files and generating the electronic files from the expert&#39;s knowledge and the template. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
       FIG. 1  is a diagram of a template in accordance with the present invention; 
       FIG. 2  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 3  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 4  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 5  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 6  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 7  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 8  is a display of a generated HTML file in accordance with a preferred embodiment of the present invention; 
       FIG. 9  is a diagram of the hierarchy of a preferred embodiment of the present invention; 
       FIG. 10  is a display of a home page parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 11  is a display of a navigation bar parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 12  is a display of a topic parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 13  is a display of an image parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 14  is a display of a text parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 15  is a display of a external process parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 16  is a display of a question parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 17  is a display of a rule parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 18  is a display of a solution parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 19  is a display of a checklist parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 20  is a display of an element parameter window in accordance with a preferred embodiment of the present invention; 
       FIG. 21  is a display of a window which shows all of the items in the template in accordance with a preferred embodiment of the present invention; 
       FIG. 22  is a display of a generate window in accordance with a preferred embodiment of the present invention; 
       FIG. 23  is a diagram of the database in accordance with a preferred embodiment of the present invention; 
       FIG. 24  is a report of the contents of the database in accordance with a preferred embodiment of the present invention; and, 
       FIG. 25  is a report of the contents of the database in accordance with a preferred embodiment of the present invention. 
   

   DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
   While this invention is susceptible of embodiment in many different forms, there will herein be described in detail a preferred embodiment of the invention with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention and is not intended to limit the broad aspects of the invention to the embodiment illustrated. 
   The present invention provides a system and method by which experts in a particular field of knowledge can easily and quickly share their knowledge with others electronically. The system simplifies the process for publishing electronic information by not requiring the expert to have detailed knowledge about the system by which the information is published. In the present embodiment of the invention, the knowledge is provided from an expert to a learner by allowing the learner to diagnose a problem the learner is trying to solve by answering questions about the problem. In this manner the learner is taught the solution to the problem to be solved. By answering questions associated with a particular problem, the learner eventually answers enough questions that the solution can be determined. When the proper solution to the learner&#39;s problem is determined, the learner is provided with text, images, hyperlinks, video and/or audio, which provide an explanation of each step of the solution to the learner. 
   The process of the present invention is based upon the idea of using prefabricated code templates as the driving input. Additionally, the invention utilizes descriptions of assets and controls (explained below) that are stored in a database. During the generation process, the template and the descriptions in the database are automatically integrated into the final output. In its preferred embodiment, the present invention generates applications that result in hypertext markup language (“HTML”) and Javascript source code. This creates a World Wide Web look and feel. However, various output formats could be implemented without departing from the principles of the present invention. As such, the present invention should not be limited to HTML and Javascript source code. 
   In the presently preferred embodiment, the interface for a learner to interact with the present invention is an internet browser which accesses files written in HTML and Javascript. As shown in  FIG. 1 , the HTML files are generated from a template  2  which incorporates knowledge supplied by the expert. The template  2  comprises a site  8 , a home page  10  and a navigation bar  12 . The navigation bar  12  can link the learner to topics  14 , subtopics  15 , solutions  16 , checklists  18 , or collections  32  of multimedia assets. The multimedia assets may be images  20 , sound  22 , text  24 , video  26  or any combination thereof. The multimedia asset can also be a link to multimedia provided from an external source  28 . The present list of multimedia assets is representative rather than comprehensive and can include other technologies such as communication with a live person. 
   In  FIG. 1 , relationship between items is shown by a line with an arrowhead or a line with a circle. Items connected by a line with an arrowhead show a relationship between two distinct items. Items connected by a line with a circle indicate a relationship between an item and a second item which is representative of a group of such items. 
   A learner can also use the navigation bar  12  to navigate to the home page  10  and the site  8 . The home page  10  is the highest level of a particular application, i.e. the highest level of a particular area of expertise. The site  8  contains many home pages  10  which represent many areas of expertise. 
   Topics  14  contain different concepts to be addressed within an area of expertise. Additionally, as indicated by the line and circle relationship of the topic  14  and subtopics  15 , topics  14  may have more than one subtopic  15 . Subtopics  15  are associated with rules  30 , solutions  16 , checklists  18  and collections  32 . Rules  30  are associated with solutions  16 , checklists  18 , collections  32 , and rulelogics  34 . Rulelogics  34  are associated with a question  36  and a response  38 . Checklists are associated with elements  40 . 
   By using HTML files which implement the template  2  of  FIG. 1 , learners can diagnose a problem in order to find a solution. Referring to  FIG. 2 , the previously discussed concepts will be described by way of example.  FIG. 2  provides a web browser  60  with a left pane  62  which displays a navigation bar  12  and right pane  64  which displays a site  8 . The site  8  contains links to several home pages  10 , and the navigation bar can contain links to other sites  8 . 
   By clicking on the home page  10  “@Personal Pro Help” the browser changes to show the navigation bar  12  in the left pane  62  which displays links to topics  14  and displays a homepage  10  associated with the “@Personal Pro” link, as in  FIG. 3 . 
   By clicking on the topic  14  “Interactive FAQ,” the left pane  62  continues to show the topics of  FIG. 3 , but the right pane  64  changes to show the subtopics  15  associated with the chosen topic  14 , as in  FIG. 4 . 
   By clicking on “Establishing a New Site,” which in this case links to a subtopic  15 , the left pane  62  continues to display the navigation bar  12  while the right pane  64  displays the question  36  and responses  38 , as shown in  FIG. 5 . 
   After the learner has selected proper responses  38  to the questions  36  and clicks an OK button  66 , the rule is executed and the web browser  60  changes to display a solution  16  determined by the rulelogic associated with the rule, as in  FIG. 6 . The solution  16  comprises a checklist  18  having six elements  40 . Associated with elements  60  can be multimedia assets  20 ,  22 ,  24 ,  26 ,  28  or a collection  32 . Collections  32  are simply collections of more than one multimedia asset  20 ,  22 ,  24 ,  26 ,  28 . 
   By clicking on an indicator  68  next to the element  40 , the browser  60  changes to display the asset  20 ,  22 ,  24 ,  26 ,  28  or collection  32  associated with the element  40 , as in  FIG. 7 . In the case of  FIG. 7 , an image asset  20  link is shown. By clicking on the image asset  20  link, the image asset  20  is displayed to the learner, as in  FIG. 8 . 
   Referring to  FIG. 9 , the present invention uses four distinct layers of processing in order to generate the HTML files from the template  2 . The four layers comprise a graphical user interface (GUI) layer  70 , a processing layer  72 , a generator layer  74  and a database layer  76 . Each layer exists as an independent and self-contained object. The GUI layer  70 , the generator layer  74 , and the database layer  76  each communicate only with and through the processing layer  72 . In the preferred embodiment of the present invention, each layer  70 – 76  operates on a single computer. However, it is contemplated that the four layers  70 – 76  could be divided among more than one computer in order to distribute processing and utilize geographically remote computers. 
   The GUI layer&#39;s  70  purpose is to prompt input from the expert, pass information to the processing layer  72 , and then display updates back to the expert. It communicates with the processing layer  72  to perform validations and other internal processing of the input. 
   The GUI layer  70  is the primary interface for enabling the expert to merge knowledge into the template  2 . The GUI layer  70  includes multiple dialog boxes which allow the expert to enter parameters for all items associated with the items of the template  2 . For example, in  FIG. 10 , a home page parameter window  100  allows the expert to associate information with a home page including a title name, title version, main title, sub title, copyright notice and trademark notice. In  FIG. 11 , a navigation bar parameter window  102  allows the expert to associate information with a navigation bar, such as a menu item word to display, a menu item letter to underline, menus and topics to be linked to the menus. In  FIG. 12 , a topic/subtopic parameter window  104  allows the expert to associate information with topic and subtopics, such as a window title, topic title, line  1  of the topic, line  2  of the topic, icon filename for the topic, a list of topics and subtopics, and a linked item to the topic/subtopic. In  FIG. 13 , an image or video asset parameter window  106  allows the expert to associate a multimedia asset with the template  2  by allowing the expert to associate an image name, an image filename, still image/animated image radio button, a video filename, an image/video text caption, as well as options related to the type of video used. 
   In  FIG. 14 , a text or sound multimedia asset parameter window  108  allows the expert to associate information with a text or sound multimedia asset, such as text name, text filename, text narrative, sound or narration check box, or sound filename. In  FIG. 15 , an external multimedia type parameter window  110  allows the expert to associate information with an external multimedia asset, such as a process name, process description, process filename, web anchor text, and web anchor URL. In  FIG. 16 , a question and response parameter window  112  allows the expert to associate information with a question, such as a question name, a question abbreviation, instruction text, question text, response text, and response order. 
   In  FIG. 17 , a rule parameter window  114  allows the expert to associate information with a rule, such as a rule number, rule name, a question, a relation, a rule, a rule logic, and a solution name. In  FIG. 18 , a solution parameter window  116  allows the expert to associate information with a solution, such solution name, solution description, a solution checklist, and a solution presentation style. In  FIG. 19 , a checklist parameter window  118  allows the expert to associate information with a checklist, such as checklist number, checklist name, checklist description, checklist elements, and checklist element text. In  FIG. 20 , an element parameter window  120  allows the expert to associate information with an element, such as an element number, an element name, an element text, and element details. In  FIG. 21 , there is provided a window which shows all items in the template  2  in an explorer-style dialog. 
   In  FIG. 22 , a generate HTML page window  122  is provided. From this window, an expert may assign a title name, title version, MAK Name, EXE Name, input subfolder, output folder, VB folder, object verifications checkboxes, next usage radio buttons, and a generate command box. When the expert clicks the generate command box, the information provided by the expert through the previously discussed windows is passed to the processing layer  72 . 
   The processing layer  72  receives requests from the GUI layer  70  and the generator layer  74 , requests information from a database  78  via the database layer  76 , and returns information to the GUI layer  70  and the generator layer  74 . It also receives information from the GUI layer  70  and performs validations of data and other internal processing, and inputs the data to the database  78  via the database layer  76 . 
   The generator layer  74  automatically creates the HTML and Javascript files  80 . It requests information from the database  78  via the processing layer  72  and the database layer  76 , uses template files  2  as additional input, and processes the HTML and Javascript files  80 . As the processing begins, the generator determines the template  2  to be used. 
   Each template is processed independently and in turn references a specific asset type whose descriptive information needs to be accessed in the database for that template. At a deeper level, each template also contains control types that call for specific types of source code to be generated at each of their respective locations in the template. Templates also contain references to text files that contain static, common source code that needs to be generated into their locations as well. 
   At the most detailed level, as the different control types are being generated, their related properties, stored in the control detail database table, determine specific source code instructions to generate. Some examples of these types of properties include font sizes, font styles, alignments, colors, sizes of images, and web page URLs to link to. 
   Defaults for the properties of the various control types can be defined by the authoring process and stored in the control default database table. The generator responds to the default values by automatically generating cascading style sheets that in turn are referenced by the generated web pages. This creates a consistent look-and-feel for the same control types that may appear in more than one template. 
   As the code is being generated it is placed in a location indicated by the author&#39;s choices stored in the home page directory database table. Also, at the author&#39;s option, a history can be maintained of which output files have changed since the previous generation process has been run for that template group. 
   The database layer  76  interfaces directly with the database. The database typically comprises a database management system, such as Oracle, SQL or Microsoft Access. It receives requests for information, input data and instructions from the processing layer  72 . The database layer  76  is the only layer that needs to be aware of the specific database management system being implemented. Referring to  FIG. 23 , the database is constructed using multiple linked tables, as shown, the construction of such database is shown in Appendix I. 
   The present invention is capable printing reports to the expert which display the properties of every item within the database. Referring to  FIG. 24 , there is shown a report for showing all of the rulelogic associated with each individual rule. In  FIG. 25 , there is shown a report showing the questions within the database and the responses associated with each question. 
   Finally, while the preferred embodiment of the present invention is a locally executed application, it is further contemplated that the GUI layer  70  could be implemented to communicate to an expert via a web page rather than as a locally executed program. In such an embodiment, the layers  70 – 76 , database  78  and HTML files  80  would exist on one or more web servers which communicate with the expert through the Internet and a web browser. Additionally, either embodiment could further implement a step of automatically publishing the HTML files to a web server connected to the Internet. 
   It will be understood that the invention may be embodied in other specific forms without departing from the spirit or central characteristics thereof. The present embodiment, therefore, is to be considered in all respects as illustrative and not restrictive, and the invention is not to be limited to the details given herein.