SEDRIS logo

Part 1:  Functional specification

8 Conformance

8.1 Introduction

8.1.1 Table of contents

Table 8.1 contains the table of contents for this clause.

Table 8.1 — Table of contents

8 Conformance

8.1 Introduction

8.1.1 Table of contents

8.1.2 Overview

8.2 General conformance

8.2.1 Functional conformance

8.2.2 Conformance of SEDRIS transmittals

8.2.3 Conformance of encodings for SEDRIS transmittals

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

8.2.5 Conformance of language bindings of the application program interface

8.2.6 Conformance of applications that use the application program interface

8.3 Minimum implementation criteria

8.3.1 Basic properties

8.3.2 Default Profile

8.1.2 Overview

This clause specifies conformance of:

  1. functional implementations of SEDRIS,
  2. SEDRIS 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 SEDRIS application program interface, and
  6. applications that use the SEDRIS application program interface.

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

8.2 General Conformance

8.2.1 Functional conformance

An implementation of the concepts and the application program interface described in this International Standard 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 classes, as parameters to any API function specified in 7 Application program interface (API), or within SEDRIS transmittals.

  2. The implementation shall support DRM classes as specified in 6 DRM classes. An implementation shall generate an API error message for any DRM class that is not specified in 6 DRM classes but is encountered in a transmittal.
  3. The implementation shall support relationships between instances of DRM classes only as specified in this International Standard.
  4. The implementation shall support the functions specified in 7 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 SEDRIS 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.

8.2.2 Conformance of SEDRIS transmittals

A SEDRIS 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 SEDRIS API.

8.2.3 Conformance of encodings for SEDRIS 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.

8.2.4 Conformance of applications that read and/or write SEDRIS 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.

8.2.5 Conformance of language bindings of the application program interface

A language binding of the SEDRIS 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.

8.2.6 Conformance of applications that use the application program interface

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 SEDRIS 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.

8.3 Minimum implementation criteria

8.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 8.3.2 Default Profile). Other profiles may only be developed by amending this part of ISO/IEC 18023.

8.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://www.iso.ch/iso/en/ittf/PubliclyAvailableStandards/ISO_IEC_18023-1_Ed1.html