Information technology — SEDRIS —
Part 1:  Functional specification

9 Conformance

9.1 Introduction

9.1.1 Topics

Table 9.1 lists the topics of this clause.

Table 9.1 — Topics

9 Conformance

9.1 Introduction

9.1.1 Topics

9.1.2 Overview

9.2 General conformance

9.2.1 Functional conformance

9.2.2 Conformance of transmittals

9.2.3 Conformance of encodings for transmittals

9.2.4 Conformance of applications that read and/or write transmittals represented in these encodings

9.2.5 Conformance of language bindings of the API

9.2.6 Conformance of applications that use the API

9.3 Minimum implementation criteria

9.3.1 Basic properties

9.3.2 Default profile

9.1.2 Overview

This clause specifies conformance of:

  1. functional implementations of this part of ISO/IEC 18023,
  2. transmittals,
  3. exchange formats that use DRM data structures and associated data types,
  4. applications that read and/or write transmittals represented in these exchange formats,
  5. language bindings of the API specified in this part of ISO/IEC 18023, and
  6. applications that use the API specified in this part of ISO/IEC 18023.

The concept of profile conformance is specified to ensure interoperability of SEDRIS-capable applications that generate or use transmittals. The default profile requires support for all DRM classes, API functions, and data types specified in this part of ISO/IEC 18023 (see 9.3.2 Default profile).

9.2 General conformance

9.2.1 Functional conformance

An implementation of the concepts and the API described in this part of ISO/IEC 18023 shall be conformant, if the following conditions are satisfied:

  1. The implementation shall support the data types specified in 5 Fundamental data types. Additional internal data types may be used by an implementation, but such data types shall not be used in the interfaces of DRM classes as specified in 6 DRM class definitions, as parameters to any API function specified in 8 Application program interface (API), or within transmittals.
  2. The implementation shall support DRM classes as specified in 6 DRM class definitions. An implementation shall generate a suitable status code for any DRM class that is not specified in 6 DRM class definitions but is encountered in a transmittal.
  3. The implementation shall support relationships between instances of DRM classes only as specified in this part of ISO/IEC 18023 including the constraints specified in 7 DRM class constraints.
  4. The implementation shall support the functions specified in 8 Application program interface (API). While other functions may be provided by an implementation, they shall not be used to directly access the data in a transmittal.
  5. The implementation shall support access (read and write as appropriate) to transmittals stored in the encoding specified in part 3 of ISO/IEC 18023.
  6. All entities supported shall match the functional specification of the corresponding entities of this part of ISO/IEC 18023.

The data identified by URNs in the <DRM Sound>, <DRM Browse Media>, and <DRM_Symbol> classes need not be interpretable by an implementation for that implementation to be conformant.

9.2.2 Conformance of transmittals

A transmittal shall be conformant to this part of ISO/IEC 18023 if it satisfies the following criteria:

  1. All entities in the transmittal shall obey the constraints, rules, and connectivity established in this part of ISO/IEC 18023;
  2. No data is introduced other than that allowed by this part of ISO/IEC 18023 or specifically provided by the encoding specification for the transmittal format;
  3. No entities are included that are not also specified to be part of the applicable profile; and
  4. All entities are accessible using only an implementation of the API.

9.2.3 Conformance of encodings for transmittals

An encoding shall be conformant to this part of ISO/IEC 18023 if it satisfies the following criteria:

  1. The entities of the encoding shall precisely match the functional specification of the corresponding data types, DRM class instances, and relationships specified in this part of ISO/IEC 18023;
  2. The encoding shall impose no restrictions on the data representations that are not already specified in this part of ISO/IEC 18023; and
  3. The encoding shall be capable of identifying the profile of SEDRIS that is represented in the encoded transmittal.

9.2.4 Conformance of applications that read and/or write transmittals represented in these encodings

An application that uses the encodings for transmittals shall be considered conformant to this part of ISO/IEC 18023 if it satisfies the following criteria:

  1. the constructs specified in this part of ISO/IEC 18023 are used only as specified herein; and
  2. only the relationships allowed in this part of ISO/IEC 18023 are generated.

9.2.5 Conformance of language bindings of the API

A language binding of the API to a programming language shall be conformant if the following conditions are satisfied:

  1. all functions specified in this part of ISO/IEC 18023 are bound so as to present the specified interfaces as closely as possible given the strictures of that programming language;
  2. all data types specified in this part of ISO/IEC 18023 can be represented in that programming language; and
  3. the resulting language binding obeys the cultural aspects of that programming language.

9.2.6 Conformance of applications that use the API

An application that uses the API shall be conformant if the following conditions are satisfied:

  1. Only the API functions that are specified in this part of ISO/IEC 18023 are used to provide access to transmittals, and
  2. All error messages received from the API are processed as required by this part of ISO/IEC 18023.

It is not necessary for an application to be able to interpret the data identified by the URNs of <DRM Sound>, <DRM Browse Media>, and <DRM_Symbol> to be considered conformant.

9.3 Minimum implementation criteria

9.3.1 Basic properties

The concept of profiles is specified in 4.20 Profiles. This part of ISO/IEC 18023 specifies the default profile (see 9.3.2 Default profile). Other profiles may only be developed by amending this part of ISO/IEC 18023.

9.3.2 Default profile

Conformance to the default profile shall include support for:

  1. all DRM classes specified in this part of ISO/IEC 18023,
  2. all API functions and their behaviours specified in this part of ISO/IEC 18023, and
  3. all data types specified in this part of ISO/IEC 18023.

An implementation conforming to the default profile shall support the functional and operational concepts and capabilities specified in 4 Concepts.

In addition, the default profile shall be able to support transmittals without introducing any restrictions as to size or complexity except as specified in this part of ISO/IEC 18023.

http://standards.iso.org/ittf/PubliclyAvailableStandards/ISO_IEC_18023-1_Ed1.html