A Product Standard is a precisely defined and documented set of
Each Product Standard describes its purpose, gives detailed technical
conformance requirements, and identifies specific testing requirements that
Most of the detailed requirements for conformance to Product Standards are usually identified by reference to other documents rather than being defined in the Product Standard itself. All such references are precisely stated such that the referenced documents are clearly and uniquely identified (title, version number, date, and so on). Conformance is to a specific version of an identified document and a Product Standard is not automatically updated by virtue of a newer version of the document (specification or standard) being released. Where conformance is only to specific parts of a document, the relevant parts are clearly identified. The relationship between the various documents is shown in the following figure:
The current set of Product Standards is listed on The Open Group web site at http://www.opengroup.org/prodstandards, where links to the full text of each Product Standard can be found.
Product Standards are central to the Open Brand Program. They are the single
reference points linking the referenced specifications and standards, any other
Product Standards, and the test suites and other conformance requirements.
The Conformance Statement for each Registered Product states precisely how the
Registered Products are dependent upon services typically provided by the
Portability is associated with the ease with which a system, application, data, or user can be transferred from one environment to another.
Software applications may rely on Application Program Interfaces (APIs)
provided by the Registered Product. These Portability Interfaces
Software applications that use the defined Portability Interfaces often require
direct access to services other than those provided by the Registered Product.
The Portability Environment defined in the Product Standard establishes
The relationship between the Operational Environment required for the Registered Product, the Portability Interface provided by the Registered Product, and the Portability Environment required by the (application) software are shown in the following figure:
Interoperability, in its fullest sense, means the ability of application processes meaningfully to exchange information and services regardless of physical location, network topology, and the vagaries of computer architectures.
In the context of the Open Brand Program, the concept means the provision of services and protocols that support the interoperability of applications to the extent defined by the Product Standard. End-to-end interoperability invariably requires correct configuration of the end systems and all other network elements.
The Open Group's Interoperability Assurance Program, associated
Each Product Standard is defined under a set of headings. However, readers
The formal name of the Product Standard.
The label or "text field" used in association with the "X" Device
A brief but precise description of the nature and purpose of the Product Standard with relevant background material and a clear statement of how it differs from other similar Product Standards.
This, the main section of the Product Standard, is a definition of all the implementation conformance requirements that must be met by a product for registration in the Open Brand Program. Conformance requirements are addressed with respect to the human-computer interface, portability, and interoperability. These attributes are discussed in more detail below.
A definition of the environment or set of environments within which the functionality identified by the Product Standard can be employed.
The Portability Environment primarily concerns application portability and is used to constrain usage of the Registered Product to specific services or environments. It defines interfaces or services that must be available to each source program in addition to those of the product itself. They are usually defined in terms of an additional Product Standard (or set of alternative Product Standards) to which the product, or configuration of products, must also be registered.
Identifies the formal standard(s) to which the Product Standard defers.
It is the intention of The Open Group that products conforming to
Product Standards should also conform to overlapping formal standards,
It should be noted that deference is to a particular identified version of a formal standard upon which the Product Standard was built-the Product Standard does not automatically defer to later versions of the same standard.
Any discrepancies between the Product Standard, the Specification, and the formal standard(s) are unintentional. In such cases the formal standard is deemed to be superior and there is therefore no conflict, either for an implementor or a buyer, in requiring conformance to both the Product Standard and the formal standard at the same time. For the buyer, simply stating that the Open Brand is required ensures that the relevant standards conformance is achieved.
Identifies one or more designated test suites that must be used during
A short summary of the issues, if any, concerned with migration to the Product Standard. The primary focus is the migration of applications, but information on other aspects may be provided where appropriate.
To conform to a Product Standard, a product (or product configuration) must conform to all of the attributes that are defined for that Product Standard. Some of the key attributes include:
Note that a Product Standard may refer to a subset of the key attributes as appropriate.
The following paragraphs explain what it means for a product (or product configuration) to conform to each attribute of a Product Standard. The first statement associated with each attribute identifies its purpose, and the second how it is achieved.
This attribute facilitates the consistency of the interface, and the consistent presentation of information on different display devices. It defines how a conformant product must exchange information with a human user over an appropriate I/O device.
This attribute facilitates the portability of software, usually (but not
limited to) applications in source code, that use the functionality
defined by the Product Standard. It identifies interface specifications
(typically APIs), that a conformant
product must support, and to which a program using the relevant
interface should adhere. Note that the Portability Environment and
Operational Environment are defined elsewhere in the
Product Standard (see
This attribute defines the programming language(s) in which an application must be written in order to invoke the services of the Product Standard. It may also identify a particular dialect of the language. A conformant product is required to support source programs written in the required dialect. Where a particular dialect of the programming language is important it will be identified (for example, ISO C language, rather than just C Language).
Where a Portability Interface is specified in terms of a particular source code, the conformant product is required to support source code programs written in that language/dialect. Products that are registered as conformant to a Product Standard that includes a defined Portability Interface must provide facilities for source programs to be compiled, or must be registered in association with a defined compilation (or cross-compilation) environment. (Note that the requirement for a compilation environment to be available does not mean that the compilation environment has to be delivered with every (or indeed any) specific product shipment. The content of a product configuration that is actually delivered is a matter for the vendor and purchaser to agree as part of normal contract negotiation).
A Product Standard may permit a choice of protocols in order to accommodate a variety of sub-network architectures and implementations.
This section may also include requirements from the Interoperability
This attribute facilitates data interchange as one element of interoperability. It identifies data format definitions to which conformant products must interpret or create data.
This attribute facilitates communication as one element of interoperability. It normally identifies specific communications protocols that conformant products must support. In some cases no specific protocols are mandated and instead it is required that the actual protocols for which support is available must be declared in the Conformance Statement.
In cases where one of these attributes is not relevant, or not specified, the Product Standard explicitly says so using a phrase such as "not applicable" or "none" where appropriate.
All conformance requirements must involve a stimulus and result. The same stimulus must produce the same well-defined result on all conformant systems. For APIs this is explicitly the case, as the definition of an API call states what the result of calling it will be, but for the other aspects too it is important that there are clearly defined causes and effects. It is not sufficient, for example, for a Product Standard just to require that a particular protocol be supported. It must be set into a cause and effect context-use of the protocol must be associated with specific well-defined functionality and behavior within the product.
Detailed conformance requirements are expressed by any combination of:
The Open Group Standards Information Base is the formal repository