i_Link: The Intelligent Link

The specific objective for this year's research project is to provide a method, with appropriate tools and utilities to allow the interlinking of separate complex electronic books. These books may be developed and maintained by separate organizations. They may also be distributed independent of one another, at different times. They may also be based on different technologies, such as Folio infobases, Windows Help engine, word processing, or Internet browsers. Yet it is desirable to enable the user to link seamlessly from one book to another. This involves searching for the book on a network, finding the most recent copy, opening the book, and going to the appropriate topic (bookmark, heading). There is no such tool or method available at present.

The research was broken into phases. The sequence of phases allowed a systematic and graduated exploration not only of technical internal complexity, but also of increasing complexity in the user interface.

The first phase objective was to link from a context sensitive Windows Help document to an electronic book from an outside publisher to provide more in depth information. Users of the help documentation may or may not subscribe to the publication. There is a monthly update to the publication. The publication can expire. The first phase focused on finding the most recent version of the publication, checking for permission and expiry, and linking to the publication.

The second phase objective was to link to two Windows help files and to display them side by side. This objective arose from the need to do quality assurance on translated documents. In large and complex documents with thousands of topics quality assurance becomes problematic. It occurred to me that the same linking mechanism could be used to solve this problem.

The third phase objective was to link to word processing documents, with the ability to jump to specific topics or headings. The target document should be user maintainable, even if it is initiated from a template and supported with macros. The links should be able to originate from Windows programs, Windows help documents, or Folio infobases. The same link mechanism (program, etc.) should support multiple originating and destination documents for the same user.

The fourth phase objective was to link from word processing documents with a simple, user friendly user interface to all the supported destinations.

The fifth phase objective was to link to internet documents.

Future phases might involve automatically retrieving and sending parts of documents.

Other concepts involve decision support for selecting documents, and automatic background processes for filling in documents (e.g., a screen print & a debug log automatically inserted into a problem report - support request document which might be opened on a word processor for the user to add comments and other details, and which might then be sent or faxed automatically.

•           The fourth and fifth phase were not addressed in 1996

Functionality and usability: Two types of users must be supported with appropriate functionality and user interfaces. The end-user uses the links and may maintain one or more of the relevant word-processing documents.  The documentation specialist prepares and maintains the documentation that is distributed to the end-user.  The document specialist is the target client for the output from this research, but the end-user, the client's client, is the prime target of the usability of this technology. Usability for the document specialist has to be kept in mind, but can be improved later.

The primary focus in all four phases was functionality and usability for the end-user.  The goal was to make the link look natural in context, and to minimize the need for user intervention.

A secondary focus was on creating automated utilities for preparing the files and templates needed to support the linking functionality and which have to be distributed with the electronic document(s).  Text transformation processes, a primary research focus for 1994, were adapted and applied to extract lists of topics and to prepare templates for managing topic, title, and query translation for the linking process.

Advanced & distinctive features:

Phase 1: Relevant files are found on the network, and paths are noted. Links can stale date and trigger searches for new versions (updates) of documents.

Phase 2: Context sensitive help can chain across multiple documents, some of which are client maintainable.

Phase 3: Users can annotate and maintain links to published documents, even though the electronic files are replaced with updates and new releases.

 

The long term objective is to discover and develop both a methodology and a technology for interlinking large and complex documents representing interconnected knowledge structures rather than just data.

The initial (phase 1) subgoal for this taxation year was to focus on linking from a large and complex electronic text to a commercially available electronic publication.  There are three technical challenges:

•           To design and test an unobtrusive user interface with minimal interactions for users who are not technically sophisticated (e.g., legal researchers, payroll clerks), who just want information quickly and do not want to be distracted by a linking process.

•           To design and test algorithms which set up the link between electronic books, keep linkage information between uses, track when the linkage information might be "stale", i.e., when a new release should be looked for.

A second (phase 2) subgoal for this taxation year was to experiment with opening more than one link to parallel destinations from the same source document. If both targets can be available simultaneously, then it can be used for comparing documents, e.g., quality assurance for translated documents by displaying the content for the same topic side by side. Another use is to compare sequential versions of the same document. The first linkage target chosen was the Windows Help engine, because of the perceived need and difficulty for performing quality assurance.

•           To design and test algorithms which open two Windows Help files side by side on the screen, at the same topic. (This functionality is not supported by the Windows Help engine embedded in Windows.) It must also be possible to randomly access topics, or to step through topics sequentially.

A third (phase 3) subgoal for this taxation year was to experiment with multiple links to multiple destinations from the same source document. If multiple targets are available sequentially, then it can be used for linking to multiple publications, or to also link to user maintained documentation. For this latter use, the link has to be to common word processors.

•           To design and test algorithms which open a word processor in a separate window, find and load a selected document, and jump to a chosen topic. It must also be possible to randomly access topics in a large document containing thousands of topics.

•           To design and test a combination of automation and a simple user interface which track the word processor used by the end user and adjusts the link accordingly (Word, WordPerfect, different versions). This selection and adjustment process should be automatic or make minimal demands on the end-user.

•           To evaluate and optimize the resource requirements and performance of the linking mechanism so that it could work in context of appropriate usage. For instance, the end-user may be working with an application, ask for context sensitive help, and from the help documentation link to other publications or to client maintained, word processor based documentation. All of this has to happen on a low end to average workstation (for a clerical position), with limited resources and in a network environment.

A next (phase 4) subgoal for this taxation year was to allow the user to link out from word processing documents, using the same linkage mechanisms.

•           This objective was not directly addressed in 1996, but it was anticipated in the designs.

 

Advance:  To discover and explore methods and algorithms for automatic and semi-automatic links between large and complex documents on diverse software platforms, and from different sources.

•           A method and tools for linking from Folio infobases or from Windows help to a bound Folio infobase. (An instance of this is installed in the Royal Bank Payroll product: "Images", linking to the Carswell product: "The Canadian Payroll Manual on disk".)

•           A method and tools for linking to two documents side by side and randomly or sequentially accessing the same topic. (This method was used in early 1997 to do quality assurance on the Royal Bank Images documentation, comparing the English and French Help topics - more than 1600 topics.)

•           A method and tools for linking to Word and WordPerfect documents. (Because of technical limits in WordPerfect, only WordPerfect 7 and up can support the linking functionality.)

 

1. The core components were designed and programmed in C: Finding files on all hard drives and across the network, selecting the most recent version; Displaying bitmap graphics while waiting; Displaying metafile graphics while waiting; Managing the user interface and the Windows messages, both for the main loop and for the dialog boxes; Assembling the link call string and calling. The interface was designed to allow dynamic language switching: English & French.  The logic, performance, and user interface were tested in a sequence of prototypes.  The call to i_Link was embedded both in Windows Help and Folio documents as hyperlink calls, and more tests were done. Finally the system was tested and adapted with a number of networks.

2. For phase 2, a topic translation map was designed for the random and sequential access, and so that it could be automatically extracted from Folio or WinHelp documents. A dual link call was designed and tested. This latter component gave a lot of problems since Windows does not allow the user to use the WinHelp engine re-entrantly. After many experiments and not much (expensive) help from Microsoft technical support, a method was found to open two simultaneous copies of the WinHelp engine, and to drive them in parallel. The user interface had to go through many alternative prototypes, since the link mechanisms had a tendency to obscure or interfere with the side by side document displays. A satisfactory solution was found, using a single character height control strip at the bottom of the screen.

3. For phase 3, the call on the word processor could be managed in C within i_Link, but the jump to the appropriate topic had to be done with word processor macros. An appropriate ini file had to be designed to pass information to the word processor. Unfortunately, different word processors, and even different versions of the same word processors have different capabilities, so that designing a scheme that is transparent to the user proved quite challenging. Also, making the system work for large and complex documents, with more than a thousand topics proved to be quite difficult. We do not yet have a satisfactory solution for WordPerfect 6.1 or earlier.

 

Experiments were performed with computing environments, to find the most recent versions of electronic books. Some networks, and some CD readers (especially when not containing data CD's) presented some challenges that had to be overcome.

Experiments were performed with large and complex bodies of text, including electronic publications and user manuals for complex software systems. A range of linking methods and user interface approaches were explored. A generic scheme for extracting topics and linking between documents was investigated.

Experiments were performed with usability, focusing primarily on the end-user. Special cases, such as finding some but not all of the files, proved to be difficult to keep simple enough for the intended users. The user interface for the quality assurance testing also needed a number of experiments to minimize complexity and to make it work fast enough so that testers could compare large documents with more than 1000 topics in a reasonable time span.