VISUAL AIML 2.0 - STANDARD EDITOR - FREEWARE EDITION - RELEASE
6/6/01
(VISUAL_AIML.xls)
INTRODUCTION
Thank you for downloading VISUAL_AIML.xls !!
I hope you enjoy the application as much as I developing it. As this is the first public release, your
feedback will be critical to improve this utility over time.
To learn the story behind Visual AIML as well as about Advanced Option Modules, visit my site at
www.pamela.itgo.com
CONTENT
During the learning period, this file will be your bible, it includes readme type information, user
instructions, and FAQs (to be added in following releases, based on your feedback)
HOW TO USE THIS DOCUMENT
I believe the best way is to print this file before starting, and use it as a notepad. Highlight text you
feel important, make notes on it to clarify concepts, etc. This information will be a valuable aid.
QUICK START
VISUAL_AIML.xls is an application workbook loaded with macros and formulas to perform as a
user-friendly editor to create, maintain, and update code (categories) based on the AIML 0.9
specification (draft).
The application comprises 3 worksheets:
- MAIN the user interface
- CATEGORIES the categories DB
- CODE where final code is placed
Visual AIML -abbreviated VA from now-, requires EXCEL 2000 to run (at least this is the version I
used to develop and test it :-)
To start the application:
1) Open the file in Excel. (Say yes if you are presented with an msg box about running macros)
2) If this is the first use, you will need to enter the activation code - password - mailed to you. On
the Main worksheet go down. At the end of the License Agreement you will see a box. Follow on
screen instructions to activate. (You only will need to do this once)
3) If activated successfully, you will see the word ACTIVATED below the password cell. Now you
are ready learn about using VA.
LEARNING THE BASICS
1.0 THE USER SCREEN
As a user you will interact most of the time with the MAIN worksheet. It is divided in 4 sectors, from
top to bottom:
- Main form
- User options
- License Agreement + program activation area
- Error reporting
1.1 THE MAIN FORM
A brief overview of the elements on screen will help you to get more familiar with the main areas
and functions:
a) Top Menu: lets you switch between NEW [Create New] and EDIT [Edit DB] modes of operation.
On the right you see the [Clear Form] button, which erases the work template.
b) Control Menu: this is the next horizontal area containing key info and several controls, from left
to right it includes:
- Current Mode indicator
- Existing Cat # (when retrieving from DB)
- Selection of Topic / View Mode / and Record to retrieve from DB
- [View] button to load a category from DB (according to previous parameters)
- [Save to DB] saves the category currently on the work template (WYSIWYG) to DB
- [Build Code] generates the final code ready to use on the CODE worksheet
- Next Cat # (the number that will be assigned to the next new category when you save it to DB)
Next down, you see 2 list boxes on the left and the work template on the right. Lets start with the
template:
c) Work Template: this is where your category is created / displayed / or edited. It has 8 lines as
follows:
- Start Line, can include opening block tags (like <alice> and/or <topic name = ...)
- THAT line
- PATTERN line
- 5 TEMPLATE lines
- End line, can include closing block tags (like </topic> and/or </alice>)
d) Input Line: this read-only line follows the 8 category lines. It is used basically to display
predefined tag strings from the list boxes prior to its loading on the template line you select.
e) Load Selectors: the 8 vertical option boxes let you choose where to load the string appearing on
the input line. Whatever you load is concatenated to the right of the existing content (if any) on that
line.
YOU CAN ENTER TEXT AND DO MANUAL EDITS ON ANY LINE ON THE WORK TEMPLATE. THIS INCLUDES ANY PREDEFINED STRING AFTER THEY ARE LOADED FROM THE INPUT
LINE.
f) Scroll List A and B: these lists contain predefined tag strings that you can select and combine
using the List Controls. The 2-list approach allows certain combinations where content of list A
must appear inside tags of list B and vice versa.
g) List Controls: 2 option boxes let you select between List A and List B. Each list also has a check
box. With List A selected, entering a check mark means that the "x" included in some strings
containing in List A will be used as a wildcard and substituted by the string currently selected in List
B (and vice versa). Both check marks at the same time are not allowed (no sense) in this case an
error msg appears to alert you to correct this condition.
1.2 USER OPTIONS
This sector of the Main worksheet lets contains predefined read-only bot
"vars" and others you can change, including topic names and botmaster initials (for comment line). The screen is self
explanatory (what is in green you can change, everything else no :-) This version enables you to enter up to 10 topic names, and customize up to 8 client side
"vars"
1.3 LICENSE AGREEMENT
I don't think there is need to cover this. Just read it and agree :-)
1.4 ERROR REPORTING
If you see an Error Code – after activation – or experience any inconvenience drop me a mail.
(Instructions at the end of this document)
USING VISUAL AIML
THE FIRST YOU SHOULD TRY TO DO IS :
1) CREATE A FEW NEW CATEGORIES (IN NEW MODE) TO HAVE SOME RECORDS IN YOUR DB TO PLAY WITH
2) TRY BUILD CODE AND SEE THE OUTPUT IN THE CODE WORKSHEET.
3) RETRIEVE SOME EXISTING CATEGORY FROM DB USING [VIEW] (USE A TOPIC SELECTION AND A VIEW MODE FOR WHICH YOU ALREADY HAVE A SAVED
RECORD) THE FIRST CAT. YOU WILL SEE IS RECORD 1 OF THE DB SUBSET.
4) TO VIEW OTHER RECORDS CHANGE THE RECORD # AND PRESS [VIEW]
5) IF THE VIEW MODE IS = ALL, NO FILTER IS APPLIED,AND RECORD # ARE EQUIVALENT TO CAT #, THUS YOU CAN USE RECORD CONTROL TO GO TO A
SPECIFIC CAT #
6) VISUAL AIML SAVES THE "TYPE" OF CATEGORY USING THE FOLLOWING CRITERIA :
IF IT HAS A "THAT" LINE, TYPE IS SET = THAT, IF NO THAT BUT SRAI LINE =
SRAI, AND FINALLY IF NO THAT NOR SRAI = STD (STANDARD). WHEN YOU USE VIEW MODES YOU SELECT A TYPE OF CATs. WITHIN A GIVEN TOPIC.
7) TOPICS COULD BE USED AS FOLDERS TO ORDER YOUR PROJECT, THUS TOPIC COULD BE REAL TOPICS IN YOUR AIML OR JUST USED TO GROUP DIFFERENT
CATEGORIES DURING DEVELOPMENT. ITS UP TO YOU.
Experiment to see what you can do, the predefined strings are grouped in the way I found more
meaningful (I'm awaiting your comments to improve it :-)
You need some practice to locate what you want quickly, and of course a basic understanding of
AIML. Predefined strings avoid typing errors and are easy to use. On the other hand consider that
due the ability of retrieving / editing from DB, you are not going to use some existing cats as a
starting point instead of doing it from scratch for every category.
The reason for maintaining separated the [Save to DB] and [Build Code] controls is for added
flexibility, for example: edit an existing cat and build code without saving to test it, or save only to
generate the code at a later time in a determined order, etc.
Wait to see what you will be able to do with the Advanced Option Modules !! :-)
The key to remember is that when you save in Edit mode you overwrite an existing cat (you could
even retrieve from DB in Edit mode and switch to New mode to accomplish a "Save as")
In New mode Cat. are numbered incrementally starting at 00001 when you make your first save.
Users cannot reset this counter (it helps to keep the DB clean (no records with the same cat # :-)
Of course you need some background about Excel, for example: you can edit manually any line
directly on the 8 line work template by just double clicking on the point where you like your cursor to
be inserted.
You could also edit content on the input line provided by the Excel interface (very practical if
individual lines get very long) Take in account that in spite of the line width on the work template,
everything you type/load is accepted (and stored on DB and of course included in the cat. when
you press Build Code)
The reason to divide the template in 5 lines is to keep your category more readable and add in edit
flexibility. Use them in consecutive order 1 to 5. (You can use cut/paste between lines !)
Save as often as you want, but take in account that saving to DB doesn't save the workbook /
worksheets (including a file save in all macros would make them too slow. Just remember to press
Excel's Save icon once in a while (and always before exit) as with any other application.
In general, the normal way of using VA should involve 3-4 steps, depending in which mode you are
working:
a) In NEW mode you create the cat - save it to DB - build the code.
b) In EDIT mode you retrieve a cat with [View] - edit it - save to DB - and build code (easy ? :-)
HOW TO "EXPORT" THE CODE
VA generates a clean code, taking care of case, deleting extra spaces, unused lines, and adding a
comment line on top of each cat containing:
- Topic / Cat # / Botmaster / Date
Now the bad side: to get the code into your AIML files go to the CODE worksheet and use the old
cut/paste to copy what you need (or everything) from column A. The red number on cell D1 is the
next position pointer. It points 2 cells down from where your last cat ended (leaves a blank line) You
can manipulate this number if you wish, however remember that if you leave it on the wrong value
you could overwrite existing code on the CODE worksheet (it doesn't affect save to DB).
A key consideration is that this number has to exist, and be equal or greater than 2 (cell A2 is the
top of the code area)
Using some of the Advanced Option Modules you will be able to build and export automatically all
the way (you want it all for free, don't you ? ;-)
ABOUT THE CATEGORIES DB
Best Advise: Don't touch it ! If you edit cells there you are on your own. Take special care with line
1 (formulas are protected but there are some control values that are written back and forth by
macros aren't (if you erase line 1 application could stop working (almost sure, I asked the
programmer :-). So you are warned, and I wont fix it :-)
Seriously: the best you can do if you want to play with your records is to copy the worksheet to
another workbook (cannot be on the same, due those nice features called "protection" (I have used
the full range Excel makes available). If you are a hacker, let me know how you are doing, but
watch out with Format C !! :-)
PROTECTION (the sad part you never wanted to hear about)
I decided to protect my work for many reasons:
1) To help you to keep your hands off and not scramble my formulas and macros and then ask for
support (nope :-)
2) It has been hard work, I hope it helps you to build better AIML, and that by using it you can help
me with suggestions and bug detection along the way (thanks, but I want to do the fixing myself :-)
3) Last but not least, if we continue developing this project together I felt the need to protect an
application that can become 20 times more powerful (why not 200 :-) as I start to add the Advanced
Option Modules already outlined in my site. Visit www.pamela.itgo.com
PD 1: Some people already asked me about the License statement re. selling AIML created with
VA. My answer as follows: if you want to make some business it's OK, but let me be part of it
(Agreed ? :-)
FINAL COMMENTS
This version is released as Freeware, enjoy it, play with it, its not a technological break-through but
it works fine (only under 3 conditions: inside my computer, with my Excel version, and until now...
ohhh it just crashed. Sorry!! :-)
It was just a personal tool until 2 weeks ago, then I put 60 hours of work to improve it due the many
requests I received. You asked for it, here you have it.
Now it's your turn to commit to help me to improve it by sending suggestions and
feedback.
The future of this project depends on the interest it creates between you as final users, if you feel it
has some value help me to raise some funding so I can continue development. I hope to hear from
you.
On the other hand, my ultimate goal was to help others with AIML development and promote the
AIML standards.
Have Fun !
Robert G
Buenos Aires, June 6 2001 / Readme.txt version 1.0
PD 2 (last one I promise):
Information already covered in this paper wont be answered again on e-mails. This means:
a) Read this document more than once
b) Play with VA at least 10 hours before asking your first question (still in your own mind)
c) Print this file and make notes on it - I already told you
d) Then and only then share your more enlightened insights with me (don't be shy!) they will
be included in a FAQ's section in the next update of this file.
MAIL
ME RULES
A. COMMENTS / FEEDBACK: Please mail to pamela783@yahoo.com
including on the subject line the words VISUAL AIML SE and the release date (in this case 06/06/01)
B. SUPPORT QUESTIONS: use the same address but make sure that subject line includes the word
SUPPORT (I hope my mail rules will detect it before killing the dam msg :-). Sorry but I won't
answer if you aren't on my list of registered users (you can take your chance if you want, but its
faster to just register before sending your questions) ALWAYS MENTION THE DISPLAYED ERROR CODE (if any) AND A BRIEF SUMMARY OF THE
ISSUE
FAQs
1. ACTIVATION CODE
Q. I'm
having some problems to Activate Visual AIML
A. First of all you will need Excel 2000 to run it (its an application
worksheet not an exe program), open the file, accept macro execution if
you are presented with a msg box, on the Main worksheet go to the end of
the License Agreement position on the white cell, enter your Activation
Code (mailed password), move to any other cell or press Enter to load info
in cell (remember this is a spreadsheet !!), and only then press [ACCEPT].
A macro will execute and you should see the word ACTIVATED below the white
box as a confirmation that everything went well. last comment: When the
application is in its non-activated state, you should see error code
"A" (just move down a few lines, Error Reporting sector follows
License Agreement)
REGISTER
& DOWNLOAD NOW !!
Back
to Visual AIML Index
|