ISO/IEC 18023-2 — Abstract transmittal format

5 Transmittal structure

5.1 Introduction

5.1.1 Table of contents

Table 5.1 is the table of contents for this clause.

Table 5.1 — Table of contents

5 Transmittal structure

5.1 Introduction

5.1.1 Table of contents

5.1.2 Description

5.1.3 Notational conventions

5.2 Encoded SEDRIS transmittal structure

5.2.1 Terminals

5.2.2 Extternal Element Grammar

5.2.3 Transmittal grammar

5.2.4 SEDRIS transmittal root file grammar

5.2.5 SEDRIS transmittal object file grammar

5.2.6 SEDRIS transmittal image file grammar

5.2.7 SEDRIS transmittal data table data file grammar

5.2.8 Subsidiary file references

5.2.9 Object instances

5.1.2 Description

This clause specifies the form of a SEDRIS transmittal when organized into one or more persistent files. It includes not only the actual content of a SEDRIS transmittal but also the information needed to properly process the files that constitute the encoding of the SEDRIS transmittal. A valid encoding of a SEDRIS transmittal shall contain only the elements described in this clause structured in the manner specified.

5.1.3 Notational conventions

The following notation is used in this clause:

  1. Upper-case strings are terminals.
  2. Lower-case strings are non-terminals.
  3. The metasymbols in Table 5.2 define productions, grouping, and repetitions.

Table 5.2 — Metasymbols

Metasymbol

Meaning

::=

“becomes” or “is realized as”

<…>*

0 or more occurrences

<…>+

1 or more occurrences

<…>°

0 or 1 occurrence

<…>n

exactly n occurrences where n is a positive integer

<x | y>

exactly one of x or y

5.2 Encoded SEDRIS transmittal structure

5.2.1 Terminals

The abstract syntax of an encoded SEDRIS transmittal shall conform to the formal grammar specified in this clause. The following are the terminal symbols of this formal grammar.

<BEGIN TRANSMITTAL ROOT FILE>
<OBJECT INSTANCE>
<END TRANSMITTAL ROOT FILE>
<EXTERNAL ELEMENT>
<TRANSMITTAL FILE FORMAT AND VERSION>
<TRANSMITTAL FILE DESCRIPTION>
<TRANSMITTAL NAME>
<ROOT FILE NAME>
<OBJECT FILE REFERENCE>
<IMAGE DATA FILE REFERENCE>
<DATA TABLE DATA FILE REFERENCE.
<SUBSIDIARY FILE REFERENCE>
<OBJECT LABEL>
<BEGIN TRANSMITTAL OBJECT FILE>
<END TRANSMITTAL OBJECT FILE>
<BEGIN TRANSMITTAL IMAGE DATA FILE>
<IMAGE DATA INSTANCE>
<END TRANSMITTAL IMAGE DATA FILE>
<BEGIN TRANSMITTAL DATA TABLE DATA FILE>
<DATA TABLE DATA INSTANCE>
<END TRANSMITTAL DATA TABLE DATA FILE>
<DRM CLASS NAME>
<FIELD>
<COMPONENT REFERENCE>
<AGGREGATE REFERENCE>
<ASSOCIATE REFERENCE>
<IMAGE DATA>
<DATA TABLE DATA>

An encoding of the ATF provides a representation of these terminal symbols that can be optimized for particular purposes. Part 3 of ISO/IEC 18023 defines a binary encoding that is conformant to the ATF.

5.2.2 External element grammar

An EXTERNAL ELEMENT is one that is not part of the data but is needed by the encoding to properly represent the content or document the content. The symbol <ee> is defined to allow more visual impact for the other symbols during grammar presentation.

  <ee>                                 ::= <EXTERNAL ELEMENT>

5.2.3 Transmittal grammar

The start symbol for the formal grammar for an encoded SEDRIS transmittal is <sedris transmittal>.

  <sedris transmittal>                 ::= <sedris transmittal root file>
                                           <sedris transmittal content file>* 
  <sedris transmittal content file>    ::= <sedris transmittal object file> |
<sedris transmittal image file> |
<sedris transmittal data table data file>

5.2.4 SEDRIS transmittal root file grammar

The start symbol for the formal grammar for a SEDRIS transmittal root file is <sedris transmittal root file>.

  <sedris transmittal root file>       ::= <BEGIN TRANSMITTAL ROOT FILE>
<ee>*
<transmittal file descriptor>
<ee>*
<root file descriptor>
<ee>*
<OBJECT INSTANCE>*
<ee>*
<END TRANSMITTAL ROOT FILE>
  <transmittal file descriptor>        ::= < <TRANSMITTAL FILE FORMAT AND VERSION>
<ee>*
<TRANSMITTAL FILE DESCRIPTION>*
<ee>* >
  <root file descriptor>               ::= < <ee>*
  <transmittal file list>°
  <ee>*
  <referenced transmittal list>°
  <ee>*
  <referenced object list>°
  <ee>*
  <published object list>°
  <ee>*
  <TRANSMITTAL NAME>
  <ee>*
  <ROOT FILE NAME>
  <ee>*
>
  <transmittal file list>              ::= <ee>*
< <OBJECT FILE REFERENCE> |
   <IMAGE DATA FILE REFERENCE> |
   <DATA TABLE DATA FILE REFERENCE> |
   <SUBSIDIARY FILE REFERENCE>
>*
  <referenced transmittal list>        ::= < <ee>*
  <TRANSMITTAL NAME>*
  <ee>*
>
  <referenced objects list>            ::= < <ee>*
  <OBJECT LABEL>*
  <ee>*
>
  <published objects list>             ::= < <ee>*
  <OBJECT LABEL>*
  <ee>*
>

5.2.5 SEDRIS transmittal object file grammar

The start symbol for the formal grammar for a SEDRIS transmittal object file is <sedris transmittal object file>.

  <sedris transmittal object file>     ::= <BEGIN TRANSMITTAL OBJECT FILE>
<ee>*
<object file descriptor>
<ee>*
<OBJECT INSTANCE>*
<ee>*
<END TRANSMITTAL OBJECT FILE>
  <object file descriptor>             ::= < <ee>*
   <TRANSMITTAL FILE FORMAT AND VERSION>
   <ee>*
   <referenced file list>°
   <ee>*
   <ROOT FILE NAME>
>

5.2.6 SEDRIS transmittal image file grammar

The start symbol for the formal grammar for a SEDRIS image data file is <sedris transmittal image data file>.

  <sedris transmittal image data file> ::= <BEGIN TRANSMITTAL IMAGE DATA FILE>
<ee>*
<object file descriptor>
<ee>*
<IMAGE DATA INSTANCE>*
<ee>*
<END TRANSMITTAL IMAGE DATA FILE>

5.2.7 SEDRIS transsmittal data table data file grammar

The start symbol for the formal grammar for a SEDRIS data table data file is <sedris transmittal data table data file>.

  <sedris transmittal data table data file>  ::= <BEGIN TRANSMITTAL DATA TABLE DATA FILE>
<ee>*
<object file descriptor>
<ee>*
<DATA TABLE DATA INSTANCE>*
<ee>*
<END TRANSMITTAL DATA TABLE DATA FILE>

5.2.8 Subsidiary file references

SUBSIDIARY FILE REFERENCEs are references to files in formats defined elsewhere that are used by the transmittal (EXAMPLE  sound files).

5.2.9 Object instances

An OBJECT INSTANCE represents an instance of any DRM class. Since these are class instantiations, only instances of concrete DRM classes are possible. Each instance shall consist of the following:

  <OBJECT INSTANCE>                 ::= <DRM CLASS NAME>
<ee>*
<field list>
<ee>*
<component list>
<ee>*
<associate list>
<ee>*
<aggregate list>
<ee>*
<IMAGE DATA>* (for DRM_Image  objects only)
<ee>*
<DATA TABLE DATA>* (for DRM_Data_Table objects only)
  <field list>                      ::= <FIELD>
< <ee>*
   <FIELD>
>*
  <component list>                  ::= <COMPONENT REFERENCE>
< <ee>*
   <COMPONENT REFERENCE>
>*
  <associate list>                  ::= <ASSOCIATE REFERENCE>
< <ee>*
   <ASSOCIATE REFERENCE>
>*
  <aggregate list>                  ::= <AGGREGATE REFERENCE>
< <ee>*
   <AGGREGATE REFERENCE>
>*

ISO/IEC 18023-1 specifies the allowable information within each object instance. For each DRM class, each encoding shall define the form of each of the following terminals based on the allowable information as specified in ISO/IEC 18023-1:

<FIELD>
<COMPONENT REFERENCE>
<ASSOCIATE REFERENCE>
<AGGREGATE REFERENCE>
<IMAGE DATA> (for DRM_Image)
<DATA TABLE DATA> (for DRM_Data_Table)

Each encoding shall also define the placement and order in which this information is encoded for each DRM class.