When you process a document with options blocks nested within another, or with variables nested within Options blocks (either or both), you notice a pause. The more items that are nested, the longer the pause.

   Pathagoras is counting relevant slashes to determine how many choices it will be presenting on the selection screen. During that 'pause,'  Pathagoras is converting slashes within nested components to other characters to make sure that the slashes it encounters are the right slash for the level of the option being processed.)


<<*Options*!FoodType!Appetizer/Entree/Dessert*I want to start the meal off with a [Greek salad/bowl of tomato bisque/cheese assortment]./For the main course, let me have [fried chicken/New York strip steak/vegetable moussaka]./And let's finish up with [Baked Alaska/Raspberry sorbet/apple pie]. {And coffee, please.}>>

The exaggerated slashes above are the 'real' dividers for the !FoodType! group.
The smaller slashes (seen in the nested variables) need to be ignored temporarily.


   Since any slash is a separator, without Pathagoras having a way to distinguish the 'nested' from the top level slashes, you would be presented 10 options at the beginning when you were only expecting 3.

   To accomplish this task, Pathagoras temporarily (and very quickly) converts the slashes in all nested elements to other characters.

   The process of converting in, and then converting back out, is very fast for each individual element (less than 1/10 seconds according to our tests).  However, when there are many (30+) such elements, it can add a noticeable amount of processing time to your project. When there are hundreds of nested elements, many seconds can be consumed.

  The solution:

   In cases where major 'top level' sections can be clearly identified, and where you can tell (from a simple perusal of the document) that 'slash conversions' would be a waste of time, use '^OR' (we call it 'caret OR') as the divider. (As suggested in the preceding sentence ^OR should only be used at the 'top level' of choices, and not at any nested level. No nesting of ^ORs is allowed.)

   Multiple ^OR sets in a single document are permitted, with the only requirement being that the 'top level' options are independent from each other.

  One last requirement: the ^OR separator must be on it's own line, or at the end of a paragraph. (So it cannot be used mid-sentence. Pathagoras is looking for ^OR<Enter>)

   The experienced user will also recognize that '/OR' (slashOR) can also be used as a super divider. If Pathagoras see a /OR in an options block, it will not convert nested / within its scope. Plus, /ORs do not have to be in a separate line. ^OR was written for large swaths of text, /OR for much shorter document elements. A bit of experimentation could be useful to determine the best use of each in your particular documents.