Sethworks Mooseum Annex Exhibit: EGS Standard - Bracketing Terms
BRACKETING TERMS
There are four types of bracket symbols used in EGS. These are
"{}" or curly brackets, "[]" or square brackets, "<>" or angle
brackets, and "()" or parentheses. Each of these bracketing symbols
are used for different purposes. Generally bracketed areas may not
cross. For example the following bracketing is ambiguous '{[}]'
in any context and should not occur in EGS text.
- {} brackets.
- These are used for vector grouping or complex statement
structures. A vector is a collection of words or phrases that
are used interchangeably as a part of the grammeical structure
of the sentence. It is a shorthand method of telescoping
many statements together into one where the basic form of the
statements are the same but the specific words are different.
An appearance of a vector where the terms are collected
for the first time is the "defining instance" of that vector.
Each vector only needs to be defined once. Vectors can be used
to create specialized meanings and terms that can be reused
in other statements in a group. These restatements of the
vector can be abbreviated by specifying only one term of a
defined vector. These additional appearances of the same vector
are called "abbreviated instances" of the vector.
The defining instance of a vector:.
The curly brackets indicate the beginning and ending of the
vector, and the "/" is used to separate the "terms" of the
vector. A space appears after each term seperator for visual
clarity.
The abbreviated instance of a vector:.
In an abbreviated instance of a vector any of the terms in the
defining instance of the vector may be used. Where an
abbreviated instance is used the form is as follows:
- left curly bracket.
- one forward slash.
- the specific term of the vector [with no leading or
following spaces].
- one forward slash.
- the right curly bracket.
Vector scope rules:
Vectors are to be defined in such a manner that there are no
common terms in any vectors already in scope. The scope of a
vector begins at the point of the defining instance in an ITEM
group and ends at the end of that group. The scope of a given
vector may be extended into another ITEM group by making an
explicit reference to the statement containing the vector
using the referencing indirection protocol defined above.
Where a reference is used the scope of the vector in the ITEM
group where the vector is referenced begins at the point of
reference and ends at the end of the ITEM group. It is
customary when making a scope extension of a vector with a
reference to indicate that in the description of the
reference.
Vector nesting:
Occasionally vectors are nested within one another to form
"superset vectors." A vector defined in this manner contains
all of the terms of all of the included vectors.
- Implicit vectors.
- Implicit vectors are similar to curly vectors except all of the
terms are single words and no additional instances of the vector
are needed again. These single words that are grouped
together to form a vector by the use of the "/" term
seperator but appear without the explicit appearance of the
curly brackets. Also the terms and term seperator have no
internal spaces. The terms of the vector and their seperators
appear as one single line of characters.
Where an implicit vector appears within a curly bracketed vector
it is separated from the parent vector be the use of parentices
around the implicit vector.
- <> brackets.
- The use of angle brackets is to indicate words or phrases that
are "potential" or "optional". These are similar to an implicit
vectors of zero or one terms. They indicate parts of
sentences or phrases that could be removed from the original
statement and still make sense.
- () parentheses.
- These characters are used for one of two reasons, within
vectors to clarify logic structuring or as needed to correct
prefix and suffix specifications of vectors. The use of
parentices within vectors has been explained above.
Usually when the terms in the defining instance of a vector are
defined they appear in the form most convenient within the
statement where that vector was defined. Most often the terms
are defined as being singluar and in simplest form, with a
minimum of prefixes or suffixes.
In an abbriviated instance of the vector the terms may not be in
the correct "plurality" or "gender" for the current statement.
The terms need to be corrected to fit within the new statement
by adding the appropriate prefixes and suffixes. Where it
is necessary to use the terms in the vector as corrected the
parentheses and the specific correction appear immediately
before the vector for a prefix or immediately after
the vector as a suffix. Any prefix or suffix can appear as a
parenthetical vector correction as long as the the vector modifier
actually works with each of the terms in that vector. "Near
fits" of the vector terms and the correction are allowed and
tolarated where unavoidable.
Example where assuming the EGS vector of {make/ create} as an
instance, of the suffix correction;
"Mark {make/}(s) dinner".
"Mark {/create}(ed) chairs ".
- [] brackets.
- This form of bracketing is used for absolute references as
defined above and is also used for "parenthetical comments".
Where parentheses would be used in conventional text, brackets
are used in EGS text. (the reason for this difference is not
arbitrary but results from the need of EGS scanning software to
distinguish the various uses of the different bracketing.)
From here, you can:
Return to the EGS Introduction.
Return to the EGS Definition Beginning.
Return to the part on Grouping and Modularization
Return to the part on Statement Type Codes
Return to the part on Statement Specifications
Return to the part on Context Specifications
Return to the part on Referencing Statements
Return to the Top of this part (Bracketing Terms)
Move to the next part on Control of Special Characters
Return to the entrance of The Sethworks Mooseum Annex.
Return to The Sethworks Mooseum.
Send questions or comments to:
Jimbo9@aol.com (Web page editor),
or to:
F_landry@bbs.tka.com (Content Author),