Network Communication Layer
The network communication layer provides high speed, efficient communications with all Texpress applications and supports direct communications (function call access), TCP/IP based network communications and serial line connections.
The Texpress communication protocol utilises a high-level, structured language which provides a sophisticated range of commands while minimising data transfers between connecting interfaces.
Object-Oriented Database Structures
Texpress supports object-oriented database structures utilising text attributes, multi-valued fields, nested tables and object references. Designers can easily build a Texpress system which provides an intuitive or natural representation of the way users visualise their data. Databases can contain any combination of structured (field-based) or unstructured (free text) information. Forms are designed to describe the information to be stored and indexed and these forms serve as an interface for data entry, query specification and the display and reporting of results.
Object definitions in Texpress include support for inheritance via static and dynamic references. These references can be set up between database forms so that new forms can be based on or utilise existing forms. Texpress also offers encapsulation facilities through assignment, validation, branch and display expressions, which enable users to define and associate procedures with database forms and individual fields.
Texpress provides strong support for structured data. Designers can use Look-up tables (authority lists) during object insertions and edits, establish hierarchies among various fields, and develop data validation routines for object insertion and edit.
As an example, consider a simple library application. A library card could contain a title, one or more authors, one or more subjects and an abstract. This could be represented in Texpress using the following form:
Authors and Subjects are multi-valued fields. Texpress supports retrieval on these fields using any one of the stored values. Abstract is a text attribute containing sentences, i.e. a series of words, each of which could be considered a value in a multi-valued field.
All of the information about a particular object (in this case, a book) is stored and presented by Texpress as a single object structure. This provides very logical representation of data, particularly for non-computer literate users. For example, to query this database to find all information about books written by 'Wheeler' on the subject of 'travel', it is simply a matter of specifying the known information into the appropriate fields and performing the query. Texpress matches a query term in a multi- valued field with any of the values in that field.
Texpress retrieves entire object structures. So, in this case, all of the information about matching books is made available to the user. Thus Texpress provides very efficient operations on complex objects. This, combined with the superior retrieval mechanism, makes Texpress a very powerful tool for information management.
Texpress provides a more natural mapping of data than that which could be provided by a purely relational system. It uses a nested relational database model. This enables it to support complex objects definitions without forcing a de-composition of those objects.
By contrast, for a pure relational database, the design process of normalisation results in the creation of many tables which require unnatural join keys to associate information. Also, multi-valued fields must become separate rows in separate relational tables. This approach further distances the logical data view from the physical data view and introduces more complicated design and maintenance issues. Pure relational systems cannot support text as an atomic type. Hence word- based retrieval is not possible. Performing the above example library query in a pure relational system would require a complicated SQL query involving resource-intensive joins of numerous tables.
The nested relational approach used by Texpress circumvents these inherent design and runtime difficulties of pure relational databases.
Texpress is designed for extremely fast retrieval from data collections of all sizes. In fact, the more complicated the query, the faster Texpress can determine the results.
Texpress delivers this retrieval speed with a simplicity of use rarely found in information management programs. The speed is derived from its indexing method. Each indexed term in an object is encoded into a series of descriptors which form a signature for that object. The object can be retrieved by providing all or part of the signature. The more of the signature provided (the more query terms the user supplies), the fewer the objects which must be accessed, and the faster the query can be performed. This is in marked contrast to traditional inverted file retrieval methods.
Texpress supports many text operators and provides performance far superior to existing free text retrieval systems. Indexing is supported on individual words, numbers, field values and complex data types such as dates, times, latitudes and longitudes. There is also indexing support for word phrases, word stems and phonetics as well as numeric ranges. Pattern retrieval (use of wild card characters) is also provided.
Texpress has fully integrated support for European languages (8 bit extended ASCII characters) and Asian languages (multi-byte character sets such as Chinese and Japanese).
The Texpress user interface can be completely translated to cater for different languages, locales or even the expertise levels of different users. Indeed, users can simultaneously access a Texpress database using completely different interfaces and in different languages.
The Texpress engine is implemented under the Unix operating system and is available on a wide range of hardware. Texpress installations exist on PCs, Workstation LANs and mid-range computers, including 64-bit architecture machines, through to mainframe machines.
Despite the broad range of supported platforms and architectures, Texpress databases are completely portable between machines running Texpress.
Ease of Use
You do not need programming experience to design, use and maintain a Texpress database.
The concepts behind Texpress are easy to grasp. This means that sophisticated databases can be created quickly, reducing set-up time and dependence on Information Technology staff.
The object-oriented nature of Texpress enables users to create database designs which reflect the structure of their existing data. All of the information recorded about a particular physical (or logical) object is stored in a single Texpress object. This means that the internal representation of the object, the Texpress object, is identical to the external representation (with which the user is already familiar). Hence database design is a very intuitive operation. Texpress designs can be readily modified without affecting existing data. This allows database design to evolve over time as user requirements become better defined or an organisation's needs change.
Built-in protection mechanisms control access to information in a Texpress database at several levels.
Users must be allocated an account in order to access the database. This account sets the user's data display and entry/edit privilege levels and determines which fields of each object the user can see and edit. Each object in the database also has its own privilege level which determines whether a user can retrieve (or know of the existence of) that object.
The user's account also controls the operations that can be performed by the user (e.g. entry, edit, delete). Users who cannot perform certain operations are generally unaware of the existence of those operations.
Database Size and Growth Potential
Texpress imposes no practical database limits other than those imposed by the hardware and operating system. Therefore the system is applicable to databases of all sizes, from a few objects to hundreds of millions of objects.
Selective Dissemination of Information
Texpress applications can be designed to provide Selective Dissemination of Information (SDI) services. Users can enter query profiles indicating items of interest. As new material is loaded, it is compared to all user profiles and users are automatically notified (for example, via e-mail) of information matching their profiles.
Automatic data feeds from various sources, such as Reuters and Associated Press, can be configured into Texpress database applications.