Basic Protocol Design

Protocol scripts can be created using an editor of your choice.

The scripts should be stored in the protocols folder.

They are text files with various tags in it.

The body of your script will be made up of:

Before you start to enter your script, write out all the text you want to include and decide where questions will fit in and how user answers will affect the flow of the protocol. In some cases, for example, a particular user response will make a few following questions irrelevant.

Protocol scripting language

This manual has the various commands/tags that can be used in your scripts.

Don't worry if they don't appear to make sense at first - there's are examples throughout.

Comments & blank lines

# If you start a line with the hash symbol ( # ) any text you type on the rest of the line will be invisible to the protocol user. Use this command to add author comments. These will be useful if someone other than you needs to edit the script in the future (it will help them follow your train of thought).
. Normally, when the script is being processed blank lines will be skipped. You can make it easier to follow the script by introducing white space. If a full stop ( . ) is used as the 1st character of a line this will introduce a blank line on the screen output.
\ Lines ending with a \ will be treated as in-complete and the following line will be appended. This should be used to include text that would normally be lost. It is mainly for use within the 'Save=' option.
> Lines starting with a > will be indented by seven spaces.

Line labels:

Line labels are used to jump around the protocol, and control the flow for the end user. For example, if the user's answer to one question makes the following question irrelevant, you will want to skip it. Therefore you can give your script lines labels, to tell the protocol which line to skip to.

A label is contained in square brackets, e.g.: [label1]

You can put any text you like in the square brackets, as long as labels are not duplicated within a script and do not clash with the reserved line labels.

Note: There is a limit of just under 1000 labels per script and line labels and options are case in-sensitive e.g.

[fred], [Fred], [FrEd]
will all be treated in the same way.