## Query_Builder

The interface in this window is a little complex but offers great power. It is more difficult to use than Query By Example but simpler than the Query Commands window. Help is also available for the query language itself. Query answers are always displayed in KeySet windows, which have special properties.

You can fill in the text entry boxes or use the pop-up menus associated with each box. Also, if you pick the black triangles, then you will get a BLOCKING, scrollable selector to choose from a long list of choices. BLOCKING means you must dismiss this window with the Cancel button or menu item, or by double-clicking to select a choice.

The first text entry box (next to "Find and select") specifies what class you are seaching WITHIN.

The condition (next to "where") is specified as follows, from left to right: the leftmost box is the attribute (item name, tags) that you are matching to. The second box is the operator (less than, equals, text). The third box is the value you are matching to the attribute. The rightmost box is a conjunction that allows you to specify additional conditions. These will appear below the original "where" line.

### User Entry Box Details

- Class Box ("Find and select"): This box first appears with the default "ANY CLASS" showing. Use this box to select the class you are searching within. This entry determines the list of possible attributes in the Attributes ("where") box.

- Pre-Class Box: This box is hidden by default and appears next to the word "from" if you select the "Show More" option on the menu. Use this box for Secondary/indirect queries. This allows you to construct queries of the form "From the Clone class, find and select the related Loci, where the Genes meet the conditions such-and-such".

- Attribute Box ("where"): Use this box to specify the attributes within a class that you wish to test for. On both the Selector and the Popup menu for the Attribute Box, you may see the choice "USE TAG CHOOSER" which calls up a model-display for the current class. Double-click on a tag label to choose a tag within this context.
- Condition Box (second box on line beginning with "where"): This box presents a list of operators which will be applied to the attribute:
  - Some operators (exists, does not exist) do not take any arguments. In the top set of choices on the pop-up menu, "contains", "begins with", and "ends with" merely combine wildcards (such as "?" and "*") with the equality operator.
  - Equality and inequality can be tested for using the middle set of choices on the pop-up menu.
  - The bottom set of choices allows you to query on the number of instances of data (a REPEAT list) associated with the current Attribute in the data objects.

- Value Box (third box from right on "where" line): Later, this may supply more hints as metadata becomes available. Currently, enter the arguments for the comparisons used in the Conditions box here. "?" (single character) and "*" (0 or more characters) are valid wildcards. Quoted strings are accepted.

- Conjunction Box: (last box, far right, on "where" line): Use this box to form conjunctive query conditions, to use the "#" (and-submodel) function, and to demark the end of a query with the special word "END".

### Buttons

Most of the button and main menu commands are the same as the Query Commands window.

- Quit: Quits this window with an option to save your current file of commands, provided you have given a file name.
- Help: Invokes this section of the help file.
- Print: Print this window to a postscript file and send to printer (ACEDB_LPR).
- Clear: Clears all the user-entry boxes on the window.
- New KeySet: Calls up a new, blank KeySet window ("Query Builder Answer").
- By Example: Call up the Query-by-example window.
- Command Edit: Call up the Query Commands window.
- Search Locally: Execute the current query and put the found and selected objects in a KeySet window ("Query Builder Answer").
- Undo: Cancels the last command and redisplays the answer (if any) to the previous query in the KeySet window ("Query Builder Answer").

### Menu items:

In addition to the commands above, the Menu have the following options:

- Print Window: Same as Print button. Prepares a Post Script file in ./PS which you can then print on your local laser printer (specified by ACEDB_LPR).
- Refresh: Redraws the window.
- Clear Entries: Same as Clear Button: Clears all the user-entry boxes on the window.
- Show More [Less]: For more advanced users, this option will display (hide in case of Show Less) a box allowing the user to choose a different class from which to begin a query. ALL DATA is default. Otherwise, a query can begin from a class or subclass. A subclass of a class consists of objects with a particular attribute. The subclass is named as a distinct class and may appear on the main menu.
- Query By Example: Same as By Example Button. Call up the Query-by-example window.
- Query Command Edit: Same as Command Edit Button. Call up the Query Commands window.
- Search Locally: Same as Search Locally Button. Execute the current query and put the found and selected objects in the Keyset (selection list).
- Undo Search: Same as Undo Button: Cancels the last command and redisplays the previous Keyset (selection list).

### Other details

Query Builder (User Entry Boxes): You activate an entry box by picking it (click with the left mouse button). It turns yellow (dark grey on monochrome) and all keyboard-input will then enter into that box.

Use the right mouse button to bring up pop-up menus containing appropriate choices for each user-entry box.

Not all functionality of the query language is implemented in the query builder.

Adjacent to some boxes is a triangle that can be clicked on with the mouse. This will activate a selector menu with a scroll bar. This is very useful in cases where the popup menu is too long fit on the screen. "Cancel" must be pressed (button) or chosen (popup menu on selector window) or a selection must be made (double-click on an entry) to dismiss.

Scope: The query commands modify the active Keyset (selection list). To select another key set, pick it once or use the New KeySet option on the menu.

Query Commands Display: If the Query Commands window is open, the syntax formed by the Query Builder will be shown on a command edit line there.

to Table of Contents

last edited: July 1994