1995 February 3
1. Name of Standard. SQL Environments (FIPS PUB 193).
2. Category of Standard. Software Standard, Database.
3. Explanation. An SQL environment is an integrated data processing environment in which heterogeneous products, all supporting some aspect of the FIPS SQL standard (FIPS PUB 127), are able to communicate with one another and provide shared access to data and data operations and methods under appropriate security, integrity, and access control mechanisms. Some components in an SQL environment will be full-function SQL implementations that conform to an entire level of FIPS SQL and support all of its required clauses for schema definition, data manipulation, transaction management, integrity constraints, access control, and schema information. Other components in an SQL environment may be specialized data repositories, legacy databases, or graphical user interfaces and report writers, all of which support selected portions of the SQL standard and thereby provide a degree of integration between themselves and other products in the same SQL environment.
This FIPS PUB is the beginning of a continuing effort to define appropriate conformance profiles that can be used by both vendors and users to specify exact requirements for how various products fit into an SQL environment. The emphasis in this first FIPS for SQL Environments is to specify general purpose, SQL external repository interface (SQL/ERI) profiles for non-SQL data repositories. These profiles specify how a subset of the SQL standard can be used to provide limited SQL access to legacy databases, or to support SQL gateways to specialized data managers such as Geographic Information Systems (GIS), full-text document management systems, or object database management systems. All of the profiles specified herein are for server-side products, that is, products that control persistent data and provide an interface for user access to that data. Subsequent versions of this FIPS PUB may specify SQL environment profiles for client-side products, that is, products that access data and then present that data in graphical or report-writer style to an end user, or process the data in some other way on behalf of the end user.
4. Approving Authority. Secretary of Commerce.
5. Maintenance Agency.
8. Objective. The primary objective of this FIPS PUB for SQL Environments is to specify SQL profiles that can be used by Federal departments and agencies to support integration of legacy databases and other non-SQL data repositories into an SQL environment. The intent is to provide a high level of control over a diverse collection of legacy or specialized data resources. An SQL environment allows an organization to obtain many of the advantages of SQL without requiring a large, complex, and error-prone conversion effort; instead, the organization can evolve, in a controlled manner, to a new integrated environment.
9. Applicability
This standard is applicable in any situation where it is desirable to integrate a client-side productivity tool or a server-side data repository into an SQL environment. It is a non-mandatory standard that may be invoked on a case-by-case basis subject to the integration objectives of the procuring department or agency. It is particularly suitable for specifying limited SQL interfaces to legacy databases or to specialized data repositories not under the control of a full-function SQL database management system. It can be used along with other procurement information to specify SQL interface requirements for a wide range of data management procurements.
One special area of application envisioned for this standard is Electronic Commerce, a National Challenge Application area of the National Information Infrastructure. The primary objective of Electronic Commerce is to integrate communications, data management, and security services in a distributed processing environment, thereby allowing business applications within different organizations to interoperate and exchange information without human intervention. At the data management level, electronic commerce requires a logically integrated database of diverse data stored in geographically separated data banks under the management and control of heterogeneous database management systems. An over-riding requirement is that these diverse data managers be able to communicate with one another and provide shared access to data and data operations and methods under appropriate security, integrity, and access control mechanisms. FIPS SQL provides a powerful database language for data definition, data manipulation, and integrity management to satisfy many of these requirements. It is unrealistic to expect that every data manager involved in electronic commerce will conform to even the Entry SQL level of the FIPS SQL standard; however, it is not unrealistic to require that they support a limited SQL interface, even a read-only interface, provided by one of the SQL/ERI Server profiles specified herein. New procurements to add components to the National Information Infrastructure, or to upgrade existing components, can define the necessary SQL schemas and point to appropriate SQL/ERI Server profiles as procurement requirements.
This standard may also be applicable, on a case-by-case basis, in many of the following areas:
10. Specifications. See the Specifications for SQL Environments - SQL External Repository Interface (SQL/ERI) - Server Profiles (attached).
11. Implementation. Implementation of this standard involves four areas of consideration: the effective date, acquisition of conforming implementations, interpretation, and validation.
11.1 Effective date. This publication is effective beginning February 1, 1995. Since it is a non-mandatory specification, based on the established FIPS SQL standard, and used at the discretion of individual Federal procurements, no transitional period or delayed effective date is necessary.
11.2 Acquisition. All conforming implementations of a specific SQL/ERI profile will support some aspects of the FIPS SQL standard. However, such implementations will not normally be full function database management systems and conformance will often be dependent upon SQL schema definitions and other requirements provided as part of each individual procurement. In most cases, a procurement will not be able to simply point to an SQL/ERI profile and demand conformance to it. Instead, successful procurements will normally use an appropriate SQL/ERI profile, together with an application-specific schema definition, as one aspect of overall procurement requirements. In many cases, vendors of products that provide a limited SQL interface will define their interfaces in terms of a fixed SQL schema definition. In those cases, procurements can point to the vendor-provided schema definition and to an appropriate SQL/ERI profile as a procurement requirement. In some cases, especially in those situations where schema definitions and requirements are not known in advance, a request for a proposal (RFP) may require that an SQL schema, and adherence to one of the SQL/ERI Server profiles, be presented as part of the response proposal.
11.3 Interpretation. NIST provides for the resolution of questions regarding specifications and requirements of the FIPS for SQL Environments, and issues official interpretations as needed. Procedures for interpretations are specified in FIPS PUB 29-3. All questions about the interpretation of FIPS SQL Environments should be addressed to:
Implementations may be evaluated using the NIST SQL Test Suite, a suite of automated validation tests for SQL implementations. Although this test suite was designed to test conformance of full-function SQL database management systems, it can be modified to accommodate testing of SQL/ERI Server implementations. The results of validation testing by the SQL Testing Service are published on a quarterly basis in the Validated Products List, available from the National Technical Information Service (NTIS).
Current information about the NIST SQL Validation Service and the status of validation testing for SQL Environments is available from:
Table of Contents
Abstract
3. SQL External Repository Interface (SQL/ERI)
FIPS PUB 193
FEDERAL INFORMATION
PROCESSING STANDARDS PUBLICATION
1988 JANUARY 27
U.S. DEPARTMENT OF COMMERCE/National Institute of Standards and
Technology
An SQL environment is an integrated data processing environment in which heterogeneous
products, all supporting some aspect of the FIPS SQL standard (FIPS PUB 127), are able to
communicate with one another and provide shared access to data and data operations and
methods under appropriate security, integrity, and access control mechanisms. Some
components in an SQL environment will be full-function SQL implementations that conform to
an entire level of FIPS SQL and support all of its required clauses for schema definition, data
manipulation, transaction management, integrity constraints, access control, and schema
information. Other components in an SQL environment may be specialized data repositories,
legacy databases, or graphical user interfaces and report writers, all of which support selected
portions of the SQL standard and thereby provide a degree of integration between themselves
and other products in the same SQL environment. This FIPS PUB is the beginning of a
continuing effort to define appropriate conformance profiles that can be used by both vendors
and users to specify exact requirements for how various products fit into an SQL environment.
The emphasis in this first publication is to specify general purpose, SQL external repository
interface (SQL/ERI) server profiles for non-SQL data respositories. Two major SQL/ERI Server
Profiles are specified: read-only and read-write. To make it easier to specify integration among
heterogeneous, non-SQL data models, this specification defines a new minimal level of the SQL
language that can be supported by various non-SQL implementations. Non-SQL data
repositories, such as Geographic Information Systems (GIS), full-text document management
systems, or object database management systems, may use this minimal level, or one of the other
levels specified in FIPS SQL, to describe their capabilities as SQL/ERI Servers. Two major
SQL/ERI Server profiles are specified: read-only and read-write. This specification may also be
used as a starting point for defining International Standardized Profiles (ISPs) for SQL language
access to non-SQL data repositories.
Key words: CLI; client; conformance; database; ERI; Federal Information Processing
Standard (FIPS);
interface; Internet; ISP; multimedia; object; profile; PSM; RDA; relational; repository; server;
standard; SQL;
testing.