Glossary of Terms

Glossary of Terms

Top  Previous 

 

AbortAn event that occurs at a major application failure. Aborts can be generated by QM internally if it detects a serious error, by application software, or by the end user (though this can be disabled). All programs, menus, paragraphs, etc active in the user's process are discarded and the user returns to the command prompt. The ON.ABORT VOC item can be used to capture this event and take special action.
AccountA collection of database files, programs, etc that form an application. Viewed from outside QM, an account is an operating system directory.
AKSee Alternate Key Index
AliasA way to assign an alternative name to a command, perhaps only within specific QM sessions. For example, users migrating from Pick style environments frequently use ALIAS to make COPY run the COPYP command.
Alternate Key IndexAn index structure that allows applications to identify all records that have a particular value for a secondary key item. The index contains a list of primary key values for each secondary key value.
AssociationThe relationship between two or more multivalued data items where the values belong together. For example, an order processing system might have two associated fields, one holding a list of product codes, the other a list of quantities ordered.
AttributeAn alternative name for a field.
B-tree filesA file structure used to store alternate key indices. B-tree (balanced tree) files use an internal structure that stores data in sorted order and hence allow efficient access to ranges of key values.
Big endianA term that describes storage of multi-byte numeric values such that the most significant byte comes first.
Byte stringA character string in an ECS mode system in which all characters are from the 8-bit set and hence have character values in the range 0 to 255. Typically used to store binary data such as object code or bit mapped image files. In a non-ECS mode system, all character strings are implicitly of this form.
Catalog(ue)A repository for application programs. QM supports three modes of cataloguing; local, private and global. Local and private cataloguing normally restrict access to the program to the one account. Globally catalogued programs can be accessed from all accounts.
Class moduleA program source module that acts as a container for persistent data definitions and public functions/subroutines in object oriented programming.
Command promptA prompt (a colon) displayed by the command processor when it is waiting for a command to be entered. This prompt changes to a double colon if the default select list is active.
Command stackA list of the most recent commands executed by a user. The command stack editor allows a user to look back at this historic data, modify commands and repeat commands. (In strict computing terms, the command stack isn't a stack at all. It's a queue but the incorrect term is widely used.)
Common blockA block of data items used by an application that are to be shared between programs in the one user process.
COMO fileA record in a special file ($COMO) that stores a copy of all output sent to the user's terminal. COMO (command output) trapping is enabled/disabled with the COMO command.
Conversion codeA code describing how data must be transformed from its internal representation within the database before displaying it to a user. For example, dates are usually stored internally as the number of days since 31 December 1967.
CorrelativeA rather limited equivalent to I-type dictionary items supported by QM in A and S-type items to simplify migration from other multivalue database products.
DatabaseA set of data stored in a form that enables rapid access to specific items.
Data collectionAn arbitrarily multi-dimensional data item that uses name/value pairs.
DebuggerA development tool for debugging QMBasic programs.
Device licensingAn option that allows multiple connections to QM from a single client to share a licence.
DictionaryA secondary component attached to most database files that contains a description of the format of records stored in the file and default settings controlling how the query processor will display this data.
Directory filesA simple file structure that makes use of the underlying operating system's files to represent database records. Directory files do not offer high performance but can be accessed from outside QM and are therefore frequently used to exchange data with other software.
Distributed fileA view of a set of separate dynamic files as though they were a single file.
Dynamic arrayA character string divided into fields, values and subvalues using the mark characters. A database record is stored in this way but dynamic arrays can be used by application developers for other lists of items.
Dynamic fileA type of hashed file that automatically changes its modulus value to react to changes in the volume of data stored.
ECSUsed to reference a character from the Extended Character Set (16-bit) or in combination as "ECS mode" meaning a QM system that is running in a mode that supports characters beyond the 8-bit set.
Epoch valueA representation of a moment in time in a time zone independent manner.
errlogAn error log file in the QMSYS account. QM writes entries to this log whenever an error is detected. Applications can also write to the log using the QMBasic LOGMSG statement.
ExceptionAn event, typically related to an error, that can be raised in one part of an application and caught elsewhere.
FieldA column from the tabular representation of a database file.
FileA database table. QM supports hashed files for high performance and directory files for data exchange.
Format codeA code describing the way in which a data item is to be displayed or printed specifying, for example, the number of characters and justification.
GroupA portion of a hashed file. The number of groups in a file varies automatically according to the volume of data stored in it.
Group sizeThe size of a group in multiples of 1024 bytes. QM allows group size values in the range 1 to 8.
Hashed filesHigh performance files in which the location of a record is calculated by applying the hashing algorithm.
Hashing algorithmA mathematical calculation applied to the characters of a record key to deduce the group in which that record will be stored.
Hot Spot MonitorA tool for identifying the number of times each module of an application is executed and the processing time spent in them.
IDAnother name for the primary key of a record.
I-descriptorAnother name for an I-type.
Information styleA reference to the command and programming language style found in the Prime Information multivalue database product and others that adopt this style.
Inline promptA special syntax in a QM command that allows substitution of data into the command. Although the name implies that the construct will prompt the user for this data, there are many variants that retrieve data from elsewhere.
I-typeA dictionary item that describes a calculation that yields a result that can then be used exactly as though the value was stored in the database.
KeyA shortened term for the primary key of a record.
KeywordA word or symbol affecting the behaviour of a command. Keywords correspond to K-type VOC entries.
Laws of NormalisationA set of rules that govern the construction of relational databases. Multivalue databases discard the first law of normalisation, allowing them to store multivalued data. This results in a data model that more accurately reflects the real world than a fully normalised database, usually requires fewer tables and is quicker to develop.
Link recordA dictionary L-type record that defines the link between two related database files.
Little endianA term that describes storage of multi-byte numeric values such that the least significant byte comes first.
LockingA mechanism used to ensure that two users cannot update the same data item simultaneously, a situation that would usually result in errors.
Mark charactersCharacters used within the QM to separate field, value and subvalues within a database record or other dynamic array.
MenuA M-type VOC record that describes a numbered list of options to be displayed to the user. Each option would have an associated sentence to be executed and, optionally, some help text.
ModulusThe number of groups in a hashed file.
Multi-fileA file that is made up from multiple subfiles that share a single dictionary. For example, a sales application might have a multi-file with a subfile for each business region.
MultivalueBreaking a simple data item (typically a field) into multiple instances of the same type of data.
OverflowQM uses high performance hashed files in which the location of a record can be deduced from its primary key. If there is insufficient space to store the record at its calculated location, the file system extends the group by adding one or more overflow blocks.
ObjectA run time instance of a class module.
ParagraphA VOC record containing a script of commands to be executed. Paragraphs can include special commands to provide conditional execution, loops, jumps, prompts, etc.
Part fileA dynamic file that forms an element of a distributed file.
Part numberThe unique number use to identify a specific part file in a distributed file.
Partial selectA mechanism that breaks a large select operation into smaller sections to optimise performance. See Select Lists.
Partitioning algorithmA dictionary I-type expression used to transform the record id to a part number in a distributed file.
PhantomA QM process that runs in the background without a terminal. Phantom processes are started with the PHANTOM command and store a copy of all output that would normally have been displayed on the terminal in the $COMO file.
PhraseA part of a sentence, excluding the verb. Phrase entries may appear in the VOC or in dictionaries. Phrases are used as short forms in commands, to set defaults for the query processor, and to link fields within an association.
Pick styleA reference to the command and programming language style found in the Pick multivalue database product and others that adopt this style. (The first multivalue database environment was created by Dick Pick).
Primary keyA character string that uniquely identifies a record in a file. QM supports keys from 1 to 255 characters in length but lengths over 63 characters require the MAXIDLEN configuration parameter to be amended.
ProcThe predecessor of paragraphs found in other multivalue database products and supported in QM for ease of migration. Development of new Procs is discouraged.
Process dump fileA text file optionally generated at a run time application error. This file contains a full report on the state of the application at the time of the error.
PublisherThe system that is exporting file updates in a system configured for data replication.
QMBasicThe programming language used to develop QM applications.
QMClientAn interface that allows access to QM from other languages such as Visual Basic or C.
QMFixA tool for checking the internal structure of QM files after a system crash.
QMIdxA tool for updating internal pointers if an alternate key index file is moved.
qmlnxdA daemon process that runs on non-Windows systems to perform background system monitoring tasks.
QMNetAn integrated component of QM that allows access to data stored on another QM server with full support for locking.
RecordAn item stored in a database file. The file system accesses data at the record level. Interpretation and manipulation of the content of the record is up to the application and related system tools. A record is usually formed from multiple fields which may in turn be broken down into values and subvalues.
Relational DatabaseA style of database that represents data in the form of tables (relations).
ReplicationA mechanism whereby updates made to selected files on a publisher system are replicated on one or more subscriber systems.
Secondary keyA data item in a record, or a value calculated from data in the record, that is to be used to construct an alternate key index so that records can be selected based on this value.
Select listA list of items, usually primary keys, to be processed. QM provides memory resident numbered select lists that are private to the process using them and disk based named lists that can be shared or retained for later use.
SentenceA complete QM command or the start of one. A sentence may be typed at the command prompt or it may be stored in the VOC for later execution simply by typing the name of the VOC record.
StringA sequence of characters stored as a data item.
SubvalueA subdivision of a value to represent multiple instances of the same type of data within the value. For example, an order processing system might have a pair of associated multivalued fields storing the product number and quantity for each item ordered. If it was necessary to store the serial number of each item shipped, this would be a subvalued field in the same association.
SubscriberThe system that is receiving exported file updates in a system configured for data replication.
TableAnother name for a database file.
TerminfoAn internal database that stores details of the control codes appropriate to all terminal types supported by QM.
TransactionA related set up updates to a database that must either all happen or none must happen.
TriggerA user written QMBasic subroutine that is executed whenever selected operations are performed against a file. Triggers get their name from their use to trigger other related updates but they can also be used for data validation.
UnicodeA standard character set that, in the form used by QM, allows 65536 different character values.
ValueA subdivision of a field to represent multiple instances of the same type of data. For example, an order processing system might have multiple values stored in the product number field of an order.
VerbThe command word in a sentence. This is always the first word and corresponds to a V-type VOC entry.
Virtual attributeAnother name for an I-type.
VOCA file found in all accounts that contains a list of all the words and symbols that can be used in commands and details of how they should be processed. By changing the VOC, it is possible to extend or modify the QM command language.
VocabularySee VOC.