ConceptioArchiveECMA International
ECMA Internationalopen access

ECMA-208 — System-Independent Data Format - SIDF (December 1994)

ECMA International · ECMA International
ECMA International · Standards · License: Open Access
Open Source ↗Direct PDF ↓
dataecmaecmainternationalformatindependent
ecma, standard, ecma international, specification, ecma-208, ecma 208, 208, system-independent, data, format, sidf

Standard ECMA-208 De c ember 1994

Standardizing

Information

and

Communication

Systems

System-Independent Data Format

Phone: +41 22 849.60.00

-

Fax: +41 22 849.60.01

-

ECMANEWS: +41 22 735.33.29

-

Internet: [email protected]

Standard ECMA-208 De c ember 1994

Standardizing

Information

and

Communication

Systems

System-Independent Data Format (SIDF)

Phone: +41 22 849.60.00 MB - ECMA-208.DOC - 07.04.95 12,11

-

Fax: +41 22 849.60.01

-

ECMANEWS: +41 22 735.33.29

-

Internet: [email protected]

Brief History

The System Independent Data Format Association (SIDF) was formed in early 1993 by a consortium of industries. ECMA TC15 adopted the work of this committee in early 1994. The document was transformed into an ECMA Standard by ECMA TC15. It is contributed to ISO/IEC JTC 1 for adoption as an International Standard under the fast-track procedure.

This ECMA Standard has been adopted by the ECMA General Assembly of December 1994.

- i -

Table of contents Page Section 1 - General

1

1 Scope

1

2 Conformance

1

2.1 Conformance of Media Volumes 2.2 Conformance of an originating system 2.3 Conformance of a receiving system

1 1 1

3 References

1

4 Definitions

1

4.1 Blank Space 4.2 byte 4.3 Byte Sequence 4.4 Field 4.5 Field Identifier (FID) 4.6 Field Table 4.7 File 4.8 file mark 4.9 File Set 4.10 Interleaved File Sets 4.11 Iterated Field Set 4.12 operating system 4.13 originating system 4.14 Relative Byte Position 4.15 receiving system 4.16 Sector 4.17 Sector Number 4.18 Source 4.18 standard for recording 4.20 Volume 4.21 Volume Set 4.22 Volume Set Sequence Number

1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3

5 General conventions and notations

3

5.1 Representation of numbers 5.2 Names 5.3 Structures 5.4 Fields 5.5 Field Identifiers (FIDs) 5.6 Field Tables 5.7 Headers 5.8 Indices 5.9 Structure description schema

3 3 3 3 3 3 3 4 4

- ii -

Section 2 - Requirements for the media

5

6 Specific conventions and notations for the recorded format

5

6.1 Recording of numbers 6.2 Character sets and coding 6.3 Character set specification (CHAR SPEC)

5 5 5

6.3.1 Character Set Type 6.3.2 Character Set Information

5 6

6.4 CS0 character set 6.5 CS1 character set 6.6 CS2 character set 6.7 CS3 character set 6.8 CS4 character set 6.9 CS5 character set 6.10 CS6 character set 6.11 CS7 character set

6 6 6 6 6 6 6 6

6.11.1 Code extension characters

6

6.12 CS8 character set 6.13 Source Name Space specification

7 7

6.13.1 Name Space

7

6.14 NS0 Name Space 6.15 NS1 Name Space 6.16 NS2 Name Space 6.17 NS3 Name Space 6.18 NS4 Name Space 6.19 NS5 Name Space 6.20 NSFC Name Space 6.21 NSFE Name Space 6.22 Strings 6.23 Resynchronization Pattern

8 8 8 9 9 9 10 10 10 10

7 Timestamp

10

7.1 Type and Time Zone (RBP 0) 7.2 Year (RBP 2) 7.3 Month (RBP 4) 7.4 Day (RBP 5) 7.5 Hour (RBP 6) 7.6 Minute (RBP 7) 7.7 Second (RBP 8) 7.8 Centiseconds (RBP 9) 7.9 Hundreds of microseconds (RBP 10) 7.10 Microseconds (RBP 11)

10 11 11 11 11 11 11 11 11 11

8 Requirements for a standard for recording

11

9 Cyclic Redundancy Check (CRC)

12

10 Organization of Information on a Volume

12

10.1 Recording of Sectors

12

- iii -

10.2 Organization of a Volume 10.3 Volume Sets 10.4 Recording of Fields

12 12 14

10.4.1 Null Field

14

10.5 Recording of Field Tables 10.6 Recording of Buffers 10.7 Recording of file marks

14 14 15

11 Organization of Information within a File Set

15

11.1 Organization of a File Set 11.2 File Sets spanning multiple Volumes 11.3 Interleaving

15 17 17

12 Organization of information within a File

18

13 Field Table description

18

13.1 Volume Header Field Table 13.2 Volume Trailer Field Table 13.3 Blank Space Field Table 13.4 Buffer Header Field Table 13.5 Volume Index Field Table 13.6 Volume Subindex Field Table 13.7 File Set Header Field Table 13.8 File Set Continuation Header Field Table 13.9 File Set Trailer Field Table 13.10 File Set Index Field Table 13.11 File Set Subindex Field Table 13.12 File Header Field Table 13.13 File Continuation Header Field Table 13.14 File Information Field Table 13.15 File Data

19 20 21 21 23 24 24 27 27 28 31 31 31 32 33

13.15.1 Path Field Table 13.15.2 Characteristics Field Table 13.15.3 Source volume File Data 13.15.4 Source directory File Data 13.15.5 Source file File data 13.15.6 Transaction Set File data 13.15.7 Streams

33 33 34 35 36 37 38

13.16 Levels of partition interchange

41

13.16.1 Level 1 of partition interchange 13.16.2 Level 2 of partition interchange

41 41

14 Requirements for systems

41

14.1 Requirements for the description of systems 14.2 Requirements for an originating system

41 41

14.2.1 General 14.2.2 Mandatory access by user 14.2.3 Optional access by user 14.2.4 Volume characteristics 14.2.5 File Set characteristics

41 41 41 42 42

- iv -

14.2.6 Recording of Bit Data 14.2.7 Cyclic Redundancy Check (CRC)

42 42

14.3 Requirements for a receiving system

43

14.3.1 General 14.3.2 Levels of conformance

43 43

Annex A - Structure of the Field Identifier

45

Annex B - Field Data Length Structure

49

Annex C - Field specification

51

Annex D - Numerical List of the Field Identifiers specified by this ECMA Standard

81

Annex E - Numerical List of Field Identifiers which are deprecated or not specified by this ECMA Standard

89

Section 1 - General 1

Scope This ECMA Standard specifies a logical format for information interchange and secondary data storage. The format provides a system-independent data format (SIDF) for the representation of primary file system information. This information includes, among other things, data, attributes and characteristics. This ECMA Standard specifies − the organization of the information on target media, − requirements for originating and receiving systems for the processing of the information.

2 2.1

Conformance Conformance of Media Volumes A Volume shall be in conformance with this ECMA Standard if all information recorded on it meets the relevant requirements of sections 2 and 3 for the Level of partition claimed.

2.2

Conformance of an originating system An originating system shall be in conformance with this ECMA Standard if it meets the requirements of 14.2.

2.3

Conformance of a receiving system A receiving system shall be in conformance with this ECMA Standard if it meets the requirements of 14.3 for the Level of conformance claimed.

3

References ECMA-6 (1991)

7-bit Coded Character Set

ECMA-35 (1994)

Code Extension Techniques

ECMA-94 (1986)

8-Bit Single-Byte Coded Graphic Character Sets - Latin Alphabets No. 1 to No. 4

ECMA-119 (1987)

Volume and File Structure of CD-ROM for Information Interchange

ECMA-167 (1994)

Volume and File Structure of Write-Once and Rewritable Media using Non-Sequential Recording for Information Interchange

ISO/IEC 9945-1:1990, Information technology - Portable operating system interface (POSIX) - Part 1: System Application Program Interface (API) [C Language] ISO/IEC 10646-1:1993, Information technology - Universal multiple octet coded character set (UCS) - Part 1: Architecture and basic multilingual plane. ISO/IEC 13800:1995, Information technology - Procedure for the registration of identifiers and attributes for volume and file structure. ITU Rec. X.25: Interface between Data Terminal Equipment (DTE) and Data Circuit-Terminating Equipment (DCE) for Terminals operating in the Packet Mode and connected to Public Data Networks by dedicated Circuits.

4

Definitions For the purposes of this ECMA Standard, the following definitions apply.

4.1

Blank Space Either one or more NULL Fields, or a BLANK SPACE Field Table.

4.2

byte A string of eight binary digits operated upon as a unit.

- 2 -

4.3

Byte Sequence An ordered set of bytes.

4.4

Field The basic logical grouping of data.

4.5

Field Identifier (FID) A Byte Sequence which identifies a Field.

4.6

Field Table A set of logically associated Fields.

4.7

File A collection of data that is stored as a single unit. A File contains a representation of a single primary file system entity, such as a Source directory, file, data base object, or data base.

4.8

file mark A sector containing a control block used as a delimiter to facilitate positioning, as defined by the relevant standard for recording. NOTE Some media may not support file marks.

4.9

File Set A set of associated Files, sourced from a single Source, recorded within a Volume Set.

4.10

Interleaved File Sets Two or more File Sets are interleaved if any part of at least one is recorded between any parts of another.

4.11

Iterated Field Set A sequence of one or more Fields, which may be repeated within a Field Table.

4.12

operating system The software which controls the file system of the Source.

4.13

originating system An information processing system which can create a File Set in a Volume Set for the purpose of data interchange with another system.

4.14

Relative Byte Position Indicates the byte position in a number.

4.15

receiving system An information processing system which can process a File Set of a Volume Set which has been created by another system for the purpose of data interchange.

4.16

Sector The data field of the smallest addressable part of the medium that can be accessed independently of other addressable parts of the medium. NOTE This Sector is different from the physical sectors of a physical track.

4.17

Sector Number The ordinal sequence number of a Sector within a Volume, starting with 0 (0, 1, 2, 3, ..., n).

- 3 -

4.18

Source The primary system (e.g. file system, data base) which is the source of the Files that are recorded as a File Set for secondary storage. The name of the Source is specified for the File Set, and is not included in the Source path information of the individual Files.

4.19

standard for recording A standard that specifies the recording method and the addressing method for the information recorded on a medium.

4.20

Volume A set of Sectors which resides within one physical partition on a secondary storage medium.

4.21

Volume Set One Volume, or multiple logically related Volumes.

4.22

Volume Set Sequence Number The ordinal sequence number of each Volume within a Volume Set, starting with 1 (1, 2, 3, ..., n).

5 5.1

General conventions and notations Representation of numbers − − − − − − −

5.2

Numbers in decimal notation are shown as decimal digits. Numbers in hexadecimal notation are shown as a sequence of hexadecimal digits preceded by #. The setting of bits is denoted by ZERO or ONE. Numbers in binary notation and bit combinations are represented by sequences of ZEROs or ONEs. Bit combinations are shown with the most significant bit to the left. Bits are indicated with the small letter b. Bytes are indicated with the capital letter B.

Names The names of formally defined entities, such as a Volume, are shown with a capital initial. The name of Fields, such as VOLUME HEADER, are written in capitals.

5.3

Structures Data structures are shown in tables indicating the Relative Byte Position (RBP), purpose and size of the entities that comprise the structure.

5.4

Fields Fields are denoted by names shown in capital letters.

5.5

Field Identifiers (FIDs) A Byte Sequence in hexadecimal notation uniquely identifying a Field.

5.6

Field Tables The name of a Field Table is that of its first Field, it is shown with capital initials. Field Tables list each Field with its name, its FID and a brief description of the data. The normative definition of each Field is specified in annex C. The Data Description reads "empty" if no Data part is included in the Field. Iterated Field Sets within a Field Table are shown indented, with a bar alongside. Nested Iterated Field Sets are shown with each inner level of nesting further indented than the outer level(s).

5.7

Headers The term "File Set (Continuation) Header" is used to express: File Set Header and/or File Set Continuation Header. The term "File Record (Continuation) Header" is used to express: File Record Header and/or File Record Continuation Header.

- 4 -

5.8

Indices The term "Volume (Sub)Index" is used to express: Volume Index and/or Volume Subindex. The term "File Set (Sub)Index" is used to express: File Set Index and/or File Set Subindex.

5.9

Structure description schema Requirements for recording the different elements of the format are summarized by means of a structure description. A structure shall be a sequence of terms. A term shall be either: − a name, enclosed by [], followed by a definition enclosed by {}, or − a name, enclosed by <>, of a term defined in the structure or of a descriptor defined elsewhere in this ECMA Standard in the text associated with the structure. Within a definition enclosed by {}, the Or Operator and Repetition Operators may be applied to the terms therein. The Or Operator is represented by the character VERTICAL LINE: . It is placed between the terms to which it applies and indicates that either term, but not both simultaneously, is valid at that point in the definition. There are three Repetition Operators, which shall be interpreted as shown in figure 1, where n and m are decimal digits. Repetition Operator

Interpretation

n

n occurrences of the preceding term

n+

n or more occurrences of the preceding term

n+m

n to m occurrences of the preceding term Figure 1 - Repetition Operators

The Repetition Operators shall apply only to the preceding term. The operators are listed in increasing order of precedence: |

repetition operator

[ ]

()

Higher precedence operators shall be applied before lower precedence operators. As an example, the schema shown in figure 2 specifies that the entity "Concert" shall be organized as zero or one Introduction, followed by one or more Pieces, an Intermission, one or more Pieces, and zero or more Encores. A Piece consists either of one Song or three to five Movements. [Concert] { <Introduction> 0+1 [Piece] { <Song> | <Movement> 3+5 } 1+ <Intermission> <Piece> 1+ <Encore> 0+ } Figure 2 - Example of the syntax of the structure description schema

- 5 -

Section 2 - Requirements for the media 6

Specific conventions and notations for the recorded format

6.1

Recording of numbers − In each Field the information is recorded so that the least significant byte (denoted byte B0) is recorded first. Within each byte the least significant bit is denoted bit b0, the most significant bit is denoted b5, and is recorded first. This order of recording also applies to the data input of the cyclic redundancy code (CRC) and to its output (CRC bits). − Negative values are recorded in TWO's complement notation.

6.2

Character sets and coding Except as specified in this clause and in 6.13, the characters used in the Fields specified by this ECMA Standard shall be coded according to the International Reference Version (IRV) of ECMA-6. The CS4 character set described in 6.8 shall be the default character set, and shall be used if no other is explicitly specified. The specification of the characters allowed in these Fields and the method of recording shall be recorded as a CHAR SPEC Field (see 6.3). NOTE Support for a variety of character sets is a requirement of this ECMA Standard. Ideally, there should be only one character standard used. In practice, several standards, including ECMA-6, ECMA-35, ECMA-94 and ISO/IEC 10646-1 are used. This ECMA Standard accommodates current practice by specifying several character sets and providing a mechanism for specifying other character sets. As an example, CS2 (see 6.6) uses the IRV of ECMA-6 as the basic character set but restricts Fields containing characters to a widely usable subset of this character set.

6.3

Character set specification (CHAR SPEC) The data part of the CHAR SPEC Field consists of two parts, Character Set Type and Character Set Information, recorded as a sequence of bytes. The Character Set Type shall be recorded as the first byte of the sequence; the Character Set Information shall consist of any remaining bytes. The set of characters allowed in certain Fields and/or Field Tables shall be specified by a one-byte Character Set Type, and additional Character Set Information appended immediately after as needed.

6.3.1

Character Set Type The Character Set Type identifies the allowed set of characters as shown in figure 3. Type

Allowed characters

0

The CS0 coded character set (see 6.4).

1

The CS1 coded character set (see 6.5).

2

The CS2 coded character set (see 6.6).

3

The CS3 coded character set (see 6.7).

4

The CS4 coded character set (see 6.8).

5

The CS5 coded character set (see 6.9).

6

The CS6 coded character set (see 6.10).

7

The CS7 coded character set (see 6.11).

8

The CS8 coded character set (see 6.12).

9 to 255

Reserved for future standardization Figure 3 - Sets of allowed characters

- 6 -

6.3.2

Character Set Information The interpretation of the contents of this field, if any, is specified by the value of the Character Set Type as described in 6.4 to 6.12.

6.4

CS0 character set The CS0 character set shall be subject to agreement between the originator and recipient of the medium. The character set is undefined for interchange. However, the agreed character set can be identified in the Character Set Information, if so desired.

6.5

CS1 character set The CS1 character set shall be the graphic characters of the character sets specified by the Character Set Information Field. The Character Set Information Field shall specify one or more escape sequences, to be used in an 8-bit environment according to ECMA-35 that designate and implicitly invoke graphic character sets specified in ISO/IEC 10646-1. These sequences shall be recorded contiguously from the start of the Field.

6.6

CS2 character set The CS2 character set shall be the 38 characters in positions 02/14, 03/00 to 03/09, 04/01 to 05/10, and 05/15 of the IRV of ECMA-6. NOTE These characters are: FULL STOP, DIGITs, LATIN CAPITAL LETTERs and LOW LINE.

6.7

CS3 character set The CS3 character set shall be the 65 characters in positions 02/13 to 02/14, 03/00 to 03/09, 04/01 to 05/10, 05/15, and 06/01 to 07/10 of the IRV of ECMA-6. NOTE These characters are: HYPHEN-MINUS, FULL STOP, DIGITs, LATIN CAPITAL LETTERs, LATIN SMALL LETTERs and LOW LINE.

6.8

CS4 character set The CS4 character set shall be the 95 characters in positions 02/00 to 07/14 of the IRV of ECMA-6.

6.9

CS5 character set The CS5 character set shall be the 191 characters in positions 02/00 to 07/14 and 10/00 to 15/15 of Latin Alphabet No. 1 in ECMA-94.

6.10

CS6 character set The CS6 character set shall be the graphic characters of the character sets specified by the Character Set Information Field. The Character Set Information field shall specify one or more escape sequences according to ECMA-35 that designate and implicitly invoke the graphic character sets to be used in an 8-bit environment according to ECMA35 or ISO/IEC 10646-1. These sequences shall be recorded contiguously from the start of the Field.

6.11

CS7 character set The CS7 character set shall be the graphic characters of the character sets specified by the Character Set Information Field and code extension characters (see 6.11.1). The Character Set Information field shall specify one or more escape sequences according to ECMA-35 that designate and implicitly invoke the graphic character sets to be used in an 8-bit environment according to ECMA35 or ISO/IEC 10646-1. These sequences shall be recorded contiguously from the start of the field.

6.11.1

Code extension characters Characters specified by the CS7 Character Set may include one or more of the following, referred to as code extension characters, to allow alternative character sets to be recorded.

- 7 -

− Escape sequences according to ECMA-35 or ISO/IEC 10646-1 − Shift functions according to ECMA-35

6.12

CS8 character set The CS8 character set shall be the 53 characters in positions 02/01, 02/03 to 02/09, 02/13 to 02/14, 03/00 to 03/09, 04/00 to 05/10, 05/14 to 06/00, 07/11 and 07/13 to 07/14 of the IRV of ECMA-6. NOTE These characters are: EXCLAMATION MARK, NUMBER SIGN, DOLLAR SIGN, PERCENT SIGN, AMPERSAND, APOSTROPHE, LEFT PARENTHESIS, RIGHT PARENTHESIS, HYPHEN-MINUS, FULL STOP, DIGITs, LATIN CAPITAL LETTERs, CIRCUMFLEX ACCENT, LOW LINE, GRAVE ACCENT, LEFT CURLY BRACKET, RIGHT CURLY BRACKET, TILDE.

6.13

Source Name Space specification The Source or originating system shall indicate the properties of path name information that is associated with a Source file or similar entity by the Field NAME SPACE. In some contexts other Fields may also use the same Name Space information, for example RESOURCE NAME SPACE in the File Set Header. The Name Space specifies the following characteristics of the file name: − Path element character set restrictions: The characters used in the Source file path name shall be contained within this set. − Path element length restrictions: Each element of the path name shall consist of at least one character, and shall not be longer than the number of characters specified. − Total path length restriction: The entire path shall not be longer than the number of characters specified. − Path ordering (parent-first or child-first): For complete paths in hierarchical file systems, if the parent-first path ordering is used, the parent node closest to the root shall be listed first, followed by its immediate child, and proceeding so forth to the path element furthest from the root. If the child-first path ordering is used, the node furthest from the root shall be listed first, followed by its immediate parent, and proceeding so forth to the path element nearest to the root. − Case-sensitive: A CAPITAL LETTER is considered different from the corresponding SMALL LETTER. − Case retention: A CAPITAL LETTER and the corresponding SMALL LETTER are stored and displayed distinctly. − Separators: In the full path name, the separator(s) between any two elements of the path name. − Special requirements: Any other characteristics not reflected above. For example, whether restrictions apply to the character FULL STOP (#2E), regarding its position or frequency of use in a path element name.

6.13.1

Name Space Name Spaces shall be identified by an unsigned hexadecimal number. The Name Spaces specified by this ECMA Standard are shown in figure 4.

Identifier

Name Space

#00

The NS0 Name Space (see 6.14).

#01

The NS1 Name Space (see 6.15).

#02

The NS2 Name Space (see 6.16).

#03

The NS3 Name Space (see 6.17).

#04

The NS4 Name Space (see 6.18).

#05

The NS5 Name Space (see 6.19).

#FFFFFFFC

The NSFC Name Space (see 6.20).

#FFFFFFFE

The NSFE Name Space (see 6.21). Figure 4 - Defined Name Spaces

- 8 -

6.14

NS0 Name Space Path element character set restrictions: Characters of the NS0 Name Space path elements shall be members of the CS8 Character Set. Path element length restrictions: A path element shall contain at most 12 characters. A path element shall not contain more than one FULL STOP. A path element shall contain at most 8 characters before a FULL STOP and at most 3 characters after a FULL STOP. If a path element does not contain a FULL STOP, that path element shall contain at most 8 characters. Total path length restriction: No total path length restrictions shall apply. Path ordering: The parent path element(s) of a complete (i.e. not relative) path shall be recorded before the child element. Case-sensitive: FALSE. Case retention: FALSE. Separators: The separator between the first two elements of a complete path shall be COLON. The separator between all subsequent elements of the path shall be SOLIDUS. Special requirements: A path element shall not contain more than one FULL STOP character. The first element of a complete path shall be a Source volume Name. NOTE This Name Space may be associated with file systems of many personal computers. In some implementations the total path length is restricted to 256 characters, and the use of longer paths may yield unpredictable results. In some implementation the characters represented by #21, #23 to 29, #2D, #2E, #7D and #7E may not be supported, and their use may yield unpredictable results.

6.15

NS1 Name Space Path element character set restrictions: Bytes #00 and #3A are not allowed for the NS1 Name Space path elements. Path element length restriction: Each path element shall contain at most 32 characters. Total path length restrictions: No total path length restrictions shall apply. Path ordering: The parent path element(s) of a complete path shall be recorded before the child element. Case-sensitive: TRUE. Case retention: TRUE. Separators: The separator between the first two elements of a complete path shall be two adjacent COLONs. The separator between all subsequent elements of the path shall be COLON. Special requirements: The first element of a complete path shall be a Source volume Name.

6.16

NS2 Name Space Path element character set restrictions: Characters of the NS2 Name Space path elements shall be represented by any single byte, except #00, #2F, #3A. Path element length restriction: Each path element shall contain at most 300 characters. Total path length restrictions: No total path length restrictions shall apply. Path ordering: The parent path element(s) of a complete path shall be recorded before the child element. Case-sensitive: TRUE. Case retention: TRUE.

- 9 -

Separators: The separator between the first two elements of a fully qualified path shall be COLON. The separator between all subsequent elements of the path shall be SOLIDUS. Special requirements: The first element of a complete path shall be a Source volume Name.

6.17

NS3 Name Space Path element character set restrictions: Characters of the NS3 Name Space path elements shall be represented by any single byte within one of the following ranges: #01 to #2E, #30 to #39, #3B to #7E. Path element length restriction: Each path element shall contain at most 255 characters. Total path length restrictions: No total path length restrictions shall apply. Path ordering: The parent path element(s) of a complete path shall be recorded before the child element. Case-sensitive: TRUE. Case retention: TRUE. Separators: The separator between the first two elements of a complete path shall be COLON. The separator between all subsequent elements of the path shall be SOLIDUS. Special requirements: The first element of a complete path shall be a Source volume Name.

6.18

NS4 Name Space Path element character set restrictions: Characters of the NS4 Name Space path elements shall be represented by any single byte within one of the following ranges: #21 to #2E, #30 to #5B, #5D to #FF. Path element length restriction: Each path element shall contain at most 300 characters. Total path length restrictions: No total path length restrictions shall apply. Path ordering: The parent path element(s) of a complete path shall be recorded before the child element. Case-sensitive: FALSE. Case retention: TRUE. Separators: The separator between the first two elements of a complete path shall be COLON. The separator between all subsequent elements of the path shall be SOLIDUS. Special requirements: The first element of a complete path shall be a Source volume Name.

6.19

NS5 Name Space Path element character set restrictions: Characters of the NS5 Name Space path elements shall be represented by any single byte within one of the following ranges: #30 to #39, #40 to #5A, #5E to #60, #7B, #7D to #FF. Path element length restriction: Each path element shall contain at most 256 characters. Total path length restrictions: No total path length restrictions shall apply. Path ordering: The parent path element(s) of a complete path shall be recorded before the child element. Case-sensitive: FALSE. Case retention: TRUE. Separators: The separator between the first two elements of a complete path shall be COLON. The separator between all subsequent elements of the path shall be SOLIDUS. Special requirements: The first element of a complete path shall be a Source volume Name. NOTE In some implementations the total path length is restricted to 256 characters, and use of longer paths may yield unpredictable results.

- 10 -

6.20

NSFC Name Space Path element character set restrictions: Characters of the NSFC Name Space path elements shall be represented by any single byte within one of the following ranges: #0 to #2A, #2C to #2D, #2F to #3C, #3E to #5B, #5D to #FF. Path element length restriction: Each path element shall contain at most 256 characters. Total path length restrictions: The total path shall contain at most 256 characters. Path ordering: The child element of a complete path shall be recorded before the parent path element(s). Case-sensitive: FALSE. Case retention: TRUE. Separators: The separator between all path elements shall be FULL STOP.

6.21

NSFE Name Space Name Space NSFE shall be used to indicate that the characteristics associated with the Name Space shall be determined by the Source, and are not specified by this ECMA Standard.

6.22

Strings A string shall be recorded as a sequence of zero or more non-NULL characters, followed by a NULL character.

6.23

Resynchronization Pattern The Resynchronization Pattern shall be the two-byte Byte Sequence #A55A.

7

Timestamp A Timestamp specifies a date and time recorded in the format shown in figure 5. If the Year field has the value 0 the Timestamp shall be ignored; all other Fields in Timestamp shall be set to all ZEROs. Timestamps are established by the originating system and/or the Source. The accuracy of Timestamps is not specified by this ECMA Standard. If a Timestamp is recorded in a Field the Data part of which is longer than 12 bytes, the Timestamp shall be recorded first, and all subsequent bytes shall be recorded as NULL(s). RBP

Name

Representation

0

Timestamp type and time zone

16-bit integer

2

Year

16-bit integer

4

Month

8-bit integer

5

Day

8-bit integer

6

Hour

8-bit integer

7

Minute

8-bit integer

8

Second

8-bit integer

9

Centisecond

8-bit integer

10

Hundreds of microseconds

8-bit integer

11

Microseconds

8-bit integer

Figure 5 - Timestamp format

7.1

Type and Time Zone (RBP 0) The most significant 4 bits of this integer, interpreted as a 4-bit number, shall specify the interpretation of the Timestamp. − the value 0 shall indicate that the Timestamp specifies Coordinated Universal Time, timeZone shall be all ZEROs. − the value 1 shall indicate that the Timestamp specifies local time.

- 11 -

− the value 2 shall indicate that the interpretation of the Timestamp is subject to agreement between the originator and recipient of the medium. − no other value shall be recorded. The least significant 12 bits of this field, interpreted as a signed 12-bit number in TWO’s complement form, shall be interpreted as follows: − if the value is in the range -1440 to 1440, then the value specifies the offset, in minutes, of the date and time from Coordinated Universal Time. − if the value is -2047, this shall mean that no such offset is specified. − no other values shall be recorded.

7.2

Year (RBP 2) This field shall specify the year as a number in the range 1 to 9999.

7.3

Month (RBP 4) This field shall specify the month of the year as a number in the range 1 to 12.

7.4

Day (RBP 5) This field shall specify the day of the month as a number in the range 1 to 31.

7.5

Hour (RBP 6) This field shall specify the hour of the day as a number in the range 0 to 23.

7.6

Minute (RBP 7) This field shall specify the minute of the hour as a number in the range 0 to 59.

7.7

Second (RBP 8) If the value of the Type field is 2, then this field shall specify the second of the minute as a number in the range 0 to 60. Otherwise, this field shall specify the second of the minute as a number in the range 0 to 59.

7.8

Centiseconds (RBP 9) This field shall specify the hundredths of the second as a number in the range 0 to 99.

7.9

Hundreds of microseconds (RBP 10) This field shall specify the hundreds of microseconds as a number in the range 0 to 99.

7.10

Microseconds (RBP 11) This field shall specify the microseconds as a number in the range 0 to 99.

8

Requirements for a standard for recording The media for recording shall meet the following requirements of a standard for recording. The standard for recording shall specify: − − − −

a unique physical address for each sector; the length of each sector; the means for determining whether a sector is rewritable or not; for media where sectors may only be recorded once, a means for detecting whether a sector has not yet been recorded; − whether sectors or groups of sectors may require pre-processing prior to recording; − a method for recording and detecting file marks, if file marks are supported. The standard for recording used in conjunction with this ECMA Standard is subject to agreement between the originator and recipient of the medium.

- 12 -

9

Cyclic Redundancy Check (CRC) A Cyclic Redundancy Check (CRC), where implemented, shall be computed in accordance with ITU Rec. X.25. CRC shall use the generating polynomial x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x + 1. CRC shall use the seed value -1. CRC generates a 32-bit output.

10 10.1

Organization of Information on a Volume Recording of Sectors The physical sectors of a Volume shall be organized into logical Sectors of equal length. Sectors shall have a length of 2n+8 bytes, where n is an positive integer (i.e. Sector lengths of 512, 1024, 2048, 4096, ...). Each Sector of a Volume shall be identified by a unique Sector Number. Sector Number 0 shall be assigned to the Sector at the start of the Volume Header. This is not necessarily the sector with the lowest physical address of the partition.

10.2

Organization of a Volume A Volume is a set of Sectors. The lowest numbered Sectors of the Volume, referred to as the Volume Preamble, shall contain only a Volume Header and zero or more File Set Continuation Headers. The remaining Sectors of the Volume, up to, but not including, the Volume Postamble, shall be referred to as the Volume Data Space of the Volume. Volume Data Space shall consist of File Sets (see clause 11) and, optionally, Volume Indices (see 13.5). The Volume Postamble may contain one File Set Subindex and/or one Volume Set Subindex. If it contains both, the File Set Subindex shall precede the Volume Set Subindex. The Volume Postamble shall end with the Volume Terminator. The Volume Terminator shall be either a Volume Trailer, the physical end-of-partition, or the end of recorded data, which ever occurs at the lower numbered Sector. No more than one Volume shall be recorded in one physical partition. NOTE Because a Volume, as specified by this ECMA Standard, need not be located at the physical start of the partition, a Volume may be preceded by other information. The presence of such prefixed information is restricted to media at Level 2 of medium interchange (see 14.2). Figure 6 summarizes the requirements for recording Volumes.

[Volume] { [Volume Preamble] { <Volume Header> <File Set Continuation Header> 0+ } <Volume Data Space> [Volume Postamble] { <File Set Subindex> 0+1 <Volume Set Subindex> 0+1 [Volume Terminator] { |<Volume Trailer > |<physical end-of-recorded-data> <physical end-of-partition> } } } Figure 6 - Schema for Volumes

10.3

Volume Sets A Volume Set shall consist of one or more Volumes having a Volume Set Label common to all Volumes. The Volumes in a Volume Set shall be numbered ordinally (1, 2, 3, ..., n), their numbers constitute their Volume Set Sequence Numbers. All occurrences of Volume Set Time within a Volume Set shall be equivalent. The ordered concatenation of the Volume Data Spaces of the Volumes of a Volumes Set constitutes the Volume Set Data Space. NOTE Volumes within a Volume Set may be of different physical media types.

- 13 -

File Set(s) shall be recorded within the Volume Set Data Space of a Volume Set. A Volume Index is optional, but if present shall be recorded within the Volume Set Data Space, immediately following a File Set. Figure 7 summarizes the requirements for recording Volume Set Data Space. [Volume Set Data Space] { { <File Set> <Volume Index> 0+1 } 0+ } Figure 7 - Schema for Volume Set Data Space Figure 8 to figure 10 show examples of the layout of the Volume organization. Volume Header

Volume Header

First File Set

First File Set

Second File Set

Second File Set Volume Index (optional) Volume Trailer

(sectors not yet recorded)

(space unavailable to Volume)

(physical end of partition)

(physical end of partition)

Figure 8 - Simplified view of a Volume

Figure 9 - Simplified view of a Volume

Two File Sets are recorded on the Volume, further File Sets can be appended.

Two File Sets are recorded on the Volume, no further File Sets can be appended without overwriting the Volume Trailer.

Volume Header Volume Header First File Set

Second File Set

Third File Set (part 1) (physical end of partition)

File Set Cont. Header for Third File Set

Third File Set (part 2)

Fourth File Set

(sectors not yet recorded) (physical end of partition)

ECMA-95-0028-A

Figure 10 - Simplified view of a Volume Set, the Third File Set of which spans from one Volume to the next.

- 14 -

10.4

Recording of Fields All data in the Volume, except for Streams (see 13.15.6), shall be expressed in Fields. A Field shall consist of a Field Identifier (FID) (see annex A), and may contain a Data Length part and a Data part. Certain FIDs specify the length of the data implicitly, in which case the Data Length part shall be omitted. For all other FIDs, the Data Length part shall be present immediately after the FID. If data is present in the Field, the Data part of the Field shall immediately follow the Data Length part if present, or shall follow the FID if the Data Length part is omitted. The formal definition of each type of Field is specified in annex C. FID

Data length Data

Figure 11 - Parts of a Field Fields contained in Buffer(s) shall have both their FID and Data length part recorded entirely within a single Buffer. 10.4.1

NULL Field The NULL Field shall consist only of its FID which consists of the single byte #00. It has no meaning, and functions merely as a placeholder.

10.5

Recording of Field Tables A Field Table is a sequence of Fields. All Fields shall be recorded in Field Tables, except when the Null Field is used as Blank Space (see 13.3). A Field Table shall start and end with Fields identified by the same FID. The Data part of the first Field shall consist of the Resynchronization Pattern. The Data part of the last Field shall either contain CRC bits or be empty, as indicated by the Data Length part of this last Field. This Field shall not appear elsewhere in the Field Table. Each Field Table is given the name of its first Field. If the OFFSET TO END Field is included in a Field Table, it shall be the second Field. Any set of Fields specified as an Iterated Field Set may be repeated within the Field Table. Each iteration is identified by the first Field listed in the Iterated Field Set. Except for the first and last Field, OFFSET TO END, and any restrictions on Iterated Field Sets, or otherwise specified, Fields may be in any order within the Field Table; they need not be in the order shown in examples. If the CRC bits are computed, they shall be calculated over the whole Field Table, except the last Field.

10.6

Recording of Buffers All information recorded in a Volume, except Volume Header File Set Continuation Header(s) File Set Header(s) File Set Trailer(s) file mark(s) and Volume Trailer shall be recorded within Buffers. A Buffer is a set of one or more contiguous Sectors. Buffers shall begin and end at Sector boundaries. A Buffer shall begin with a Buffer Header Field Table immediately followed by one of the following types of data: File, File Set Index, File Set Subindex, Volume Index, Volume Subindex, or implementation-use. If the above data does not occupy the entire Buffer, the remainder shall be padded with Blank Space (see 13.3). The part of the Buffer between the Buffer Header and any ending Blank Space shall be referred to as Buffer Data Space. A Buffer shall be contained entirely within one Volume. If a Buffer cannot be recorded in its entirety within the remaining space of a Volume, it shall be recorded again in its entirety on the next Volume of the Volume Set immediately after the Volume Preamble of the next Volume (see 11.2). A Buffer shall not be repeated in any other instance. Figure 12 summarizes the requirements for recording Buffers.

- 15 -

[Buffer] { <Buffer Header> [Buffer Data Space] { [File Data Space] { [File Continuation Space] { <File Continuation Header> <File data> } 0+1 [File Space] { <File Header> <File data> } 0+ } [Volume or File Set (Sub)Index Data] | [implementation use] | } <Blank Space> 0+1 } Figure 12 - Schema for a Buffer

10.7

Recording of file marks The use of file marks shall be specified for each Volume by the Volume Header. The FILE MARK USAGE Field of the Volume Header specifies whether file marks shall be recorded − before File Set Headers (see 11.1), except those that immediately follow either the Volume Preamble or other File Set Header(s) that immediately follow the Volume Preamble, and/or − before File Set Trailers (see 11.1), and/or − at specified regular intervals (see annex C: FILE MARK INTERVAL). Once established by the originating system which records the Volume Header, file mark usage shall be maintained by any system(s) that record subsequent data in the Volume. A file mark shall occupy one Sector. Contiguous file marks shall not be recorded. Other types of media marks, for example set marks, shall not be recorded. A file mark shall not be recorded within a Volume in any location other than those locations specified in the FILE MARK USAGE Field of the Volume Header.

11 11.1

Organization of Information within a File Set Organization of a File Set This ECMA Standard specifies a recording methodology for information interchange and secondary data storage. As such, the data recorded in a File Set may be considered a representation of information of all or part of a primary storage file system, referred to as the Source. Any group of Files from a single Source may be recorded together as a File Set. A File Set shall reside within the Volume Set Data Space. A File Set shall begin with a File Set Preamble, contain zero or more Buffers, and end with a File Set Postamble. The File Set Preamble shall contain only the File Set Header, and a file mark when required by the Volume Header, as specified in 10.7. The Volume Header of the Volume containing the start of the File Set Postamble shall specify whether a file mark is to be recorded before the File Set Trailer. If so, the Postamble shall begin with a file mark and the File Set Trailer shall be recorded in the next Sector of the Volume. If not, the Postamble shall begin with the File Set Trailer. The File Set Postamble shall contain nothing after the File Set Trailer, unless the File Set Header specifies that a File Set Index shall be recorded. In this case the File Set Index shall be recorded, within Buffer(s), in the next Sectors of the Volume Set Data Space. If the end of the Volume Data Space containing the File Set Trailer is encountered before the remainder of the File Set Postamble (i.e. File Set Index Buffers) can be completely recorded, the Volume Data Space shall span onto the next Volume in the Volume Set. In that case, the remainder of the File Set Postamble shall be recorded at the beginning of the next Volume Data Space, immediately after its Volume Preamble.

- 16 -

Figure 13 summarizes the requirements for recording File Sets. [File Set] { [File Set Preamble] { <file mark> 0+1 <File Set Header> } <Buffers associated with a File Set> 0+ [File Set Postamble] { <file mark> 0+1 <File Set Trailer> <File Set Index> 0+1 } } Figure 13 - Schema for File Sets File Set Indices are optional. A File Set Index shall list all Files contained in the File Set, with their Volume and Sector Number. The File Set Index shall be contained within one or more Buffers. File Sets that span multiple Volumes shall meet the requirements of 11.2. A File Set Preamble, the File Set Buffer(s) and the File Set Postamble need not be physically adjacent to each other. This allows interleaving of different File Sets. A File Set Header, Continuation Headers, Buffers and Trailer shall all have the same File Set ID, File Set Time, File Set Label, Source Name Type, Source Name, Source operating system, and Source operating system version information, if recorded. If one or more Registered Identifiers are recorded in a File Set Header, they shall be rerecorded in all File Set Continuation Headers of that File Set. Figures 14 and 15 show examples of the layout of the File Set organization. Volume Header First File Set Header First File Set Buffers First File Set Trailer Second File Set Header Second File Set Buffers Second File Set Trailer Second File Set Index (optional) (sectors not yet recorded) (physical end of partition) Figure 14 - Simplified view of a Volume containing two File Sets

- 17 -

Volume Header First File Set Header First File Set Buffers First File Set Trailer Second File Set Header Second File Set Buffers

(physical end of partition)

Volume Header Second File Set Continuation Header more Second File Set Buffers Second File Set Trailer Second File Set Index (optional) (sectors not yet recorded)

(physical end of partition)

Figure 15 - Simplified view of a Volume Set containing two File Sets. The second File Set spans from the first Volume to the second Volume.

11.2

File Sets spanning multiple Volumes A File Set shall be considered to span multiple Volumes if parts of the File Set are recorded on two or more Volumes of a Volume Set. The Volume Set Sequence Numbers of all Volumes of the File Set shall form a consecutive ascending sequence. If the originating system deems that a Buffer of a File Set could not be written in its entirety before the end of a Volume, the entire Buffer shall be recorded immediately after the Volume Preamble of the Volume having the next greater Volume Set Sequence Number. NOTE In case of spanned Volumes a Buffer may be completely duplicated on the next Volume. The BUFFER SEQUENCE is the same in both instances. In this case the Buffer on the previous Volume is ignored. A File Set Continuation Header shall be recorded within the Volume Preamble of all Volumes of the Volume Set after the Volume containing the File Set Header, up to and including the Volume containing the last Sector of the File Set Postamble.

11.3

Interleaving Interleaving of File Set Preambles, File Set Postambles and File Set Buffers from different File Sets within the Volume Data Space is allowed. The FILE SET ID in each of these File Set entities indicates the File Set to which the entity belongs. The elements within each of these entities shall be logically contiguous.

- 18 -

The Buffers of a Volume Index shall be logically contiguous. A Volume Index shall be logically contiguous with the File Set Postamble that precedes it. BUFFER SEQUENCE numbers shall be increased on an intra-File Set basis. Thus the interleaving of Buffers from other File Sets does not affect the BUFFER SEQUENCE numbers within a File Set. BUFFER ADDRESSes shall be maintained on an inter-File Set basis. Thus the interleaving of Buffers from other File Sets affects the addresses of subsequent Buffers of all File Sets. Once a File Set Header has been recorded, the File Set shall be considered pending until the File Set Postamble is recorded. If any interleaved File Sets are pending in a Volume, File Set Continuation Headers for all such File Sets shall be recorded in the Volume Preamble of the next Volume of the Volume Set immediately following the Volume Header. If a File Set has a File Set Index recorded, the Index shall be recorded immediately after the File Set Trailer within the Volume Set Data Space. Thus, no interleaving occurs within a File Set Postamble.

12

Organization of information within a File Files and their Headers are contained within Buffer Data Space. A File shall consist of File Information and File Data, pertaining to a single entity from the Source. Each File shall be preceded by a File Header which specifies the type of file and the number of bytes of the File contained in the current Buffer. If the File does not fit entirely within a Buffer, it shall continue in the Buffer Data Space of the subsequent Buffer. In that Buffer, after the Buffer Header, a File Continuation Header shall be recorded, followed by more data of the File. This shall continue as needed until the entire File is recorded. File Information shall be recorded as a single Field Table, specifying the attributes of the File. File Data (see 13.15) shall be recorded as a series of Field Tables, including path, characteristics, and the various Streams of the File. Additional Field Tables associated with the File may be recorded within the File Data. Figure 16 summarizes the requirements for recording Files.

[File] { <File Information> [File Data] { <Header> <Path> <Characteristics> [Additional information associated with File] { [Stream] { <Stream Header> <Stream> <Stream Trailer> } | <non-Stream information associated with File> } 0+ <Trailer> } } Figure 16 - Schema for Files

13

Field Table description Field Tables consist of a number of mandatory Fields and any number of additional Fields deemed necessary for the application considered. In the following description, the mandatory Fields are specified. An example of a Field Table with additional Fields is given for illustration purposes. For each Field is indicated whether it is mandatory (Yes), not mandatory (No), or mandatory depending on a condition (Cond.).

- 19 -

13.1

Volume Header Field Table In each Volume, the Volume Header Field Table is mandatory and shall be recorded beginning at the start of the first Sector of the Volume. This Sector need not be physically the first sector in the media partition. The Sector in which the Volume Header begins shall have Sector Number 0. If the Volume Header Field Table does not end exactly at a Sector boundary, the unused part of its last sector shall be padded with Blank Space. The following ten Fields are mandatory in the Volume Header Field Table: VOLUME HEADER OFFSET TO END FORMAT VERSION SECTOR SIZE VOLUME SET TIME VOLUME TIME VOLUME SET LABEL VOLUME SET SEQUENCE VOLUME INDEX REQUIRED FILE MARK USAGE If bit b2 in FILE MARK USAGE is set to ONE, signifying that file marks are to be used at regular intervals, the FILE MARK INTERVAL Field shall be present. Figure 17 shows an example of a Volume Header Field Table.

- 20 -

Field Name

FID

Mandatory

#808000

Yes

Resynchronization Pattern

OFFSET TO END

#01

Yes

Bytes from start of next Field to start of last Field

FORMAT NAME

#8052

No

The bytes sequence “SIDF”

FORMAT VERSION

#8062

Yes

Major, minor and subminor version number

SECTOR SIZE

#80800E

Yes

512, 1024, 2048, 4096, ... bytes

VOLUME SET TIME

#80F400

Yes

Timestamp of Volume Set creation

VOLUME TIME

#80F401

Yes

Timestamp of Volume creation

CHAR SPEC

#808040

No

Character type specification

REGISTERED IDENTIFIER

#808043

No

ID for extension to Standard, scope: this Volume

VOLUME SET LABEL

#808030

Yes

User-defined string, same for all Volumes in Set

VOLUME SET SEQUENCE

#80F100

Yes

Position of Volume within the Volume Set (1,2,3 ...)

ΩCHAR SPEC

#808040

No

1)

Character type specification

ΩVOLUME SET ALIAS

#808041

No

1)

User-defined string

VOLUME LABEL

#808027

No

Implementation use string

PARTITION NUMBER

#808012

No

Physical partition number of this Volume

VOLUME SIZE

#80F201

No

Capacity in sectors of the Volume (informative)

VOLUME INDEX REQUIRED

#80802F

Yes

Whether Volume Index is always at EOD

VOLUME INDEX LOCATION

#808042

No

Sector Number of last Volume Index on Volume

FILE MARK USAGE

#808020

Yes

Where file marks are recorded

FILE MARK INTERVAL

#808028

Cond.

Sectors between file marks recorded at regular intervals

VOLUME HEADER WRITE COUNT

#80F104

No

Number of times a Volume Header has been written to this physical partition.

AUTHENTICATION

#8002

No

Volume password

EXPIRATION TIME

#80F404

No

Timestamp of Volume expiration (informative)

DEVICE INFO

#808032

No

User-defined string

VOLUME HEADER

#808000

Yes

CRC value or empty

VOLUME HEADER

Data Description

Note to figure 17 1) These Fields form an Iterated Field Set. This set may be used to specify zero or more VOLUME SET ALIASes which may utilize differing Character Specifications. It is recommended that the use of VOLUME SET ALIASes be consistent across a Volume Set. Figure 17 - Example of a Volume Header Field Table

13.2

Volume Trailer Field Table In each Volume, the Volume Trailer Field Table is not mandatory. If present, it shall be recorded beginning at the start of the last Sector of the Volume. If the Volume Trailer Field Table does not end exactly at a Sector boundary, the unused part of its last sector shall be padded with Blank Space. The VOLUME TRAILER Field is the only mandatory Field of the Volume Trailer Field Table. Figure 18 shows an example of a Volume Trailer Field Table.

- 21 -

Field Name

FID

Mandatory

Data Description

VOLUME TRAILER

#808003

Yes

Resynchronization Pattern

CLOSE TIME

#80F402

No

Timestamp when Volume Trailer written

VOLUME TRAILER

#808003

Yes

CRC value or empty

Figure 18 - Example of a Volume Trailer Field Table

13.3

Blank Space Field Table In each Volume, the Blank Space Field Table is not mandatory. If present, it shall be used, space permitting: − after all Field Tables not contained in Buffers, to pad to the next sector boundary, and − at the end of Buffers. The BLANK SPACE Field and the OFFSET TO END Field are mandatory in the Blank Space Field Table. The only additional Field allowed in the Blank Space Field Table is the NULL Field. Figure 19 shows an example of a Blank Space Field Table. Field Name

FID

Mandatory

Data Description

BLANK SPACE

#808019

Yes

Resynchronization Pattern

OFFSET TO END

#01

Yes

Bytes from start of next Field to start of last Field

NULL Field

#00

Cond.

Empty

BLANK SPACE

#808019

Yes

CRC value or empty

Figure 19 - Example of a Blank Space Field Table

13.4

Buffer Header Field Table In each Volume, the Buffer Header Field Table is mandatory and shall be recorded at the start of each Buffer, it specifies characteristics of that Buffer. The following six Fields are mandatory in the Buffer Header Field Table: BUFFER HEADER OFFSET TO END BUFFER TYPE BUFFER SIZE BUFFER SEQUENCE UNUSED IN THIS BUFFER If the BUFFER TYPE Field is set to File, the Buffer Header Field Table shall contain the BUFFER ADDRESS Field. If the BUFFER TYPE Field is set to either File, or File Set (Sub)Index, the Buffer Header Field Table shall contain the FILE SET ID Field and the FILE SET TIME Field. The BUFFER SIZE shall be no larger than the length specified by BUFFER SIZE in the File Set Header. The BUFFER SEQUENCE Field shall be set to 1 for the first Buffer of the File Set following the File Set Header. The BUFFER SEQUENCE Field shall be increased by 1 for each subsequent Buffer of that File Set except in the following case: if the originating system deems that a Buffer cannot be recorded in its entirety before the end of the Volume, the Buffer shall be recorded in its entirety at the start of the Volume Set Data Space of the next Volume in the Volume Set (see 11.2). Nothing shall be recorded in a Volume Data Space before a Buffer that is repeated. If a File Set (Sub)Index exists for the File Set, the BUFFER SEQUENCE Field shall be further increased by 1 for each Buffer of the (Sub)Index. If a File Set Buffer follows a File Set Subindex, the BUFFER SEQUENCE Field shall be further increased by 1 for each File Set Buffer.

- 22 -

If the BUFFER TYPE Field is set to Volume (Sub)Index, it shall be associated only with any other Buffers containing data from the same Volume (Sub)Index, by satisfying the following requirements. − The BUFFER SEQUENCE Field shall be set to 1 for the first Buffer of the Volume (Sub)Index. Each subsequent Buffer of that Volume (Sub)Index shall contain a BUFFER SEQUENCE Field increased by 1. − The BUFFER ADDRESS, FILE SET ID, FILE SET TIME, FILE SET LABEL, SOURCE NAME TYPE, SOURCE NAME, SOURCE OPERATING SYSTEM, and SOURCE OPERATING SYSTEM VERSION Fields shall not be present. Figure 20 shows an example of a Buffer Header Field Table. Field Name

FID

Mandatory

Data Description

BUFFER HEADER

#05

Yes

Resynchronization Pattern

OFFSET TO END

#01

Yes

Bytes from start of next Field to start of last Field

BUFFER TYPE

#60

Yes

Buffer data type (File, File Set Index ...)

BUFFER SIZE

#06

Yes

Buffer size in bytes, incl. Buffer Header

BUFFER SEQUENCE

#07

Yes

Buffer Sequence number within File Set or Volume Index

BUFFER ADDRESS

#08

Cond.

Number of sectors counting from File Set (Sub) Header

BUFFER CRC

#8008

No

CRC, not including Buffer Header

UNUSED IN THIS BUFFER

#8000

Yes

Length of unused Blank Space

FILE SET ID

#8072

Cond.

ID of associated File Set and Buffer(s)

FILE SET TIME

#80F403

Cond.

Timestamp in Buffer of File Set

FILE SET LABEL

#808005

No

User-defined label of File Set

ORIGINATING SYSTEM SOFTWARE NAME

#808006

No

Originating application name string

ORIGINATING SYSTEM SOFTWARE TYPE

#808007

No

Originating application type string

ORIGINATING SYSTEM SOFTWARE VERSION

#808008

No

Originating application version string

SOURCE NAME TYPE

#8009

No

Source naming convention type

SOURCE NAME

#02

No

Source name string

SOURCE OPERATING SYSTEM

#03

No

Source operating system string

SOURCE OPERATING SYSTEM VERSION

#04

No

Source operating system version string

VOLUME SET TIME

#80F400

No

Timestamp of Volume Set creation

VOLUME SET LABEL

#808030

No

User-defined string

VOLUME SET SEQUENCE

#80F100

No

Volume position within Volume Set

#05

Yes

CRC value or empty

BUFFER HEADER

Figure 20 - Example of a Buffer Header Field Table

- 23 -

13.5

Volume Index Field Table In each Volume, the Volume Index Field Table is not mandatory. If present, it shall be recorded within the Volume Set Data Space immediately after a File Set Postamble. A Volume Index stores information about File Sets previously recorded in the Volume or Volume Set. The VOLUME INDEX and NUMBER OF FILE SETS Fields are mandatory in Volume Index Field Tables. If NUMBER OF FILE SETS is greater than 0, the following eleven additional Fields are also mandatory in the Volume Index Field Table for each File Set: FILE SET ID FILE SET TIME FILE SET LABEL SOURCE NAME TYPE SOURCE NAME SOURCE OPERATING SYSTEM SOURCE OPERATING SYSTEM VERSION FSH VOLUME SET SEQUENCE FILE SET HEADER LOCATION FST VOLUME SET SEQUENCE FILE SET TRAILER LOCATION A Volume Index is optional. If a Volume Index Field Table is written it shall conform to the following requirements. − A Volume Index Field Table shall be contained in one or more Buffers, which are referred to below as the Volume Index Buffer(s). If the Volume Index Field Table is too large to fit into a single Buffer, it shall be continued into subsequent Buffer(s) which shall be recorded contiguously within the Volume Set Data Space. − If VOLUME INDEX REQUIRED is set to a bit pattern other than all ZEROs in the Volume Header Field Table, and the Volume is not full, a Volume Index Buffer shall be the last information recorded in the Volume. If VOLUME INDEX REQUIRED is set to all ZEROs, Volume Indices may still be recorded in the location(s) specified above. − A Volume Index Field Table shall reference all File Sets wholly or partially contained previously in the Volume, and may reference any File Set contained previously in the Volume Set. − A Volume Index Field Table shall contain all of the File Set-specific information contained in all previous Volume Indices of the Volume. − The Fields of a Volume Index Field Table shall be associated with either the Volume Index Field Table in general, or a specific File Set. Fields recorded before the first instance of the FILE SET ID Field shall be associated with the Volume Index Field Table in general. Fields in the Table, except the last Field, recorded after the n-th instance of the FILE SET ID Field, shall be associated with the n-th File Set referenced by the Volume Index Field Table. − The NUMBER OF FILE SETS Field shall specify the number of times that the Iterated Field Set is repeated. An Iteration shall include all Fields starting with the FILE SET ID Field and ending immediately before another occurrence of the FILE SET ID Field or the final VOLUME INDEX Field. All Fields, including non-required Fields, within the nth Iteration shall reference the File Set specified by the nth occurrence of the FILE SET ID Field. − File Set-specific Iterated Field Sets shall be recorded in the order that their File Set Trailers are recorded within the Volume Set. Figure 21 shows an example of a Volume Index Field Table.

- 24 -

Field Name

FID

Mandatory

VOLUME INDEX

#808011

Yes

Resynchronization Pattern

OFFSET TO END

#01

No

Bytes from start of next Field to start of last Field

#808015

Yes

Number of File Set entries iterated below

NUMBER OF FILE SETS

Data Description

FILE SET ID

#8072

Cond. 1)

File Set 4-byte ID

FILE SET TIME

#80F403

Cond.

File Set Timestamp

FILE SET LABEL

#808005

Cond.

File Set user-defined label string

#8009

Cond.

Source naming type

SOURCE NAME

#02

Cond.

Source name string

SOURCE OPERATING SYSTEM

#03

Cond.

Source operating system string

SOURCE OPERATING SYSTEM VERSION

#04

Cond.

Source operating system version string

SOURCE NAME TYPE

FILE SET ABORTED

#808039

No

Whether File Set has been aborted prematurely

RESOURCE NAME SPACE

#808038

No

Enumeration, see NAME SPACE

RESOURCE NAME

#808023

No

Root entity stored in the File Set

RESOURCE TYPE

#808037

No

Enumeration

FSH VOLUME SET SEQUENCE

#80803A

Cond.

Volume Set sequence number of File Set Header

FSH PARTITION NUMBER

#80803B

No

Physical partition number of File Set Header

FILE SET HEADER LOCATION

#80803C

Cond.

Sector Number of File Set Header

FST VOLUME SET SEQUENCE

#80803D

Cond.

Volume Set sequence number of File Set Trailer

FST PARTITION NUMBER

#80803E

No

Physical partition number of File Set Trailer

FILE SET TRAILER LOCATION

#80803F

Cond.

Sector Number of File Set Trailer

#808011

Yes

CRC value or empty

VOLUME INDEX Note to figure 21

1) This Field shall be recorded first within the Iterated Field Set. Figure 21 - Example of a Volume Index Field Table

13.6

Volume Subindex Field Table In each Volume, the Volume Subindex Field Table is not mandatory. If present, it shall be recorded only within a Volume Postamble. A Volume Subindex Field Table shall be contained in Buffers, and recorded within the Buffer Data Space. The Volume Index Buffer(s) shall immediately precede the Volume Terminator. The requirements for the recording of the Volume Subindex Field Table shall be the same as for the Volume Index Field Table, except that the first and last Field shall be the VOLUME SUBINDEX Field (FID = #808031) instead of the VOLUME INDEX Field.

13.7

File Set Header Field Table In each Volume, the File Set header Field Table is not mandatory, unless the File Set starts within this Volume. If present, it shall be recorded at the start of the first Sector of the File Set. If the File Set Header Field Table does not end exactly at a Sector boundary, the unused part of its last Sector shall be padded with Blank Space.

- 25 -

The following eleven Fields are mandatory in the File Set Header Field Table: FILE SET HEADER OFFSET TO END FILE SET ID FILE SET TIME FILE SET LABEL FILE SET INDEX PRESENT BUFFER SIZE SOURCE NAME TYPE SOURCE NAME SOURCE OPERATING SYSTEM SOURCE OPERATING SYSTEM VERSION SOURCE NAME TYPE shall specify the naming convention used for all subsequent instances of SOURCE NAME and SOURCE ALIAS in this File Set Header Field Table, unless and until another instance of SOURCE NAME TYPE is recorded later in the File Set Header. SOURCE ALIAS, and SOURCE NAME TYPE if recorded immediately before SOURCE ALIAS, shall form an Iterated Field Set. SOURCE NAME TYPE may be omitted if its data is the same as that of the previous instance of SOURCE NAME TYPE in this File Set Header. Figure 23 shows an example of a File Set Header Field Table.

- 26 -

Field Name

FID

Mandatory

#808004

Yes

Resynchronization Pattern

#01

Yes

Bytes from start of next Field to start of last Field

PREV OBJECT LOCATION

#80802A

No

Sector Number of the previous FS Header or FS Trailer, if in Volume

NEXT OBJECT LOCATION

#808029

No

Sector Number of the next FS Header or FS Trailer, if in Volume

CHAR SPEC

#808040

No

Character Specification default for File Set

FILE SET ID

#8072

Yes

File Set 4-byte ID

FILE SET TIME

#80F403

Yes

File Set Timestamp

FILE SET LABEL

#808005

Yes

User-defined File Set label string

FILE SET INDEX PRESENT

#80802D

Yes

Whether the File Set Index is recorded in this File

REGISTERED IDENTIFIER

#808043

No

ID for extension to Standard, scope: this File Set only

#06

Yes

Maximum Buffer size permissible in the File Set

#8009

Yes

Source naming convention type

SOURCE NAME

#02

Yes

Source name string

SOURCE OPERATING SYSTEM

#03

Yes

Source operating system string

SOURCE OPERATING SYSTEM VERSION

#04

Yes

Source operating system version string

Cond. 1)

Source alias naming convention type

#808036

No

Alternate name for Source

RESOURCE NAME SPACE

#808038

No

Enumeration, see NAME SPACE in annex C

RESOURCE NAME

#808023

No

Root File stored in the File Set

RESOURCE TYPE

#808037

No

Enumeration

ORIGINATING SYSTEM SOFTWARE NAME

#808006

No

Originating application name string

ORIGINATING SYSTEM SOFTWARE TYPE

#808007

No

Originating application type string

ORIGINATING SYSTEM SOFTWARE VERSION

#808008

No

Originating application version string

FORMAT VERSION

#8062

No

Major, minor, subminor version: 4 bytes

AUTHENTICATION

#8002

No

File Set Password

FILE SET COMMENT

#80802B

No

User-defined string

FILE SET HEADER

#808004

Yes

CRC value or empty

FILE SET HEADER OFFSET TO END

BUFFER SIZE SOURCE NAME TYPE

SOURCE NAME TYPE SOURCE ALIAS

#8009

1)

Data Description

Note to figure 22 1) These Fields form an Iterated Field Set. SOURCE NAME TYPE is not required unless its data is different from a previous instance in this File Set Header. Zero or more iterations shall be recorded, based on the number of SOURCE ALIASes to write. Figure 22 - Example of a File Set Header Field Table

- 27 -

13.8

File Set Continuation Header Field Table In each Volume, the File Set Continuation Header Field Table is not mandatory, unless the File Set spans from the previous Volume. If present, it shall be recorded only within the Volume Preamble, after the Volume Header Field Table. If the File Set Continuation Header Field Table does not end exactly at a Sector boundary, the unused part of its last Sector shall be padded with Blank Space. The requirements for the recording of the File Set Continuation Header Field Table shall be the same as for the File Set Header Field Table, except that the first and last Field shall be the FILE SET CONTINUATION HEADER Field (FID = #808035), instead of the FILE SET HEADER Field.

13.9

File Set Trailer Field Table In each Volume, the File Set Trailer Field Table is not mandatory, unless the File Set terminates within this Volume. If present, it shall be recorded after the last Buffer containing the File Set File data. The File Set Trailer Field Table shall begin on a Sector Boundary. If the File Set Header Field Table does not end exactly at a Sector boundary, the unused part of its last Sector shall be padded with Blank Space. The following nine Fields are mandatory in the File Set Trailer Field Table: FILE SET TRAILER OFFSET TO END FILE SET ID FILE SET TIME FILE SET LABEL SOURCE NAME TYPE SOURCE NAME SOURCE OPERATING SYSTEM SOURCE OPERATING SYSTEM VERSION Figure 23 shows an example of a File Set Trailer Field Table.

- 28 -

Field Name

FID

Mandatory

#808009

Yes

Resynchronization Pattern

#01

Yes

Bytes from start of next Field to start of last Field

PREV OBJECT LOCATION

#80802A

No

Sector Number of the previous FS Header or FS Trailer, if in Volume

NEXT OBJECT LOCATION

#808029

No

Sector Number of the next FS Header or FS Trailer, if in Volume

FILE SET ABORTED

#808039

No

Whether the File Set is aborted

FILE SET ID

#8072

Yes

File Set 4-byte ID

FILE SET TIME

#80F403

Yes

File Set Timestamp

FILE SET LABEL

#808005

Yes

User-defined File Set label string

#8009

Yes

Source naming convention type

SOURCE NAME

#02

Yes

Source name string

SOURCE OPERATING SYSTEM

#03

Yes

Source operating system string

SOURCE OPERATING SYSTEM VERSION

#04

Yes

Source operating system version string

RESOURCE NAME SPACE

#808038

No

Enumeration, see NAME SPACE in annex C

RESOURCE NAME

#808023

No

Root File stored in File Set

RESOURCE TYPE

#808037

No

Enumeration

ORIGINATING SYSTEM SOFTWARE NAME

#808006

No

Originating application name string

ORIGINATING SYSTEM SOFTWARE TYPE

#808007

No

Originating application type string

ORIGINATING SYSTEM SOFTWARE VERSION

#808008

No

Originating application version string

FILE SET TRAILER

#808009

Yes

CRC value or empty

FILE SET TRAILER OFFSET TO END

SOURCE NAME TYPE

Data Description

Figure 23 - Example of a File Set Trailer Field Table

13.10

File Set Index Field Table In each Volume, the File Set Index Field Table is not mandatory. If present for a given File Set, it is recorded in the File Set Postamble, and its presence shall be indicated by the FILE SET INDEX PRESENT Field in the File Set Header Field Table. The following ten Fields are mandatory in the File Set Index Field Table: FILE SET INDEX FILE SET ID FILE SET TIME FILE SET LABEL FILE SET INDEX FIELDS SOURCE NAME TYPE SOURCE NAME SOURCE OPERATING SYSTEM SOURCE OPERATING SYSTEM VERSION NUMBER OF FILES If NUMBER OF FILES contains a value greater than 0, the following seven additional Fields are also mandatory in the File Set Index Field Table:

- 29 -

VOLUME SET SEQUENCE NUMBER BUFFER ADDRESS BUFFER OFFSET PARENT PATH FULLY QUALIFIED NAME SPACE PATH NAME The File Set Index lists every File contained in the File Set, in the order they are recorded. Each File name(s) and location is listed in a schema of four nested levels of Iterated Field Sets (IFS). The location of each File is determined by its VOLUME SET SEQUENCE, BUFFER ADDRESS, and BUFFER OFFSET. Since Volume information, and to a lesser extent Buffer address information, may be highly redundant among the Files, the following scheme shall be used: The first VOLUME SET SEQUENCE shall be recorded (IFS 1) only once, followed by Buffer entries (IFS 2) for each Buffer of that Volume which contains the start of a File. This shall be repeated for all Volumes which contain the start of a File. The entry for each Buffer shall begin with its BUFFER ADDRESS (address of the first Sector of the Buffer), and contains a sub-entry (IFS 3) for each File that starts in that Buffer. The sub-entry for each File shall begin with the BUFFER OFFSET (byte offset from the start of the Buffer to the File Header), and contains sub-sub-entries (IFS 4) for Name Spaces supported by the File. Each sub-sub-entry shall include the Name Space used, and the File name as expressed in terms of that Name Space. The only sub-sub-entry that is mandatory is that for the Name Space under which the File was created; this sub-sub-entry shall be listed first, those for other namepsaces of the File may follow. If a File Set Index Field Table is written, it shall conform to the following requirements: − The File Set Index Field Table shall be recorded within Buffer(s). When a File Set Index Field Table overflows a Buffer, it shall continue as an uninterrupted Byte Sequence in the next Buffer immediately after the Buffer Header. − The File Set Index Field Table shall be recorded beginning in the Sector immediately following the File Set Trailer within the Volume Set Data Space. − The File Set Index Field Table shall list every File of the File Set, in the order they were recorded. − The File Set Index Field Table listing shall indicate the logical address of each File as follows: the VOLUME SET SEQUENCE Field shall be recorded for each Volume of the File Set in which a File Header occurs. Before a different VOLUME SET SEQUENCE Field may be recorded, the BUFFER ADDRESS of each Buffer in the Volume that contains one or more File Headers shall be recorded. Before a different BUFFER ADDRESS can be recorded, the BUFFER OFFSET for each File with a File Header beginning in that Buffer shall be recorded. Before a different BUFFER OFFSET can be recorded, the NAME SPACE and PATH NAME information of the File at that offset shall be recorded. − Fields recorded after VOLUME SET SEQUENCE and before the next instance of BUFFER ADDRESS shall be considered to be associated with the Volume specified by that VOLUME SET SEQUENCE. − Fields recorded after BUFFER ADDRESS and before the next instance of BUFFER OFFSET shall be considered to be associated with the Buffer specified by that BUFFER ADDRESS. − The name information associated with each file shall conform to the following requirements: The PATH FULLY QUALIFIED Field shall be recorded before the Name Space entries, and shall not be recorded again for this File. It shall be followed by one or more Name Space entries. Any Fields pertinent to the File in general, and not specific to one of the Name Spaces of the File, shall be recorded after the BUFFER OFFSET and before PATH FULLY QUALIFIED for this File. A Name Space entry shall begin with NAME SPACE, and end with PATH NAME. Any information between these two Fields shall pertain to this Name Space entry. The NAME SPACE used to create the Source entity (for example, file or Source directory) the information of which is stored in this File shall be the Name Space specified by the first Name Space entry. − For each File, if PARENT is not set to all ZEROs, PATH FULLY QUALIFIED shall not be set to all ZEROs. If PARENT is set to all ZEROs, PATH FULLY QUALIFIED may be set to all ZEROs or not. If PATH FULLY QUALIFIED is not set to all ZEROs, each PATH NAME shall contain, in conformance with its associated

- 30 -

NAME SPACE, the entire path of the Source entity associated with this File. This path information shall not include SOURCE NAME. If PATH FULLY QUALIFIED is set to all ZEROs, each PATH NAME shall contain, in conformance with its associated NAME SPACE, only the terminal name (i.e. relative path) of the Source entity associated with this File, and the complete path shall be considered to be the path of the most immediately preceding File that had PARENT not set to all ZEROs, appended with terminal (i.e. not fully qualified) name of the File. Figure 24 shows an example of a File Set Field Table. Field Name

FID

Mandatory

Data Description

FILE SET INDEX

#808010

Yes

Resynchronization Pattern

OFFSET TO END

#01

No

Bytes from start of next Field to start of last Field

FILE SET ID

#8072

Yes

File Set 4-byte ID

FILE SET TIME

#80F403

Yes

File Set Timestamp

FILE SET ABORTED

#808039

No

Whether recording of File Set is aborted

FILE SET LABEL

#808005

Yes

User-defined File Set label string

FILE SET INDEX FIELDS

#808034

Yes

List of FIDs used for each File Set entry

SOURCE NAME TYPE

#8009

Yes

Source naming convention type

SOURCE NAME

#02

Yes

Source name string

SOURCE OPERATING SYSTEM

#03

Yes

Source operating system string

SOURCE OPERATING SYSTEM VERSION

#04

Yes

Source operating system version string

TOTAL FILE SET SIZE

#808022

No

Total File Set size

NUMBER OF FILES

#808021

Yes

VOLUME SET SEQUENCE

#80F100

Cond.

1)

Volume position within Volume Set (1,2,..., n)

PARTITION NUMBER

#808012

No

1)

Physical partition number of specified Volume

#08

Cond.

2)

Sector Number of first Sector in Buffer

BUFFER OFFSET

#808014

Cond.

3)

Bytes from start of Buffer to File Header

PARENT

#81F0FD

Cond.

3)

Whether this File is a Source directory

FILE IS INVALID

#80F003

No

3)

Whether this File is valid as recorded

PATH FULLY QUALIFIED

#50

Cond.

3)

Whether path is complete or relative

NAME SPACE

#11

Cond.

4)

Name Space of PATH NAME immediately following

PATH NAME

#12

Cond.

4)

Path name expressed in current Name Space form

#808010

Yes

BUFFER ADDRESS

FILE SET INDEX

Number of Files in File Set

CRC value or empty

Figure 24 - Example of a File Set Index Field Table Notes to figure 24: 1) These Fields form the first Iterated Field Set IFS1. They are nested at the highest level of the four levels of IFSs of the File Set Index. Iterated Field Sets 2, 3 and 4 shall each be recorded one or more times between successive iterations of IFS 1. Iterated Field Set 1 is recorded only when the Volume number changes. 2) This Field forms the second Iterated Field Set IFS2. It is at the second of the four nested levels of IFSs of the File Set Index. IFS3 and IFS4 shall each be recorded one or more times before IFS2 is repeated. Additional Fields may be associated with a Buffer Address by recording them between the BUFFER ADDRESS Field for this Buffer and the next occurrence of the BUFFER OFFSET Field. 3) These Fields form the third Iterated Field Set IFS3. They are at the third of the four nested levels of IFSs of the File Set Index. IFS4 shall be recorded one or more times before IFS3 is repeated. Additional Fields may be

- 31 -

associated with a File by recording them between the BUFFER OFFSET and PATH FULLY QUALIFIED Fields for that File 4) These Fields form the fourth Iterated Field Set ISF4. They are at the lowest of the four nested levels of IFSs of the File Set Index. IFS4 shall be recorded one or more times before IFS3 is repeated. Additional Fields may be associated with a specific Name Space of a File by recording them between the NAME SPACE and PATH NAME Fields for that Name Space.

13.11

File Set Subindex Field Table A File Set Subindex Field Table is not mandatory. If present, it shall be recorded in the same manner as a File Set Index Field Table, with the following exceptions: − The first and last Fields shall be the FILE SET SUBINDEX Field (FID = #808033) instead of FILE SET INDEX. − The Buffer(s) containing the File Set Subindex shall have their Header BUFFER TYPE specify that a File Set Subindex is recorded within. − The File Set Subindex references only Files which were previously recorded, rather than an entire File Set. − The File Set Subindex shall be recorded only at the start of a Volume Postamble.

13.12

File Header Field Table A File Header Field Table shall be recorded within Buffer Data Space, immediately before the File Information Field Table for each Source file. The following three Fields are mandatory in the File Header Table: FILE HEADER FILE CHUNK SIZE FILE TYPE Figure 25 shows an example of a File Header Field Table. Field Name

FID

Required

Data Description

FILE HEADER

#09

Yes

Resynchronization Pattern

FILE CHUNK SIZE

#0B

Yes

Bytes of this File contained in this Buffer

FILE TYPE

#70

No

Type of File (e.g. Source directory, Source file)

#808043

No

ID for extension to Standard, scope: this File only

#09

Yes

CRC value or empty

REGISTERED IDENTIFIER FILE HEADER

Figure 25 - Example of a File Header Field Table

13.13

File Continuation Header Field Table A File Continuation Header Field Table shall be recorded within a Buffer, immediately after the Buffer Header Field Table. The following two Fields are mandatory in the File Continuation Header Field Tables: FILE CONTINUATION HEADER FILE CHUNK SIZE Figure 26 shows an example of a File Continuation Header Field Table. Field Name

FID

Required

#8001

Yes

Resynchronization Pattern

FILE CHUNK SIZE

#0B

Yes

Bytes of this File contained in this Buffer

FILE IS INVALID

#80F003

No

Whether the File is valid as recorded

#8001

Yes

CRC value or empty

FILE CONTINUATION HEADER

FILE CONTINUATION HEADER

Data Description

Figure 26 - Example of a File Continuation Header Field Table

- 32 -

13.14

File Information Field Table The File Information Field Table shall be recorded within Buffer Data Space, immediately after the File Header Field Table. The following five Fields are mandatory in File Information Field Table: FILE INFORMATION PARENT PATH FULLY QUALIFIED NAME SPACE PATH NAME Use of the PATH FULLY QUALIFIED Field, and all Fields in the Iterated Field Set beginning with NAME SPACE and ending with PATH NAME shall meet the relevant requirements of 13.10. Figure 27 shows an example of a File Information Field Table. Field Name

FID

Required

#813F

Yes

Resynchronization Pattern

#01

No

Bytes from start of next Field to start of last Field

ATTRIBUTES

#81F2FE

No

File attributes, see annex C

CREATOR NAME SPACE

#81F2FC

No

Name Space under which the Source file was created

DATA STREAM SIZE

#81F2FB

No

Size in bytes of the data stream

TOTAL STREAM SIZE

#81F2FA

No

Size of all streams, in 4096-byte blocks

NEEDS ARCHIVE

#16

No

Whether the Source file was modified since marked as archived

DELETED FLAG

#81F0FE

No

Whether the Source file was deleted

PARENT

#81F0FD

Yes

Whether the Source file is a Source directory

ACCESS TIME

#44

No

Timestamp when Source file was last accessed

CREATION TIME

#64

No

Timestamp when Source file was created

MODIFIED TIME

#74

No

Timestamp when Source file was last modified

ARCHIVE TIME

#54

No

Timestamp when Source file was last marked as archived

PATH FULLY QUALIFIED

#50

Yes

Whether path is complete or relative

NAME SPACE

#11

Yes

1)

File system naming convention

NAME POSITIONS

#27

No

1)

Beginning position of each path element in the associated PATH NAME Field

SEPARATOR POSITIONS

#28

No

1)

Beginning position of each path separator in the associated PATH NAME Field

PATH NAME

#12

Yes

1)

Source file name, in terms of current Name Space

#813F

Yes

FILE INFORMATION OFFSET TO END

FILE INFORMATION

Data Description

CRC value or empty

Note to figure 27 1) These Fields form an Iterated Field Set repeated for each File Name Space. The first iteration shall specify the Name Space that was used to create the File. Within each iteration, NAME SPACE shall be the first Field and PATH NAME shall be the last Field, and any Fields recorded between these two shall apply to that specific iteration. Figure 27 - Example of a File Information Field Table

- 33 -

13.15

File Data File Data shall be recorded as a series of Field Tables which describe the traits and contents of a single entity of the Source. The following four Field Tables shall be included within File Data: Header Field Table, Path Field Table, Characteristics Field Table and Trailer Field Table. The Header Field Table shall be the first, and the Trailer Field Table the last Field Table recorded in the File Data. Any Streams associated with the File shall be recorded after the Characteristics Field Table in the File Data. File Types, and the organization of Field Tables comprising the File Data are specified below for the following Source file system entities: Source volume, Source directory, Source file, and transaction set.

13.15.1

Path Field Table The Path Field Table shall be the second Field Table recorded in the File Data for Source volume, Source file and Source directory types of Files. The following four Fields are mandatory in the Path Field Table: PATH PATH FULLY QUALIFIED NAME SPACE PATH NAME Use of the PATH FULLY QUALIFIED Field, and all Fields in the Iterated Field Set beginning with NAME SPACE and ending with PATH NAME shall meet the relevant requirements of 13.14. Figure 28 shows an example of a Path Field Table. Field Name

FID

Required

Data Description

PATH

#10

Yes

Resynchronization Pattern

OFFSET TO END

#01

No

Bytes from start of next Field to start of last Field

PATH FULLY QUALIFIED

#50

Yes

Whether the following paths are complete or relative

NAME SPACE

#11

Yes

1)

File system naming conventions

NAME POSITIONS

#27

No

1)

Beginning position of each path element in the associate PATH NAME Field

SEPARATOR POSITIONS

#28

No

1)

Beginning position of each path separator in the associated PATH NAME Field

PATH NAME

#12

Yes

1)

File name, in terms of current Name Space

#10

Yes

PATH

CRC value, or empty

Note to figure 28 These Fields form an Iterated Field Set repeated for each File Name Space. The first iteration shall specify the Name Space that was used to create the File. Within each iteration, NAME SPACE shall be the first Field and PATH NAME shall be the last Field, and any Fields recorded between these two shall apply to that specific iteration. Figure 28 - Example of a Path Field Table 13.15.2

Characteristics Field Table The Characteristics Field Table shall be the third Field Table recorded in the File Data for Source volume, Source file and Source directory types of Files. The CHARACTERISTICS Field is the only mandatory Field of the Characteristics Field Table. Figure 29 shows an example of a Characteristics Field Table.

- 34 -

Field Name

FID

Required

Data Description

CHARACTERISTICS

#13

Yes

Resynchronization Pattern

OFFSET TO END

#01

No

Bytes from start of next Field to start of last Field

ACCESS TIME

#44

No

Timestamp when the Source file was last accessed

ARCHIVE TIME

#54

No

Timestamp when the Source file was last archived

#81EFE6

No

Source indicated data should not be compressed

#8116

No

Source indicated data should be compressed

CREATION TIME

#64

No

Timestamp when the Source file was created

SOURCE DIRECTORY

#14

No

Whether the Source file is a Source directory or a parent

DO NOT COMPRESS FILE

#8115

No

Source file owner indicated do not compress

EXECUTE ONLY

#813B

No

Whether the Source file marked execute only

HIDDEN

#15

No

Whether the Source file marked hidden

INDEXED

#81EFF8

No

Whether the Source file marked indexed

#813A

No

Whether copy, delete and/or rename allowed or inhibited

MODIFIED TIME

#74

No

Timestamp when the Source file was last modified

NEEDS ARCHIVE

#16

No

Whether the Source file data modified since archived

NEEDS ARCHIVE CHARACTERISTICS

#2D

No

Whether the Source file characteristics modified since archived

POSIX FILE MODE

#80F203

No

Source file Posix permissions and properties

POSIX FILEID

#80F210

No

Source file Posix node number

POSIX FILE SYSTEM ID

#80F20F

No

Source file Posix file system ID

POSIX GROUP ID

#80F204

No

Source file Posix group owner ID (Posix format)

POSIX NUMBER OF LINKS

#80F20D

No

Number of Source files linked to Source file's inode.

POSIX RDEVICE

#80F20E

No

Source file Posix raw device number

POSIX OWNER ID

#80F209

No

Source file Posix owner ID

#8136

No

Whether the Source file is marked purgable

#17

No

Whether the Source file is marked read only

REMOTE DATA INHIBIT

#81EFE8

No

Whether the Source file user indicated file is not to be migrated off the Source.

REMOTE DATA ACCESS

#81EFE7

No

Whether the Source indicated file was migrated off the Source.

SHAREABLE

#18

No

Whether the Source file is marked shareable

SYSTEM

#19

No

Whether the Source file is marked system

TRANSACTIONAL

#8135

No

Whether the Source file is marked transactional

CHARACTERISTICS

#13

Yes

CRC value or empty

CANT COMPRESS DATA COMPRESS FILE IMMEDIATE

INHIBITIONS

PURGE READ ONLY

Figure 29 - Example of a Characteristics Field Table 13.15.3

Source volume File Data Source volume File Data shall consist of at least the following Field Tables, recorded in the following order:

- 35 -

− − − −

Source volume Header Field Table Path Field Table Characteristics Field Table Source volume Trailer Field Table

If additional Field Tables are to be associated with the Source volume File Data, they shall be recorded after the Characteristics Field Table and before the Source volume Trailer Field Table. 13.15.3.1

Source volume Header Field Table The Source volume Header Field Table shall be the first Field Table recorded in the Source volume File Data. The SOURCE VOLUME HEADER Field is the only mandatory Field in the Source volume Header Table. Figure 30 shows an example of a Source volume Header Field Table.

Field Name

FID

Required

Data Description

SOURCE VOLUME HEADER

#81EFFC

Yes

Resynchronization Pattern

SOURCE VOLUME HEADER

#81EFFC

Yes

CRC value or empty

Figure 30 - Example of a Source volume Header Field Table 13.15.3.2

Source volume Trailer Field Table The Source volume Trailer Field Table shall be the last Field Table recorded in the Source volume File Data. The SOURCE VOLUME TRAILER Field is the only mandatory Field in the Source volumeTrailer Field Table. Figure 31 shows an example of a Source volume Trailer Field Table.

Field Name

FID

Required

Data Description

SOURCE VOLUME TRAILER

#81EFFB

Yes

Resynchronization Pattern

SOURCE VOLUME TRAILER

#81EFFB

Yes

CRC value or empty

Figure 31 - Example of a Source volume Trailer Field Table 13.15.4

Source directory File Data Source directory File Data shall consist of at least the following Field Tables, recorded in the following order: − − − −

Source directory Header Field Table Path Field Table Characteristics Field Table Source directory Trailer Field Table

If additional Field Tables are to be associated with the Source directory File Data, they shall be recorded after the Characteristics Field Table and before the Source directory Trailer Field Table. 13.15.4.1

Source directory Header Field Table The Source directory Header Field Table shall be the first Field Table recorded in the Source directory File Data. The Field SOURCE DIRECTORY HEADER Field is the only mandatory Field in Source directory Field Table. Figure 32 shows an example of a Source directory Header Field Table.

- 36 -

Field Name

FID

Required

Data Description

SOURCE DIRECTORY HEADER

#0C

Yes

Resynchronization Pattern

EXCLUSION OPTIONS

#29

No

Whether streams or attributes were excluded

SOURCE DIRECTORY HEADER

#0C

Yes

CRC value or empty

Figure 32 - Example of a Source directory Header Field Table 13.15.4.2

Source directory Trailer Field Table The Source directory Trailer Field Table shall be the last Field Table recorded in the Source directory File Data. The SOURCE DIRECTORY TRAILER Field is the only mandatory Field in the Source directory Trailer Field Table. Figure 33 shows an example of a Source directory Trailer Field Table.

Field Name

FID

Required

Data Description

SOURCE DIRECTORY TRAILER

#0D

Yes

Resynchronization Pattern

SOURCE DIRECTORY TRAILER

#0D

Yes

CRC value or empty

Figure 33 - Example of a Source directory Trailer Field Table 13.15.5

Source file File data Source file File data shall consist of at least the following Field Tables, recorded in the following order: − − − −

Source file Header Field Table Path Field Table Characteristics Field Table Source file Trailer Field Table

If additional Field Tables, such as Stream(s), are to be associated with the File data, they shall be recorded after the Characteristics Field Table and before the File Trailer Field Table. 13.15.5.1

Source file Header Field Table The Source file Header Field Table shall be the first Field Table recorded in the Source file File data.The SOURCE FILE HEADER Field is the only mandatory Field in Source file Header Field Tables. In addition an Iterated Field Set shall be recorded for each Stream type of the File the Stream of which is not recorded in clear data Stream format (see 13.15.7.3). In each Iterated Field Set, STREAM TYPE shall be the first and STREAM FORMAT the second Field recorded. If STREAM FORMAT indicates that the Stream is compressed, the Iterated Field Set shall contain the STREAM COMPRESS TYPE Field. Figure 34 shows an example of a Source file Header Field Table. Field Name

FID

Required

Data Description

SOURCE FILE HEADER

#0E

Yes

Resynchronization Pattern

EXCLUSION OPTIONS

#29

No

Which, if any, Streams or attributes were excluded

STREAM TYPE

#2B

Cond.

1) Type of stream (e.g. data, resource, security ...)

STREAM FORMAT

#2C

Cond.

1) Physical Stream format (e.g. compressed, sparse ...)

#8005

Cond.

1) Compression algorithm used for the stream

#0E

Yes

STREAM COMPRESS TYPE SOURCE FILE HEADER

CRC value or empty

Note to figure 34. 1) These Fields form an Iterated Field Set. Figure 34 - Example of a Source file Header Field Table

- 37 -

13.15.5.2

Source file Trailer Field Table The Source file Trailer Field Table shall be the last Field Table recorded in the Source file File data. The SOURCE FILE TRAILER is the only mandatory Field in Source file Trailer Field Tables. Figure 35 shows an example of a Source file Trailer Field Table.

Field Name

FID

Required

Data Description

SOURCE FILE TRAILER

#0F

Yes

Resynchronization Pattern

SOURCE FILE TRAILER

#0F

Yes

CRC value or empty

Figure 35 - Example of a Source file Trailer Field Table 13.15.6

Transaction Set File data A transaction set is a group of entities from the Source, such as Source files, that must be manipulated as a group. Transaction Set File data shall begin with a Transaction Set Header Field Table, and end with a Transaction Set Trailer Field Table. Between these, for each of the entities of the transaction set the following group of Field Table shall be recorded in the order specified. − Transaction Set Header The following Field Tables, up to, and not including, the Transaction Set Trailer, represent an iterated set of Field Tables. They shall be recorded once for each entity of the Transaction Set. Such an entity shall have a unique path name within the Transaction Set; otherwise the entity is defined by the originating system. − − − − −

Header Field Table appropriate for the entity type (for example, a Source file Header) Path Field Table Characteristics Field Table Trailer Field Table of type matching the Header for this entity. Transaction Set Trailer Field Table

If additional Field Tables, such as a Streams Field Table, are to be associated with a transaction set entity, they shall be recorded after the Characteristics Field Table and before the Trailer Field Table for that entity. If additional Field Tables are to be associated with the Transaction Set File data, they shall be recorded after the Trailer Field Table for the last entity and before the Transaction Set Trailer Field Table. 13.15.6.1

Transaction Set Header Field Table The Transaction Set Header Field Table shall be the first Field Table recorded in the Transaction Set File data. The TRANSACTION SET HEADER Field is the only mandatory Field in Transaction Set header Field Tables. Figure 36 shows an example of a Transaction Set header Field Table. Field Name

FID

Required

Data Description

TRANSACTION SET HEADER

#81EFF3

Yes

Resynchronization Pattern

TRANSACTION SET TYPE

#81EFEE

No

Transaction Set type, as defined by Source

TRANSACTION SET NAME

#81EFEF

No

Transaction Set name, as defined by Source

TRANSACTION SET HEADER

#81EFF3

Yes

CRC value or empty

Figure 36 - Example of Transaction Set Header Field Table 13.15.6.2

Transaction Set Trailer Field Table The Transaction Set Trailer Field Table shall be the last Field Table recorded in the Transaction Set File data. The TRANSACTION SET TRAILER Field is the only mandatory Field in the Transaction Set Trailer Field Table.

- 38 -

Figure 37 shows an example of a Transaction Set Trailer Field Table. Field Name

FID

Required

Data Description

TRANSACTION SET TRAILER

#81EFF2

Yes

Resynchronization Pattern

TRANSACTION SET TRAILER

#81EFF2

Yes

CRC value or empty

Figure 37 - Example of Transaction Set Trailer Field Table 13.15.7

Streams A Stream is a set of logically related bytes in a File. Streams shall be recorded after the Characteristics Field Table, and before the associated trailer Field Table for their File. A Stream consists of a Stream Header Field Table, followed by the Stream data, followed by a Stream Trailer Field Table.

13.15.7.1

Stream Header Field Table The following four Fields are mandatory in the Stream Header Field Table: STREAM HEADER STREAM TYPE STREAM FORMAT STREAM SIZE In addition the Stream Header Field Table shall meet to the following requirements: − If STREAM FORMAT indicates that the Stream is compressed, STREAM COMPRESSED TYPE shall be recorded. − If STREAM FORMAT indicates that the Stream is compressed, sparse or delta block, STREAM EXPANDED SIZE shall be recorded. − If STREAM FORMAT indicates that the Stream is sparse or delta block format, BLOCK SIZE and BLOCK MAP shall be recorded. − If STREAM FORMAT indicates that the Stream is delta block or delta extent format, DELTA BASE TIME shall be recorded. − If STREAM FORMAT indicates that the Stream is delta extent format, DELTA EXTENT OFFSET and DELTA EXTENT OLD SIZE shall be recorded. − If STREAM TYPE indicates that the Stream contains extended attributes, EA KEY shall be recorded. − The STREAM SIZE value shall be the number of bytes of the Stream as recorded on the Volume. − If multiple Streams of the same STREAM TYPE are recorded in a File, each such Stream Header shall contain STREAM TYPE SEQUENCE. The STREAM TYPE SEQUENCEs for a File Streams sharing the same STREAM TYPE shall form an ascending ordinal sequence (1, 2, 3, ..., n) matching the order in which those Streams are recorded. Figure 38 shows an example of a Stream Header Field Table.

- 39 -

Field Name

FID

Required

Data Description

STREAM HEADER

#1D

Yes

Resynchronization Pattern

OFFSET TO END

#01

No

Bytes from start of next Field to start of last Field

STREAM TYPE

#2B

Yes

Type of Stream (e.g. data, resource, security ...)

STREAM FORMAT

#2C

Yes

Physical Stream format (e.g. compressed, sparse ...)

STREAM TYPE SEQUENCE

#61

Cond.

Sequence number of the Stream for a given Stream type

STREAM SIZE

#20

Yes

Bytes in Stream as recorded

STREAM COMPRESS TYPE

#8005

Cond.

Compression algorithm used for the Stream

STREAM EXPANDED SIZE

#8006

Cond.

Logical bytes in Stream (e.g. uncompressed)

BLOCK SIZE

#24

Cond.

Block size of block map, in bytes

BLOCK MAP

#25

Cond.

Which blocks are used in Stream

EA KEY

#1B

Cond.

The extended attribute key value

DELTA BASE TIME

#8044

Cond.

Timestamp of base of Source delta

DELTA EXTENT OFFSET

#800A

Cond.

Stream byte offset to start of delta extent

DELTA EXTENT OLD SIZE

#800B

Cond.

Size of area replaced by delta extent

#1D

Yes

CRC value or empty

STREAM HEADER

Figure 38 - Example of a Stream Header Field Table 13.15.7.2

Stream Trailer Field Table The STREAM TRAILER Field is the only mandatory Field in the Stream Trailer Field Table. Figure 39 shows an example of a Stream Trailer Field Table.

Field Name

FID

Required

Data Description

STREAM TRAILER

#1E

Yes

Resynchronization Pattern

STREAM IS INVALID

#21

No

Whether the stream is deemed invalid by the originating system

STREAM CRC

#22

No

CRC of the stream as recorded

STREAM TRAILER

#1E

Yes

CRC value or empty

Figure 39 - Example of Stream Trailer Field Table 13.15.7.3

Stream format Stream format is the physical representation in which a Stream is recorded. Stream format is specified by the STREAM FORMAT Field in the Stream Header Field Table. This ECMA Standard specifies the following five Stream formats: − − − − −

clear data sparse compressed delta block delta extent

If multiple Streams with the same STREAM TYPE are recorded for a File, these Streams must all be recorded using the same Stream format. Sparse, delta block and delta extent Stream formats shall record a subset of the data of the corresponding stream of the Source, as specified below. Delta block and delta extent Stream formats represent changes that

- 40 -

have occurred to a Source Stream specified by DELTA BASE TIME. Changes represented are relative to the state of the Source Stream at the DELTA BASE TIME, so only blocks or extents that have been changed are recorded. NOTE Delta block and delta extent Stream may not be fully usable by the receiving system unless an image of the Source Stream at the DELTA BASE TIME is available. 13.15.7.4

Block-mapped Stream formats Sparse and delta block Stream formats use a block mapping scheme to represent the Stream. A block-mapped Stream shall specify its EXPANDED STREAM SIZE, BLOCK SIZE, and BLOCK MAP in its Stream Header. The term expanded stream image shall be used to represent a sequence of bytes of the size indicated by EXPANDED STREAM SIZE, containing the data explicitly or implicitly represented by the Source Stream (for example, the uncompressed image of a compressed Source Stream). This expanded Stream image is handled as a series of equally sized, contiguous blocks of the size indicated by BLOCK SIZE. The BLOCK MAP shall be a bit map indicating which blocks of the expanded Stream image are recorded as this Stream and which blocks are not recorded. The bits in the bit map shall have an ordered one-to-one correspondence to the blocks of the expanded Stream image. The bit map shall have the first bit recorded reflect the presence of the first block of the expanded Stream image, second bit describe the second block, and so forth. A bit shall be set to ONE if its corresponding block of the expanded Stream image is recorded. A bit shall be set to ZERO if its corresponding block of the expanded Stream image is not recorded.

13.15.7.4.1

Clear data Stream format The clear data Stream format shall represent the Stream data as a sequence of bytes, without data compression performed by the Source or the originating system application, such that the number of bytes recorded, and their contents, are the same as is available to a user of the Source file.

13.15.7.4.2

Compressed Stream format The compressed Stream format shall represent Stream data as a sequence of bytes submitted to compression performed or maintained by the Source or the originating system application. The type of data compression used shall be indicated by the STREAM COMPRESS TYPE Field in the Stream Header.

13.15.7.4.3

Sparse Stream format Stream data using the sparse Stream format shall be recorded as a block-mapped Stream format. Blocks of the expanded stream image that are not recorded should be considered to contain only NULL bytes.

13.15.7.4.4

Delta block Stream format Stream data using the delta block Stream format shall be recorded as a block-mapped Stream format. Blocks of the expanded stream image that are not recorded should be considered unchanged from their predelta value (i.e. unchanged from the state of the Source file Stream as it existed at the Source at the DELTA BASE TIME recorded in the Stream Header).

13.15.7.4.5

Delta extent Stream format An extent is defined as a contiguous set of bytes within a Stream. The original stream is defined as the Source stream as it existed at the Source at the DELTA BASE TIME specified in the Stream Header. Per agreement between the originating and receiving systems, the delta extent Stream replaces a specified extent within the original stream. This latter extent shall be referred to as the replaced extent. The expanded stream image represented by the delta stream shall be defined as the concatenation of the part of the original stream before the replaced extent, the delta extent, and the part of the original stream after the replaced extent. DELTA EXTENT OFFSET shall indicate the byte offset from the start of the original Stream to the start of the replaced extent. DELTA EXTENT SIZE shall indicate the size of the replaced extent. STREAM SIZE shall indicate the size of the delta extent, so that the delta extent may be of different size than the replaced extent. No combination of delta extent and/or delta block Streams shall be recorded such that the resulting Stream is ambiguous. If a Stream has a greater DELTA BASE TIME than a previous Stream sequence, the deltas are based on the Source Stream with the previous sequences changes applied.

- 41 -

13.15.7.5

Stream sequence STREAM SEQUENCE shall be recorded in the Stream Header of all Streams of a File that are of the same STREAM TYPE as another Stream of the same File. Streams of the same type within a File shall be sequenced ordinally (1, 2, 3, ..., n) in the order they are recorded on the media. STREAM SEQUENCE shall increment independently for different STREAM TYPE values within a File.

13.16

Levels of partition interchange Two levels of partition interchange are specified.

13.16.1

Level 1 of partition interchange At level 1, the following special restrictions shall apply: − A File Set shall not be interleaved. − For media which support file marks, the Volume Header file mark usage value shall be 3, indicating that file marks shall be written before all File Set Trailers, and before all File Set Headers recorded after the first Buffer of a Volume. − Character use shall be limited to the CS4 character set (see 6.8). − A File Set shall not span physical partitions or media. − The Buffer Size shall not be greater than 65 536 bytes. − The Buffer Size shall be a fixed size per File Set, and that size shall match the value recorded in the File Set Header. − Numeric data values shall be less than 232. − Volume Headers and Trailers, and File Set (Continuation) Headers and Trailers shall not be larger than the Sector Size specified in the Volume Header. − The Volume Header shall be recorded in the first user-accessible physical sector of the partition.

13.16.2

Level 2 of partition interchange At level 2, no restrictions shall apply.

14

Requirements for systems

14.1

Requirements for the description of systems This ECMA Standard specifies that certain information shall be communicated between a primary file system and/or its associated application, and a medium.

14.2 14.2.1

Requirements for an originating system General The originating system shall be capable of recording primary file system information as a Volume Set according to the normative specifications of this ECMA Standard in conformance with one of the partition interchange levels specified in 13.16.

14.2.2

Mandatory access by user The originating system shall obtain from the requesting application the information that constitutes the Source files to be recorded on the Volume Set.

14.2.3

Optional access by user The originating system shall permit the requesting application to supply other information to be recorded in any of the following Field Table fields, and shall record such information as supplied by the requesting application. The originating system shall supply the information for such a Field if the requesting application does not supply it. The applicable Fields are listed for the following Field Tables:

- 42 -

Volume Header Field Table − VOLUME SET LABEL File Set Header Field Table − FILE SET LABLE − SOURCE NAME 14.2.4

Volume characteristics Whenever an originating system records a File Set on a Volume, the characteristics of the following Fields of the Volume Header shall be preserved, independent of which originating system recorded the Volume Header: FILE MARK USAGE, and VOLUME INDEX PRESENT The following Fields, if recorded, shall have consistent data values within the Headers, Trailers and (Sub)Indices of a Volume Set: VOLUME SET LABEL VOLUME SET TIME.

14.2.5

File Set characteristics The following Fields, if recorded, shall have consistent data values within the (Continuation) Headers, Buffers, Trailer and (Sub)Indices of a File Set: FILE SET ID FILE SET TIME FILE SET LABEL SOURCE NAME SOURCE OPERATING SYSTEM SOURCE OPERATING SYSTEM VERSION If one or more Registered Identifiers are recorded in a File Set Header, they shall be re-recorded in all File Set Continuation Headers of that File Set.

14.2.6

Recording of Bit Data Fields the Data Description of which (annex C) specifies that their data part shall be recorded as Bit Data, shall be recorded according to B.3 in annex B.

14.2.7

Cyclic Redundancy Check (CRC) This ECMA Standard specifies CRC use for − Field Tables − Buffers − Streams Recording of CRC values is optional. CRC shall be calculated according to clause 9. The size of the data part of a Field containing CRC bits shall be 4 bytes. If calculated for, and recorded in, a Field Table, the CRC bits shall be recorded as the data part of the last Field of the Field Table. The data used as input for the CRC shall be the entire Field Table except the last Field. If calculated for, and recorded in, a Buffer, the CRC bits shall be recorded as the data part of the BUFFER CRC Field of the Buffer Header. The data used as input for the CRC shall be the entire Buffer except the Buffer Header. If calculated for, and recorded in the Trailer of, a Stream, the CRC bits shall be recorded as the data part of the STREAM CRC Field of the Stream Trailer Field Table. The data used as input for the CRC shall be the entire Stream as recorded on the Volume, independent of any source stream or Stream Format interpretation. The Stream is all bytes within Buffer Data Space following the Stream Header and preceding the Stream Trailer.

- 43 -

14.3

Requirements for a receiving system

14.3.1

General The receiving system shall be capable of reading the Files and associated information from a Volume Set that has been recorded in conformance with this ECMA Standard in one of the partition interchange levels specified in 13.16. The receiving system shall make available to the requesting application or file system the information that constitutes the recorded Files of the Volume Set. The receiving system shall make available to the requesting application or file system the information that is descriptive of the Source files and was supplied by the Source to the originating system and recorded on the Volume Set. The originating system may record Source file associated information that a conforming receiving system is unable to interpret. When processing such information, the receiving system shall nevertheless make this information available to the requesting application and/or file system.

14.3.2

Levels of conformance This ECMA Standard specifies two levels of conformance for receiving systems. These are known as Level 1 and Level 2. A statement of conformance of a receiving system shall specify the level to which the receiving system conforms.

14.3.2.1

Level 1 conformance of a receiving system A receiving system shall conform to Level 1 if it meets all the requirements of 14.3.2.1 and 14.3.2.2 when reading a Volume from a medium partition that conforms to the requirements of 13.16.1.

14.3.2.2

Level 2 conformance of a receiving system A receiving system shall conform to Level 2 if it meets all the requirements of 14.3.2.1 and 14.3.2.2 when reading a Volume from a medium partition that conforms to the requirements of 13.16.2.

- 44 -

- 45 -

Annex A (normative)

Structure of the Field Identifier

A.1

Overview Each Field Identifier (FID) shall consist of a sequence of one to four bytes, uniquely identified by the setting of the bits of these bytes. Various bits in these bytes may have a specific meaning.

A.1.1

Bits specifying an operating system Bits specifying an operating system shall be a set of six adjacent bits which denote that certain FIDs pertain to a specific operating system. These bits are used in certain 2-byte and 3-byte FIDs as indicated below. An operating system specified by these bits shall be registered in accordance with ISO/IEC 13800.

A.1.2

Bits specifying a developer Bits specifying a developer shall be a set of thirteen adjacent bits which denote that certain FIDs pertain to a specific developer. These bits are used in certain 3-byte and 4-byte FIDs as indicated below. A developer specified by these bits shall be registered in accordance with ISO/IEC 13800.

A.2

General Structure of 1-byte FIDs 1-byte FIDs shall be identified by their high-order bit b7 set to ZERO. The interpretation of bits b5 to b0 depends on the setting of b6. If b6 is set to ZERO, the Data part of the Field shall be of variable length, and bits b5 to b0 shall be in the range #00 to #3F, thus identifying 63 such FIDs. In this case, the length of the Data part of the Field shall be specified by the Data Length part of the Field. If b6 is set to ONE, the Data part of the Field shall be of fixed length specified by bits b2 to b0, and the Data Size part of the Field shall be omitted. Bits b2 to b0 shall specify a number N, such that 2N expresses the length of the data. Bits b5, b4 and b3 allow eight different FIDs to be specified for each of these fixed data length. 1-byte FIDs

b7

b6

b5

b4

b3

b2

b1

b0

Variable Data Length

0

0

x

x

x

x

x

x

Fixed Data Length

0

1

x'

x'

x'

n

n

n

xxxxxx: x'x'x': nnn:

Bits of the FID, identifying 63 different FIDs Bits of the FD identifying 8 different FIDs for each data length Length of the Data part of Field equals 2N Figure A.1 - Structure of 1-byte FIDs

A.2.1

Special case of 1-byte FIDs: NULL Field/ NULL FID A 1-byte FID with all bits set to ZERO is designated the NULL FID, it identifies the NULL Field, which has no Data Length part and no Data part.

A.3

General Structure of 2-byte FIDs 2-byte FIDs shall be identified by the bits b7 and b6 of the first byte set to ONE and ZERO, respectively, and bit b7 of the second byte set to ZERO.

- 46 -

If the first byte is set to #80, the FID shall not specify an operating system. If the first byte is in the range #81 to #BF, the FID shall specify the operating system identified by bits b5 to b0. In either case, the second byte shall be interpreted as specified for 1-byte FIDs.

2-byte FIDs Variable Data Length Fixed Data Length ssssss: xxxxxx: x'x'x': nnn:

First Byte

Second Byte

b7 b6 b5 b4 b3 b2 b1 b0 1 0 s s s s s s 1 0 s s s s s s

b7 b6 b5 b4 b3 b2 b1 b0 0 0 x x x x x x 0 1 x' x' x' n n n

set to all ZEROs, or to an operating system identification number in the range #01 to #3F Bits of the FID identifying 6 different FIDs Bits of the FID identifying 8 different FIDs for each data length for each operating system Length of the Data part of Field equals 2N Figure A.2 - Structure of 2-byte FIDs

A.4

General Structure of 3-byte FIDs 3-byte FIDs shall be identified by either: Case A: Bits b7 and b6 of the first byte set to ONE and ZERO, respectively, and bit b7 of the second byte set to ONE; or Case B: Bits b7 and b6 of the first byte set to ONE, and bit b7 of the third byte set to ZERO. In Case A, bits b5 to b0 of the first byte shall either be bits specifying an operating system, or set to all ZEROs. In Case B, bits b5 to b0 of the first byte, and all bits of the second byte shall specify a developer. Case A: In this case, if bits b6, b5 and b4 of the second byte are not all set to ONE, the Data part of the Field shall be of variable length. This length shall be specified by the Data Length part of the Field. Bits b6 to b0 of the second byte, and all bits of the third byte are simply part of the FID, and have no specific meaning. If bits b6, b5 and b4 of the second byte are all set to ONE, the Data part of the Field shall be of fixed length. Bits b2 to b0 of the second byte shall define a number N such that the length of the Data part of the Field is 2N. Bit b3 of the second byte, together with all the bits of the third byte, shall specify up to 512 different FIDs for each data length.

3-byte FIDs Variable Data Length Fixed Data Length ssssss: xxxxxxxxxxxxxxx: x'x'x'x'x'x'x'x'x': nnn:

First Byte

Second Byte

Third Byte

b7 b6 b5 b4 b3 b2 b1 b0 1 0 s s s s s s 1 0 s s s s s s

b7 b6 b5 b4 b3 b2 b1 b0 1 x x x x x x x 1 1 1 1 x' n n n

b7 b6 b5 b4 b3 b2 b1 b0 x x x x x x x x' x' x' x' x' x' x'

set to all ZEROs, or to an operating system identification number in the range #01 to #3F Bits of the FID identifying 32 768 different FIDs Bits of the FID identifying 512 different FIDs for each data length for each operating system; the high-order bit of these is bit b3 of the second byte. Length of the Data part of Field equals 2N Figure A.3 - Structure of 3-byte FIDs: Case A

Case B: In this case bits b5 to b0 of the first byte and all bits of the second byte shall either specify a developer or be set to all ZEROs. The third byte shall be interpreted as specified for 1-byte FIDs.

- 47 -

3-byte FIDs Variable Data Length Fixed Data Length

First Byte b7 b6 b5 b4 b3 b2 b1 b0 1 1 0 d d d d d 1 1 0 d d d d d

Second Byte b7 b6 b5 b4 b3 b2 b1 b0 d d d d d d d d d d d d d d d d

Third Byte b7 b6 b5 b4 b3 b2 b1 b0 0 0 x x x x x x 0 1 x' x' x' n n n

ddddddddddddd: Developer identification number in the range #0000 to #1FFF xxxxxx: Bits of the FID identifying 64 different FIDs x'x'x': Bits of the FID identifying 8 different FIDs for each data length for each developer nnn: Length of the Data part of Field equals 2N Figure A.4 - Structure of 3-byte FIDs - Case B

A.5

General Structure of 4-byte FIDs 4-byte FIDs shall be identified by bits b7 and b6 of the first byte set to ONE and bit b7 of the third byte set to ONE. The first and second bytes shall be interpreted as specified for Case B of the 3-byte FIDs. The third and the fourth bytes shall be interpreted as specified for Case A of the 3-byte FIDs.

First Byte

Second Byte

Third Byte

Fourth Byte

b7 b6 b5 b4 b3 b2 b1 b0 Variable Data Length: 1 1 0 d d d d d

b7 b6 b5 b4 b3 b2 b1 b0

b7 b6 b5 b4 b3 b2 b1 b0

b7 b6 b5 b4 b3 b2 b1 b0

d d d d d d d d

1 x x x x x x x

x x x x x x x x

d d d d d d d d

1 1 1 1 x' n n n

x' x' x' x' x' x' x' x'

Fixed Data Length: 1 1 0 d d d d d ddddddddddddd: xxxxxxxxxxxxxxx: x'x'x'x'x'x'x'x'x': nnn:

Developer identification number in the range #0000 to #1FFF Bits of the FID identifying 32 768 FIDs Bits of the FID identifying 512 different FIDs for each length for each developer; the high-order bit of these is from bit b3 of the third byte. Length of the Data part of Field equals 2N Figure A.5 - Structure of 4-byte FIDs

A.6

FIDs not reserved by this ECMA Standard FIDs with bits b7, b6 and b5 of the first byte set to ONE are not defined by this ECMA Standard, and are available for registration via ISO/IEC 13800. However, the use of these FIDs shall follow the conventions of this annex as follows. − If bit b7 of the third byte of such a FID is set to ZERO, the FID shall be a 3-byte FID, and the interpretation of the third byte shall be the same as for Case B for 3-byte FIDs as specified above. − If bit b7 of the third byte of such a FID is set to ONE, the FID shall be a 4-byte FID, and the interpretation of the third and fourth bytes shall be the same as for the 4-byte FIDs as specified above. NOTE Bits b4 to b0 of the first byte and all bits of the second byte of FIDs not defined by this ECMA Standard are intended to be associated arbitrarily to different Registered Identifiers of ISO/IEC 13800.

- 48 -

A.7

Allocation of FIDs by range FID range

FID type

#00-3F #40-7F

One byte, variable data length, generic One byte, fixed data length, generic

#8000-803F #8040-807F #8100-813F #8140-817F #8100-813F #8140-817F : : #BF00-BF3F #BF40-BF7F

Two bytes, variable data length, generic Two bytes, fixed data length, generic Two bytes, variable data length, 1st operating system Two bytes, fixed data length, 1st operating system Two bytes, variable data length, 2nd operating system Two bytes, fixed data length, 2nd operating system : : Two bytes, variable data length, 63rd operating system Two bytes, fixed data length, 63rd operating system

#808000-#80EFFF #80F000-#80FFFF #818000-#81EFFF #81F000-#81FFFF #828000-#82EFFF #82F000-#82FFFF : : #BF8000-#BFEFFF #BFF000-#BFFFFF #C00000-#C0003F #C00040-#C0007F #C00100-#C0013F #C00140-#C0017F : :

Three bytes, variable data length, generic Three bytes, fixed data length, generic Three bytes, variable data length, 1st operating system Three bytes, fixed data length, 1st operating system Three bytes, variable data length, 2nd operating system Three bytes, fixed data length, 2nd operating system : : Three bytes, variable data length, 63rd operating system Three bytes, fixed data length, 63rd operating system Three bytes, variable data length, 0-th developer Three bytes, fixed data length, 0-th developer Three bytes, variable data length, 1st developer Three bytes, fixed data length, 1st developer : : Three bytes, variable data length, 8191st developer Three bytes, fixed data length, 8191st developer

#DFFF00-#DFFF3F #DFFF40-#DFFF7F #E00000-#FFFF7F

Three bytes, not defined by this ECMA Standard, available for registration according to ISO/IEC 13800

#C0008000-#C000EFFF #C000F000-#C000FFFF #C0018000-#C001EFFF #C001F000-#C001FFFF : :

Four bytes, variable data length, 0-th developer Four bytes, fixed data length, 0-th developer Four bytes, variable data length, 1st developer Four bytes, fixed data length, 1st developer : : Four bytes, variable data length, 8191st developer Four bytes, fixed data length, 8191st developer

#DFFF8000-#DFFFEFFF #DFFF8F00-#DFFFFFFF #E0018000-#FFFFFFFF

Four bytes, not defined by this ECMA Standard, available for registration according to ISO/IEC 13800 Figure A.6 - Summary of the FID ranges

- 49 -

Annex B (normative)

Specification of the length of data in Fields

All Fields with variable data length (i.e. length not specified as fixed by the FID) shall have a Data Length part. The Data Length part shall be presented in one of three different formats.

B.1

Direct length format The Direct length format shall be identified by bit b7 of the first byte of the Data Length part of the Field set to ZERO. The Direct length format shall occupy one byte. Bits b6 to b0 shall represent in binary notation the data length from 0 to 127.

b7 b6 b5 b4 b3 b2 b1 b0 0 n n n n n n n nnnnnnn: Length of the Data part of Field, from 0 to 127 Figure B.1 - Structure of a Direct 1-byte Data Length part of a Field

B.2

Indirect length format The Indirect length format shall be identified by bit b7 of the first byte of the Data Length part of the Field set to ONE, and bits b6 to b2 set to ZERO. Bits b1 and b0 shall specify a number N, such that the 2N bytes immediately following the first byte of the Data Length part specify the length in bytes of the data part. These bytes specifying the data length shall be recorded as a number (with low-order byte first). The Indirect length format shall occupy between two and nine bytes. Lengths of 0 to 18.1018 bytes can be represented by this format.

First Byte b7 b6 b5 b4 b3 b2 b1 b0 1 0 0 0 0 0 n n nn: 2N = number of bytes specifying the data length, to follow immediately Figure B.2 - Structure of the first byte of the Indirect Data length part of a Field

First Byte (indirect:2 bytes follow) b7 b6 b5 b4 b3 b2 b1 b0 1 0 0 0 0 0 0 1

Second Byte

Third Byte

b7 b6 b5 b4 b3 b2 b1 b0 0 1 1 0 0 0 0 0

b7 b6 b5 b4 b3 b2 b1 b0 0 0 0 0 1 0 1 0

Figure B.3 - Example of Indirect length: bits b1 and b0 of first byte set to 01, specifying a length recorded in the following 21 = 2 bytes. These bytes specify a data length #600A = 24586 bytes.

B.3

Bit Data length format The Bit Data length format shall be identified by bits b7 and b6 of the first byte of the Data Length part of the Field set to ONE. This data length consists of one byte. The data is expressed by 1 to 6 bits from b0 to b5. In each FID definition (see annex C), the relevant bit or bits are specified. Bits not specified shall be ignored. Because the Field data is stored in the Data Length part, no Data Part is recorded.

- 50 -

b7 b6 b5 b4 b3 b2 b1 b0 1 1 d d d d d d dddddd Data bits, specifying a range of data values from 0 to 63 Figure B.4 - Structure of the Data Length part of a Field in Bit Data format

- 51 -

Annex C (normative)

Field specification

This annex lists alphabetically all Fields defined in this ECMA Standard. The Fields are presented as follows: • The name of the Field • The FID: presented and recorded high-order byte first (i.e. big endian). • The Data length: The length of the Data Length part of the Field. If the Field has a fixed Data Length, the word "Fixed" is shown, followed by the length in bytes. If the Field has a variable data size, the word "Variable" is shown. If the Data Length is shown as Bit Data, the data shall be recorded according to annex B, B.3. • Data description: A description of the data and the setting of bits, where applicable. • Unless otherwise specified, the absence of a Field which is not required shall be interpreted as if the Field is present and set to all ZEROs. • All reserved bits/bytes shall be set to ZERO/all ZEROs. This includes bytes B12 to B15 of Timestamps.

ACCESS TIME FID: Data length: Data description:

#44 Fixed, 16 bytes The Timestamp from the Source when the file was last accessed.

ARCHIVE TIME FID: Data length: Data description:

#54 Fixed, 16 bytes The Timestamp from the Source when the file was last marked as archived.

- 52 -

ATTRIBUTES FID:

#81F2FE

Data length:

Variable

Data description:

The following attribute(s) shall be associated with a Source entity (for example, a Source file) if, and only if, the corresponding bit(s) is set to ONE. Bits denoting attributes not associated with a Source entity shall be set to ZERO. Bit

Meaning

b0 b1 b2 b3 b4 b5

Read only Hidden from normal Source directory access Intended for use only by the operating system (system) Execute only, shall not be read or written to Source directory One or more of the file Streams have been modified since the archive bit (this bit) was last cleared (archive) Reserved, no meaning May be accessed simultaneously by multiple users (shareable) Reserved, no meaning Reserved, no meaning Reserved, no meaning Do not suballocate file block(s) with other files File is transactional Reserved, no meaning Reserved, no meaning Reserved, no meaning File to be purged immediately after deletion File shall not be renamed File shall not be deleted File shall not be copied Reserved, no meaning Reserved, no meaning File or Source directory was migrated to secondary storage File or Source directory shall not be migrated Reserved, no meaning File streams shall be compressed onto target file system File streams were compressed File owner specified file Streams should not be compressed Reserved, no meaning File deemed not effectively compressible by file system File information other than Stream data has been modified since bit b5 was last cleared

b6 b7 b8 b9 b10 b11 b12 b13 b14 b15 b16 b17 b18 b19 b20 b21 b22 b23 b24 b25 b26 b27 b28 b29 b30

AUTHENTICATION FID: Data length: Data description:

#8002 Variable This string shall contain a password for the Volume or File Set created by, or for, the originating system. A receiving system accessing the Volume or File Set shall validate the user-supplied password against the Volume or File Set Authentication value before access to the Volume or File Set is granted to the user. The string shall be XORed on a 4-byte basis with the Byte Stream #53694466 (characters "SiDf").

- 53 -

BLANK SPACE FID:

#808019

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

BLOCK MAP FID: Data length: Data description:

#25 Variable Bit map for the interpretation of a Data Stream.

BLOCK SIZE FID: Data length: Data description:

#24 Variable The size of the blocks defined by the BLOCK MAP of a Data Stream.

BUFFER ADDRESS FID: Data length: Data description:

#08 Variable The distance in Sectors from the File Set (Continuation) Header which is associated with, and in, the same Volume as the Buffer, to the start of the Buffer. A File Set (continuation) Header and a Buffer are associated if they have the same FILE SET ID.

BUFFER CRC FID: Data length: Data description:

#8008 Variable The CRC of the Buffer excluding the Buffer Header, but including Blank Space at end of Buffer counted in UNUSED IN THIS BUFFER.

BUFFER HEADER FID: Data length: Data description:

#05 Variable Resynchronization data, CRC or empty.

BUFFER OFFSET FID:

#808014

Data length:

Variable

Data description:

The offset in bytes to a location within a Buffer.

- 54 -

BUFFER SEQUENCE FID: Data length: Data description:

#07 Variable The ordinal sequence number of a Buffer within its File Set or other usage set (1, 2, 3, ..., n).

BUFFER SIZE FID: Data length: Data description:

#06 Variable In the File Set Header: This Field shall contain the maximum Buffer size in bytes for the File Set. In the Buffer Header: This Field shall contain the size in bytes of this Buffer. The Buffer size shall be an integer multiple of the Sector size.

BUFFER TYPE FID: Data length: Data description:

#60 Fixed, 1 byte This Field shall specify which of the 6 types of data the Buffer contains. Value

Data type

0 1 2 3 4 5

Implementation Use File File Set Index File Set Subindex Volume Index Volume Subindex

No other value shall be recorded.

CANT COMPRESS DATA FID:

#81EFE6

Data length:

Bit Data

Data description:

This Field shall specify whether the Source has indicated that it could not effectively compress the data associated with this entity. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No indication on effective compression Effective compression impossible shall be set to ZERO, no meaning

CHARACTERISTICS FID: Data length: Data description:

#13 Variable Resynchronization data, CRC or empty.

- 55 -

CHAR SPEC FID:

#808040

Data length:

Variable

Data description:

The first byte shall indicate the character specification type. Additional bytes, as needed, shall indicate character set information.

CLOSE TIME FID: Data length: Data description:

#80F402 Fixed, 16 bytes The Timestamp from the originating system when the Volume Trailer was recorded.

COMPRESS FILE IMMEDIATE FID: Data length: Data description:

#8116 Bit Data This Field shall specify whether the user has requested that the Source information associated with the File be compressed when transferred by the receiving system to a primary file system. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No immediate compression requested Immediate compression requested shall be set to ZERO, no meaning

CREATION TIME FID: Data length: Data description:

#64 Fixed, 16 bytes The Timestamp when the Source entity was created.

CREATOR NAME SPACE FID: Data length: Data description:

#81F2FC Fixed, 4 bytes Name Space used to create the Source entity.

- 56 -

DELETED FLAG FID: Data length: Data description:

#81F0FE Fixed, 1 byte This Field shall specify whether the Source entity was deleted. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b7

Source entity not deleted Source entity deleted shall be set to ZERO, no meaning

DELTA BASE TIME FID: Data length: Data description:

#8044 Fixed, 16 bytes Timestamp of base of Source delta.

DELTA EXTENT OFFSET FID: Data length: Data description:

#800A Variable Within the Source stream at DELTA BASE TIME, the byte offset from the start of the stream to the start of delta extent

DELTA EXTENT OLD SIZE FID: Data length: Data description:

#800B Variable The number of bytes of the pre-delta Source stream to be replaced by the delta extent.

DEVICE INFO FID:

#808032

Data length:

Variable

Data description:

Implementation use information.

SOURCE DIRECTORY FID: Data length: Data description:

#14 Bit Data This Field shall specify whether the Source entity is a Source directory or a parent. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Source entity is no Source directory or parent Source entity is Source directory or parent shall be set to ZERO, no meaning

- 57 -

SOURCE DIRECTORY HEADER FID: Data length: Data description:

#0C Variable Resynchronization data, CRC or empty.

SOURCE DIRECTORY TRAILER FID: Data length: Data description:

#0D Variable Resynchronization data, CRC or empty.

DO NOT COMPRESS FILE FID: Data length: Data description:

#8115 Bit Data This Field shall specify whether the user has requested that the Source entity shall not be compressed. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No request for no compression Request for no compression shall be set to ZERO, no meaning

EXCLUSION OPTIONS FID: Data length: Data description:

#29 Bit Data A bit field indicating that when the originating system recorded the data, the specified information was intended to be excluded from the File(s). Setting

Meaning

Bit b0 set to ZERO Bit b0 set to ONE Bit b1 set to ZERO Bit b1 set to ONE Bits b2 to b5

Data stream not excluded Data stream excluded Extended attributes not excluded Extended attributes excluded Set to ZERO, no meaning

EXECUTE ONLY FID:

#813B

Data length:

Bit Data

Data description:

This Field shall specify whether the entity is execute only. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No execute only Execute only shall be set to ZERO, no meaning

- 58 -

EXPIRATION TIME FID: Data length: Data description:

#80F404 Fixed, 16 bytes Timestamp of the expiration of the recorded entity, per agreement between the originating and receiving system.

FILE CHUNK SIZE FID: Data length: Data description:

#0B Variable The number of bytes contained by the following File within the current Buffer.

FILE CONTINUATION HEADER FID: Data length: Data description:

#8001 Variable Resynchronization data, CRC or empty.

FILE HEADER FID: Data length: Data description:

#09 Variable Resynchronization data, CRC or empty.

FILE INFORMATION FID: Data length: Data description:

#813F Variable Resynchronization data, CRC or empty.

FILE IS INVALID FID:

#80F003

Data length:

Bit Data

Data description:

This Field shall specify whether the originating systems deemed that the File as recorded is invalid. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

File not invalid File invalid shall be set to ZERO, no meaning

- 59 -

FILE MARK INTERVAL FID:

#808028

Data length:

Variable

Data description:

The distance in sectors between two consecutive file marks recorded at regular intervals.

FILE MARK USAGE FID:

#808020

Data length:

Bit Data

Data description:

This Field shall specify where physical file marks shall be recorded.

Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bit b1 set to ZERO: Bit b1 set to ONE: Bit b2 set to ZERO: Bit b2 set to ONE:

No file marks before File Set Headers File marks before File Set Headers No file marks before File Set Trailers File marks before File Set Trailers No file marks at regular intervals File marks at the Sector Address interval indicated by FILE MARK INTERVAL. shall be set to ZERO, no meaning

Bits b3 to b5

Note: Interval file marks are intended to provide a seek-performance improvement mechanism for devices which do not natively support direct seeking: the location of the interval file marks can facilitate high speed but measured travel of large media distances. Interval file mark use is strongly discouraged for devices that support direct seeking, because its use adds difficulty in processing non-interval file marks.

FILE SET ABORTED FID:

#808039

Data length:

Bit Data

Data description:

This Field shall specify whether the originating system aborted recording of the File Set prematurely. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

File not aborted prematurely File aborted prematurely shall be set to ZERO, no meaning

FILE SET COMMENT FID:

#80802B

Data length:

Variable

Data description:

An additional string associated with the File Set.

- 60 -

FILE SET CONTINUATION HEADER FID:

#808035

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

FILE SET HEADER FID:

#808004

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

FILE SET HEADER LOCATION FID:

#80803C

Data length:

Variable

Data description:

The Sector Number of the File Set Header.

FILE SET ID FID: Data length: Data description:

#8072 Fixed, 4 bytes A non-zero 4-byte value assigned to a File Set by the originating system. This value shall be unique among Interleaved File Sets and among the File Sets of the Volume Set.

FILE SET INDEX FID:

#808010

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

FILE SET INDEX PRESENT FID:

#80802D

Data length:

Bit Data

Data description:

This Field shall specify whether a File Set Index is recorded in this File Set. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

File Set Index not necessarily present File Set Index present shall be set to ZERO, no meaning

FILE SET INDEX FIELDS FID:

#808034

Data length:

Variable

- 61 -

Data description:

A list of FIDs represented as a sequence of 32-bit numbers (i.e. little endian). This list specifies which Fields (including optional Fields) are included in the Iterated Field Set for each File listed in the File Set Index. It shall begin with the BUFFER OFFSET FID and end with the PATH FULLY QUALIFIED FID. Except for the first and last FID listed, no particular order is required. If a Field is not recorded for every File entry in the Index, its FID shall not be recorded in this list. Example The Data part of FILE SET INDEX FIELDS for a File Set Index which includes MODIFIED TIME for each entry is: #14 #80 #80 #00 #74 #00 #00 #00 #50 #00 #00 #00

FILE SET LABEL FID:

#808005

Data length:

Variable

Data description:

A string generated by the originating system intended to describe the contents of the File Set.

FILE SET SUBINDEX FID:

#808033

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

FILE SET TIME FID: Data length: Data description:

#80F403 Fixed, 16 bytes The Timestamp when the originating system began recording the File Set.

FILE SET TRAILER FID:

#808009

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

FILE SET TRAILER LOCATION FID:

#80803F

Data length:

Variable

Data description:

The Sector Number of the File Set Trailer.

- 62 -

FILE TYPE FID: Data length: Data description:

#70 Fixed, 1 byte In a File Header Field Table, specifies which of the following types of File is contained in the ensuing File record and File Continuation record(s). Value

Type

0 1 2 3 4 5

Reserved Implementation use Logical volume Source directory File Transaction set

No other values shall be recorded

FORMAT NAME FID: Data length: Data description:

#8052 Fixed, 4 bytes The Bytes Stream #53 #49 #44 #46 (“SIDF” not NULL-terminated). This identifies the Volume with a defined sequence to be SIDF compliant.

FORMAT VERSION FID: Data length: Data description:

#8062 Fixed, 4 bytes Version of the Logical Format. A Byte Sequence, which specifies the version as shown below: Byte

Meaning

B0 B1 B2 B3

Major version number. Minor version number. Subminor version number. Undefined, this byte shall be set to all ZEROs.

FSH PARTITION NUMBER FID:

#80803B

Data length:

Variable

Data description:

Specifies the physical partition number of the File Set Header.

FSH VOLUME SET SEQUENCE FID:

#80803A

Data length:

Variable

Data description:

Specifies the Volume Set sequence number of the File Set Header.

- 63 -

FST PARTITION NUMBER FID:

#80803E

Data length:

Variable

Data description:

Specifies the physical partition number of the File Set Trailer.

FST VOLUME SET SEQUENCE FID:

#80803D

Data length:

Variable

Data description:

Specifies the Volume Set sequence number of the File Set Header.

HEADER DEBUG STRING FID:

#81EFFF

Data length:

Variable

Data description:

Implementation use: recorded after the OFFSET TO END Field to put the Field Table name coded according to the IRV of ECMA-6 in the data for debugging.

HIDDEN FID: Data length: Data description:

#15 Bit Data This Field shall specify whether the Source file is marked by the Source as hidden. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Source file is not hidden Source file is hidden shall be set to ZERO, no meaning

INDEXED FID:

#81EFF8

Data length:

Bit Data

Data description:

This Field shall specify whether the Source file is marked by the Source as index. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Source file is not indexed Source file is indexed shall be set to ZERO, no meaning

- 64 -

INHIBITIONS FID:

#813A

Data length:

Bit Data

Data description:

This Field shall specify the functionality of the file which is prohibited by the Source. If this Field is not part of the Characteristics Field Table, the Source file shall be considered as having none of the inhibitions specified by bits b0 to bit b2. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bit b1 set to ZERO: Bit b1 set to ONE: Bit b2 set to ZERO: Bit b2 set to ONE: Bits b3 to b5

Copying of this file allowed Copying of this file prohibited Deletion of this file allowed Deletion of this file prohibited Rename of this file allowed Rename of this file prohibited shall be set to ZERO, no meaning

MODIFIED TIME FID: Data length: Data description:

#74 Fixed, 16 bytes The Timestamp when the Source file was last modified.

NAME POSITIONS FID: Data length: Data description:

#27 Variable An array of 16-bit numbers containing the beginning position of each path element in the associated PATH NAME Field. Position counting shall be in terms of bytes, and shall begin with 0. All occurrences of NAME POSITIONS shall be associated with a specific PATH NAME Field. Certain properties of this array are associated with the Name Space of the path name. Example The Data Length part of NAME POSITION for file name "volume2:binb\foo" is: #00 #00 #08 #00 #0D #00.

NAME SPACE FID: Data length: Data description:

#11 Variable The Source file Name Space type value. Name Space specifies several characteristics of Source file name use. When this Field is part of an Iterated Field Set, the first instance of this Field shall indicate the Name Space that was used to create the file, and the Fields containing the other Name Spaces shall follow.

- 65 -

NEEDS ARCHIVE FID: Data length: Data description:

#16 Bit Data This Field shall specify whether at least one of the Source file Streams has been modified since the last time the Source file was marked as archived. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No Source file Stream modified One or more Source file Streams modified shall be set to ZERO, no meaning

NEEDS ARCHIVE CHARACTERISTICS FID: Data length: Data description:

#2D Bit Data This Field shall specify whether Source file information other than Stream(s) has been modified since the last time the Source file was marked as archived. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No information other than Stream(s) modified Information other than Stream(s) modified shall be set to ZERO, no meaning

NEXT OBJECT LOCATION FID:

#808029

Data length:

Variable

Data description:

The Sector Number of the Object that most immediately follows the current Field Table. In this context, Objects are all File Set Headers and Trailers. If no Object is recorded on the Volume after the current Field Table, the location shall be recorded as 0.

NUMBER OF FILES FID:

#808021

Data length:

Variable

Data description:

The number of Files in a File Set.

NUMBER OF FILE SETS FID:

#808015

Data length:

Variable

Data description:

The number of File Sets the Volume Index references.

- 66 -

OFFSET TO END FID: Data length: Data description:

#01 Variable The distance in bytes from the beginning of the Field following this OFFSET TO END Field, to the beginning of the last Field in the Field table. A value of 0 shall mean that this Field shall be ignored.

ORIGINATING SYSTEM SOFTWARE NAME FID:

#808006

Data length:

Variable

Data description:

An implementation use string intended to identify the originating system software which recorded the File Set.

ORIGINATING SYSTEM SOFTWARE TYPE FID:

#808007

Data length:

Variable

Data description:

An implementation use string intended to identify the type of the originating system software which recorded the File Set.

ORIGINATING SYSTEM SOFTWARE VERSION FID:

#808008

Data length:

Variable

Data description:

An implementation use string intended to identify the version of the originating system software which recorded the File Set.

PARENT FID: Data length: Data description:

#81F0FD Fixed, 1 byte This Field shall specify whether the Source is a parent. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b7

Source is not a parent Source is a parent shall be set to ZERO, no meaning

PARTITION NUMBER FID:

#808012

Data length:

Variable

Data description:

The physical partition number that contains the referenced entity.

- 67 -

PATH FID: Data length: Data description:

#10 Variable Resynchronization data, CRC or empty.

PATH FULLY QUALIFIED FID: Data length: Data description:

#50 Fixed, 1 byte This Field shall specify whether the associated path is a complete path. If the associated path for the referenced entity is a relative path, the complete path shall be constructed as follows: the concatenation of the path of the closest previous File the PARENT Field bit b0 of which is not set to ZERO, and the relative path of the referenced entity. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b7

Associated path is relative Associated path is complete shall be set to ZERO, no meaning

PATH NAME FID: Data length: Data description:

#12 Variable Path name string.

- 68 -

POSIX FILE MODE FID: Data length: Data description:

#80F203 Fixed, 4 bytes Contains the POSIX file access mode permissions and file type information. If a bit is set to ONE, the corresponding permission or property indicated below is implied by the Source, else the bit(s) shall be set to ZERO. Bit

Meaning

b0 b1 b2 b3 b4 b5 b6 b7 b8 b9 b10 b11 b12 b13 b14

Execute by others (i.e. other than group or owner) Write by others Read by others Execute by group Write by group Read by group Execute by owner Write by owner Read by owner Reserved no meaning Set group ID Set user ID FIFO Character special file Source directory

Bits b15 to b31 shall be set to ZERO, no meaning.

POSIX FILE ID FID: Data length: Data description:

#80F210 Fixed, 4 bytes The POSIX inode number of the file. Used by the receiving system to rebuild links.

POSIX FILE SYSTEM ID FID: Data length: Data description:

#80F20F Fixed, 4 bytes The file system ID, used with the POSIX FILE ID to uniquely identify the Source file.

POSIX GROUP ID FID: Data length: Data description:

#80F204 Fixed, 4 bytes Contains the Source file POSIX group ID.

- 69 -

POSIX NUMBER OF LINKS FID: Data length: Data description:

#80F20D Fixed, 4 bytes The number of hard links for the Source file.

POSIX OWNER ID FID: Data length: Data description:

#80F209 Fixed, 4 bytes The POSIX user ID of the Source file owner.

POSIX RDEVICE FID: Data length: Data description:

#80F20E Fixed, 4 bytes Raw device number, as indicated by the Source

PREV OBJECT LOCATION FID:

#80802A

Data length:

Variable

Data description:

The Sector Number of the Object that immediately precedes the current Field Table. In this context, Objects are all File Set Headers and Trailers. If no Object is recorded on the Volume before the current Field Table, the location shall be recorded as 0.

PURGE FID: Data length: Data description:

#8136 Bit Data This Field shall specify whether a Source file shall be immediately purged after deletion. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Purging not required File to be purged immediately after deletion shall be set to ZERO, no meaning

- 70 -

READ ONLY FID: Data length: Data description:

#17 Bit Data This Field shall specify whether the Source file is read only. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Source file is not read only Source file is read only shall be set to ZERO, no meaning

REGISTERED IDENTIFIER FID:

#808043

Data length:

Variable

Data description:

A Byte Sequence of 23 bytes containing a registered identifier in conformance with ISO/IEC 13800. A registered identifier is a construct used to specify that a set of extensions to this ECMA Standard are to be applied to some part of the recorded media. That part of the media is known as the scope of the registered identifier. The identifier indicates which specific extensions are to be applied. This Field shall be recorded only in a Volume Header Field Table, File Set Header Field Table or a File Header Field Table. If recorded in a Volume Header Field Table, its scope is that Volume. If recorded in a File Set Header Field Table, its scope is that entire File Set, even if the File Set spans multiple Volumes. If recorded in a File Header Field Table, its scope is that entire File, even if the File spans multiple Buffers. Extensions to this ECMA Standard invoked by a registered identifier shall be limited to the following. The creating body associated with the registered identifier shall supply any needed supplemental usage specifications for the created entities. − Creation of new FIDs, which shall be constructed in accordance with annex A of this ECMA Standard, and shall be unique and registered in compliance with ISO/IEC 13800. − Creation of new data value definitions for existing Fields, provided they create no conflicts with this ECMA Standard or use associated with other registered identifiers. − Establishment of Field ordering conventions, including the extended use of Iterated Field Sets.

- 71 -

REMOTE DATA ACCESS FID:

#81EFE7

Data length:

Bit Data

Data description:

This Field shall specify whether the Source has indicated that its copy of the data stream has been stored remotely. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Copy of data stream not stored remotely Copy of data stream stored remotely shall be set to ZERO, no meaning

REMOTE DATA INHIBIT FID:

#81EFE8

Data length:

Bit Data

Data description:

This Field shall specify whether the Source indicated that this entity shall not be stored remotely. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Remote storage allowed Remote storage not allowed shall be set to ZERO, no meaning

RESOURCE NAME FID:

#808023

Data length:

Variable

Data description:

The File name of the root object among the Files of the File Set. Example If a File Set contains sys:usr/bin and all its recursive subdirectories and the files within them, this data would be sys:usr/bin)

RESOURCE NAME SPACE FID:

#808038

Data length:

Variable

Data description:

The Name Space of the associated RESOURCE NAME Field (see NAME SPACE).

RESOURCE TYPE FID:

#808037

Data length:

Variable

Data description:

Per agreement between the originating and receiving systems. The data values to be used for this Field may be determined by a REGISTERED IDENTIFIER of the appropriate scope.

- 72 -

SECTOR SIZE FID:

#80800E

Data length:

Variable

Data description:

Sector size in bytes for the Volume.

SEPARATOR POSITIONS FID: Data length: Data description:

#28 Variable A separator is a sequence of one or more non-NULL characters used to differentiate distinct elements of a Source entity name. Specification of which separator values are to be used is made by the NAME SPACE value relevant to this Field. The Data of SEPARATOR POSITIONS shall be an array of 16-bit numbers containing the beginning position of each path separator in the associated PATH NAME Field. The first array element shall contain the position of the first separator, the second array element shall contain the position of the second separator, and so forth. Position counting shall be in terms of bytes, and shall begin with 0. If the Source entity associated with this Field has the PARENT Field in its Characteristics Field Table set to one, it is considered a parent (for example, a Source directory). Unless specified otherwise by the associated NAME SPACE Field, the following requirements shall be met: − If a Source entity is a parent, the separator array shall have, as its last element, the position after the last non-separator character of the name. − If a Source entity is not a parent, the separator array shall have, as its last element, 16 bits set to ZERO. In all cases, the number of array elements shall equal the number of elements in the associated NAME POSITIONS array, if recorded. Example The Data part of SEPARATOR POSITION for the non-parent source entity named "volume2::binb\foo" is: #07 #00 #0D #00 #00 #00.

SHAREABLE FID: Data length: Data description:

#18 Bit Data This Field shall specify whether the Source entity is marked as shareable. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Entity not shareable Entity shareable shall be set to ZERO, no meaning

- 73 -

SOURCE ALIAS FID:

#808036

Data length:

Variable

Data description:

A string intended to specify an alternate name for the Source. This string shall be associated with the closest previously recorded SOURCE NAME TYPE of the Field Table.

SOURCE FILE HEADER FID: Data length: Data description:

#0E Variable Resynchronization data, CRC or empty.

SOURCE FILE TRAILER FID: Data length: Data description:

#0F Variable Resynchronization data, CRC or empty.

SOURCE NAME FID: Data length: Data description:

#02 Variable A string intended to specify the Source name. The usage of this string is defined by FILE SET REGID.

SOURCE NAME TYPE FID: Data length: Data description:

#8009 Variable Per agreement between the originating and receiving systems. The data values to be used for this Field may be determined by a REGISTERED IDENTIFIER of the appropriate scope.

SOURCE OPERATING SYSTEM FID: Data length: Data description:

#03 Variable Per agreement between the originating and receiving systems. The data values to be used for this Field may be determined by a REGISTERED IDENTIFIER of the appropriate scope.

- 74 -

SOURCE OPERATING SYSTEM VERSION FID: Data length: Data description:

#04 Variable An implementation use string intended to describe the Source operating system version.

SOURCE VOLUME HEADER FID:

#81EFFC

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

SOURCE VOLUME TRAILER FID:

#81EFFB

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

STREAM COMPRESS TYPE FID: Data length: Data description:

#8005 Variable The type of compression used on the stream. Interpretation of this may be within the scope of a REGISTERED IDENTIFIER.

STREAM CRC FID: Data length: Data description:

#22 Variable The CRC bits for the stream.

STREAM EXPANDED SIZE FID: Data length: Data description:

#8006 Variable The logical size of the stream, for example the uncompressed size of a compressed stream, or the size represented by a sparse File.

- 75 -

STREAM FORMAT FID: Data length: Data description:

#2C Variable One of the five types of the physical representation used to record a Stream on the media. This is not necessarily the physical representation of the Source stream. Value

Type

0 1 2 3 4

Clear data Sparse Compressed Delta block Delta extent

No other values shall be recorded.

STREAM HEADER FID: Data length: Data description:

#1D Variable Resynchronization data, CRC or empty.

STREAM IS INVALID FID: Data length: Data description:

#21 Bit Data This Field shall specify whether the originating system deemed that the Stream was invalid. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

Stream not invalid Stream invalid shall be set to ZERO, no meaning

STREAM SIZE FID: Data length: Data description:

#20 Variable The size in bytes of the Stream as recorded on the media. This may be different from the logical, or expanded, size of the source stream, for example, as with a sparse format Stream.

STREAM TRAILER FID: Data length: Data description:

#1E Variable Resynchronization data, CRC or empty.

- 76 -

STREAM TYPE FID: Data length: Data description:

#2B Variable One of the following 7 types of Stream. Value

Type

0 1 2 3 to 9 10 11 12 13

Data Resource FTAM Reserved, no meaning Extended attributes Alternate data Security data Link data

No other values shall be recorded.

STREAM TYPE SEQUENCE FID: Data length: Data description:

#61 Fixed, 2 bytes Ordinal sequence number (1, 2, 3, ..., n) of Stream for a given STREAM TYPE.

SYSTEM FID: Data length: Data description:

#19 Bit Data This Field shall specify whether the Source indicated that this entity has the system characteristics. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

File has no system characteristics File has system characteristics shall be set to ZERO, no meaning

TOTAL FILE SET SIZE FID:

#808022

Data length:

Variable

Data description:

The size of the File Set expressed in units of 1 024 bytes. This value is informative.

TOTAL STREAM SIZE FID: Data length: Data description:

#81F2FA Fixed, 4 bytes The number of 4 096-byte blocks occupied by all Streams.

- 77 -

TRANSACTION SET HEADER FID:

#81EFF3

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

TRANSACTION SET NAME FID:

#81EFEF

Datalength:

Variable

Data description:

Name string of a Transaction set File.

TRANSACTION SET TRAILER FID:

#81EFF2

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

TRANSACTION SET TYPE FID:

#81EFEE

Data length:

Variable

Data description:

Per agreement between the originating and receiving system.

TRANSACTIONAL FID: Data length: Data description:

#8135 Bit Data This Field shall speciy whether the Source has indicated that this File shall be tracked for transaction processing. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

File not tracked for transaction processing File tracked for transaction processing shall be set to ZERO, no meaning

UNUSED IN THIS BUFFER FID: Data length: Data description:

#8000 Variable The number of bytes not used at the end of the Buffer.

- 78 -

VOLUME HEADER FID:

#808000

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

VOLUME HEADER WRITE COUNT FID: Data length: Data description:

#80F104 Fixed, 2 bytes The number of times a Volume Header has been recorded on this medium. This is an informative estimate only.

VOLUME INDEX FID:

#808011

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

VOLUME INDEX LOCATION FID:

#808042

Data length:

Variable

Data description:

Sector Number of last Volume Index on Volume, intended for use on update in place media (i.e. magneto optical).

VOLUME INDEX REQUIRED FID:

#80802F

Data length:

Bit Data

Data description:

This Field in the Volume Header Field Table shall specify whether all originating systems that record to this Volume shall record a Volume Index after each File Set or set of Interleaved File Sets. Setting

Meaning

Bit b0 set to ZERO: Bit b0 set to ONE: Bits b1 to b5

No Volume Index required Volume Index required shall be set to ZERO, no meaning

VOLUME LABEL FID:

#808027

Data length:

Variable

Data description:

An implementation use string. There are no requirements for this string relative to Volume Labels for any other Volume in a Volume Set.

- 79 -

VOLUME SET ALIAS FID:

#808041

Data length:

Variable

Data description:

An alternate label string of the Volume Set.

VOLUME SET LABEL FID:

#808030

Data length:

Variable

Data description:

The label string of the Volume Set. The VOLUME SET LABEL, and its character specification, shall be the same for each Volume in a Volume Set.

VOLUME SET SEQUENCE FID: Data length: Data description:

#80F100 Fixed, 2 bytes The ordinal sequence number of a Volume within the Volume Set (1, 2, 3, ..., n).

VOLUME SET TIME FID: Data length: Data description:

#80F400 Fixed, 16 bytes The Timestamp when the Volume Set was created.

VOLUME SIZE FID: Data length: Data description:

#80F201 Fixed, 4 bytes Size of the Volume in Sectors. This data is informative only.

VOLUME SUBINDEX FID:

#808031

Data length:

Variable

Data description:

Resynchronization data, CRC or empty.

- 80 -

VOLUME TIME FID: Data length: Data description:

#80F401 Fixed, 16 bytes The Timestamp when this individual Volume was created.

VOLUME TRAILER FID:

#808003

Data length:

Variable

Data description:

Resynchronization Data, CRC, or empty.

- 81 -

Annex D (informative)

Numerical list of the Field Identifiers specified by this ECMA Standard

Field Identifiers marked as “see annex E” are listed in annex E.

#01

OFFSET TO END

#02

SOURCE NAME

#03

SOURCE OPERATING SYSTEM

#04

SOURCE OPERATING SYSTEM VERSION

#05

BUFFER HEADER

#06

BUFFER SIZE

#07

BUFFER SEQUENCE

#08

BUFFER ADDRESS

#09

FILE HEADER

#0A

see annex E

#0B

FILE CHUNK SIZE

#0C

SOURCE DIRECTORY HEADER

#0D

SOURCE DIRECTORY TRAILER

#0E

SOURCE FILE HEADER

#0F

SOURCE FILE TRAILER

#10

PATH

#11

NAME SPACE

#12

PATH NAME

#13

CHARACTERISTICS

#14

SOURCE DIRECTORY

#15

HIDDEN

#16

NEEDS ARCHIVE

#17

READ ONLY

#18

SHAREABLE

#19

SYSTEM

#1A

see annex E

#1B

EA KEY

#1C

see annex E

#1D

STREAM HEADER

#1E

STREAM TRAILER

- 82 -

#1F

STREAM NAME

#20

STREAM SIZE

#21

STREAM IS INVALID

#22

STREAM CRC

#23

see annex E

#24

BLOCK SIZE

#25

BLOCK MAP

#26

see annex E

#27

NAME POSITIONS

#28

SEPARATOR POSITIONS

#29

EXCLUSION OPTIONS

#2A

see annex E

#2B

STREAM TYPE

#2C

STREAM FORMAT

#2D

NEEDS ARCHIVE CHARACTERISTICS

#2E

see annex E

#40

see annex E

#41

see annex E

#42

see annex E

#44

ACCESS TIME

#45

see annex E

#50

PATH FULLY QUALIFIED

#51

see annex E

#52

see annex E

#54

ARCHIVE TIME

#60

BUFFER TYPE

#61

STREAM TYPE SEQUENCE

#62

see annex E

#64

CREATION TIME

#70

FILE TYPE

#72

see annex E

#74

MODIFIED TIME

#8000

UNUSED IN THIS BUFFER

#8001

FILE CONTINUATION HEADER

#8002

AUTHENTICATION

#8003

see annex E

#8004

see annex E

#8005

STREAM COMPRESS TYPE

- 83 -

#8006

STREAM EXPANDED SIZE

#8007

see annex E

#8008

BUFFER CRC

#8009

SOURCE NAME TYPE

#800A

DELTA EXTENT OFFSET

#800B

DELTA EXTENT OLD SIZE

#8042

see annex E

#8044

DELTA BASE TIME

#8052

see annex E

#8062

FORMAT VERSION

#8072

FILE SET ID

#8113

see annex E

#8114

see annex E

#8115

DO NOT COMPRESS FILE

#8116

COMPRESS FILE IMMEDIATE

#8117

see annex E

#8118

see annex E

#8119

see annex E

#811A

see annex E

#8120

see annex E

#8121

see annex E

#8122

see annex E

#8123

see annex E

#8124

see annex E

#8125

see annex E

#8126

see annex E

#8127

see annex E

#8128

see annex E

#8129

see annex E

#812A

see annex E

#812B

see annex E

#812C

see annex E

#812D

see annex E

#812E

see annex E

#812F

see annex E

#8130

see annex E

#8131

see annex E

#8132

see annex E

- 84 -

#8133

see annex E

#8134

see annex E

#8135

TRANSACTIONAL

#8136

PURGE

#8137

see annex E

#8138

see annex E

#8139

see annex E

#813A

INHIBITIONS

#813B

EXECUTE ONLY

#813C

see annex E

#813D

see annex E

#813E

see annex E

#813F

FILE INFORMATION

#8152

see annex E

#808000

VOLUME HEADER

#808001

see annex E

#808002

see annex E

#808003

VOLUME TRAILER

#808004

FILE SET HEADER

#808005

FILE SET LABEL

#808006

ORIGINATING SYSTEM SOFTWARE NAME

#808007

ORIGINATING SYSTEM SOFTWARE TYPE

#808008

ORIGINATING SYSTEM SOFTWARE VERSION

#808009

FILE SET TRAILER

#80800A

see annex E

#80800B

see annex E

#80800C

see annex E

#80800D

see annex E

#80800E

SECTOR SIZE

#80800F

DATABASE LOCATION METHOD

#808010

FILE SET INDEX

#808011

VOLUME INDEX

#808012

PARTITION NUMBER

#808013

see annex E

#808014

BUFFER OFFSET

#808015

NUMBER OF FILE SETS

#808016

NUMBER OF DATABASES

#808017

PREVIOUS MEDIA INDEX

- 85 -

#808018

DATABASE NAME

#808019

BLANK SPACE

#80801A

see annex E

#80801B

see annex E

#80801C

see annex E

#80801D

see annex E

#80801E

see annex E

#80801F

see annex E

#808020

FILE MARK USAGE

#808021

NUMBER OF FILES

#808022

TOTAL FILE SET SIZE

#808023

RESOURCE NAME

#808024

COMPRESSION TYPE (reserved for future use)

#808025

ENCRYPTION TYPE (reserved for future use)

#808026

see annex E

#808027

VOLUME LABEL

#808028

FILE MARK INTERVAL

#808029

NEXT OBJECT LOCATION

#80802A

PREV OBJECT LOCATION

#80802B

FILE SET COMMENT

#80802C

see annex E

#80802D

FILE SET INDEX PRESENT

#80802F

VOLUME INDEX REQUIRED

#808030

VOLUME SET LABEL

#808031

VOLUME SUBINDEX

#808032

DEVICE INFO

#808033

FILE SET SUBINDEX

#808034

FILE SET INDEX FIELDS

#808035

FILE SET CONTINUATION HEADER

#808036

SOURCE ALIAS

#808037

RESOURCE TYPE

#808038

RESOURCE NAME SPACE

#808039

FILE SET ABORTED

#80803A

FSH VOLUME SET SEQUENCE

#80803B

FSH PARTITION NUMBER

#80803C

FILE SET HEADER LOCATION

#80803D

FST VOLUME SET SEQUENCE

#80803E

FST PARTITION NUMBER

- 86 -

#80803F

FILE SET TRAILER LOCATION

#808040

CHAR SPEC

#808041

VOLUME SET ALIAS

#808042

VOLUME INDEX LOCATION

#80F000

see annex E

#80F001

see annex E

#80F002

see annex E

#80F003

FILE IS INVALID

#80F100

VOLUME SET SEQUENCE

#80F101

see annex E

#80F102

see annex E

#80F104

MEDIA USAGE COUNT

#80F200

see annex E

#80F201

VOLUME SIZE

#80F202

see annex E

#80F203

POSIX FILE MODE

#80F204

POSIX GROUP OWNER ID

#80F205

see annex E

#80F206

see annex E

#80F207

see annex E

#80F208

see annex E

#80F209

POSIX OWNER ID

#80F20A

see annex E

#80F20B

see annex E

#80F20C

see annex E

#80F20D

POSIX NUMBER OF LINKS

#80F20E

POSIX RDEVICE

#80F20F

POSIX FSID

#80F210

POSIX FILEID

#80F300

see annex E

#80F400

VOLUME SET TIME

#80F401

VOLUME TIME

#80F402

CLOSE TIME

#80F403

FILE SET TIME

#80F404

EXPIRATION TIME

#81EFE6

CANT COMPRESS DATA

#81EFE7

REMOTE DATA ACCESS

#81EFE8

REMOTE DATA INHIBIT

- 87 -

#81EFE9

see annex E

#81EFEA

see annex E

#81EFEB

see annex E

#81EFEC

see annex E

#81EFED

see annex E

#81EFEE

TRANSACTION SET TYPE

#81EFEF

TRANSACTION SET NAME

#81EFF0

see annex E

#81EFF1

see annex E

#81EFF2

TRANSACTION SET TRAILER

#81EFF3

TRANSACTION SET HEADER

#81EFF4

see annex E

#81EFF5

see annex E

#81EFF6

see annex E

#81EFF7

see annex E

#81EFF8

INDEXED

#81EFF9

see annex E

#81EFFA

see annex E

#81EFFB

SOURCE VOLUME TRAILER

#81EFFC

SOURCE VOLUME HEADER

#81EFFD

see annex E

#81EFFE

see annex E

#81EFFF

HEADER DEBUG STRING

#81F0FC

see annex E

#81F0FD

PARENT

#81F0FE

DELETED FLAG

#81F0FF

MODIFIED FLAG

#81F2F6

see annex E

#81F2F7

see annex E

#81F2F8

see annex E

#81F2F9

see annex E

#81F2FA

TOTAL STREAM SIZE

#81F2FC

CREATOR NAME SPACE

#81F2FD

see annex E

#81F2FE

ATTRIBUTES

#81F2FF

see annex E

- 88 -

- 89 -

Annex E (informative)

Numerical list of Field Identifiers which are deprecated (D) or not specified by this ECMA Standard

#0A

DATA RECORD SEQUENCE (D)

#1A

EXTENDED ATTRIBUTES (D)

#1C

EA VALUE (D)

#2A

CODE PAGE (D)

#23

SPARSE STREAM HEADER (D)

#26

MAC CHARACTERISTICS (D)

#2E

SECTOR ADDRESS (D)

#40

LAST BUFFER IN FILE SET (D)

#41

ACCESS DATE (D)

#42

ARCHIVE TIME (D)

#45

MAC FINDER INFO

#51

ACCESS TIME (D)

#52

ARCHIVE DATE AND TIME (D)

#62

CREATION DATE AND TIME (D)

#72

MODIFIED DATE AND TIME (D)

#8003

MAC SYSTEM SCRIPT

#8004

MAC BLESSED FOLDER

#8007

STREAM MIGRATION KEY

#8042

FILE SET TIME OLD (D)

#8052

FORMAT NAME

#8113

SOURCE DIRECTORY OBJECT DATA

#8114

SOURCE DIRECTORY OBJECT NAME

#8117

ARCHIVER NAME

#8118

TRUSTEE NAME

#8119

OWNER NAME

#811A

SOURCE DIRECTORY OBJECT TRAILER

#8120

MODIFIER NAME

#8121

SUPPORT MODULE ROOT BIT

#8122

TRANSACTION SET DATA STREAM TRAILER (D)

#8123

TRANSACTION SET DATA STREAM HEADER (D)

#8124

TRANSACTION SET TRUSTEE HEADER (D)

- 90 -

#8125

TRANSACTION SET EXTENDED ATTRIBUTES (D)

#8126

TRANSACTION SET MAC CHARACTERISTICS (D)

#8127

TRANSACTION SET CHARACTERISTICS (D)

#8128

TRANSACTION SET PATH NAME (D)

#8129

TRANSACTION SET NAME SPACE (D)

#812A

TRANSACTION SET SEPARATOR POSITIONS (D)

#812B

TRANSACTION SET NAME POSITIONS (D)

#812C

MAC DIR RIGHTS MASK

#812D

MAC PRO DOS INFO

#812E

TRANSACTION SET REQUESTED NAME SPACE (D)

#812F

TRUSTEE

#8130

TRUSTEE ID

#8131

TRUSTEE HEADER

#8132

EA ACCESS

#8133

DIR SPACE RESTRICTIONS

#8134

FTAM CHARACTERISTICS

#8137

OWNER ID

#8138

MODIFIER ID

#8139

LOW MED HIGH SEARCH

#813C

MAC INHIBITIONS

#813D

ARCHIVER ID

#813E

FILE NAME (D)

#8152

INHERITED RIGHTS MASK

#808001

MEDIA OWNER (D)

#808002

CRC TYPE (D)

#80800A

POSIX CHARACTERISTICS (D)

#80800B

HARD LINK PATHNAME

#80800C

HARD LINK USER ID

#80800D

HARD LINK DELIMITER

#808013

MEDIA SECTOR ADDRESS (D)

#80801A

SMM HEADER (D)

#80801B

SMM TYPE (D)

#80801C

SMM PREV FILE MARK (D)

#80801D

SMM NEXT FILE MARK (D)

#80801E

SMM PREV SET MARK (D)

#80801F

SMM NEXT SET MARK (D)

#808026

PRIOR MEDIA TYPE (D)

#80802C

FILE SET INDEX ADDRESS (D)

- 91 -

#80F000

POSIX LINKED FLAG

#80F001

POSIX HARD LINK PATHS

#80F002

POSIX ACS FLAGS

#80F101

MEDIA TYPE (D)

#80F102

SPANNED SECTOR COUNT (D)

#80F200

MEDIA OPEN TIME (D)

#80F202

CLOSE TIME OLD (D)

#80F205

POSIX RDEVICE OLD (D)

#80F206

POSIX NUMBER OF LINKS OLD (D)

#80F207

HARD LINK GROUP ID

#80F208

HARD LINK FILE ACCESS MODE

#80F20A

MY FLAGS

#80F20B

MEDIA OPEN TIME CAL (D)

#80F20C

MS OPEN TIME CAL (D)

#80F300

REVISION LEVEL (D)

#81EFE5

DONT SUB ALLOCATE BIT

#81EFE6

SOURCE VOLUME NAME

#81EFE9

SOURCE VOLUME RESTRICTIONS NAME

#81EFEA

286 BINDERY TRAILER

#81EFEB

286 BINDERY HEADER

#81EFEC

TRANSACTION SET VOLUME RESTRICTIONS (D)

#81EFED

TRANSACTION SET POSIX CHARACTERISTICS (D)

#81EFF0

TRANSACTION SET FILE TRAILER (D)

#81EFF1

TRANSACTION SET FILE HEADER (D)

#81EFF4

SOURCE VOLUME RESTRICTIONS LIMIT

#81EFF5

SOURCE VOLUME RESTRICTIONS ID

#81EFF7

SOURCE VOLUME RESTRICTIONS

#81EFF9

BINDERY TRAILER)

#81EFFA

BINDERY HEADER

#81EFFD

OTHER INFO

#81EFFE

MEDIA SET LABEL (D)

#81F0FC

POSIX FIRST CREATOR FLAG

#81F2F6

ARCHIVE TIME (D)

#81F2F7

MODIFIED TIME (D)

#81F2F8

CREATE TIME (D)

#81F2F9

ACCESSED TIME (D)

#81F2FD

CREATOR ID

#81F2FF

MEDIA SET OPEN TIME (D)

This Standard ECMA-208 is available free of charge from: ECMA 114 Rue du Rhône CH-1204 Geneva Switzerland Fax: Internet:

+41 22 849.60.01 [email protected]

This Standard can also be downloaded as file E208-DOC.EXE or E208-PSC.EXE from ECMANEWS

Related documents

Record · ID 600405 · SHA-256 3d0dee8c948a901a
Conceptio Open Knowledge Archive — every document is proof-bundled with source, license, and retrieval metadata.