(a regular column in
intelligence magazine)Syed S. Ali
University of Wisconsin - Milwaukee
An authoring tool is software that simplifies difficult or tedious data or document creation. Such software can run the range of text editors (emacs, vi) to software development environments (Microsoft’s Visual Studio). However, a search for authoring tools on the World Wide Web suggests that the majority of authoring tools are HTML editors, courseware creation tools, and multimedia presentation editors. Multimedia tools are tools that are used to create applications that use a variety of media (e.g. music, video, graphics, text, speech, etc...) to communicate their message. Courseware is software used in computer-based training to enhance or replace student-teacher interaction. Document production tools include HTML editors and XML tools which are often used to create document formats that are portable to different platforms or to enhance a document's semantic or structural information.
Authoring tools are important for artificial intelligence because much of the "intelligence" in an application lies in its use of content or data (i.e., its knowledge; see Links column in intelligence 10(2), Summer 1999 or at http://tigger.cs.uwm.edu/~syali/links.html). For example, my current research in building intelligent dialog systems for a tutoring system (see intelligence 10(1) 14-23; or at http://tigger.cs.uwm.edu/~mcroy/Publications/intelligence.pdf) requires the development of rich representations of domain knowledge. While this knowledge can be (and often is) handcrafted, this is a time-consuming process; authoring tools can partially automate the process. I am currently developing an authoring tool for adding semantic markup (using XML) to instructional documents in our domain. As part of this work, members of my research group surveyed available authoring tools; a portion of the survey appears here.
Generally, selecting the best authoring tool depends on the task to which it will be applied. For example, one might want to create new content from scratch or to mark-up an existing document so that its content will be usable in an AI system. We have found the following criteria helpful in evaluating an authoring tool’s appropriateness for a task:
Authoring tools are popular; as a consequence there is a large number of systems that are available. Here are some links to a variety of authoring tools; hopefully, one or more of them will be useful to your task.
The next issue of Links will be on Reasoning About Function. Function is a source of device knowledge that relates behavior to human notions of utility. For example, the behavior of an electric switch is to open or close a circuit, while its function is to turn a light on or off. Function is an important source of knowledge in AI applications such as diagnosis, design, and explanation generation.
If you have any comments on this column (or suggestions for topics for future ones) or interesting resources, please email me at: syali@usa.net. This article (and updates to it) is available online at http://tigger.cs.uwm.edu/~syali/links.html/ with links to all the resources mentioned.
Thanks to Krista Bennett for her help compiling the list of authoring tools. This work was supported by the National Science Foundation, under grants IRI-9701617 and IRI-9523666 and by a gift from Intel Corporation.