The left side normally shows the so-called topic map. Like a geographic map contains towns connected by roads, a topic map consists of symbols connected by dashes, so-called topics and associations.
In DeepaMehta search results are also represented by topics, visualized as a ton.
In DeepaMehta a topic map is always the user's personal sight to the information. The user interactively reveals further information by following associations. Which associations the user follows depends on its current interest. The user is free to arrange topics visually as required by current situation. The size of a topic map is not limited. Topics/Associations which are no longer of interest are simply set out of sight. Topic maps can be published to other user groups.
The content exists independently of how an individual looks at it.
Any topic can be put into relation with any other topic. New topics and associations are transparent to other users.
The right side always shows "the properties" of the currently selected topic/association. "Properties" means mainly the details, and this can be everything that you don't want to show up as a label on the map. For instance, a generic topic may have a longer "description" in addition to its shorter title or name.
Note: The right side is also used for typing in the name.
You will soon get used to looking at the right side after manipulating the graphical objects on the left. There are no animations directing one's gaze as known from traditional application. Self-directed eye-movement without any distractions is the most efficient control.
7 basic operations can by applied to an open topic map:
Depending on the topic map's type more specific operations may be available.
To see a menu of all possible operations, right click the topic.
6 basic operations can by applied to any topic:
Depending on the topic's type more specific operations may be available, e.g. a received "Email" topic provides a "Reply" operation.
To see a menu of all possible operations, right click the association.
4 basic operations can by applied to any association:
Depending on the association's type more specific operations may be available.
In any situation several topic maps are open, but only one is displayed. In order to determine which one is displayed use the Topic Map Selector. Use the back and forward buttons to step in the history of recently displayed topic maps.
3 types of topic maps appear in the Topic Map Selector
The Personal Workspace: the privacy of the logged in user. This is the only place where the user creates new topic maps. In order to make a topic map accessible by other users, it can be published to a shared workspace. The Personal Workspace is always named according to the user's (login) name.
All the Shared Workspaces the user is a member of. A Shared Workspace is a repository for topic maps which are supposed to be accessed by several users. When a user opens a topic map from a Shared Workspace, DeepaMehta places a working copy of the topic map in the user's Personal Workspace.
All Topic Maps opened.
Note: a workspace itself can be regarded as a topic map. A workspace actually serves as a repository for other topic maps.
Left-Clicking has already been mentioned above: It selects whose properties are displayed aat the right side.
Note: To perform the topic's default operation double click it. E.g. a "Topic Map" topic is opened when double clicked.
Dragging is explained below (move).
If you don't have data in import format, you first need to do some rarely needed steps: New topic maps are always created in the Personal Workspace.
Right-click on the background, select "Create", select "Topic" or choose a particular type. And then turn to the right side (see next section) to name it.
Always look on the (b)right side after you clicked something. For a new item, its name is entered here. Once you hit Enter, the name appears on the map. Re-naming is done the same way. Entering longer texts into description fields, or entering search strings into the search field, toggling radio buttons, or copying and pasting HTML contents - all is done that way.
You just have to unlearn the traditional mess of mode switching between graphics and text, renaming, saving, escape, and the like. Just learn to turn at the right side if unsure how to do it on the left side.
Note: If you work for a longer time in the property panel just make sure that you sometimes click something on the left side. This is good for securing your work in the corporate memory, at least if you are working with a client connected to a remote server.
So, how to create an arbitrary association?
=> Click the origin topic while holding the alt-key and drag the mouse to the target topic.
Note 1: if you use Linux/KDE try the strg-key or shift-strg or strg-alt-tab instead of the alt-key, because the alt-key is consumed by the KDE desktop (and yields to moving the whole window). If you have a 3-button mouse try also the middle mouse botton as an alternative to the alt-key.
Note 2: associations can only be created inside topic maps (eye-icon) and not inside the personal workspace (person-icon) or the shared workspaces (group of persons-icon).
Generally you can create an association between any two topics. You can retype the association to any type you like. One question arises immediately: which associations are controling the inner functions of DeepaMehta and which ones are of interest only for the human? This question has no simple answer and must be answered in regard of DeepaMehta's functional areas.
The upcoming user guide will contain chapters like
- How to work together in shared workspaces? (the users & groups approach)
- How to integrate classic applications? (MIME-Configuration)
- How to define your own topic and association types? (the type system)
(get hidden topics and associations out of the corporate memory)
First of all: all topics and associations exist independently of topic maps and are stored centrally in the corporate memory (CM). Topic maps are personalized views of extracts of the CM. Virtually every topic can be made visible in every topic map.
Generally there are 2 approaches to retrieve topics from the CM and make them visible inside the current topic map:
Every topic provides the "What's related?" command (right-click the topic) to reveal associated topics along with their associations. The submenu lists all associated topics, compiled by both, their topic types as well as the association types.
"What's related?" navigates through the CM alongside the associations. According to your situation: use this command if an associated topic of the topic in question is already visible inside the topic map.
Topic maps provide the "Search" command (right-click on the map background) to search the whole CM for topics of a specific type. The submenu lists all topic types you have access to. The search result is presented as a ton.
A ton represents a topic search and its result set.
Note: search tons are 'live'. To retrigger the stored query for a ton doubleclick it.
Once your map grows larger you won't need scroll bars. Simply left-click an empty spot on the background and drag the entire canvas (this works like the hand tool in Acrobat). If some shapes stay stagnant you have hit an association rather than an empty spot, and thus you have moved a cluster (see next section).
By grasping and dragging an association, you can move all the connected topics and associations at once.
A list of ready-to-use demo importfiles will probably go here.
(If you work in a shared server environment like the demo server, it does not work, at least not as described here).
Properties compose topic and association types. Properties have visualization modes and each of them is used to visualize fields within the e.g. Property Panel or Web Form. If the visualization mode name starts with "Option...." you have to create some Property Values using the respective command for this, by clicking on a property and select "Create Property Value". The default value has to be the name of one of these (matching string).
Since properties are belonging to topic types, don`t forget to "Update" on the modified topic type to see the changes on all instances. The data of former properties which were removed from types is not deleted and can be revealed later by just adding the property with the same name to the type again.
The easiest example is to create a variant of the Generic Topic type, just with another color. Let's make it red and provide it for a sort-of "town" on the map, i. e. a center within a cluster, and call it "Major Node".
To create such a topic type, recall that even types are topics (on a meta level). They are administered via meta topic maps. Therefore,
If you use other types than the Generic Type for your new subtype, you will find the associated workspace as follows.
Some of these really should not be deleted, while others are probably never needed when you don't use the desktop or collaboration affordances. Note that "workspace" is not only used for its members' collaboration, so don't delete it.
Suppose you wanted to tag your topics. In this case you might profit from the feature being described here. You would be using a new type called "Tag", and relate it to the existing "Topic" topic type. You would proceed as follows.
We just used the "Retype" command for an association (see the screenshot and click path description above). The same is available for topics, albeit less important because you can always specify the desired type at topic creation time.
You may specify the order of the options in the Search- and Create Context Menus.
The same procedure applies to the submenus of the other workspaces. Whether a workspace's topic types appear in a submenu or in the main menu is determined by the setting of the Default workspace, see below.
With the above example (conference sessions and tracks) you could follow three different modelling approaches:
The three alternatives are shown (from left to right) in the next image, both the model (upper screenshot) and some content below.
From left to right, the complexity of the model increases while the flexibility and visual complexity of the content decreases:
This might suggest a very rough distinction of two major usage scenarios:
Another criterion is, however, whether the designer of the model is also the user him/herself or not. In the latter case, too generic or vague or abstract concepts tend to become a problem, while concise, domain-specific terms and clear templates would facilitate to fill in information.
Yet another consideration is the import of existent data. If you have to copy and paste or even type all the contents you are probably more willing to use a complex model. If, on the other hand, data is available from uniform types of, say, heading texts and full-texts, you probably would not bother too much distinguishing them more than necessary. The residual problem of marking and grouping by colors and line type may then temporarily be solved by retyping.
Before you can decide to share your items, you probably need to develop a sense of what is private and what is not.
This applies only to editing, changing, creating, deleting, and the like, since viewing is always granted in this very collaborative environment.
Changing things works differently for stored contents and map views:
So, how can one keep an overview of what is one's own stuff? All privately owned maps and copies are shown in the personal workspace (there is no hide command here).
So you keep your overview via your personal workspace, and it is advisable to tidy up all unwanted copies. Make sure that you don't accidentally delete your own unpublished maps, which may happen since it is not possible to identify an original map unless there are copies existing (then, the copies have a blue "Derivation" association with the originals, and a purple "Publishing" association with the respective shared workspace).
The creation of a new workspace is simple: just right-click the background, point to Create, click "Workspace", and fill in a name. A workspace contains users and topic types. To establish a new workspace it is a good practice to give it a meaningful description.
A topic type is added to a workspace by drawing an association line from the workspace to the topic type and subsequently retyping it to Administration > Type Access. The user won't see it in their Create context menu unless you change its "View" only Access permission in the Property Panel on the right. The workspace's creatable topic types appear in a submenu of the create context-menu (and also in the search context menu, for that matter) unless you respecify it for a user via "Set Standard Workspace" in the context-menu for that user.
The creating root user is automatically associated with the new workspace by the orange "Membership" association. Others may be added by drawing an association from the user icon to the workspace icon, and subsequently retyping it to Administration > Membership. Users may Join and Leave workspaces, but beware of locking yourself out.
A user may have the Editor role on all topics of types accessed from this workspace. This is specified by clicking the orange "Membership" association and activating the corresponding check-box in the property panel. Similarly, the role of a publisher may be specified.
Publishing means that the map is moved from the author's personal workspace to a shared workspace, and everybody can obtain a copy just by doubleclicking. Publishing topic maps in DeepaMehta have the semantics that other users of the shared workspace are notified.
The copies exist independently from the each other and even from the author's own copy. This means that they are not updated automatically. Instead, the author has to re-publish their copy and the users have to obtain another copy (by doubleclicking its name in the shared workspace).
After this, you may want to delete your old copy from the personal workspace if you did not make private changes, or else, rename it meaningfully, because the identically named copies might cause confusion.
The privacy principles outlined in the beginning of this chapter, are implemented particularly by
The former inlude "View", "Create", and "Create in Workspace".
The latter specify whether the user has the role of an Editor (who may change everything in the workspace's scope). If s/he is not an editor, s/he may change only their own objects. The ownership is indicated in a property of the Generic Topic and all of its derivative topics, called "Owner ID". This property is hidden by default.
The two communication tools shipped with each workspace, implement the idea of the "Living Topics" where, for instance, the forum postings are individual "message" topics, and threads are just several of them tied together by associations.
The most basic way to create a forum message is to right-click > Create Message. For more sophisticated integration into a Web Application see the appropriate forthcoming section below.
Similarly, chats can be initiated by right-clicking, or via more elaborate integration, see below.
You can get notification mails from all your shared workspaces of which you are a member, if your user topic has an email address assigned to it and another user publishes a topic map into your shared workspace. These notification mails are an aggregated list of contents from the map and are very helpful if you are currently not logged in to your deepamehta server while the others are working. If you are logged in, you get a direct notification in the message panel besides your topic map selector while deepamehta is playing a birdie sound for you. This represents a newly published topic map from one of your co-workers. To configure this notification mails you can reveal your user icon through workspace topics you are a member of. Through right-clicking on your user topic you can directly configure an assigned email address topic.
In a typical knowledge worker's environment, there are
Traditional desktop interfaces offer the concepts of files and folders for (1), different applications for (2), and very little for (3) - see an appendix of this section for possible workarounds and how they come short of DeepaMehta's affordances. The problem with the hierarchical file system is that the world is not a cabinet of drawers, and if the human gives in to the pressure of putting things too early into separate silos, all the connective knowledge is lost.
With the visual interface of the DeepaMehta topicmap it is possible to arrange the individual items into multiple clusters and collections of varying kind - ranging from mere spatial proximity, over interconnected groups within one topicmap, to multiple topicmaps containing different assortments of the items from the overall store.
Thus, the competing organisation structures - by project, by one subject classification, or by another classification - can be simultaneously catered for:
Similarly, the problem of quick, immediate access to small text snippets (ideas) while preserving their context, may be easily overcome without a special note processing application:
Workarounds made needless
The various attempts to put one file into multiple folders, all have their flip sides: if you create tag collections rather than folders you may not express a general "see also" relationship from an entire group to another. Furthermore, you lose the information about which one of the categories you decided to be the primary one. With unix symlinks, this primary affiliation is still existent but hardly visible. With windows folder shortcuts, you could even mutually cross-reference two folders by manually creating both shortcuts, but the danger of losing a shortcut by moving or renaming the containing folders is annoying.
The visualization of semantic proximity could also be achieved by switching off the "Auto arrange" option of traditional folder windows. But this spatial information is very volatile and can never be transferred, backed up, or restored. Moreover, once you have arranged the items, it is very annoying that there is no way to draw connector lines between them, and you are still urged to use a specialized application for note processing - leaving you other documents, larger notes or non-text files, out of the context. But even the prominent specialized note-taking applications such as MS OneNote do not offer to connect lines that are glued to the items and move with them while rearranging.
As for the immediacy of access to small text notes, a most simple editor application such as Notepad lends itself for using, and in the MS Vista, you may even combine this affordance with the spatial arrangement in the left-hand folder pane, by enabling the right-hand preview pane (see the similarity to longstanding DeepaMehta behavior?). But, there are no connector lines possible like with DeepaMehta.
The need for rich contact information is common to most workplace scenarios. Therefore, DeepaMehta includes the relevant topic types out-of-the-box:
From the model you see that some pieces of information may be inherited from a superior level to cater for redundancy avoidance as required by database best practices.
The integrated email application makes use of the various contact data (see above), and a few crucial system administration settings (see below).
The charme is that individual emails can be put into context as flexibly as any other DeepaMehta topic type. That is, not only storing of and linking to single emails but also associating them with one another, and not only linking them hierarchically as in threaded forums, but arbitrarily as seen fit for the respective subject matter.
Once the relevant system settings are correctly set up (see below), it should be possible to seamlessly search the Web for topics mentioned on a topicmap, or use bookmarks that are semantically arranged and connected on your maps.
Imagine a del.icio.us bookmark tagging and sharing, enhanced by spatial visualization! And not only visualization of the trendy kind of dynamic starfield-like flower patterns as in thinkmap/ thinkbase where you cannot keep a sense of orientation, but one with deliberately arranged, stable geometry.
Now having people, locations, and appointments all in place, it is natural to try a group calendar application.
For the connection between the (logical) "Person" and the (technical) "User" topic types, there is probably an installation setting necessary (see below <- ?).
If you want to manage external files from within DeepaMehta, it is easy
The familiar file type extensions of proprietary applications and operation systems (such as ".doc") are mapped to neutral denotations such as "application/msword", "text/plain", or "image/jpeg". (These names are called "Multipurpose Internet Mail Extensions" or MIME types since they stem from email history.) To configure them for DeepaMehta you need to associate the file type extension, the MIME type, and the actual application path.
Now you should be able to open at least a .txt file.
For this activity you need to be the root user. Then
Proceed as follows:
Proceed as follows:
To use SQL or LDAP datasources, some custom application must be installed. You may want to see the working examples shipped with DeepaMehta. To activate them, proceed as follows:
To examine and learn from the Datasource topic properties of the working sample, don't navigate to the new workspaces and topicmaps, because these will only show the datasource's contents. Rather,
To see a working sample, navigate to the search results for datasource topic type as explained above.
Click "Movies". The property panel will then show the settings defining the database, such as
If you are deploying an application of your own, you will specify all thsse values when seting up the database.
If you want to get an idea about the tables in the database,
This is hoe DeepaMehta represents a database table of movie titles, a table of actors, and a table of the n:m relationship of starring.
To utilize additional columns in the movies table, the sample application has implemented an additional option "Group by" in the movies' context-menu that implements DeepaMehta search filters by applying a "where" clause in the SQL select statement, restricting the search hit to a certain publication Year, Country, or Genre.
This should give you an idea about how database rows and relations may translate to DeepaMehta topics and associations. The actual implementation, however, requires special code, since there is no generic database connector for simple two column relationships.
To see a working sample, navigate to the search results for datasource topic type as explained above.
Click "ActiveDirectory (LDAP-Source)". The property panel will then show you the one fundamental property, a long "URL" string specifying all necessary information, such as
If you want to see more about the content of this LDAP tree, you might try the following:
The Default Workspace determines where a new user will automatically become a member. It will initially serve as the new user's Standard Workspace which, in turn, determines which topic types appear on their Create and Search context submenus rather than on sub-submenus below.
To respecify it, proceed as follows.