Help with the Command Interpreter of RT Bible:
Like most modern search engines, RT Bible provides an intuitive mechanism for searching by using a simple text input area. This simple user interface design was pioneered by the major search providers on the web. In RT Bible, this input area provides a command interpreter. The “command interpreter” services a variety of commands, including searching.

RT Bible implements technology for searching text known as “
proximity search”. Proximity searches scan text by locating search terms that are in proximity to one another. These searches are intentionally constrained to limit the number of words. RT Bible calls this limit the “span”. This span is used to pinpoint the verse in which a match occurs. Unlike most bible search programs, this span allows searches to match across verse boundaries.

To illustrate how proximity searches work, let’s consider this example text:
In the beginning, God created the heavens and the earth.

Consider a search where we are looking for beginning, created, and earth. In order for such a proximity to match the aforementioned verse, an eight(8) word “span” would be required in order to constitute a match for this verse in Genesis.

RT Bible introduces a syntax for expressing proximity searches which we call:

English Imperative”. English Imperative can be thought of a query language similar to Structured Query Language (SQL), which is used to search corporate databases.

English Imperative:
English Imperative has a more intuitive syntax than SQL and is literally a set of four(4) English verbs which implement the four basic operations available via the command interpreter (aka the search bar):
  • Find
  • Summarize
  • Export
  • Set

Find
Let’s consider the proximity search example that we have already identified: To express our search using English Imperative syntax:
find: beginning, created, earth

We would expect RT Bible to match Genesis 1:1 in this proximity search. However, Genesis 1:1 would not be a match here because the default span of RT Bible is seven(7).

We can extend the English Imperative syntax to define a longer span:
find: beginning, created, earth: span=8

Perhaps we would instead like to search that God created the earth:
find: God, created, earth
Using this imperative, a default span of seven(7) would be adequate to match Genesis 1:1.

Consider an imperative search to find that God created heaven or earth:
find: God, created, [earth heaven]

The order in which the search terms are provided is insignificant. Additionally, the type-case is insignificant. Moreover, commas can be eliminated or added at will. We could just as easily type:
find: [Heaven Earth] created GOD

As RT Bible English Imperative uses a form of “Boolean Algebra”, search terms are “commutative”. In other words, search terms can be in any order. Now we formalize our definitions. These terms, found within RT Bible documentation are defined as follows:

Command Interpreter (CI): the search box in which commands (aka imperative verbs) are typed into the RT Bible User Interface.

English Imperative (EI): English Imperative is a specialized language. It is a query language processed by the RT Bible “command interpreter”. It is a concise and simple grammar for expressing bible search commands.

Imperative Verbs: find, summarize, print, set. These verbs are used to construct commands in a syntax known as “English Imperative” (EI).

Logical Expression: a logical expression follows the “find:” imperative verb. The logical expression contains one or more “search terms”. If there is more than a single search term, each is linked with the logical “and” operator which forms a simple Boolean Algebraic expression. In RT Bible, a Boolean phrase is any number of search terms separated by spaces and/or commas. Each logical expression is contained in square brackets ([ ]). The brackets can be omitted when the search term contains only a single “search word”.

Standard Expression (SE) Syntax: RT Bible provides two variations of syntax for “Logical Expressions”. The most intuitive of these syntaxes is referred to as “Standard Expression” (SE) and is discussed thoroughly in this section. Unless otherwise noted, all syntax in RT Bible documentation is depicted in SE syntax.

*****************************************************************
STANDARD EXPRESSION IS NOT YET AVAILABLE ON THE MAC
… PLEASE USE ALTERNATE EXPRESSION ON OS X
*****************************************************************

Alternate Expression (AE) Syntax: Another syntax for “Logical Expressions” supported by RT Bible is referred to as “Alternate Expression” AE and is designed to be familiar among professional programmers and logisticians. The Author of RT Bible recommends that most new users learn and use SE syntax. AE syntax provides no additional features that are not just as easily expressed in SE syntax.

Search Term: in our last example, we have three(3) search terms
  • Heaven, Earth
  • created
  • GOD

Search Word: Each search term contains one or more search words; in our last example, we have four(4) search words
  • Heaven
  • Earth
  • created
  • GOD

and: In Boolean Algebra, “and” means all terms must be found. In RT Bible, “and” is the implied operator between all terms.

or: In Boolean Algebra, “or” means any term can be found. In RT Bible, “or” is represented by words contained within square brackets ([ ]). So our first two search words (heaven, earth) in our latest example are connected with a logical “or”.

not: In Boolean Algebra, “not” means that the term must not be found. In RT Bible, “not” is represented by a dash/minus(-) and applies to the search term (it cannot be applied to individual words unless the search term has only a single word). In other words, a dash(-) means “not” and in RT Bible implicitly means “and not”.

Considering these definitions, we can say precisely that RT Bible users can use the English Imperative verb “find” combined with a logical phrase to search the text. Additionally, a prepositional phrase can be added to the “find” verb to constrain the scope of your search:
find in Genesis: [Heaven Earth], created, GOD
find in old testament: [Heaven Earth], created, GOD
find in Pauline epistles: [Heaven Earth], created, GOD
find in bible: [Heaven Earth], created, GOD

The last imperative above, “find in bible:” is the default behavior and is synonymous with the “find:” imperative. In fact, “find:” is the default verb, so it would be entirely correct to just concisely type the following implied search into the search box:
[Heaven Earth], created, GOD

Finally, let's consider how to find all passages that contain God AND created, but NOT containing earth AND NOT containing heaven:
find: -[heaven earth], created, GOD: span=15
Note the “not”(-) applies to the entire search term. Verbosely, it could be written as:
FIND ALL VERSES:
NOT CONTAINING (heaven or earth)
AND CONTAINING (created)
AND CONTAINING (GOD)
While the above capitalized syntax is not directly understood by RT Bible, this expansion might assist the reader in understanding RT Bible “English Imperative”.

If you want to construct a search to find ALL words in the search box, this would be the simplest form to find ALL of three words (in, the, beginning):
in the beginning

If you want to construct a search to find ANY words in the search box, surrounding the words in braces would be the simplest form to find ANY of five words (Lord, God, messiah, Jesus, Christ):
[Lord God messiah Jesus christ]

Summarize (not yet implemented; expect this functionality in 2013)
The “summarize:” verb provides exactly the same grammer as the “find:” verb. The difference is in the results: While “find:” will return verses from the bible text, “summarize:” will provide only summary information such as “found 20 matches in 3 books

Export (not yet implemented; expect this functionality in 2013)
The “export:” verb has very limited grammar. For simplicity, we’ll just consider the basic variants:
  • export: genesis to “C:\user\me\Documents\genesis.txt”: format=utf8
  • export: exodus to “C:\user\me\Documents\exodus.html”: format=html
  • export: Leviticus to “C:\user\me\Documents\myfile.docx”: format=docx
  • export: deut to “C:\user\me\Documents\deuteronomy.html”

NOTES:
  • docx, is Microsoft Word format 2007/2010
  • Names of books can be abbreviated, for example, deut=Deuteronomy
  • When the format suffix is omitted, the default format is utilized

Set (not yet implemented; expect this functionality in 2013)
Earlier on, we considered the English Imperative:
find: beginning, created, earth: span=8

If instead, we wanted to always use a span of eight(8), we could utilize this imperative:
set: span=8

If instead, we wanted to change our default format from html to docx:
set: format=docx

Alternate Expression:
Alternate Expression (AE) provides an alternate notation for Logical Expressions. AE can be used both with the “find:” verb and with the “summarize:” verb. Here are some examples re-expressed in AE syntax using the default “find:” verb:

Standard Expression (SE) syntax
Alternate Expression (AE) syntax
find: beginning, created, earth
beginning & created & earth
find: beginning, created, earth: span=8
beginning & created & earth : span=8
find: [heaven, earth], created, GOD
heaven|earth & created & GOD
find: created, GOD, -[heaven earth]: span=15
created & GOD ! heaven|earth : span=15
find in Genesis: GOD, created, Earth
Genesis: GOD & created & Earth

In summary, Alternate Expression (AE) syntax provides another syntax for the English Imperative “find:” and “summarize:” verbs. Professional programmers might deem the AE syntax more familiar as it utilizes symbols common in most computer languages. Many others will deem Standard Expression (SE) syntax to be more intuitive. However, since RT Bible implements both syntaxes, the choice is yours as to which syntax you prefer. You should also note that “find:” is the default verb with either syntax.

One final note: RT Bible automatically adjusts the span of your logical expression to be inclusive of the number of search terms. So if you were to express:
in & the & beginning & God|Lord|Jesus|Christ|Messiah: span=1
OR
find: in
, the, beginning, [God Lord Jesus Christ Messiah]: span=1
RT Bible knows that the minimum span has to be four(4). So it will treat your proximity search as if you had typed:
in & the & beginning & God|Lord|Jesus|Christ|Messiah: span=4
OR
find: in
, the, beginning, [God Lord Jesus Christ Messiah]: span=4

ADDENDUM TO PROGRAMMERS AND LOGISTICIANS:
Operator precedence for Standard Expression syntax is defined in RT Bible as
  • : =
  • -
  • [ ]
  • , space
Operator precedence for Alternate Expression syntax is defined in RT Bible as
  • : =
  • |
  • & !

In all cases, any number of spaces can be used between operators and terms. Additionally, when using SE syntax:
  • a comma and a space are considered equivalent
  • braces can optionally be added on single word search terms






All of the following expressions are equivalent
find: man, earth, -[end, final]
find: man earth - [end final]
[man][earth]-[end, final]
man,,,,,,,,,, [earth] -[end final]
man&earth!end|final
man & earth ! end | final

In all of the above commands, RT Bible would find all verses meeting both of these criteria
  • MUST CONTAIN (man AND earth)
  • MUST NOT CONTAIN (end OR final)