System-Independent Data Format
System-Independent Data Format
(SIDF)
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.
Table of contents
Page
Section 1 - General
1 Scope
2 Conformance
2.1 Conformance of Media Volumes
2.2 Conformance of an originating system
2.3 Conformance of a receiving system
3 References
4 Definitions
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 2
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
5 General conventions and notations
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
Section 2 - Requirements for the media
6 Specific conventions and notations for the recorded format
6.1 Recording of numbers
6.2 Character sets and coding
6.3 Character set specification (CHAR SPEC)
6.3.1 Character Set Type
6.3.2 Character Set Information
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.11.1 Code extension characters
6.12 CS8 character set
6.13 Source Name Space specification
6.13.1 Name Space
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
7 Timestamp
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)
8 Requirements for a standard for recording
9 Cyclic Redundancy Check (CRC)
10 Organization of Information on a Volume
10.1 Recording of Sectors
10.2 Organization of a Volume
10.3 Volume Sets
10.4 Recording of Fields
10.4.1 Null Field
10.5 Recording of Field Tables
10.6 Recording of Buffers
10.7 Recording of file marks
11 Organization of Information within a File Set
11.1 Organization of a File Set
11.2 File Sets spanning multiple Volumes
11.3 Interleaving
12 Organization of information within a File
13 Field Table description
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
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
13.16 Levels of partition interchange
13.16.1 Level 1 of partition interchange
13.16.2 Level 2 of partition interchange
14 Requirements for systems
14.1 Requirements for the description of systems
14.2 Requirements for an originating system
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
14.2.6 Recording of Bit Data
14.2.7 Cyclic Redundancy Check (CRC)
14.3 Requirements for a receiving system
14.3.1 General
14.3.2 Levels of conformance
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
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.
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.
An originating system shall be in conformance with this ECMA Standard if it meets the requirements of 14.2.
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.
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.
For the purposes of this ECMA Standard, the following definitions apply.
Either one or more NULL Fields, or a BLANK SPACE Field Table.
A string of eight binary digits operated upon as a unit.
An ordered set of bytes.
The basic logical grouping of data.
A Byte Sequence which identifies a Field.
A set of logically associated Fields.
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.
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.
A set of associated Files, sourced from a single Source, recorded within a Volume Set.
Two or more File Sets are interleaved if any part of at least one is recorded between any parts of another.
A sequence of one or more Fields, which may be repeated within a Field Table.
The software which controls the file system of the Source.
An information processing system which can create a File Set in a Volume Set for the purpose of data interchange with another system.
Indicates the byte position in a number.
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.
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.
The ordinal sequence number of a Sector within a Volume, starting with 0 (0, 1, 2, 3, ..., n).
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.
A standard that specifies the recording method and the addressing method for the information recorded on a medium.
A set of Sectors which resides within one physical partition on a secondary storage medium.
One Volume, or multiple logically related Volumes.
The ordinal sequence number of each Volume within a Volume Set, starting with 1 (1, 2, 3, ..., n).
- 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.
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.
Data structures are shown in tables indicating the Relative Byte Position (RBP), purpose and size of the entities that comprise the structure.
Fields are denoted by names shown in capital letters.
A Byte Sequence in hexadecimal notation uniquely identifying a Field.
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).
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.
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.
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+ n+m |
n occurrences of the preceding term n or more occurrences of the preceding term 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
- 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.
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.
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.
The Character Set Type identifies the allowed set of characters as shown in figure 3.
Type |
Allowed characters |
0 1 2 3 4 5 6 7 8 9
to 255 |
The CS0 coded character set (see 6.4). The CS1 coded character set (see 6.5). The CS2 coded character set (see 6.6). The CS3 coded character set (see 6.7). The CS4 coded character set (see 6.8). The CS5 coded character set (see 6.9). The CS6 coded character set (see 6.10). The CS7 coded character set (see 6.11). The CS8 coded character set (see 6.12). Reserved for future standardization |
Figure 3 - Sets of allowed characters
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.
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.
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.
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.
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.
The CS4 character set shall be the 95 characters in positions 02/00 to 07/14 of the IRV of ECMA-6.
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.
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 ECMA-35 or ISO/IEC 10646-1. These sequences shall be recorded contiguously from the start of the Field.
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 ECMA-35 or ISO/IEC 10646-1. These sequences shall be recorded contiguously from the start of the field.
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.
- Escape sequences according to ECMA-35 or ISO/IEC 10646-1
- Shift functions according to ECMA-35
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.
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.
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 #01 #02 #03 #04 #05 #FFFFFFFC #FFFFFFFE |
The NS0 Name Space (see 6.14). The NS1 Name Space (see 6.15). The NS2 Name Space (see 6.16). The NS3 Name Space (see 6.17). The NS4 Name Space (see 6.18). The NS5 Name Space (see 6.19). The NSFC Name Space (see 6.20). The NSFE Name Space (see 6.21). |
Figure 4 - Defined Name Spaces
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.
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.
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.
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.
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.
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.
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.
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.
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.
A string shall be recorded as a sequence of zero or more non-NULL characters, followed by a NULL character.
The Resynchronization Pattern shall be the two-byte Byte Sequence #A55A.
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 2 4 5 6 7 8 9 10 11 |
Timestamp type and time zone Year Month Day Hour Minute Second Centisecond Hundreds of microseconds Microseconds |
16-bit integer 16-bit integer 8-bit integer 8-bit integer 8-bit integer 8-bit integer 8-bit integer 8-bit integer 8-bit integer 8-bit integer |
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.
- 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.
This field shall specify the year as a number in the range 1 to 9999.
This field shall specify the month of the year as a number in the range 1 to 12.
This field shall specify the day of the month as a number in the range 1 to 31.
This field shall specify the hour of the day as a number in the range 0 to 23.
This field shall specify the minute of the hour as a number in the range 0 to 59.
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.
This field shall specify the hundredths of the second as a number in the range 0 to 99.
This field shall specify the hundreds of microseconds as a number in the range 0 to 99.
This field shall specify the microseconds as a number in the range 0 to 99.
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.
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.
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.
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
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.
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) (physical end of partition) |
|
(space unavailable to Volume) (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, Two File Sets are recorded on the Volume,
further File Sets can be appended. no further File Sets can be appended without
overwriting the Volume Trailer.
Figure 10 - Simplified view of a Volume Set, the Third File Set of which spans from one Volume to the next.
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.
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.
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.
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.
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.
[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
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.
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.
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 re-recorded in all File Set Continuation Headers of that File Set.
Figures 14 and 15 show examples of the layout of the File Set organization.
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
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.
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.
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.
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.
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>
}
}
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.).
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.
Field Name |
FID |
Mandatory |
Data Description |
VOLUME HEADER |
#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 |
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
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.
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
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
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.
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 |
BUFFER HEADER |
#05 |
Yes |
CRC value or empty |
Figure 20 - Example of a Buffer Header 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.
Field Name |
FID |
Mandatory |
Data Description |
VOLUME INDEX |
#808011 |
Yes |
Resynchronization Pattern |
OFFSET TO END |
#01 |
No |
Bytes from start of next Field to start of last Field |
NUMBER OF FILE SETS |
#808015 |
Yes |
Number of File Set entries iterated below |
½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 |
½SOURCE NAME TYPE |
#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 |
½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 |
VOLUME INDEX |
#808011 |
Yes |
CRC value or empty |
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
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.
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.
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.
Field Name |
FID |
Mandatory |
Data Description |
FILE SET HEADER |
#808004 |
Yes |
Resynchronization Pattern |
OFFSET TO END |
#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 |
BUFFER SIZE |
#06 |
Yes |
Maximum Buffer size permissible in the File Set |
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 |
½SOURCE NAME TYPE |
#8009 |
Cond. 1) |
Source alias naming convention type |
½SOURCE ALIAS |
#808036 |
No 1) |
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 |
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
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.
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.
Field Name |
FID |
Mandatory |
Data Description |
FILE SET TRAILER |
#808009 |
Yes |
Resynchronization Pattern |
OFFSET TO END |
#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 |
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 |
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 |
Figure 23 - Example of a File Set Trailer 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:
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 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 |
Number of Files in File Set |
½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 |
½BUFFER ADDRESS |
#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 |
FILE SET INDEX |
#808010 |
Yes |
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
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.
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.
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) |
REGISTERED IDENTIFIER |
#808043 |
No |
ID for extension to Standard, scope: this File only |
FILE HEADER |
#09 |
Yes |
CRC value or empty |
Figure 25 - Example of a File 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 |
Data Description |
FILE CONTINUATION HEADER |
#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 |
FILE CONTINUATION HEADER |
#8001 |
Yes |
CRC value or empty |
Figure 26 - Example of a File Continuation Header 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 |
Data Description |
FILE INFORMATION |
#813F |
Yes |
Resynchronization Pattern |
OFFSET TO END |
#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 |
FILE INFORMATION |
#813F |
Yes |
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
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.
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 |
PATH |
#10 |
Yes |
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
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.
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 |
CANT COMPRESS DATA |
#81EFE6 |
No |
Source indicated data should not be compressed |
COMPRESS FILE IMMEDIATE |
#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 |
INHIBITIONS |
#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 |
PURGE |
#8136 |
No |
Whether the Source file is marked purgable |
READ ONLY |
#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 |
Figure 29 - Example of a Characteristics Field Table
Source volume File Data shall consist of at least the following Field Tables, recorded in the following order:
- 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.
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
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
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.
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.
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
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
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.
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 ...) |
½STREAM COMPRESS TYPE |
#8005 |
Cond. 1) |
Compression algorithm used for the stream |
SOURCE FILE HEADER |
#0E |
Yes |
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
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
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.
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
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.
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
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.
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.
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 |
STREAM HEADER |
#1D |
Yes |
CRC value or empty |
Figure 38 - Example of a Stream Header 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
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 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.
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.
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.
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.
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.
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 pre-delta 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).
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.
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.
Two levels of partition interchange are specified.
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.
At level 2, no restrictions shall apply.
This ECMA Standard specifies that certain information shall be communicated between a primary file system and/or its associated application, and a medium.
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.
The originating system shall obtain from the requesting application the information that constitutes the Source files to be recorded on the Volume Set.
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:
Volume Header Field Table
- VOLUME SET LABEL
File Set Header Field Table
- FILE SET LABLE
- SOURCE NAME
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.
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.
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.
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.
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.
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.
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.
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.
(normative)
Structure of the Field Identifier
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.
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.
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.
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: Bits of the FID, identifying 63 different FIDs
x'x'x': Bits of the FD identifying 8 different FIDs for each data length
nnn: Length of the Data part of Field equals 2N
Figure A.1 - Structure of 1-byte FIDs
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.
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.
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.
|
First Byte |
|
|
|
Second Byte |
|
|
|
|
|
|||||||||||
2-byte FIDs |
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
||||
Variable Data Length |
1 |
0 |
s |
s |
s |
s |
s |
s |
|
0 |
0 |
x |
x |
x |
x |
x |
x |
||||
Fixed Data Length |
1 |
0 |
s |
s |
s |
s |
s |
s |
|
0 |
1 |
x' |
x' |
x' |
n |
n |
n |
||||
ssssss: set to all ZEROs, or to an operating system identification number in the range #01 to #3F
xxxxxx: Bits of the FID identifying 6 different FIDs
x'x'x': Bits of the FID identifying 8 different FIDs for each data length for each operating system
nnn: Length of the Data part of Field equals 2N
Figure A.2 - Structure of 2-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.
|
First Byte |
|
Second Byte |
|
Third Byte |
|
|||||||||||||||||||||||||
3-byte FIDs |
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|||||
Variable Data Length |
1 |
0 |
s |
s |
s |
s |
s |
s |
|
1 |
x |
x |
x |
x |
x |
x |
x |
|
|
x |
x |
x |
x |
x |
x |
x |
|||||
Fixed Data Length |
1 |
0 |
s |
s |
s |
s |
s |
s |
|
1 |
1 |
1 |
1 |
x' |
n |
n |
n |
|
|
x' |
x' |
x' |
x' |
x' |
x' |
x' |
|||||
ssssss: set to all ZEROs, or to an operating system identification number in the range #01 to #3F
xxxxxxxxxxxxxxx: Bits of the FID identifying 32 768 different FIDs
x'x'x'x'x'x'x'x'x': 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.
nnn: 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.
|
First Byte |
|
|
Second Byte |
|
Third Byte |
|
||||||||||||||||||||||||||
3-byte FIDs |
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
||||||
Variable Data Length |
1 |
1 |
0 |
d |
d |
d |
d |
d |
|
|
d |
d |
d |
d |
d |
d |
d |
d |
|
0 |
0 |
x |
x |
x |
x |
x |
x |
||||||
Fixed Data Length |
1 |
1 |
0 |
d |
d |
d |
d |
d |
|
|
d |
d |
d |
d |
d |
d |
d |
d |
|
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
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 b7 b6 b5 b4 b3 b2 b1 b0 b7 b6 b5 b4 b3 b2 b1 b0 b7 b6 b5 b4 b3 b2 b1 b0
Variable Data Length:
1 1 0 d d d d d d d d d d d d d 1 x x x x x x x x x x x x x x x
Fixed Data Length:
1 1 0 d d d d d d d d d d d d d 1 1 1 1 x' n n n x' x' x' x' x' x' x' x'
ddddddddddddd: Developer identification number in the range #0000 to #1FFF
xxxxxxxxxxxxxxx: Bits of the FID identifying 32 768 FIDs
x'x'x'x'x'x'x'x'x': 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.
nnn: Length of the Data part of Field equals 2N
Figure A.5 - Structure of 4-byte FIDs
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.
FID range |
FID type |
#00-3F |
One byte, variable data length, generic |
#40-7F |
One byte, fixed data length, generic |
|
|
#8000-803F |
Two bytes, variable data length, generic |
#8040-807F |
Two bytes, fixed data length, generic |
#8100-813F |
Two bytes, variable data length, 1st operating system |
#8140-817F |
Two bytes, fixed data length, 1st operating system |
#8100-813F |
Two bytes, variable data length, 2nd operating system |
#8140-817F |
Two bytes, fixed data length, 2nd operating system |
: : |
: : |
#BF00-BF3F |
Two bytes, variable data length, 63rd operating system |
#BF40-BF7F |
Two bytes, fixed data length, 63rd operating system |
|
|
#808000-#80EFFF |
Three bytes, variable data length, generic |
#80F000-#80FFFF |
Three bytes, fixed data length, generic |
#818000-#81EFFF |
Three bytes, variable data length, 1st operating system |
#81F000-#81FFFF |
Three bytes, fixed data length, 1st operating system |
#828000-#82EFFF |
Three bytes, variable data length, 2nd operating system |
#82F000-#82FFFF |
Three bytes, fixed data length, 2nd operating system |
: : |
: : |
#BF8000-#BFEFFF |
Three bytes, variable data length, 63rd operating system |
#BFF000-#BFFFFF |
Three bytes, fixed data length, 63rd operating system |
#C00000-#C0003F |
Three bytes, variable data length, 0-th developer |
#C00040-#C0007F |
Three bytes, fixed data length, 0-th developer |
#C00100-#C0013F |
Three bytes, variable data length, 1st developer |
#C00140-#C0017F |
Three bytes, fixed data length, 1st developer |
: : |
: : |
#DFFF00-#DFFF3F |
Three bytes, variable data length, 8191st developer |
#DFFF40-#DFFF7F |
Three bytes, fixed data length, 8191st developer |
#E00000-#FFFF7F |
Three bytes, not defined by this ECMA Standard, available for registration according to ISO/IEC 13800 |
|
|
#C0008000-#C000EFFF |
Four bytes, variable data length, 0-th developer |
#C000F000-#C000FFFF |
Four bytes, fixed data length, 0-th developer |
#C0018000-#C001EFFF |
Four bytes, variable data length, 1st developer |
#C001F000-#C001FFFF |
Four bytes, fixed data length, 1st developer |
: : |
: : |
#DFFF8000-#DFFFEFFF |
Four bytes, variable data length, 8191st developer |
#DFFF8F00-#DFFFFFFF |
Four bytes, fixed data length, 8191st developer |
#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
(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.
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
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
|
|
Second Byte |
|
|
Third Byte |
|||||||||||||||||||||||
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
|
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
|
1 |
0 |
0 |
0 |
0 |
0 |
0 |
1 |
|
|
0 |
1 |
1 |
0 |
0 |
0 |
0 |
0 |
|
|
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 = bytes. These bytes specify a data length #600A = 24586 bytes.
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.
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
(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: |
#44 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp from the Source when the file was last accessed. |
ARCHIVE TIME
FID: |
#54 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp from the Source when the file was last marked as archived. |
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 Read only b1 HHHHidden from normal Source directory access b2 Intended for use only by the operating system (system) b3 Execute only, shall not be read or written to b4 Source directory b5 One or more of the file Streams have been modified since the archive bit (this bit) was last cleared (archive) b6 Reserved, no meaning b7 May be accessed simultaneously by multiple users (shareable) b8 Reserved, no meaning b9 Reserved, no meaning b10 Reserved, no meaning b11 Do not suballocate file block(s) with other files b12 File is transactional b13 Reserved, no meaning b14 Reserved, no meaning b15 Reserved, no meaning b16 File to be purged immediately after deletion b17 File shall not be renamed b18 File shall not be deleted b19 File shall not be copied b20 Reserved, no meaning b21 Reserved, no meaning b22 File or Source directory was migrated to secondary storage b23 File or Source directory shall not be migrated b24 Reserved, no meaning b25 File streams shall be compressed onto target file system b26 File streams were compressed b27 File owner specified file Streams should not be compressed b28 Reserved, no meaning b29 File deemed not effectively compressible by file system b30 File information other than Stream data has been modified since bit b5 was last cleared |
AUTHENTICATION
FID: |
#8002 |
Data length: |
Variable |
Data description: |
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"). |
BLANK SPACE
FID: |
#808019 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
BLOCK MAP
FID: |
#25 |
Data length: |
Variable |
Data description: |
Bit map for the interpretation of a Data Stream. |
BLOCK SIZE
FID: |
#24 |
Data length: |
Variable |
Data description: |
The size of the blocks defined by the BLOCK MAP of a Data Stream. |
BUFFER ADDRESS
FID: |
#08 |
Data length: |
Variable |
Data description: |
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: |
#8008 |
Data length: |
Variable |
Data description: |
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: |
#05 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
BUFFER OFFSET
FID: |
#808014 |
Data length: |
Variable |
Data description: |
The offset in bytes to a location within a Buffer. |
BUFFER SEQUENCE
FID: |
#07 |
Data length: |
Variable |
Data description: |
The ordinal sequence number of a Buffer within its File Set or other usage set (1, 2, 3, ..., n). |
BUFFER SIZE
FID: |
#06 |
Data length: |
Variable |
Data description: |
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: |
#60 |
Data length: |
Fixed, 1 byte |
Data description: |
This Field shall specify which of the 6 types of data the Buffer contains. Value Data type 0 Implementation Use 1 File 2 File Set Index 3 File Set Subindex 4 Volume Index 5 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: No indication on effective compression Bit b0 set to ONE: Effective compression impossible Bits b1 to b5 shall be set to ZERO, no meaning |
|
|
CHARACTERISTICS
FID: |
#13 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
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: |
#80F402 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp from the originating system when the Volume Trailer was recorded. |
COMPRESS FILE IMMEDIATE
FID: |
#8116 |
Data length: |
Bit Data |
Data description: |
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: No immediate compression requested Bit b0 set to ONE: Immediate compression requested Bits b1 to b5 shall be set to ZERO, no meaning |
CREATION TIME
FID: |
#64 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp when the Source entity was created. |
CREATOR NAME SPACE
FID: |
#81F2FC |
Data length: |
Fixed, 4 bytes |
Data description: |
Name Space used to create the Source entity. |
DELETED FLAG
FID: |
#81F0FE |
Data length: |
Fixed, 1 byte |
Data description: |
This Field shall specify whether the Source entity was deleted. Setting Meaning Bit b0 set to ZERO: Source entity not deleted Bit b0 set to ONE: Source entity deleted Bits b1 to b7 shall be set to ZERO, no meaning |
DELTA BASE TIME
FID: |
#8044 |
Data length: |
Fixed, 16 bytes |
Data description: |
Timestamp of base of Source delta. |
DELTA EXTENT OFFSET
FID: |
#800A |
Data length: |
Variable |
Data description: |
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: |
#800B |
Data length: |
Variable |
Data description: |
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: |
#14 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the Source entity is a Source directory or a parent. Setting Meaning Bit b0 set to ZERO: Source entity is no Source directory or parent Bit b0 set to ONE: Source entity is Source directory or parent Bits b1 to b5 shall be set to ZERO, no meaning |
SOURCE DIRECTORY HEADER
FID: |
#0C |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
SOURCE DIRECTORY TRAILER
FID: |
#0D |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
DO NOT COMPRESS FILE
FID: |
#8115 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the user has requested that the Source entity shall not be compressed. Setting Meaning Bit b0 set to ZERO: No request for no compression Bit b0 set to ONE: Request for no compression Bits b1 to b5 shall be set to ZERO, no meaning |
EXCLUSION OPTIONS
FID: |
#29 |
Data length: |
Bit Data |
Data description: |
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 Data stream not excluded Bit b0 set to ONE Data stream excluded Bit b1 set to ZERO Extended attributes not excluded Bit b1 set to ONE Extended attributes excluded Bits b2 to b5 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: No execute only Bit b0 set to ONE: Execute only Bits b1 to b5 shall be set to ZERO, no meaning |
EXPIRATION TIME
FID: |
#80F404 |
Data length: |
Fixed, 16 bytes |
Data description: |
Timestamp of the expiration of the recorded entity, per agreement between the originating and receiving system. |
FILE CHUNK SIZE
FID: |
#0B |
Data length: |
Variable |
Data description: |
The number of bytes contained by the following File within the current Buffer. |
FILE CONTINUATION HEADER
FID: |
#8001 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
FILE HEADER
FID: |
#09 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
FILE INFORMATION
FID: |
#813F |
Data length: |
Variable |
Data description: |
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: File not invalid Bit b0 set to ONE: File invalid Bits b1 to b5 shall be set to ZERO, no meaning |
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: No file marks before File Set Headers Bit b0 set to ONE: File marks before File Set Headers Bit b1 set to ZERO: No file marks before File Set Trailers Bit b1 set to ONE: File marks before File Set Trailers Bit b2 set to ZERO: No file marks at regular intervals Bit b2 set to ONE: File marks at the Sector Address interval indicated by FILE MARK INTERVAL. Bits b3 to b5 shall be set to ZERO, no meaning 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: File not aborted prematurely Bit b0 set to ONE: File aborted prematurely Bits b1 to b5 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. |
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: |
#8072 |
Data length: |
Fixed, 4 bytes |
Data description: |
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: File Set Index not necessarily present Bit b0 set to ONE: File Set Index present Bits b1 to b5 shall be set to ZERO, no meaning |
FILE SET INDEX FIELDS
FID: |
#808034 |
Data length: |
Variable |
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: |
#80F403 |
Data length: |
Fixed, 16 bytes |
Data description: |
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. |
FILE TYPE
FID: |
#70 |
Data length: |
Fixed, 1 byte |
Data description: |
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 Reserved 1 Implementation use 2 Logical volume 3 Source directory 4 File 5 Transaction set No other values shall be recorded |
FORMAT NAME
FID: |
#8052 |
Data length: |
Fixed, 4 bytes |
Data description: |
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: |
#8062 |
Data length: |
Fixed, 4 bytes |
Data description: |
Version of the Logical Format. A Byte Sequence, which specifies the version as shown below: Byte Meaning B0 Major version number. B1 Minor version number. B2 Subminor version number. B3 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. |
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. |
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: |
#15 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the Source file is marked by the Source as hidden. Setting Meaning Bit b0 set to ZERO: Source file is not hidden Bit b0 set to ONE: Source file is hidden Bits b1 to b5 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: Source file is not indexed Bit b0 set to ONE: Source file is indexed Bits b1 to b5 shall be set to ZERO, no meaning |
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: Copying of this file allowed Bit b0 set to ONE: Copying of this file prohibited Bit b1 set to ZERO: Deletion of this file allowed Bit b1 set to ONE: Deletion of this file prohibited Bit b2 set to ZERO: Rename of this file allowed Bit b2 set to ONE: Rename of this file prohibited Bits b3 to b5 shall be set to ZERO, no meaning |
MODIFIED TIME
FID: |
#74 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp when the Source file was last modified. |
NAME POSITIONS
FID: |
#27 |
Data length: |
Variable |
Data description: |
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: |
NAME SPACE
FID: |
#11 |
Data length: |
Variable |
Data description: |
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. |
NEEDS ARCHIVE
FID: |
#16 |
Data length: |
Bit Data |
Data description: |
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: No Source file Stream modified Bit b0 set to ONE: One or more Source file Streams modified Bits b1 to b5 shall be set to ZERO, no meaning |
NEEDS ARCHIVE CHARACTERISTICS
FID: |
#2D |
Data length: |
Bit Data |
Data description: |
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: No information other than Stream(s) modified Bit b0 set to ONE: Information other than Stream(s) modified Bits b1 to b5 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. |
OFFSET TO END
FID: |
#01 |
Data length: |
Variable |
Data description: |
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: |
#81F0FD |
Data length: |
Fixed, 1 byte |
Data description: |
This Field shall specify whether the Source is a parent. Setting Meaning Bit b0 set to ZERO: Source is not a parent Bit b0 set to ONE: Source is a parent Bits b1 to b7 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. |
PATH
FID: |
#10 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
PATH FULLY QUALIFIED
FID: |
#50 |
Data length: |
Fixed, 1 byte |
Data description: |
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: Associated path is relative Bit b0 set to ONE: Associated path is complete Bits b1 to b7 shall be set to ZERO, no meaning |
PATH NAME
FID: |
#12 |
Data length: |
Variable |
Data description: |
Path name string. |
POSIX FILE MODE
FID: |
#80F203 |
Data length: |
Fixed, 4 bytes |
Data description: |
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 Execute by others (i.e. other than group or owner) b1 Write by others b2 Read by others b3 Execute by group b4 Write by group b5 Read by group b6 Execute by owner b7 Write by owner b8 Read by owner b9 Reserved no meaning b10 Set group ID b11 Set user ID b12 FIFO b13 Character special file b14 Source directory Bits b15 to b31 shall be set to ZERO, no meaning. |
POSIX FILE ID
FID: |
#80F210 |
Data length: |
Fixed, 4 bytes |
Data description: |
The POSIX inode number of the file. Used by the receiving system to rebuild links. |
POSIX FILE SYSTEM ID
FID: |
#80F20F |
Data length: |
Fixed, 4 bytes |
Data description: |
The file system ID, used with the POSIX FILE ID to uniquely identify the Source file. |
POSIX GROUP ID
FID: |
#80F204 |
Data length: |
Fixed, 4 bytes |
Data description: |
Contains the Source file POSIX group ID. |
POSIX NUMBER OF LINKS
FID: |
#80F20D |
Data length: |
Fixed, 4 bytes |
Data description: |
The number of hard links for the Source file. |
POSIX OWNER ID
FID: |
#80F209 |
Data length: |
Fixed, 4 bytes |
Data description: |
The POSIX user ID of the Source file owner. |
POSIX RDEVICE
FID: |
#80F20E |
Data length: |
Fixed, 4 bytes |
Data description: |
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: |
#8136 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether a Source file shall be immediately purged after deletion. Setting Meaning Bit b0 set to ZERO: Purging not required Bit b0 set to ONE: File to be purged immediately after deletion Bits b1 to b5 shall be set to ZERO, no meaning |
READ ONLY
FID: |
#17 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the Source file is read only. Setting Meaning Bit b0 set to ZERO: Source file is not read only Bit b0 set to ONE: Source file is read only Bits b1 to b5 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. |
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: Copy of data stream not stored remotely Bit b0 set to ONE: Copy of data stream stored remotely Bits b1 to b5 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: Remote storage allowed Bit b0 set to ONE: Remote storage not allowed Bits b1 to b5 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. |
SECTOR SIZE
FID: |
#80800E |
Data length: |
Variable |
Data description: |
Sector size in bytes for the Volume. |
SEPARATOR POSITIONS
FID: |
#28 |
Data length: |
Variable |
Data description: |
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: |
#18 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the Source entity is marked as shareable. Setting Meaning Bit b0 set to ZERO: Entity not shareable Bit b0 set to ONE: Entity shareable Bits b1 to b5 shall be set to ZERO, no meaning |
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: |
#0E |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
SOURCE FILE TRAILER
FID: |
#0F |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
SOURCE NAME
FID: |
#02 |
Data length: |
Variable |
Data description: |
A string intended to specify the Source name. The usage of this string is defined by FILE SET REGID. |
SOURCE NAME TYPE
FID: |
#8009 |
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. |
SOURCE OPERATING SYSTEM
FID: |
#03 |
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. |
SOURCE OPERATING SYSTEM VERSION
FID: |
#04 |
Data length: |
Variable |
Data description: |
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: |
#8005 |
Data length: |
Variable |
Data description: |
The type of compression used on the stream. Interpretation of this may be within the scope of a REGISTERED IDENTIFIER. |
STREAM CRC
FID: |
#22 |
Data length: |
Variable |
Data description: |
The CRC bits for the stream. |
STREAM EXPANDED SIZE
FID: |
#8006 |
Data length: |
Variable |
Data description: |
The logical size of the stream, for example the uncompressed size of a compressed stream, or the size represented by a sparse File. |
STREAM FORMAT
FID: |
#2C |
Data length: |
Variable |
Data description: |
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 Clear data 1 Sparse 2 Compressed 3 Delta block 4 Delta extent No other values shall be recorded. |
STREAM HEADER
FID: |
#1D |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
STREAM IS INVALID
FID: |
#21 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the originating system deemed that the Stream was invalid. Setting Meaning Bit b0 set to ZERO: Stream not invalid Bit b0 set to ONE: Stream invalid Bits b1 to b5 shall be set to ZERO, no meaning |
STREAM SIZE
FID: |
#20 |
Data length: |
Variable |
Data description: |
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: |
#1E |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
STREAM TYPE
FID: |
#2B |
Data length: |
Variable |
Data description: |
One of the following 7 types of Stream. Value Type 0 Data 1 Resource 2 FTAM 3 to 9 Reserved, no meaning 10 Extended attributes 11 Alternate data 12 Security data 13 Link data No other values shall be recorded. |
STREAM TYPE SEQUENCE
FID: |
#61 |
Data length: |
Fixed, 2 bytes |
Data description: |
Ordinal sequence number (1, 2, 3, ..., n) of Stream for a given STREAM TYPE. |
SYSTEM
FID: |
#19 |
Data length: |
Bit Data |
Data description: |
This Field shall specify whether the Source indicated that this entity has the system characteristics. Setting Meaning Bit b0 set to ZERO: File has no system characteristics Bit b0 set to ONE: File has system characteristics Bits b1 to b5 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: |
#81F2FA |
Data length: |
Fixed, 4 bytes |
Data description: |
The number of 4 096-byte blocks occupied by all Streams. |
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: |
#8135 |
Data length: |
Bit Data |
Data description: |
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: File not tracked for transaction processing Bit b0 set to ONE: File tracked for transaction processing Bits b1 to b5 shall be set to ZERO, no meaning |
UNUSED IN THIS BUFFER
FID: |
#8000 |
Data length: |
Variable |
Data description: |
The number of bytes not used at the end of the Buffer. |
VOLUME HEADER
FID: |
#808000 |
Data length: |
Variable |
Data description: |
Resynchronization data, CRC or empty. |
VOLUME HEADER WRITE COUNT
FID: |
#80F104 |
Data length: |
Fixed, 2 bytes |
Data description: |
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: No Volume Index required Bit b0 set to ONE: Volume Index required Bits b1 to b5 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. |
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: |
#80F100 |
Data length: |
Fixed, 2 bytes |
Data description: |
The ordinal sequence number of a Volume within the Volume Set (1, 2, 3, ..., n). |
VOLUME SET TIME
FID: |
#80F400 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp when the Volume Set was created. |
VOLUME SIZE
FID: |
#80F201 |
Data length: |
Fixed, 4 bytes |
Data description: |
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. |
VOLUME TIME
FID: |
#80F401 |
Data length: |
Fixed, 16 bytes |
Data description: |
The Timestamp when this individual Volume was created. |
VOLUME TRAILER
FID: |
#808003 |
Data length: |
Variable |
Data description: |
Resynchronization Data, CRC, or empty. |
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
#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
#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
#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
#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
#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
#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
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)
#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)
#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: +41 22 849.60.01
Internet: helpdesk@ecma.ch
This Standard can also be downloaded as file E208-DOC.EXE or E208-PSC.EXE from ECMANEWS