This is a sample of current work and contains a VIC command. This work is - copyrighted 1994, 1995 by: Timothy V. Rue timrue@mindspring.com (see copyright information at end of document) --------------------------------------------------------------------- (KE) KEy (or Knowledge Enable) KE - constrain access and use of definitions (KE) KEy - The concept of KEy is best described as using keys to open doors to knowledge and parts usage. It allows "IQ/ID" knowledge constraints to be applied and has the trade off of search time. More constrained, faster search. Keys can be created, changed and removed from the current KE file through "KE". The current KE file can be created, changed or removed through "PK". Keys can have teeth and a master key can exist in the PK file. Keyholes and Keys - pattern matching KE flags are to allow changing the rules on keyhole usage within the IQ/ID files. This will allow different formated knowledge to be used. Also for constraining IQ/ID search to a standard grep type search. This needs to be worked out. File keyholes - When a file keyhole is encountered the following sequence happens: 1) A matching file-key is looked for in the current KE file. If not found, skips file. If found goes to #2. 2) The file-key teeth and master-key teeth are comparied with the file, that keyhole points to, keychain (a commented header that contains a list of all non-word key-teeth in the file, including the blank-key for definitions without a definition-key). If there is not a fit, skips the file. If there is a fit goes to #3. 3) The internal IQ/ID "searched file list" is searched for a matching "path:filename:date/time" of the file to open. If not found, add the file to the top of the IQ/ID stack and internal list, and continues the search in this file. If found then goes to #4. 4) PKs IQ/ID line/stack is searched for the filename and if found, moves it to the top of the stack and continues the search in this file on the line where it left off. If not found, skips the file because it has already been searched. On key-holes: The word-keyhole is pattern-matched with the IQ word arguement or variable value. The file-keyhole is pattern-matched with keys in the KE-file. The definition-keyhole is pattern-matched with keys in the KE-file. The class-x pattern is checked to see if it is either a parent/ansestor, child, or self ; with the class-x tag given in the OI-file, looking at the KE-file for the relationships. The *CLASS* keyhole checks to see if the variable class-x exist anywhere in the KE-file. "KE" files ------------------------------------------------------------- file-keys file-key ;; key-tooth , key-tooth , ... file-key definition-keys definition-key definition-key ;; class class ;; child-class , child-class , ... class ; parent-class ; child-class , child-class , ... class ; parent-class ;; KE To be used by IQ and ID mainly. KE returns PK KE line. KE -? help on KE. KE -ke returns current keychain list w/values. KE keyname returns value of keyname if exist. KE -c keyname cancels keyname. KE -c keyname key-teeth creates or changes keyname. KE - "keyname : key-teeth/-p@name (to compare w/file-comment) :level-check" key-teeth/-p@name: user definable but defaults/examples are: -t = text -e = executable calls -s = shell script code -ed = education -ref = referance -appl = application ------------------------------------------------------------------------ COPYRIGHT INFORMATION: ------------------------------------------------------------------------ Although this work is copyrighted, the intent of the copyright is to support the concept of giving credit where credit is due and to prevent the wrongful constraint and/or abuse/exploitation and/or distortion/ manipulation of it's content. This work may be transfer and used following these conditions: 1) This work may be transferred only in whole and so long as NO consideration is received in return. 2) That proper credit is given to the Author(s) responsible for the creation of the work. 3) That there is no intentional distortion or manipulation of the work that in any way damages or harms the work or authors(s) responsible for the creation of the work. And that in finding any unintentional distortions or manipulations, correction(s) will be made A.S.A.P. and with reasonable effort to communicate the correction(s) to all. 4) This work shall not be included in any for-profit product and/or service without the written approval of the authors(s) responsible for it's creation. The exception to this is, of course relates to the world wide web, in that the work may be made available on and through the W.W.W. so long as the other conditions are adhered to. ****
Email: timrue@mindspring.com