C O N T R O L S O V E R V I E W ------------------------------------------------------------------------ Move to parent item Move to top subitem Move up one group item or tree Move down one group item or tree Move up seven group items or trees Move down seven group items or trees Move to root item of current tree Decrease view window field by one level Increase view window field by one level / Move menu highlight one right / Move menu highlight one left Move menu highlight to desired choice Execute highlighted menu function Exit program or Notes menu = Find Enact a search for any item Change view window colors Display this information ---------Shortcut Keys-------------------------------------------------- View any information on item (Memo) Show current location in tree (Path) = w/ Num Lock on = w/ Num Lock off Store movement controls (top 7 above) (Bypasses screen changes in window) Jump to item attained by storing controls ------------------------------------------------------------------------ The preceding info and the following documentation are copyrighted works of the author and should not be altered in any way. Editing this information (TREEBASE.TXT) may subsequently result in program failure when trying to access the info on-line. If you haven't done so already, please read the file TREEBASE.INF for additional information. The documentation consists of four parts: Part 1) Introduction P. 2 Part 2) The TREEBASE Environment P. 3 Part 3) The Sample Data P. 4 Part 4) Program Operation P. 4 - 8 DOCUMENTATION FOR TREEBASE 1.1B I. Introduction A seemingly vast array of database software exists on the market today. Very little of it appears to be concerned with the creation of hierarchical databases. An exception is TREEBASE, a truly hierarchical database manager. Here, the user defines the structure of the database and then records are placed at specific locations in the database according to that structure. This entails the assignment of records to a specific rank or level, via categories. The placing of records in the structure results in data trees, which themselves in turn signify and visually display the hierarchical relationships among the data. What constitutes hierarchical data? Any item that can be divided into a grouping of related subitems, each of which can be divided further, and so on. The directory structure of DOS would be such an example. An item may constitute a name of a person, idea, thing, etc. In TREEBASE, each item is an individual record in the database, no matter where it occurs in a data tree. Unlimited information may be kept on any item in a free- form text (memo) field. It is entirely up to the user to decide on which items to keep notes, since not all may be applicable. TREEBASE can hold a maximum of 32767 record items per database, spread over as many trees as required by the user. A tree consists of a root item and any optional branches and sub-branches. Data need not be kept in complex trees; records may consist of root items only. The purpose is for the user to organize the info as he/she desires. Items do, however, require the assignment to a category before adding to the database. This will allow the grouping of items in trees later on if desired. Individual items, trees, and portions of trees may be conveniently moved around and attached to other locations in the database. This allows for regrouping after the addition of new items, as well as for the correction of misplaced items. New categories, up to 22 in all, may be added anytime. Therefore, the maximum number of levels a tree can have is 22. TREEBASE has both specific and general uses. It is ideal for items of information that fall neatly into a hierarchical structure by ranking at a certain level (known as classifying). Other uses include grouping items under common ideas as a way of organizing information and keeping notes on related pieces of information together (like a common word processor drawer). Or, information may be kept in true outline form in the tree structure and then elaborated upon using the notes. TREEBASE has potential educational uses. Information entered beforehand can be subsequently used as a learning tool to display the relationships among items and facts on those items (placed in the notes). Another use of data trees is to display a multilevel directory of a certain type or purpose. The program is also an ideal way to display geneological relationships among families of individuals. In all cases, however, it is up to the user to define the category structure on which to establish the data. This often involves some forethought. 2 II. The TREEBASE Environment Once understood, TREEBASE is easy to maneuver. Accomplished through user interaction of key controls, desired items can be brought into the field of view. This occurs in the view window, the central component of TREEBASE. The screen on which the view window may be found is considered to be the main screen. Above the view window is the program menu. Below is the database key. The key indicates the categories of items displayed in the view window by field location and color reference. The triangle in the upper left corner of the view window indicates the current item, which has a special significance. To the immediate right of this indicator, the current item is the item on which you may perform program functions, such as move, delete, and memo. New subitems are also added to the database at the current item. If notes exist for the current item, the current indicator is a flashing green; if no notes, a flashing red. The controls summary at the beginning of the documentation displays every valid key press which can be utilized on the main screen. Refer to it as needed (F1) to operate TREEBASE. Information is displayed in the view window according to the following conventions: ** From one to six view levels may be displayed at one time. ** The default number of view levels displayed is four. ** A view level is defined by a vertical column of data items which may cross various distinct trees and/or branches. ** A view level is not necessarily confined to all items of the same category or even related items, just all items displayed in the same column. ** Increasing the view field generally spreads data out and increases branching; decreasing moves item closer together and lessens branching. ** A tree lies on a horizontal, not vertical, axis and proceeds from left (root - general) to right (increased branching - specific). ** Immediately related items (subitems), grouped under, by attachment to, a common item, known as a "parent", will appear in the column to the right of the item and list vertically (in one view level) ** Every item in the database is a subitem, or "child", of a parent item to the left one level, with the exception of a root item, which is the leftmost point (convergence) of the tree. ** All listed subitems of an item may not be observed from the vantage point of the parent if the list includes many items and/or subsequent branching is excessive. Starting the program for higher resolution screen modes (43 or 50 lines) will reduce this drawback somewhat. (Refer to the file TREEBASE.INF for information on how to do this.) In addition, decreasing the view field by one or more levels will usually bring subitems closer together and therefore into view. In all cases, the Find (Ctrl-F) feature can be utilized to bring any item into view by making it the current item. ** For each view level, up to three distinct, non-repeatable names of categories to which the items belong, in the same order of appearance as in the column, will appear in the same column below the view window in the database key. The color coding of items to their respective categories greatly enhances the utility of this feature. 3 III. The Sample Data Included with TREEBASE is data consisting of the world's political geography (1989) grouped arbitrarily into four regional trees: Eastern and Western Hemispheres, Pacific Ocean, and Antartica. Included are the countries of the world, their major dependancies, and other various divisions of importance, both political and regional. The data is included as an example of the possible uses of TREEBASE. For example, suppose you wanted to keep information on all the major geographical divisions of the world. You might enter and thus arrange it in a way meaningful to you, like by region as in the sample data. This way, the classification scheme you devise to organize your data already tells you a great deal about it just by viewing in TREEBASE. In addition, you might want to keep notes about the places you've visited, important facts about those places, or anything else you want in the memo field notes. Nothing has been placed in the memo notes of the sample data. You may add notes to the sample data as you wish. You may also rearrange or add items. It's even possible to add more detail, for example, by defining a category called "major cities" and then adding them to the database, in addition to other possibilities. You can be as detailed as you want when grouping items, as long as no more than 22 categories are desired. Use the sample data to get a feel for the key controls used to move about within the database (which serve to change the current item). The controls which apply are the direction keys, PgUp, PgDn, Home, and Ctrl-left/right arrow. Use Find (Ctrl-F) to search for nations of your choice to see where they are placed in the overall structure. IV. Program Operation The file TREEBASE.INF has important information about setting up and maintaining multiple separate databases. The important fact to remember is that only one database is allowed per directory, which must contain all three data files for proper operation once any records, categories, or notes have been added. Each time the program is run, any database present is accessed automatically. Or, if there are none, the program starts a new one automatically. If preferred, completely unrelated sets of data may be kept in the same database as long as enough defined categories exist to support all data items. Information concerning properties of the view window can be found in Part 2, The Treebase Environment. The remainder of the program deals with using the menu functions. Their explanations will follow. ** Add ** All items entered in a database are done so through the Add function. Items may be added to the database only after their intended category has been set up beforehand. Refer to the section entitled "Category" for information on setting up (defining) categories. A category needs only to be set up once, and then it can be assigned to different items repeatedly. 4 After selecting Add on the program menu by first highlighting and then pressing ENTER, the Add screen appears. New items may be entered as either subitems of the current item or as root items to start new trees. After entering the name of an item, which can have up to 18 characters, the intended category of that item is assigned by choosing its number as displayed in the table at the top of the screen. The restrictions on categories to assign will vary according to the level of the current item as defined in the set up of categories. This means a new subitem may only be assigned a category of a level lower than that of the current item. This ensures the preservation of hierarchy among data items. No restrictions apply to categories when assigning to a new root item; a root item can be of any category. The message bar at the bottom of the screen will serve as a guide when adding items. In the view window, depending on the number of view levels in effect, anywhere from one to several end characters of items are omitted for display alignment purposes only. This does not affect the original length of any items as entered. ** Edit ** Use Edit to change the name and/or the category of the current item. To preserve relative hierarchy among items, restrictions on valid reassignment categories are based on the level of the category of the parent item and/or that of any subitems. ** Move ** Select Move to rearrange individual trees or branches. A branch/tree to be moved begins with the current item and contains all items included in subsequent branching. Four Move types are permitted: 1) Move the entire branch/tree by choosing its new attachment point (new parent item). Utilize normal key controls (direction keys, Find, Path, etc.) to position this destination item as a temporary current item. Only items which do not violate the defined levels of hierarchy will be named as a valid attachment item. Choose "P" for Proceed or "C" for Cancel or SPACEBAR to toggle between the options. Press ENTER to execute. 2) Detach an entire branch and make it a separate tree by using . The branch attached begins with the current item as indicated after the phrase "Move :" and is not influenced by any destination items that may have been positioned before deciding to detach. Trees are always placed below the last tree added or detached. 3) Reposition the branch beginning with the current item to the bottom of the group (under the parent item) by positioning the parent item as a destination item. The phrase "< SUBITEM AT END >" appears. Select Proceed to execute. 5 4) Reposition the tree beginning with the current (root) item to the lowest tree in the database by utilizing as in Move #2 above. ** Delete ** Use Delete to remove individual items or branches/trees from the database, starting with the current item. Once deleted, items and their respective note fields cannot be recalled by the program, although the author may be able to help if contacted shortly thereafter. ** Category ** The Category section is used to define the set-up structure for the database. This is done first by assigning a name to a category and then by assigning it a relative position in the hierarchy among all categories. After selecting Category on the menu, the set-up screen appears. Categories may be added by pressing F1 or be renamed/repositioned by entering the upper-case letter corresponding to the appropriate name listed in the category table in the upper part of the screen. Refer to message bar on the bottom of screen as a guide when on the Category screen. After entering a category name, which can be up to 12 characters in length, the program will prompt for a "hierarchy number". That is, namely, a number from 1 to 99, which serves a purpose none other than to preserve the relative order among the categories. Using this convention, added or repositioned categories can be inserted into their proper place in the hierarchy without having to reenter them all in the proper order. Placing an intended category between one higher and one lower in the table simply amounts to assigning a number in between the hierarchy levels of the one higher and the one lower. The categories always appear in their proper hierarchy in the order from highest level (lowest number) to lowest level (highest number). This is the same order as depicted when adding items to the database. Colors used to code data items to their proper categories in the view window can be set or changed by entering the lower-case letter corresponding to the appropriate pre-existing category in the table. The colorval number for foreground may be from 0 to 31; the number for background from 0 to 7. Numbers are used to represent the following standard colors: 0, black; 1, blue; 2, green; 3, cyan; 4, red; 5, magenta; 6, brown/yellow; 7, white; 8, gray; (1 to 7) + 8, bright version of color; 16, black; (1 to 15) + 16, flashing version of color. ** Find ** Use to execute. After the phrase "Find What :", you may enter all or part of an item name (search expression). ENTER alone cancels. All items which contain the search expression will be found. To restrict the search to the beginning of words, enter a space before the search expression. If found, accepting the item makes it the new current item, while continuing the search will find the next applicable item. You can use within Find to specify a new search. 6 ** Path ** Selecting Path on the main screen menu or by pressing will display the current location in the tree, beginning with the root item at the top on downward to the current item. Items are displayed with the categories to which they belong. ** Notes Maintenance Functions ** ** Memo ** The Memo function permits the entry and/or viewing of notes on the current item. If no notes exist for the current item, executing Memo will bring up a memo entry field in which to begin placing notes. If notes exist, Memo brings up the memo view field. You may also view any notes by pressing when on the main screen. You may page through the various pages by PgUp/PgDn, Home/End, or by entering a page number to view. Refer to the bottom of the entry and view screens for relevant key controls when in the Memo section. The separate screen pages of notes can be edited only one page at a time. Editing keys utilized in the memo entry field include Insert, Delete, Home, End, PgUp, PgDn, Tab, Backspace, and arrow keys. Be careful when inserting lines in the memo entry field, for lines scrolled off the bottom of the field do not appear elsewhere; they are lost. When on a blank memo entry field and want to exit after nothing has been entered, you may press ENTER to the "Save any changes ?" prompt. No blank text will be saved. You may keep as many pages as required on any item, which can be added to or edited at any time. ** Copy, Share, Transfer ** These three functions as they apply to the notes of the current item permit the selection of a destination item chosen using normal key controls. The second item must presently have no notes. Find and Path may also be utilized at this time. Choose "P" for Proceed or "C" for Cancel or SPACEBAR to toggle between the options. Press ENTER to execute. When done, the current item returns. Use Copy to duplicate the notes of the current item by copying to another item. Transfer reassigns the notes of the current item to another item. In effect, the current item's notes are deleted. Share allows the notes of the current item to be accessed by another item. No limits are placed on the number of items which may share a set of notes. It is important to remember that any changes made to the notes will affect all shared items. A good practice would be to place the names of all items sharing a set of notes in the notes themselves to serve as a reference. Use Copy instead if you can anticipate subsequent additions/changes to notes that should not apply to all shared items. 7 ** Delete ** Use this function to remove a set of notes from the current item. Deleting notes which are shared with other items will not affect the access to the notes by the other items. If unshared, notes which have been deleted may not be recalled. Choose "P" for Proceed or "C" for Cancel or SPACEBAR to toggle between the options. Press ENTER to execute. ** Output ** Output writes the notes of the current item to the output file specified by the user. You may include an optional drive and pathname with the filename (filespec). See your DOS reference if unfamiliar with these terms. To cancel Output, press ENTER without specifying anything. You may place the notes of several items in the same file by entering the same filename for Output. Select "A" for Append, which adds notes to the file without overwriting it. Any output file created is a standard ASCII (text) file, which may be imported to any word processor for editing, formatting, and then printing. You may also print the file directly by typing TYPE filename > LPT1 at the DOS prompt. (Entering LPT1 as a filename for Output should produce the same results, but it is important to be sure the printer is ready before this step or the computer may have to be rebooted.) In this case, however, the only formatting will consist of a left margin if you specify one at the required step in Output. With the margin, info will print as it appears on the memo view screen. There will, however, be no page breaks. Page breaks can be added by importing the file to a word processor. In this case, it will probably be more convenient to remove the left margin when sending output to a file, especially if the word processor to be used already has standard margins set. TREEBASE 1.1B/ Copyright(C) 1990-1992 TBX Software/ All Rights Reserved