Concept Maps as Hypermedia Components

13 Concept Map Creation through World-Wide Web Browsing

Netscape allows an external application to register itself to receive a range of information about user interaction with Netscape. This enables a KMap agent to receive a trace of user interactions with WWW, build a concept map of linked documents, and use this to provide access to those documents--a graphic "hot-list." Figure 27 shows such a hot list being developed and used. The "Netscape Agent" in KMap has sent a "Register URL Message" to Netscape requesting that it be informed when Netscape shows a document. Each time that Netscape does so it send KMap a message giving the URL of the document, the URL of the referring document if there was one and the Window in which the document is being shown.

Figure 27 KMap developing a graphic "hot list" from Netscape browsing

The "Netscape Agent" script stores the URLs and displays the name of the window in the text box near the top of the concept map window. If the user clicks on the popup menu button, the script creates a new node of the type specified in the popup menu. It stores the name of the window in the visible content of the node because this name is the <TITLE> field of the HTML document. It stores the URL of the document in the invisible content of the node so that clicking on the node may be used to request Netscape to fetch the document. If there is already a node for the referring document then the script links it with an arrow to the new node. The overall effect is to create a hot list of locations visited that can be used to access these locations again.

All of the agent functionality is available in new concept maps that are created. In Figure 27 the user has created a new concept map called "Web66" to develop a map of materials accessible from the Web66 site. All the nodes in the map shown were created by browsing in Netscape starting from the Web66 site. Nielsen (1995, p.189) reports a related development of an "overview diagram" in the KJ-Editor developed by Ohiwa and Kawai. The overview diagram is constructed by the user who for each page visited in the World-Wide Web browser can decide whether to add it to the map window. It is significant to note how simple it is to add this type of functionality to an open architecture browser such as Netscape using a scriptable concept mapping tool rather than developing a special-purpose application. The Netscape Agent script took some 2 hours to write and check in operation.

Nielsen (1995, p.190) also emphasizes the limits of World-Wide Web browsers in supporting advanced graphical user interaction techniques because, even though it is possible to have multiple windows, the windows do not communicate and thus cannot be used to support advanced hypertext features that would require the coordination of the content of several windows. It is symptomatic of the speed with which World-Wide Web technology is developing that it is now simple with Netscape and KMap to provide such coordination. The use of script languages in helper applications coordinating open architecture browsers provides the capability to experiment with elaborate hypermedia models.

14 Embedded Clickable Concept Map Images on World-Wide Web

KMap is currently implemented only for the Apple Macintosh and hence can act as a client helper only on Macintosh computers. Ports to Windows and Motif are being developed which will make KMap helpers available on all major platforms. However, there will always be users who do not have, or do not want to use, the helpers but where it is appropriate to provide non-editable concept maps as clickable maps in HTML documents. Hence KMap has also been interfaced as an auxiliary HTTP server to allow the same concept maps to be used as clickable maps.

The auxiliary server also allows the "Netscape Agent" at the browser to upload the concept maps created locally to the server. As shown in Figure 28, clicking in an empty part of a concept map and holding the mouse down for a period brings up a popup menu with a "Send" option. This menu is created by the agent when it receives the mouse down message from the map. When the agent receives the "Send" selection it uploads the concept map data to the server using Netscape's capability to accept an "Open URL" event with POST parameters. The map data is automatically stored under the same concept map name in an upload directory named "X" using an auxiliary HTTP server written in the same class library as KMap operating through a common gateway interface to a WebSTAR (StarNine, 1995) HTTP server. The enforced "X" root directory prevents this capability being used to overwrite files in areas other than that reserved for uploading. More specific protection such as password control can be enforced if required.

Figure 28 KMap uploading the concept map to the HTTP server

KMap operating as auxiliary server provides two functions to utilize the concept maps which have been uploaded. First, it will download concept maps as clickable maps in GIF format. Second, it will receive clicks on these maps and cause the same file to be sent as if the concept map had been clicked locally in a KMap helper. Figure 29 shows the uploaded concept map of Figure 27 being fetched using the URL "http://tiger.cpsc.ucalgary.ca/WMClick/:X:K66.k" which is recognized by WebStar as a common gateway interface (CGI) action to be passed to KMap.

Figure 29 KMap acting as an HTTP server for clickable maps

KMap returns the HTML shown in Figure 30 with the name of the concept map as a title and an embedded call for an image of the concept map. The image URL is again interpreted by WebStar as an action passed to KMap which, since there are no search arguments, loads the concept map, converts its image to a GIF and returns it as an HTTP message. Clicking on the node "Web66" sends the coordinates of the point clicked back to KMap on the server as search arguments, and KMap then takes the same action as if the map had been clicked locally in a helper, in this case to redirect Netscape to the URL for the Web66 home page.

Figure 30 HTML for KMap acting as an HTTP server for clickable maps

Thus KMap supports the use of concept maps on the World-Wide Web through client helpers and through servers in an integrated way. Concept maps created in KMap for use in conjunction with Netscape as a local helper can be automatically uploaded and used in the same was as clickable maps through KMap as an auxiliary server. In particular, this allows concept maps to be used by browsers running on platforms other than the Macintosh.

It can be seen from the HTML of Figure 30 that any number of concept maps may be embedded as clickable maps in an HTML document by incorporating the "<A HREF..." and "<IMG SRC.." pairs for each map. This enables much of the functionality of the active document system illustrated in Figure 6 to be recreated on World-Wide Web. For example, knowledge bases may be embedded in documents as semantic networks and used as part of expert systems. The only capability missing is for the user to be able to edit the knowledge base within the document. In the near future it should be possible to implement this also by rewriting the concept mapping tools in a web code tool such as Java.


Abstract, 1 Introduction, 2 Concept Maps, 3 Hypermedia Concept Maps, 4 Formal Concept Maps, 5 Semantic Networks, 6 What is a Concept Map?, 7 Concept Map Structure and Implementation, 8 Concept Map Scripting, 9 Linking Concept Maps to other Knowledge Elicitation Technologies, 10 Automatic Generation of Concept Maps, 11 Collaborative Access to Concept Maps, 12 Concept Map Helpers on World Wide Web, 13 Concept Map Creation through World Wide Web Browsing, 14 Embedded Clickable Concept Map Images on World Wide Web, 15 Conclusions, References, KSI Page

gaines@cpsc.ucalgary.ca 22-Nov-95