| Syntax 
   do action* done
 
 Purpose
 
 You can use doanddoneto create a block of code that will be treated as a unit. There are two reasons to do this:  to limit the scope of variables, and to associate more than one action with ausingstatement:
   open my-file as file "mine.txt"
  using output as my-file
  do
     local stream bio
     set bio to  "more about me"
     output "my name"
     output bio
  done
The variable "bio" exists only within the do...doneblock. All output within the block is sent to the destination specified by the precedingusingstatement. A do...doneblock may contain only actions. It cannot contain rules or group statements. It is possible to apply a condition to a whole do...doneblock by adding a condition after thedone. Conditions appearing after thedoneapply to the whole block, and are evaluated prior to any conditons that appear within the block. For example, the actions within the followingdo...doneblock will be executed only when the attribute "margin" of the parent element is specified:
   do
     decrement page-width by attribute margin
     using attribute margin of parent output "\newmarg{%v(margin)}%n"
  done when attribute margin of parent is specified
 |