INTERNATIONAL ORGANIZATION FOR STANDARDIZATION

ORGANISATION INTERNATIONALE NORMALISATION

ISO/IEC JTC 1/SC 29/WG 11

CODING OF MOVING PICTURES AND AUDIO

ISO/IEC JTC 1/SC 29/WG 11/N9696

January 2008, Antalya, Turkey

Source:	Systems
Title:	Text of ISO/IEC CD 23000-6 Professional Archival Application Format
Editors:	Noboru Harada, Hendry
Status:	Approved

COMMITTEE DRAFT© ISO/IEC 2008 – All rights reservedISO/IEC CD 23000-6 63Part 6: Professional archival application formatInformation technology — Multimedia application format (MPEG-A)Élément introductif — Élément central — Partie 6: Titre de la partieInformation technology — Multimedia application format (MPEG-A) — Part 6: Professional archival application formatE2008-01-25(30) CommitteeISO/IECISO/IEC J International Standard2008 ISO/IEC 23000ISO/IEC 23000‑6ISO/IEC CD 23000-6 Coding of audio, picture, multimedia and hypermedia informationInformation technology11291 2Heading 2,H2,H21,Œ© o‚µ 2,h2,?c o??E 2,뙥2,?c1,?c o?ƒÊ 2,?2,Œ1,Œ2,Œ©2,DO NOT USE_h2,título 2,Œ©1,Œ©_o‚µ 2,2,Header 2,2nd level,mobil-heading2,UNDERRUBRIK 1-2,Sub-section,Titre 2,Heading 2 Char1,Heading 2 Char Char,Heading 2 Char1 Char CharHeading 1,Heading U,Titre Partie,h1,H1,H11,Œ© o‚µ 1,?c o??E 1,뙥,?c,?c o?ƒÊ 1,?,Œ,título 1,DO NOT USE_h1,Heading,Œ©,...,Titre 1,µ 2,Title1,1st level,GS_1,l1,kopregel 1,Section Head,heading 1,PB,ASSET_heading1,Chapter,h11,1st level1,GS_11,l11,kopregel 11 02 STD Version 2.1c230 4C:\Documents and Settings\ITSCJ\My Documents\29f925\新しいフォルダ\w9696.doc ISO/IEC JTC 1/SC 29 N

Date: 2008-01-25

ISO/IEC CD 23000-6

ISO/IEC JTC 1/SC 29/WG 11

Secretariat:

Information technology — Multimedia application format (MPEG-A) — Part 6: Professional archival application format

Élément introductif — Élément central — Partie 6: Titre de la partie

Warning

This document is not an ISO International Standard. It is distributed for review and comment. It is subject to change without notice and may not be referred to as an International Standard.

Recipients of this draft are invited to submit, with their comments, notification of any relevant patent rights of which they are aware and to provide supporting documentation.

Copyright notice

This ISO document is a working draft or committee draft and is copyright-protected by ISO. While the reproduction of working drafts or committee drafts in any form for use by participants in the ISO standards development process is permitted without prior permission from ISO, neither this document nor any extract from it may be reproduced, stored or transmitted in any form for any other purpose without prior written permission from ISO.

Requests for permission to reproduce this document for the purpose of selling it should be addressed as shown below or to ISO's member body in the country of the requester:

[Indicate the full address, telephone number, fax number, telex number, and electronic mail address, as appropriate, of the Copyright Manger of the ISO member body responsible for the secretariat of the TC or SC within the framework of which the working document has been prepared.]

Reproduction for sales purposes may be subject to royalty payments or a licensing agreement.

Violators may be prosecuted.

Contents	Page

1	Scope	1

2	Normative references	1

3	Terms and definitions	3

3.1	Application-specific Context Information	3

3.2	Archive	3

3.3	Archive Structure Information	3

3.4	Content Information	3

3.5	Context Information	3

3.6	File Attribute	3

3.7	File Formatter	3

3.8	Information Package	3

3.9	Pre-processing	3

3.10	Pre-processing Tool	3

3.11	Pre-processing Information	3

3.12	Preservation	3

3.13	Preservation Description Information	3

4	System Overview	4

5	Archive Structure Information	7

5.1	Overview	7

5.2	MPEG-21 DIDL 2nd Edition Profile for PA-AF	7

5.3	File Attribute Model	9

5.4	Extracting Content Information from PA-AF Archive	11

6	Context Information	12

6.1	Overview	12

6.2	MPEG-7 Multimedia Description Scheme Profile for PA-AF	12

6.3	Application Specific Context Information	22

7	Pre-processing Information	23

7.1	Overview	23

7.2	MPEG-21 IPMP Components Base Profile for PA-AF	23

7.3	Content Usage Governance Description	23

7.4	Identification of Pre-processing Tool	23

8	File Format for PA-AF	23

8.1	Overview	23

8.2	Restrictions on MPEG-21 File Format for PA-AF	23

8.3	File Brands	24

9	Conformance Points	24

Annex A (normative) MPEG-21 DIDL 2nd Edition Profile for PA-AF Schema Definition	27

Annex B (normative) File Attribute Model Schema Definition	32

Annex C (normative) MPEG-7 Multimedia Description Scheme Profile for PA-AF	34

Annex D (informative) Example of Context Information for PA-AF	35

D.1	MPEG-7 MDS Profile for PA-AF	35

D.2	Application Specific Context Information	39

Annex E (normative) MPEG-21 IPMP Component Base Profile for PA-AF Schema Definition	41

Annex F (informative) Recommendation for Mime Type and Pre-Processing Tool Identification	44

F.1	Overview	44

F.2	mimeTypes	44

F.3	Content Encoding	45

Annex G (informative) Example of Using Preprocessing Information for PA-AF	46

G.1	Archiving One File Without Compression	46

G.2	Archiving One File With Compression	46

G.3	Archiving Two Files in One Directory	47

G.4	Archiving Composite File	48

G.5	Archiving Governed and Protected File	48

G.6	Archiving File with Digital Signature for Integrity Check	50

Annex H (informative) Example of File Format Structure for Professional Archival AF	52

H.1	File Format Structure Example	52

H.2	The Item Location Box and the Item Information Box	52

Foreword

ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1.

International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2.

The main task of the joint technical committee is to prepare International Standards. Draft International Standards adopted by the joint technical committee are circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote.

Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights.

ISO/IEC 23000‑6 was prepared by Joint Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 29, Coding of audio, picture, multimedia and hypermedia information.

ISO/IEC 23000 consists of the following parts, under the general title Information technology — Multimedia application format (MPEG-A):

Part 1: Purpose for multimedia application formats

Part 2: MPEG music player application format

Part 3: Photo player application format

Part 4: Musical slide show application format

Part 5: Media streaming player

Part 6: Professional archival application format

Part 7: Open access application format

Part 8: Portable video application format

Part 9: Digital Multimedia Broadcasting application format

Part 10: Video surveillance application format

Part 11: Stereoscopic video application format

Introduction

The advance of digital multimedia technology has made creation of digital multimedia content easier. This has resulted abundance of digital multimedia content available for consumption. While it is good news for digital multimedia content consumption, it also creates necessity to provide management for digital multimedia contents. Digital multimedia contents should be well-handled and well-preserved in the content archive for current and future use such as reusing part or the whole content, aggregation of one or several contents create creation of new content, etc.

For preserving digital multimedia content in an archive, one has to provide packaging mechanism together with preservation technologies such as data protection, data integrity, and data compression. In addition, consumption time from the digital multimedia content is stored in the archive until it is consumed in the future may be long; therefore, the context of the digital multimedia content stored in the archive is as important as the content itself. The context information may include any information that can satisfied who, what, where, when, and why questions about the content. Together with its context information, digital multimedia content should be processed and packed in the packaging mechanism for the archive.

This document is an MPEG standard that specifies component technologies and their integration for digital multimedia content archive. The standard is developed via the course of ISO/IEC 23000. ISO/IEC 23000 (also known as “MPEG-A”) is an MPEG standard that supports a fast track to standardization by selecting readily tested and verified tools taken from the MPEG body of standards and combining them to form a AF (Multimedia Application Format). If a needed piece of technology is not provided within the MPEG, then additional technologies originating from other organizations can be included by reference in order to facilitate the envisioned application format. For digital multimedia content archive, MPEG has designated ISO/IEC 23000 Part 6: Professional archival application format. For the rest of this document, the term Professional Archival Application Format (PA-AF) is used to refer to ISO/IEC 23000-6.

Information technology — Multimedia application format (MPEG-A) — Part 6: Professional archival application format

Scope

The purpose of the Professional Archival Application Format (PA-AF) is to provide a standardized packaging format. This packaging format can also serve as an implementation of the archival reference model specified by the Open Archival Information System (OAIS). The OAIS Reference Model is a framework for understanding and applying concepts necessary for long-term digital information (where long-term is long enough to be concerned about changing technologies). In addition, the PA-AF can also be used as an intermediate or exchange packaging format for any kind of multimedia content.

The action of archiving digital multimedia content may include processes starting from creation, delivery to the archival system, and dissemination to consumers. The PA-AF specifies the digital archive produced by the archiving process. The PA-AF does not specify how the content is created. The PA-AF does not specify any agreement of how the content should be handled and delivered to the archival system. The PA-AF assumes that the content to be packed into the PA-AF archive is available in an appropriate digital format. The PA-AF also does not specify how the content is disseminated to the consumer as the extracted content from a PA-AF archive is exactly in the format that was input to the PA-AF archive.

The PA-AF specifies the file format for carriage of digital multimedia content, metadata to describe context information related to digital multimedia content stored in the archive, metadata to describe the logical structure of how the digital multimedia content is stored in the archive, identification of processing tools that are applied to the digital multimedia content as pre-processing treatment before they are stored in the archive, as well as data protection and integrity tools, data governance tools, and data compression tools.

Normative references

Normative documents contain provisions which, through reference in this text, constitute provisions of this part of ISO/IEC 23000. At the time of publication of this document, the specific editions indicated below were valid. However, parties to agreements based on this part of ISO/IEC 23000 are encouraged to investigate the possibility of applying the most recent editions of the normative documents indicated below. For undated references, the latest edition of the normative document referred to applies. Members of ISO and IEC maintain registers of currently valid International Standards. The IETF and the W3C

ISO/IEC 14496-12:2005 Information technology -- Coding of audio-visual objects -- Part 12: ISO base media file format

ISO/IEC 21000 Information technology -- Multimedia framework (MPEG-21)

ISO/IEC 21000-2:2005 Information technology -- Multimedia framework (MPEG-21) -- Part 2: Digital Item Declaration

ISO/IEC 21000-3:2003 Information technology -- Multimedia framework (MPEG-21) -- Part 3: Digital Item Identification

ISO/IEC 21000-3:2003 Information technology -- Multimedia framework (MPEG-21) -- Part 4: Intellectual Property Management and Protection

ISO/IEC 21000-3:2003 Information technology -- Multimedia framework (MPEG-21) -- Part 5: Rights Expression Language

ISO/IEC 21000-9:2005 Information technology -- Multimedia framework (MPEG-21) -- Part 9: File Format

ISO/IEC CD 21000-14 Information technology -- Multimedia framework (MPEG-21) -- Part 14: Conformance Testing

IETF RFC1738, Uniform Resource Locatores (URL), IETF Request for Comments: 1738, December 1994

IETF RFC1808, Relative Uniform Resource Locatores, IETF Request for Comments: 1808, June 1995

IETF RFC2045, Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies, IETF Request for Comments: 2045, November 1996

IETF RFC2046, Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types, IETF Request for Comments: 2046, November 1996

IETF RFC2047, MIME (Multipurpose Internet Mail Extensions) Part Three: Message Header Entensions for Non-ASCII Text, IETF Request for Comments: 2047, November 1996

IETF RFC2048, Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures, IETF Request for Comments: 2048, November 1996

IETF RFC2049, Multipurpose Internet Mail Extensions (MIME) Part Five: Conformance Criteria and Examples, IETF Request for Comments: 2049, November 1996

IETF RFC2396, Uniform Resource Identifires (URI): Generic Syntax, IETF Request for Comments: 2396, August 1998

IETF RFC2396, Uniform Resource Identifires (URI): Generic Syntax, IETF Request for Comments: 2396, August 1998

IETF RFC2616, Hypertext Transfer Protocol – HTTP/1.1, IETF Request for Comments: 2616, June 1999

IETF RFC2978, IANA Charset RegistrationProcedures, IETF Request for Comments: 2978, October 2000

IETF RFC3003, The audio/mpeg Media Type, IETF Request for Comments: 3003, November 2000

IETF RFC3629, UTF-8, a transformation format of ISO 10646, IETF Request for Comments: 3629, November 2003

IETF RFC4337, MPEG-4 MIME Types, IETF Request for Comments: 4337, March 2006

W3C XINCLUDE, XML Inclusions (Xinclude) Version 1.0, W3C Recommendation, 20 December 2004

W3C XML, Extensible Markup Language 1.0(Second Edition), W3C Recommendation, 6 October 2000

W3C XMLX14N, Cannonical XML Version 1.0, W3C Recommendation, 15 March 2001

W3C XMLNAMES, Namespaces in XML, W3C Recommendation, 14 January 1999

W3C XMLSCHEMA, XML Schema Part 1: Structures Second Edition, W3C Recommendation, 28 October 2004

W3C XMLSCHEMA, XML Schema Part 2: Datatypes Second Edition, W3C Recommendation, 28 October 2004

IANA Matrix for Protocol Parameter Assignment/Registration Procedures

Character Sets

Character set: http://www.iana.org/assignments/character-sets

Multipurpose Internet Mail Extensions (MIME)

Access-Types: http://www.iana.org/assignments/access-types

Media Type Parameters: http://www.iana.org/assignments/media-types-parameters

Media Types: http://www.iana.org/assignments/media-types/index.html

ISO/IEC 14496-3:2005 Information technology -- Coding of audio-visual objects -- Part 3: Audio

ISO/IEC 14496-3:2005/Amd.2:2006, Audio Lossless Coding (ALS), new audio profiles and BSAC extensions.

ISO/IEC 14496-3:2005/Amd.2:2006/COR2:2006.

ISO/IEC 14496-14:2003 Information technology -- Coding of audio-visual objects -- Part 14: MP4 file format.

ISO 14721:2003 Space data and information transfer systems – Open archival information system – Reference mode.

Terms and definitions

Refer to the normative references for terms and definitions used throughout this document except for the terms shown below:

Application-specific Context Information

Archive

Archive Structure Information

Content Information

Context Information

File Attribute

File Formatter

Information Package

Pre-processing

Pre-processing Tool

Pre-processing Information

Preservation

Preservation Description Information

-- TBD --

System Overview

PA-AF provides a standardized format to archive digital information in the form of Information Package. Figure 1 illustrates the logical view of PA-AF archive. PA-AF archive consists of one or more Content Information object and Preservation Description Information which are wrapped in an archive file container. Content Information is the information which is targeted for preservation. For example, it can be video file, audio file, text, or any other type of file. Preservation Description Information is the information which can be used to assist end-user(s) and/or machine to understand the archive and Content Information stored in the archive.

Figure 1 — Logical view of an archive

Content Information includes digital content data in its original format as it was inputted into the PA-AF archive and/or in the format after pre-processed with pre-processing tools allowed by this specification. The categories of pre-processing tool are lossless data compression, reversible data protection such as encryptions, and removable data attached to the content for usage governance and data integrity such as checksums, and digital licenses. Note that it is important to highlight that this specification does not define any specific pre-processing tools but define mechanism to describe application of such actions to the Content Information.

Preservation Description Information uses XML metadata as its information representation. Preservation Description Information includes Archive Structure Information, Context Information, and Pre-processing Information.

Archive Structure Information describes structural relationship among Content Information. Figure 2 illustrates the importance of Archive Structure Information. While the original structure of digital files inputted into PA-AF archive can be hierarchical in one or more directories, in a physical PA-AF file format, they are stored in flat manner. Archive Structure Information preserves the original hierarchical structure of the input digital files. Hence, when Content Information is extracted from the PA-AF archive, the output digital file structure is as it was inputted into the PA-AF. Archive Structure Information also acts as entry point to access Context Information and Pre-processing Information of each Content Information.

Figure 2 — Archive Structure Information usage illustration

Context Information describes context information attached to the PA-AF archive and Content Information.

It includes:

Creation information which describes what, how, when, where, who, and why.

Archive

Content Information

Profile information of the Content Information such as the file format, file size, audio and visual profile of the content (if it is an audio visual data).

Access history to the Content Information which records any actions applied to the Content Information such as archive and extracted. This record may include who the actor is and when the action is performed.

Application specific context information.

In practice, each application domain that adopts PA-AF specification could add additional information to describe the Content Information in the PA-AF archive to satisfy its specific requirements by means of application specific context information. Figure 3 illustrates how PA-AF accommodates such mechanism. The application specific context information can be manifested in any meta information format and archived in the PA-AF archive as Content Information. PA-AF provides a link to refer to this application specific context information so that application that can understand this information can read and use it.

Figure 3 — How PA-AF accommodates app-specific context information

Pre-processing Information describes profile of tools that are used during pre-processing phase in the PA-AF archive creation and how they are applied. It contains information such as identification of the tool, required parameters to execute the tool, which part of Content Information is pre-processed with that tool, and where to acquire to tool.

Figure 4 illustrates system that takes digital files as its input and creates PA-AF archive file as its output. The main modules are:

Archive structure information generator which analyzes and generate XML metadata to model the structure of the input digital files.

Context information generator which creates XML metadata to record any context information for output PA-AF archive file and for each of input digital files.

Pre-processing information generator which records tools’ profile and how they are applied to the input digital files during pre-processing step.

Preservation description information generator which combines all generated XML metadata.

File formatter that takes Preservation Description Information and digital files (original or pre-processed) and wrapped them in the file as designed for PA-AF.

Figure 4 — Professional archival AF system

To realize the above system, PA-AF adopts the following component technologies:

MPEG-21 Digital Item Declaration Language 2nd Edition Profile for PA-AF

MPEG-21 Digital Item Identifier

MPEG-21 Intellectual Property Management and Protection Components Base Profile for PA-AF

MPEG-21 Rights Expression Language MAM Profile

MPEG-7 Multimedia Description Scheme Profile for PA-AF

MPEG-21 File Format

Lossless compression tool identifiers

Encryption, hash, and digital signature identifiers

Additional metadata dedicated for use in PA-AF only

The component technologies listed above can be used in combination to fulfil basic functionality and enhanced functionality of PA-AF as illustrated by Figure 5. The enhanced functionality is optional and implemented on top of the basic functionality. For example, combination of MPEG-21 File Format, MPEG-21 DIDIL 2nd Edition Profile for PA-AF, MPEG-21 DII, and MPEG-7 Creation Information Tool provide solution to satisfy the basic functionality of PA-AF which is packaging Content Information in PA-AF archive. By adding MPEG-21 IPMP Components Base Profile for PA-AF, one can add functionality such as compression, protection, and integrity checking to the PA-AF. By adding MPEG-21 REL MAM Profile, one can add license information to govern the usage of the PA-AF archive. Finally, by adding MPEG-7 MDS scheme Profile for PA-AF, one can have interoperable description of Content Information that can be exploited to implement searching functionality. Combination of all component technologies provides full solution for PA-AF.

Figure 5 — Basic and enhanced functionality of PA-AF

Archive Structure Information

Overview

PA-AF specifies hierarchical structure and file attributes of content information packed in a PA-AF package file using MPEG-21 DIDL 2nd Edition Profile for PA-AF and File Attribute Model. Following sub clauses describe how the information can be represented in a DID XML. Normative steps to access content information are also described in this chapter.

MPEG-21 DIDL 2nd Edition Profile for PA-AF

PA-AF adopts MPEG-21 DIDL 2nd Edition to represent its Archive Structure Information. Because the MPEG-21 DIDL 2nd Edition is designed to accommodate various digital item modelling scenarios, some elements of it are not necessary for PA-AF. Therefore, in this section, a profile of MPEG-21 DIDL 2nd Edition that contains set of elements dedicated only for PA-AF is presented.

MPEG-21 DIDL 2nd Edition profile for PA-AF is a subset of [1], with restrictions, and two additional attributes. It is designed to provide the following functionalities:

Model the original structure of the input files for archive creation

Provide pointer to the location of archived file in the archive container

Provide container for other information related to archive itself and each Content Information

The subset of MPEG-21 DIDL 2nd Edition, description of each element’s use, and restrictions applied on them are listed in Table 1.

Table 1 — Elements of MPEG-21 DIDL 2nd Edition Profile for PA-AF

MPEG-21 DIDL 2nd Edition
Profile Element	Restriction
DIDL	Possible child element is only Container and the cardinality is exactly 1
Container	As in sub clause 7.2.8 of [1]
Item	Possible children elements are Component, and Descriptor
The number of Component is exactly one
Component	Possible children elements are Resource and Anchor
The number of Resource is exactly one and the number of Anchor is zero to unlimited
Resource	Restricted to have no child element
Possible attributes are mimeType, ref, and contentEncoding
Descriptor	Possible child element is only Statement
Statement	Possible attribute is only mimeType with value “text/xml”
Anchor	Possible child element is only Fragment
Fragment	Restricted to have no child element
Add new attribute “mimeType” as that of Resource’s
Add new attribute “contentEncoding” as that of Resource’s

The association of MPEG-21 DIDL 2nd Edition Profile and file structure is listed in Table 2.

Table 2 — MPEG-21 DIDL 2nd Edition Profile element
and file structure association

Element Name	Association to file structure
Container	Directory
One directory is modeled by one Container element
Item	File
One file is modeled by one Item element
Resource	Provide link to physical location of archived file in the archive container
Fragment	Fragment of a file

DIDL element shall contain exactly one Container, a root container, which is not the directory of a file system but a container for one or more directories and/or one or more files.

Table 3 shows an example of MPEG-21 DIDL 2nd Edition Profile instance for a file structure modeling. Common attributes of directory and file such as name, readable, writeable, hidden, etc are model by xmlscheme defined in sub clause 5.2.

Table 3 — Example of file structure model

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2002:02-DIDL-NS DIDL.xsd ">

<Container> <!--Root Container-->

<Container> <!--Directory in level 1-->

<Container> <!--First directory in level 2-->

<Item/> <!--First file in level 3-->

</Container>

<Item/> <!--First file in level 2-->

<Item/> <!--Second file in level 2-->

</Container>

<Item/> <!--First file in level 1-->

<Item/> <!--Second file in level 1-->

</Container>

</DIDL>

File Attribute Model

File attribute model is metadata designed to carry any attributes that can be attached to directory or file in the file system. In the use with MPEG-21 DIDL 2nd Edition Profile for PA-AF, file attribute model metadata shall be carried under the Statement of first Descriptor of each Container or Item. Figure 6 shows the structure of file attribute model metadata.

Figure 6 — Structure of file attribute model metadata

Table 4 describes the semantics of file attribute model metadata.

Table 4 — Semantics of file attribute model metadata

Name	Definition
FileSystemAttributes	Describes attributes that can be attached to a file or a directory of a file system
Name	Describes the name of the file or directory it describes
ParentPath	Describes the URI of absolute path from the file system root to the file or directory
Only file and directories under the first Container needs to declare ParentPath while the remaining parent path of file or directories can be inferred.
EncodedPath	Describes the original path of the file in encoded by base64 binary. The original character set in which the path is written is described by “charset” attribute. PA-AF adopts the character sets recommended by IANA Matrix which can be found in http://www.iana.org/assignments/character-sets and http://www.iana.org/assignments/media-types-parameters.
OriginalSize	Describes the size of file. The unit is “byte”
OriginalTimestamp	Describes the original timestamp of a last modification time of the file or folder given by file system. OriginalTimestamp is stored in the format “timePointType” adopted from MPEG-7 data types for universal representation across different operating systems and file systems
System	If presents for describing a directory, it describes that the all files under this directory and sub-directories are system’s files
If presents for describing a file, it describes that the file is system’s file
Hidden	Describes that the file or directory is hidden

If used for describing directory, the effect of this attribute is recursive to all files under this directory and sub-directories
OwnerRestrictions	Describes any restrictions on access imposed to the owner
GroupRestrictions	Describes any restrictions on access imposed to the group of owner
OtherRestrictions	Describes any restrictions on access imposed to any user other than owner and its group
NoRead	Restricts read action to the file or directory. The absent of this element indicates that the file or directory can be read by the user
NoWrite	Restricts write (modify) action to the file or directory. The absent of this element indicates that the file or directory can be written (modified) by the user
NoExecute	Restricts execute action to the file or directory. The absent of this element indicates that the file can be executed by the user

Table 5 shows an example of the use of file attribute model metadata in an instance of MPEG-21 DIDL 2nd Edition.

Table 5 — Example of instance using file attribute model metadata

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS" xmlns:pamaf="urn:mpeg:mpeg21:2007:01-PAAF-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2002:02-DIDL-NS DIDL.xsd urn:mpeg:mpeg21:2007:01-PAAF-NS PAAF.xsd ">

<Container>

<!--Root Container-->

<Container>

<Descriptor>

<Statement mimeType="text/xml">

<pamaf:FileSystemAttributes>

<pamaf:Name>Directory-1</pamaf:Name>

<pamaf:ParentPath ref="C://ParentDirectoryOfMyArchive"/>

</pamaf:FileSystemAttributes>

</Statement>

</Descriptor>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<pamaf:FileSystemAttributes>

<pamaf:Name>File-1-UnderDirectory-1</pamaf:Name>

<pamaf:OriginalSize>1024</pamaf:OriginalSize>

<pamaf:OtherRestrictions>

<pamaf:NoWrite/>

<pamaf:NoExecute/>

</pamaf:OtherRestrictions>

</pamaf:FileSystemAttributes>

</Statement>

</Descriptor>

</Item>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<pamaf:FileSystemAttributes>

<pamaf:Name>File-2-UnderDirectory-1</pamaf:Name>

<pamaf:OriginalSize>102400</pamaf:OriginalSize>

</pamaf:FileSystemAttributes>

</Statement>

</Descriptor>

</Item>

</Container>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<pamaf:FileSystemAttributes>

<pamaf:Name>File-3-AtRoot</pamaf:Name>

<pamaf:ParentPath ref="C://ParentDirectoryOfMyArchive"/>

<pamaf:OriginalSize>512000</pamaf:OriginalSize>

<pamaf:System/>

</pamaf:FileSystemAttributes>

</Statement>

</Descriptor>

</Item>

</Container>

</DIDL>

Extracting Content Information from PA-AF Archive

Content information packed in a PA-AF file can be addressed within the container file using one of following anchor forms:

a) ref="#item_id=2" (when file is the second item of the iloc-box)

b) ref="#item_name=folder1/folder2/file2.wav"

c) ref="folder1/folder2/file2.wav"

The specification is defined in the section 8.44.7 URL Forms for meta boxes in ISO/IEC 14496-12: ISO base media file format.

When the anchor form a) or b) is chosen, values set in the item_id or the item_name fields of the item information box are refered from DID XML with the relative URL string began with a cross-hatch "#" character when the referering XML and archived files are contained in a same file. According to RFC2396: Uniform Resource Identifires (URI): Generic Syntax [], and RFC1898: Relative Uniform Resource Locatores [], a relative URL with only a fragment string is regarded as the URL to the same file. The cross-hatch "#" character leads the fragment string.

All values of the item_name field shall be set to the relative path name from the context-root of the hiararchcall folder structure of the archived file. Context-root is the most root folder of the PA-AF package.

When a relative path name string from the context-root of the package is used to reference a file, a PA-AF unpackaging tool shall first try to find an item entry of which the item_name is set as the same relative path string. When the search is faled, it means that the file is not stored in the PA-AF file.

Steps requierd for extracting content information from a PA-AF package file shall be as follows:

1) Search an item entry by a value stored in a ref element of DID XML.

2) Search item entry by the value stored in item_name field of iinf box.

3) Get an address to the first byte of the content information from the related entry of the iloc box.

4) Extract the content information file from the address.

Context Information

Overview

Context Information may consists of newly created Context Information, which is manually filled by archive creator or automatically generated by PA-AF conformance application, and legacy Context Information which has been existed and given when the digital file is inputted to the archive. For newly created Context Information, PA-AF adopts profile of MPEG-7 Multimedia Description Scheme (MDS) that is designed and dedicated for PA-AF. In addition to profile of MPEG-7 MDS, PA-AF also defines some additional elements, which are not defined by MPEG-7 MDS, to describe some file attributes of the Content Information.

Figure 7 — Context Information structure

MPEG-7 Multimedia Description Scheme Profile for PA-AF

MPEG-7 Multimedia Description Scheme (MDS) provides tools multimedia description. The PA-AF selects some tools from the collection of MPEG-7 MDS for its Creation Information, Media Profile Information, and Access History Information. Table 6, Table 7, and Table 8 list selected MPEG-7 MDS Tools and restriction when use in the PA-AF.

Table 6 — Selected MPEG-7 MDS Tools for the PA-AF Creation Information

Descriptors/Datatype/Elements	Restrictions	Remarks
Creation information tools
CreationInformationType
Describes creation features of the multimedia content
Creation	Describes the creation of the content of PA AF	Describes the creation of the content, including places, dates, actions, materials, staff (technical and artistic) and organizations involved
Title	Shall use only text title. While more complicated title media such as title with image, video, or audio are not defined but there are not precluded	Describes one textual title of the multimedia content. Multiple titles are allowed. They may correspond to different types (indicated by the type attribute) or to different languages (indicated by the xml:lang attribute)
TitleMedia	Excluded	PA-AF shall use only simple title mechanism
Abstract
Describes a textual abstract of the multimedia content (optional). It is a summary, assigned during the creation process, of what is conveyed in the multimedia content
Creator
Describes one creator of the multimedia content (optional). It allows the description of persons, organizations, groups, and so forth involved in the creation as well as their role
CreationCoordinates
Describes the location and the date of creation of the multimedia content (optional)
Location
Describes the place where the multimedia content was created (optional)
Date
Describes the date or period when the multimedia content was created (optional)
CreationTool
Describes one device (and its settings) used in the creation of the multimedia content (optional)

Note that creation tool is different from PA-AF pre-processing tool. CreationTool defines module / application used to create the content whereas PA-AF pre-processing tool is module used to process the content before being stored in archive.
Tool
Describes a tool used during the creation process. For example: software, lens, films, musical instrument, microphone, and so forth
Settings
Indicates the setting (parameters) for the tool used during creation (optional). The names and values of tool setting are tool specific and are not specified by this standard
CopyrightString
Describes one textual label indicating information that may be displayed or otherwise made known to the end user (optional). It is not a formal declaration of the usage rights of the multimedia content
Classification	Describes the user and service oriented classification of the PA AF content	Describes the classification of the multimedia content
Form
Describes the production type of the document, such as, film, news program, magazine, documentary, etc. (optional)
Genre
Describes what the multimedia content is about (broad classification), such as sports, politics, economics, etc. (optional)
Subject
Describes the subject (specific classification) of the multimedia content (optional). The subject allows a textual annotation to classify the multimedia content
Purpose
Describes one purpose for which the multimedia content was created (optional)
Language
Describes one language of the spoken audio of the program (optional)
CaptionLanguage
Describes one language of the caption information included with the program (optional). The type of the caption information associated with the program is denoted by the closed attribute. Closed captions can be turned on or off by the user, while open captions (or subtitles) are part of the picture itself and remain visible
SignLanguage
Specifies the audio sign language provided for the multimedia content, and, optionally, qualifies the use of signing as a primary language or as a translation of the spoken dialogue (optional)
Release
Describes the release date and region of the multimedia content (optional)
Target
Describes the target of the multimedia content in terms of market classification, age and country or region (optional)
Market
Describes one targeted market of the multimedia content (optional)
Age
Describes the targeted age range of the multimedia content (optional)
Region
Describes one target country or region for the multimedia content (optional)
ParentalGuidance
Describes one parental guidance classification of the multimedia content (optional)
MediaReview
Describes one media review about the multimedia content (optional)
Rating
Specifies the rating value and criterion used in the review (optional)
FreeTextReview
Describes a free-text review of the multimedia content without reference to a rating scheme (optional). There can be multiple instances of the review in different languages
ReviewReference
Describes the Media Locator of the material from where the review may have been extracted or quoted (optional). For example, the TV magazine that published the review, the Films Guide from where the review was quoted, an interview from where the review was transcribed
Reviewer
Describes the reviewer/critic of the multimedia content (optional). Since it is defined as AgentType, this field can describe a person, a group of persons or an organization
RelatedMaterial	Shall have Material Type and MediaLocator as its children elements	Describes material containing additional information about the multimedia content or related to it (e.g., extended reports of a news program or Web pages with information about topics covered in the news).

Note that content can also related material that are stored in the same and/or other archive files
MaterialType
Describes the type of the related material (optional). For example, script of a movie, original book, lyrics of a song, or drafts of a graphic design
MediaLocator
Describes the media location of the related material

Table 7 — Selected MPEG-7 MDS Tools for the PA-AF Media Profile Information

Descriptors/Datatype/Elements	Restrictions	Remarks
Media description tool
MediaInformationType	Shall have only MediaProfileType as its child element	Describes the physical format of the multimedia data
MediaIdentificationType	Excluded

PA-AF MAF should used MPEG-21 DII for content identification
MediaProfileType	Shall not have MediaTranscodingHints as its child element	Describes the media profile of the multimedia content being described
ComponentMediaProfile
Describes one component Media Profile of a multiplexed Media Profile, describing a multimedia content with different component multimedia contents (optional)
MediaFormat
Describes the format and coding parameters of the Media Profile
Content
Describes the media present in the Media Profile (e.g., audio, image, scene definition, video, audiovisual)
Medium
Describes the physical storage medium on which the Media Profile is stored (optional)
FileFormat
Describes the file format of the Media Profile (optional)
FileSize
Indicates the size, in bytes, of the file where the Media Profile is stored (optional)
System
Describes the broad media format of the Media Profile (optional)
Bandwidth
Indicates the bandwidth range in Hz covered by the coded multimedia content (optional). Its value dependents on the acquisition filters or transcoding applied to the Media Profile
BitRate
Indicates the nominal bit rate in bit/s of the Media Profile (optional)
TargetChannelBitRate
Indicates the nominal bit rate in bits/s of the channel for which this MediaProfile is targeted (optional)
ScalableCoding
Indicates the scalability used in the coding (optional)
VisualCoding
Describes the coding of the visual component of the Media Profile (optional). If a content entity is AV, VisualCoding and AudioCoding are used simultaneously
Format
Describes the coding format of the visual component of the Media Profile (optional). If a content entity is AV, VisualCoding and AudioCoding are used simultaneously
Pixel
Describes the pixels of images and video frames (optional)
Frame
Describes the frame of images and video frames
ColorSampling
Describes de color sampling on the video component of the Media Profile (optional)
AudioCoding
Describes the coding of the audio component of the Media Profile (optional). If a content entity is AV, VisualCoding and AudioCoding are used simultaneously
Format
Describes the coding format of the audio component of the Media Profile (optional). If a content entity is AV, VisualCoding and AudioCoding are used simultaneously
AudioChannels
Describes the number and optionally the configuration of audio channels in the Media Profile (optional). The channel configuration information can be described by use of ‘front’, ‘side’, ‘rear’ and ‘lfe’ attributes. In case of multilingual or multitrack audio stream, the number of tracks can be described on ‘track’ attribute
Sample
Describes the audio samples (optional)
Emphasis
Indicates the audio pre-emphasis used in the encoding of the multimedia content (optional)
Presentation
Describes the audio presentation format of the Media Profile (optional). An example of CS is AudioPresentationCS. AudioChannels allows to define channel configuration is a more detailed way
SceneCodingFormat
Describes the coding format for a scene composition stream (optional), for example a BIFS stream in MPEG-4
GraphicsCodingFormat
Describes the coding format for a graphics stream (optional), for example VRML
OtherCodingFormat
Describes other coding formats that are not visual, audio, scene description or graphics such as HTML or Flash (optional)
MediaTranscodingHints	Excluded	PA-AF does not consider transcoding operation.
MediaQuality
Describes the quality of the signal corresponding to the Media Profile (optional)
QualityRating
Describes the rating values and the criterion used to create the media quality ratings
RatingSource
Describes the source that provides the ratings (optional)
RatingInformationLocator
Indicates the locator for additional information about the quality rating method (optional)
PerceptibleDefects
Describes defects that are perceived in the media (optional)
MediaInstance	Excluded	PA-AF shall use MPEG-21 DIDL to describe media instance location.
@master
Indicates whether the Media Profile corresponds to the original or master profile of the multimedia content entity. Default value of this attribute is false

Table 8 — Selected MPEG-7 MDS Tools for the PA-AF Access History Information

Descriptors/Datatype/Elements	Restrictions	Remarks
User interaction tools
User Preferences	Excluded	PA-AF does not concern about the consumption preference
Usage History	Used for recording access history only, not all consumption history. See Action Type for more detail	Specifies user's multimedia content consumption history
UserIdentifier
Identifies the individual for whom the usage history is provided. This element is of type UserIdentifierType and contains the protected attribute. Thus the identity of the user shall not be disclosed unless this attribute is set to false
UserActionHistory	Does not concern about the duration of access. If the content is extracted out, modified, and stored back, there should exist two UserActionHistoryRecord: one for extracting and one for storing.	Describes a history of the actions the user has carried out during certain observation periods
ObservationPeriod	Excluded	Only record action at a snapshot of time
UserActionList
Describes a list of actions of the same type, i.e. all actions in the UserActionList carry the same ActionType value
Attribute: numOfInstances
Indicates the number of UserAction elements in a UserActionList
Attribute: totalDuration	Excluded	Only record action at a snapshot of time
ActionType	Limited to only action related to file archiving (e.g. extract, open, remove, etc.)	Indicates the type of action performed by the user, e.g., "View," "Pause," "Play," and so forth. All UserAction elements in an ActionList have the same ActionType. TermUseType is defined in clause 7 of [3]. ActionType may contain a free term or a term from a classification scheme. A classification scheme that may be used (the ActionTypeCS) is defined in Annex B of [3]
UserAction
Describes a single user action
ActionTime	Use only general time.	Describes the time that the action took place and, if applicable, its duration (e.g. for "Play," "Pause," and so forth). The time of occurrence of the action can be described in two ways: by MediaTime and/or by GeneralTime. The duration of a UserAction refers to the duration in terms of the media time, which is identical to the duration in UTC for a large number of action types, but may be different for such action types as "Repeat" or "FastForward."
MediaTime	Excluded
GeneralTime
Action time relative to Coordinated Universal Time (UTC) in the Gregorian date/time format
ProgramIdentifier	Limited to carry only MPEG-21 DII value	Unique identifier of the program that is associated with the given action. Each Action is associated with a single program and, consequently, a single ProgramIdentifier.
ActionDataItem	Excluded

Application Specific Context Information

Application Specific Context Information which is unknown to PA-AF can be included in PA-AF package file as a description file. This file will be linked to the content it describes by URI.

The application specific context information can contain references to the other files packed in the PA-AF package file. When the reference is a relative URI from the context-root path of the stored folder structure information, the referenced file can be specified by shadowing the path from the context-root of the package.

A relative path began with "./" (or "../") shall be regarded as the context-path from the file which contains the reference. A relative path began without "./" (and "../") shall be regarded as the context-path from the context-root of the PA-AF package.

Figure 8 shows an example of a reference described in a relative URI and an example how the referenced file can be solved by using the relative URI.

Figure 8	An example of a reference to the Application Specific Context Information.

Pre-processing Information

Overview

PA-AF adopts MPEG-21 IPMP for protection of content information stored in a PA-AF package file. The restrictions applied to MPEG-21 IPMP Components for PA-AF is described in the following sub clauses.

MPEG-21 IPMP Components Base Profile for PA-AF

MPEG-21 IPMP Components Base Profile for PA-AF provides simple and flexible protection mechanism for PA-AF. It is a subset of [2]. MPEG-21 IPMP Components Base Profile for PA-AF consists of three major components. They are:

IPMPDIDL. Selected elements for PA-AF are:

ipmpdidl:DIDL

ipmpdidl:Container

ipmpdidl:Item

ipmpdidl:Component

ipmpdidl:Resource

ipmpdidl:Descriptor

ipmpdidl:Statement

ipmpdidl:Anchor

ipmpdidl:Fragment

ipmpdidl:Identifier

ipmpdidl:Info

IPMP General Information as described in 9.4.3 of [2]

IPMP Information as described in 9.4.4 of [2]

Content Usage Governance Description

PA-AF adopts MPEG-21 REL MAM Profile for to describe governance on the usage and distribution of archive and Content Information.

Identification of Pre-processing Tool

PA-AF adopts content encoding and application format identification defined by IANA matrix [link ref]. In addition to this matrix, Annex F lists recommendation for identification that is not covered by IANA matrix yet at the time of this specification is specified. If there is identification conflict between one recommended by IANA and by Annex F, recommendation by IANA shall be used.

File Format for PA-AF

Overview

PA-AF adopts MPEG-21 File Format [4] for archive packaging with some restrictions. The restrictions applied to MPEG-21 File Format for PA-AF is described in the following sub clauses.

Restrictions on MPEG-21 File Format for PA-AF

Table 9 describes the uses of MPEG-21 FF for PA-AF. The determination of mandatory boxes is defined by [4] while restrictions introduced in this document are valid for use for PA-AF only.

Table 9 — Restrictions applied to MPEG-21 FF for PA-AF

Box Name	Mandatory
(as in [xx])	Restrictions for PA-AF
Level 1	Level 2	Level 3	Level 4
Use	Description
ftyp
Yes	Yes
mdat
No	Yes
Free
No	No
skip
No	No
meta
Yes	Yes
hdlr
Yes	Yes
dinf
No	Yes	Only if separated archived file(s) exist
dref
No	Yes	Only if separated archived file(s) exist
ipmc
No	No	Use tool in sub clause 7
iloc
No	Yes
ipro
No	No	Use tool in sub clause 7
sinf
No	No	Use tool in sub clause 7
frma	No	No	Use tool in sub clause 7
imif	No	No	Use tool in sub clause 7
schm	No	No	Use tool in sub clause 7
schi	No	No	Use tool in sub clause 7
iinf
No	Yes
xml
No	Yes
bxml
No	No
pitm
No	No

File Brands

The ftyp box of MPEG-21 FF contains list of brands to identify the file. The brands used for PA-AF are:

Major_brand: mp21

Minor_version: paf1, paf2, paf3, paf4, paf5

Compatible_brands: iso2, mp21

Conformance Points

PA-AF defines five conformance points. The list of conformance points is as the following:

Conformation point 1 provides basic packaging functionality. PA-AF archive file that conforms to this conformance point must have minor_version value “paf1” in its ftyp box. The implementation that conforms to this conformance point shall implement:

MPEG-21 File Format

MPEG-21 DIDL 2nd Edition Profile for PA-AF

MPEG-21 DII

MPEG-7 Creation Information

Conformance point 2 provides capability to describe data protection, data compression, and data integrity checking in addition to the basic packaging functionality. PA-AF archive file that conforms to this conformance point must have minor_version value “paf2” in its ftyp box. The implementation that conforms to this conformance point shall implement:

All components in conformance point 1

MPEG-21 IPMP Components Base Profile for PA-AF

Conformance point 3 provides capability to describe governance on the usage of PA-AF archive in addition to the basic packaging functionality. PA-AF archive file that conforms to this conformance point must have minor_version value “paf3” in its ftyp box. The implementation that conforms to this conformance point shall implement:

All components in conformance point 1

MPEG-21 REL MAM Profile

Conformance point 4 provides standard context information for PA-AF archive and its Content Information in addition to the basic packaging functionality. PA-AF archive file that conforms to this conformance point must have minor_version value “paf4” in its ftyp box. The implementation that conforms to this conformance point shall implement:

All components in conformance point 1

MPEG-7 MDS Scheme Profile for PA-AF

Conformance point 5 provides all functionalities offered by conformance point 1 until 4. PA-AF archive file that conforms to this conformance point must have minor_version value “paf5” in its ftyp box. The implementation that conforms to this conformance point shall implement:

All components in conformance point 1

MPEG-21 IPMP Components Base Profile for PA-AF

MPEG-21 REL MAM Profile

MPEG-7 MDS Scheme Profile for PA-AF

Bibliography

[1]	“Multimedia framework (MPEG-21) – Part 2: Digital item Declaration Second edition,” ISO/IEC 21000-2 Second edition, October, 2005

[2]	“Text of ISO/IEC 21000-4 FDAM/1 IPMP Components Base Profile,” ISO/IEC JTC1/SC29/WG11/N9106, May, 2007

[3]	“ISO/IEC 21000-5/FDAM 1 Rights Expression Language: the MAM Profile,” ISO/IEC JTC1/SC29/WG11/N8342, August, 2006

[4]	“Text of ISO/IEC 21000-9/FDIS,” ISO/IEC JTC1/SC29/WG11/N6975, January, 2005

[5]	“Multimedia Content Description Interface – Part 11: MPEG-7 profile schemas,” ISO/IEC TR 15938-11:2005, January, 2005

[6]	“Response to Call for Requirements on PA-AF,” ISO/IEC JTC1/SC29/WG11/M14954, October, 2007

(normative)
MPEG-21 DIDL 2nd Edition Profile for PA-AF Schema Definition

This section provides xmlschema definition of MPEG-21 DIDL 2nd Edition Profile for PA-AF. Table A.1 lists xmlschema definition of didmodel for PA-AF and Table A.2 lists xmlschema definition of MPEG-21.

Table A.1 — DIDModel schema definition for PA-AF

<?xml version="1.0"?>

<schema targetNamespace="urn:mpeg:mpeg21:2002:02-DIDMODEL-NS"

xmlns:didmodel="urn:mpeg:mpeg21:2002:02-DIDMODEL-NS"

xmlns="http://www.w3.org/2001/XMLSchema"

elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.01">

<complexType name="DIDBaseType" abstract="true"/>

<element name="Container" type="didmodel:ContainerType" abstract="true"/>

<complexType name="ContainerType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Item" type="didmodel:ItemType" abstract="true"/>

<complexType name="ItemType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Descriptor" type="didmodel:DescriptorType" abstract="true"/>

<complexType name="DescriptorType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Statement" type="didmodel:StatementType" abstract="true"/>

<complexType name="StatementType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Component" type="didmodel:ComponentType" abstract="true"/>

<complexType name="ComponentType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Anchor" type="didmodel:AnchorType" abstract="true"/>

<complexType name="AnchorType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Fragment" type="didmodel:FragmentType" abstract="true"/>

<complexType name="FragmentType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

<element name="Resource" type="didmodel:ResourceType" abstract="true"/>

<complexType name="ResourceType" abstract="true">

<complexContent>

<extension base="didmodel:DIDBaseType"/>

</complexContent>

</complexType>

</schema>

Table A.2 —DIDL schema definition for PA-AF

<?xml version="1.0"?>

<schema targetNamespace="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns="http://www.w3.org/2001/XMLSchema"

xmlns:didl="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:didmodel="urn:mpeg:mpeg21:2002:02-DIDMODEL-NS"

elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.01">

<!--============================================================

Import abstract types representing DID model entities:

============================================================-->

<import namespace="urn:mpeg:mpeg21:2002:02-DIDMODEL-NS" schemaLocation="didmodel.xsd"/>

<!--=========================================================-->

<attributeGroup name="ID_ATTRS">

<attribute name="id" type="ID" use="optional"/>

</attributeGroup>

<!--============================================================

Container element may contain any number of Container elements

followed by any number of Items.

============================================================-->

<element name="Container" type="didl:ContainerType" substitutionGroup="didmodel:Container"/>

<complexType name="ContainerType">

<complexContent>

<extension base="didmodel:ContainerType">

<sequence>

<element ref="didmodel:Descriptor" minOccurs="0" maxOccurs="unbounded"/>

<element ref="didmodel:Container" minOccurs="0" maxOccurs="unbounded"/>

<element ref="didmodel:Item" minOccurs="0" maxOccurs="unbounded"/>

</sequence>

<attributeGroup ref="didl:ID_ATTRS"/>

<anyAttribute namespace="##other" processContents="lax"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

Item element contains any number Choice elements,

followed by at least one Item or Component element.

An Item may be conditional.

============================================================-->

<element name="Item" type="didl:ItemType" substitutionGroup="didmodel:Item"/>

<complexType name="ItemType">

<complexContent>

<extension base="didmodel:ItemType">

<sequence>

<element ref="didmodel:Descriptor" minOccurs="0" maxOccurs="unbounded"/>

<element ref="didmodel:Component"/>

</sequence>

<attributeGroup ref="didl:ID_ATTRS"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

A Descriptor contains descriptive data about its parent

element.

The Descriptor may be resource-based (comprised of a single

Component), or text-based (comprised of a single Statement).

A Descriptor may be conditional.

============================================================-->

<element name="Descriptor" type="didl:DescriptorType" substitutionGroup="didmodel:Descriptor"/>

<complexType name="DescriptorType">

<complexContent>

<extension base="didmodel:DescriptorType">

<sequence>

<element ref="didmodel:Statement"/>

</sequence>

<attributeGroup ref="didl:ID_ATTRS"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

A Statement contains textual descriptive data within a

Descriptor.

Attribs:

MimeType - A string identifying the type of metadata

============================================================-->

<element name="Statement" type="didl:StatementType" substitutionGroup="didmodel:Statement"/>

<complexType name="StatementType" mixed="true">

<complexContent mixed="true">

<extension base="didmodel:StatementType">

<sequence>

<any namespace="##any" processContents="lax" minOccurs="0"/>

</sequence>

<attribute name="mimeType" type="string" use="required"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

Component element contains one or more Resource elements, followed by any

number of Anchor elements.

A Component may be conditional.

============================================================-->

<element name="Component" type="didl:ComponentType" substitutionGroup="didmodel:Component"/>

<complexType name="ComponentType">

<complexContent>

<extension base="didmodel:ComponentType">

<sequence>

<element ref="didmodel:Resource"/>

<element ref="didmodel:Anchor" minOccurs="0" maxOccurs="unbounded"/>

</sequence>

<attributeGroup ref="didl:ID_ATTRS"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

An Anchor element indicates a point of interest in the

resource of the parent Component.

An Anchor may be conditional.

Attribs:

precedence - An unsigned integer value indicating the position

that this start point should occupy relative to the

other start points in this title. The highest

precedence anchor is the default entry

point.

============================================================-->

<element name="Anchor" type="didl:AnchorType" substitutionGroup="didmodel:Anchor"/>

<complexType name="AnchorType">

<complexContent>

<extension base="didmodel:AnchorType">

<sequence>

<element ref="didmodel:Fragment" minOccurs="0"/>

</sequence>

<attribute name="precedence" type="unsignedInt"/>

<attributeGroup ref="didl:ID_ATTRS"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

A Fragment element indicates a part of interest in a

resource.

Attribs:

fragmentId - A fragment identifier that may locate the part

of interest within the resource. This string,

when appended to the URI of the resource, plus

a '#', becomes the full URI for the part of

. interest.

============================================================-->

<element name="Fragment" type="didl:FragmentType" substitutionGroup="didmodel:Fragment"/>

<complexType name="FragmentType">

<complexContent>

<extension base="didmodel:FragmentType">

<attribute name="fragmentId" type="string" use="required"/>

<attribute name="mimeType" type="string" use="required"/>

<attribute name="contentEncoding" type="NMTOKENS"/>

</extension>

</complexContent>

</complexType>

<!--============================================================

Resource element contains or points to binary data. The

contained data may be binary or any valid XML element.

Attribs:

mimeType - An identifier of a recognized scheme indicating the type

of the resource.

ref - A URI from which the resource data can be obtained

============================================================-->

<element name="Resource" type="didl:ResourceType" substitutionGroup="didmodel:Resource"/>

<complexType name="ResourceType" mixed="true">

<complexContent mixed="true">

<extension base="didmodel:ResourceType">

<attribute name="mimeType" type="string" use="required"/>

<attribute name="ref" type="anyURI"/>

<attribute name="contentEncoding" type="NMTOKENS"/>

</extension>

</complexContent>

</complexType>

<!-- elements from here onward are unique to the DIDL representation-->

<!--============================================================

DIDL element may contain exactly one Container

============================================================-->

<element name="DIDL" type="didl:DIDLType"/>

<complexType name="DIDLType">

<sequence>

<element ref="didmodel:Container"/>

</sequence>

<attribute name="DIDLDocumentId" type="anyURI"/>

</complexType>

</schema>

(normative)
File Attribute Model Schema Definition

Table B.1 — File attribute model schema definition

<?xml version="1.0" encoding="UTF-8"?>

<schema targetNamespace="urn:mpeg:mpeg21:2007:01-PAAF-NS" xmlns:pamaf="urn:mpeg:mpeg21:2007:01-PAAF-NS"

xmlns:mpeg7="urn:mpeg:mpeg7:schema:2001" xmlns="http://www.w3.org/2001/XMLSchema"

elementFormDefault="qualified" attributeFormDefault="unqualified">

<import namespace="urn:mpeg:mpeg7:schema:2001" schemaLocation="mpeg7-smp-2004.xsd"/>

<element name="FileSystemAttributes" type="pamaf:FileSystemAttributesType"/>

<complexType name="FileSystemAttributesType">

<sequence>

<element name="Name" type="string"/>

<element ref="pamaf:ParentPath" minOccurs="0"/>

<element ref="pamaf:EncodedPath" minOccurs="0"/>

<element name="OriginalSize" type="unsignedLong" minOccurs="0"/>

<element name="OriginalTimestamp" type="mpeg7:timePointType" minOccurs="0"/>

<element ref="pamaf:System" minOccurs="0"/>

<element ref="pamaf:Hidden" minOccurs="0"/>

<element ref="pamaf:OwnerRestrictions" minOccurs="0"/>

<element ref="pamaf:GroupRestrictions" minOccurs="0"/>

<element ref="pamaf:OtherRestrictions" minOccurs="0"/>

<!--Validation Rule: optional for directory but has to present for file-->

</sequence>

</complexType>

<element name="NoRead" type="pamaf:NoReadType"/>

<complexType name="NoReadType"/>

<element name="NoWrite" type="pamaf:NoWriteType"/>

<complexType name="NoWriteType"/>

<element name="NoExecute" type="pamaf:NoExecuteType"/>

<complexType name="NoExecuteType"/>

<element name="Hidden" type="pamaf:HiddenType"/>

<complexType name="HiddenType"/>

<element name="System" type="pamaf:SystemType"/>

<complexType name="SystemType"/>

<element name="EncodedPath" type="pamaf:EncodedPathType"/>

<complexType name="EncodedPathType" mixed="true">

<sequence>

<any namespace="##any" processContents="lax"/>

</sequence>

<attribute name="charset" type="string" use="required"/>

</complexType>

<element name="OwnerRestrictions" type="pamaf:OwnerRestrictionsType"/>

<complexType name="OwnerRestrictionsType">

<sequence>

<element ref="pamaf:NoRead" minOccurs="0"/>

<element ref="pamaf:NoWrite" minOccurs="0"/>

<element ref="pamaf:NoExecute" minOccurs="0"/>

</sequence>

</complexType>

<element name="GroupRestrictions" type="pamaf:GroupRestrictionsType"/>

<complexType name="GroupRestrictionsType">

<sequence>

<element ref="pamaf:NoRead" minOccurs="0"/>

<element ref="pamaf:NoWrite" minOccurs="0"/>

<element ref="pamaf:NoExecute" minOccurs="0"/>

</sequence>

</complexType>

<element name="OtherRestrictions" type="pamaf:OtherRestrictionsType"/>

<complexType name="OtherRestrictionsType">

<sequence>

<element ref="pamaf:NoRead" minOccurs="0"/>

<element ref="pamaf:NoWrite" minOccurs="0"/>

<element ref="pamaf:NoExecute" minOccurs="0"/>

</sequence>

</complexType>

<element name="ParentPath" type="pamaf:ParentPathType"/>

<complexType name="ParentPathType">

<attribute name="ref" type="anyURI" use="required"/>

</complexType>

</schema>

(normative)
MPEG-7 Multimedia Description Scheme Profile for PA-AF

This section provides xmlschema definition of MPEG-7 Multimedia Description Schema Profile for PA-AF. Table C.1 lists xmlschema definition of MPEG-7 MDS Schemas for PA-AF.

Table C.1 — MPEG-7 MDS Tools and Restrictions for PA-AF

(informative)
Example of Context Information for PA-AF

MPEG-7 MDS Profile for PA-AF

Table D.1 shows example of description instance describing media format of movie content. It shows general format information such file format type, file size, bit rate; visual component coding information such as the encoding type, resolution (width and height); audio component coding information such as audio encoding type.

Table D.1 — Describing an audio visual content

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<Mpeg7 xmlns="urn:mpeg:mpeg7:schema:2001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:mpeg7:schema:2001 Mpeg7-2001.xsd">

<Description xsi:type="ContentEntityType">

<MultimediaContent xsi:type="VideoType">

<Video>

<MediaInformation>

<MediaProfile>

<MediaFormat>

<Content href="MPEG7ContentCS:2001">

<Name>Video</Name>

</Content>

<FileFormat href="MPEG7FileFormatCS:2001">

<Name>MPEG-4 file format</Name>

</FileFormat>

<FileSize>887363584</FileSize>

<BitRate>30</BitRate>

<VisualCoding>

<Format href="MPEG7VisualCodingFormatCS:2001">

<Name>MPEG-2</Name>

</Format>

<Frame height="480" width="640"/>

</VisualCoding>

<AudioCoding>

<Format href="MPEG7AudioCodingFormatCS:2001">

<Name>MPEG-1 Layer 3</Name>

</Format>

</AudioCoding>

</MediaFormat>

</MediaProfile>

</MediaInformation>

</Video>

</MultimediaContent>

</Description>

</Mpeg7>

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

Table D.2 shows example of description instance describing usage history and also creation information. In this example, the content is archived (action is add to archive) by Joe Bloggs on January 7th, 2008 at 2PM. The content is an audio file whose title is “One More Time, One More Chance” and performed by Masayoshi Yamazaki.

Table D.2 — Describing creation information and usage history of an audio content

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<Mpeg7 xmlns="urn:mpeg:mpeg7:schema:2001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:mpeg7:schema:2001 Mpeg7-2001.xsd">

<Description xsi:type="UserDescriptionType">

<UsageHistory>

<UserIdentifier>

<Name>Joe Bloggs</Name>

</UserIdentifier>

<UserActionHistory>

<UserActionList>

<ActionType href="PA-AF:ActionTypeCS:2008">

<Name>AddToArchive</Name>

</ActionType>

<UserAction>

<ActionTime>

<GeneralTime>

<TimePoint>2008-01-07T14:00:00</TimePoint>

</GeneralTime>

</ActionTime>

<ProgramIdentifier>

<!—shall contain MPEG-21 DII value -->

</ProgramIdentifier>

</UserAction>

</UserActionList>

</UserActionHistory>

</UsageHistory>

</Description>

<Description xsi:type="ContentEntityType">

<MultimediaContent xsi:type="AudioType">

<Audio>

<MediaInformation>

<MediaProfile>

<MediaFormat>

<Content href="MPEG7ContentCS:2001">

<Name>Audio</Name>

</Content>

<FileSize>9778135</FileSize>

<BitRate variable="true">234000</BitRate>

<AudioCoding>

<Format href="MPEG7AudioCodingFormatCS:2001">

<Name>MPEG-1 Layer 3</Name>

</Format>

<Emphasis>none</Emphasis>

</AudioCoding>

</MediaFormat>

</MediaProfile>

</MediaInformation>

<CreationInformation>

<Creation>

<Title xml:lang="en">

One More Time, One More Chance

</Title>

<Abstract>

<FreeTextAnnotation>

Ending theme of animation "5 centimeter per second"

</FreeTextAnnotation>

</Abstract>

<Creator>

<Role href="urn:mpeg:mpeg7:cs:RoleCS:2001:Artist"/>

<Agent xsi:type="PersonType">

<Name>

<GivenName>Masayoshi</GivenName>

<FamilyName>Yamazaki</FamilyName>

</Name>

</Agent>

</Creator>

</Creation>

</CreationInformation>

</Audio>

</MultimediaContent>

</Description>

</Mpeg7>

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

Table D.3 shows example of the use of RelatedMaterial description tool. For example subtitle file for movie content is in separated file but archived in the same archive as the movie content itself. Hence, in the content description for the movie content, it has related materials which refer to the location of the subtitle file.

Table D.3 — Describing related material for movie subtitles

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<Mpeg7 xmlns="urn:mpeg:mpeg7:schema:2001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:mpeg:mpeg7:schema:2001 Mpeg7-2001.xsd">

<Description xsi:type="ContentEntityType">

<MultimediaContent xsi:type="VideoType">

<Video>

<MediaInformation>

<MediaProfile>

<MediaFormat>

<Content href="MPEG7ContentCS:2001">

<Name>Video</Name>

</Content>

<FileSize>733357674</FileSize>

<BitRate variable="true">24</BitRate>

<VisualCoding>

<Format href="MPEG7VisualCodingFormatCS:2001">

<Name>MPEG-4 AVC</Name>

</Format>

<Frame height="480" width="852"/>

</VisualCoding>

<AudioCoding>

<Format href="MPEG7AudioCodingFormatCS:2001">

<Name>MPEG-1 Layer 3</Name>

</Format>

<Sample bitsPer="16"/>

<Emphasis>none</Emphasis>

</AudioCoding>

</MediaFormat>

</MediaProfile>

</MediaInformation>

<CreationInformation>

<Creation>

<Title xml:lang="en">5 Centimeters per Second</Title>

<Title xml:lang="kr">초속 5센티미터</Title>

<Title xml:lang="jp">秒速５センチメートル</Title>

<Abstract>

<FreeTextAnnotation>

An animation movie by Makoto Shinkai

</FreeTextAnnotation>

</Abstract>

<Creator>

<Role href="urn:mpeg:mpeg7:cs:RoleCS:2001:Director"/>

<Agent xsi:type="PersonType">

<Name>

<GivenName>Shinkai</GivenName>

<FamilyName>Makoto</FamilyName>

</Name>

</Agent>

<Role href="urn:mpeg:mpeg7:cs:RoleCS:2001:Writer"/>

<Agent xsi:type="PersonType">

<Name>

<GivenName>Shinkai</GivenName>

<FamilyName>Makoto</FamilyName>

</Name>

</Agent>

</Creator>

</Creation>

<RelatedMaterial>

<MaterialType href="PA-AFContentCS:2008">

<Name>English subtitle</Name>

</MaterialType>

<MediaLocator>

<MediaUri>

file://my_pa_af.m21#ffp(item_name="en_subtitle.txt")

</MediaUri>

</MediaLocator>

</RelatedMaterial>

<RelatedMaterial>

<MaterialType href="PA-AFContentCS:2008">

<Name>Korean subtitle</Name>

</MaterialType>

<MediaLocator>

<MediaUri>

file://my_pa_af.m21#ffp(item_name="kr_subtitle.txt")

</MediaUri>

</MediaLocator>

</RelatedMaterial>

</CreationInformation>

</Video>

</MultimediaContent>

</Description>

</Mpeg7>

<!-- MPEG-21 DID Structure here -->

<!-- MPEG-21 DID Structure here -->

<!—MPEG-21 DID Structure here -->

Application Specific Context Information

Application Specific Context Information can be stored in a PA-AF package file.

Figure D.1 shows an example of application specific context information written in html and how the html files in folder1 can be packed into an PA-AF archive file.

Figure D.1 — An example of application specific context information.

Table D.4 shows an example of a index.html file. References to the other content information can be specified as a relative URI from the current context-path of the html file.

Table D.4 — An example of Application Specific Information

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.1 Transitional//EN">

<HTML><HEAD><TITLE>My Index Page</TITLE>

<BODY bgcolor="#000000" text="#ccffcc" link="#cc6666" vlink="#999999" alink="#cccc99">

<a href="folder2/file2.html">reference to file2.html</a><br>

<hr>

<table>

<tr>

<td><IMG src="folder2/file3.jpg"></td>

<td>

<h1>Description text</h1>

<a href="folder2/file4.mp4">reference to file4.mp4</a><br>

</td>

</tr>

</table>

</body>

</html>
(normative)
MPEG-21 IPMP Component Base Profile for PA-AF Schema Definition

Table E.1 — IPMPDIDL schema definition for PA-AF

<?xml version="1.0"?>

<!--=======================================-->

<!--=====Schema for IPMP DIDL Types=====-->

<!--=======================================-->

<schema targetNamespace="urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS"

xmlns:ipmpdidl="urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS"

xmlns:didmodel="urn:mpeg:mpeg21:2002:02-DIDMODEL-NS"

xmlns="http://www.w3.org/2001/XMLSchema"

elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.01">

<import namespace="urn:mpeg:mpeg21:2002:02-DIDMODEL-NS" schemaLocation="didmodel.xsd"/>

<import namespace="urn:mpeg:mpeg21:2002:02-DIDL-NS" schemaLocation="didl.xsd"/>

<!--============================================================

All element types corresponding to the DID model contain:

(i)	a maximum of one ipmpdidl:Identifier element, into which an appropriate identifier for the protected Representation may be placed

(ii)	one ipmpdidl:Info element, into which information about the governance is placed

(iii)	one ipmpdidl:Contents element, into which the governed contents is placed

============================================================-->

<element name="Container" type="ipmpdidl:ContainerType" substitutionGroup="didmodel:Container"/>

<complexType name="ContainerType">

<complexContent>

<extension base="didmodel:ContainerType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Item" type="ipmpdidl:ItemType" substitutionGroup="didmodel:Item"/>

<complexType name="ItemType">

<complexContent>

<extension base="didmodel:ItemType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Descriptor" type="ipmpdidl:DescriptorType" substitutionGroup="didmodel:Descriptor"/>

<complexType name="DescriptorType">

<complexContent>

<extension base="didmodel:DescriptorType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Statement" type="ipmpdidl:StatementType" substitutionGroup="didmodel:Statement"/>

<complexType name="StatementType" mixed="true">

<complexContent mixed="true">

<extension base="didmodel:StatementType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Component" type="ipmpdidl:ComponentType" substitutionGroup="didmodel:Component"/>

<complexType name="ComponentType">

<complexContent>

<extension base="didmodel:ComponentType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Anchor" type="ipmpdidl:AnchorType" substitutionGroup="didmodel:Anchor"/>

<complexType name="AnchorType">

<complexContent>

<extension base="didmodel:AnchorType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Fragment" type="ipmpdidl:FragmentType" substitutionGroup="didmodel:Fragment"/>

<complexType name="FragmentType" mixed="true">

<complexContent mixed="true">

<extension base="didmodel:FragmentType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<element name="Resource" type="ipmpdidl:ResourceType" substitutionGroup="didmodel:Resource"/>

<complexType name="ResourceType" mixed="true">

<complexContent mixed="true">

<extension base="didmodel:ResourceType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

</extension>

</complexContent>

</complexType>

<!-- elements from here onward are unique to the IPMP DIDL Representation-->

<group name="IPMPDIDLChildGroup">

<sequence>

<element ref="ipmpdidl:Identifier" minOccurs="0"/>

<element ref="ipmpdidl:Info"/>

</sequence>

</group>

<element name="Info">

<complexType mixed="true">

<sequence>

<any namespace="##any" processContents="lax" minOccurs="0"/>

</sequence>

</complexType>

</element>

<element name="Identifier">

<complexType mixed="true">

<sequence>

<any namespace="##any" processContents="lax" minOccurs="0"/>

</sequence>

</complexType>

</element>

<element name="ProtectedAsset" type="ipmpdidl:ProtectedAssetType"/>

<complexType name="ProtectedAssetType">

<sequence>

<group ref="ipmpdidl:IPMPDIDLChildGroup"/>

</sequence>

<attribute name="mimeType" type="string" use="required"/>

</complexType>

</schema>

(informative)
Recommendation for Mime Type and Pre-Processing Tool Identification

Overview

This sub-chapter describes possible values of mimeTypes and mimeSubTypes for the pre-processing tool.

An implementation of a PA-AF packaging tool may apply pre-processing tools listed in table F.1 for the related file extension names.

mimeTypes

Table F.1 shows a list of the possible values of mimeTypes and mimeSubTypes, corresponding file format and file extension names.

The values of mimeType and mimeSubType are defined in IANA Matrix for Protocol Parameter Assignment/Registration Procedures: Media Types: http://www.iana.org/assignments/media-types/index.html

Other mimeTypes and file extensions which are not listed in the table F.1 should be treated as the "application/octet-stream". Error! Reference source not found. shows examples of the types and file extensions included in the category of "Others". Note that the types and file extensions are not limited to those of in Error! Reference source not found..

Table F.1 — Examples of the mimeTypes for the content_type field and the content_encoding field.

mimeTypes / mimeSubType	Corresponding file formats	File extension names
audio/x-wav	Wave file format	.wav, .wave
audio/x-aiff	Aiff file format	.aif, .aiff, .aifa
audio/x-bwf	Broadcast wave file format	.bwf, .bwf64
audio/x-wave64	Sony Wave64 file format	.wav64, .w64
application/octet-stream	Unknown mimeTypes / mimeSubTypes should be treated as the 'application/octed-stream'	See Table F.2.
Note: Values of mimeSubType began with 'x-' string may be changed with future revision of IANA Matrix.

Table F.2 — Examples of the mimeTypes and file extensions included in the category of "Others".

mimeTypes / mimeSubType	Corresponding file formats	File extension names
audio/mp4	MPEG-4 file format (This may include MP3, AAC, MPEG-4 ALS, …)	.mp4, .m4a
audio/x-mp4als	MPEG-4 ALS encoded file (Contained in MP4 file format).	.als
text/plain
.txt
application/zip	Already compressed by zip	.zip
application/binary	Binary data	any

Content Encoding

Table F.3 shows a list of possible values of the contentEncoding attribute of Resource element and corresponding coders. Values defined as mimeTypes and mimeSubTypes can be used as the tool identifier for the contentEncoding field.

If multiple content-encoding have been applied to the item of iinf-box or the resource, each content encoding shall be listed in the value of the content encoding attribute in a space-delimited list in the order in which they were applied.

Table F.3 — A list of possible values of the contentEncoding and corresponding tools.

Content_encoding	Corresponding coders	MimeTypes the coder can be applied to
(NULL string)	Not encoded (binary)	Any type
identity	Not encoded (binary)	Any type
audio/x-mp4als	MPEG-4 ALS (ALS bit-stream contained in MP4)	audio/x-wav,

audio/x-aiff,

audio/x-bwf
application/zip	Zip	Any type
application/md5	MD5 hash	Any type

(informative)
Example of Using Preprocessing Information for PA-AF

Archiving One File Without Compression

Table G.1 provides DIDL instance example of PA-AF with one archived file.

Table G.1 — Archiving one file without compression

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2002:02-DIDL-NS DIDLforPA-AF.xsd ">

<Container>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="image/jpeg" ref="MyImage.jpg"/>

</Component>

</Item>

</Container>

</DIDL>
Archiving One File With Compression

Table G.2 provides DIDL instance example of PA-AF with one .bwf audio file and compressed with MPEG-ALS lossless compression before being put in the archive container.

Table G.2 — Archiving one file with compression

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2002:02-DIDL-NS DIDLforPA-AF.xsd ">

<Container>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="audio/raw" contentEncoding="MPEG-4 ALS" ref="MyAudio.bwf"/>

</Component>

</Item>

</Container>

</DIDL>
Archiving Two Files in One Directory

Table G.3 provides DIDL instance example of PA-AF with one .bwf audio file and compressed with MPEG-ALS lossless compression before being put in the archive container.

Table G.3 — Archiving two files in one directory

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2002:02-DIDL-NS DIDLforPA-AF.xsd ">

<Container>

<Container>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put directory attribute description here-->

</Statement>

</Descriptor>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="audio/raw" ref="MyAudio.bwf"/>

</Component>

</Item>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="image/jpeg" ref="MyImage.jpg"/>

</Component>

</Item>

</Container>

</Container>

</DIDL>
Archiving Composite File

Table G.4 provides DIDL instance example of PA-AF with one-tract music player AF file. The music player AF file contains one mp3 file and one jpeg file. Therefore each sub-resource is compressed by using different tool. For example the music file is compressed by using compression-tool-1 and image file is compression by using compression-tool-2.

Table G.4 — Archiving composite file

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2002:02-DIDL-NS DIDLforPA-AF.xsd ">

<Container>

<Item>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="mpeg/maf" ref="MusicPlayer.maf"/>

<Anchor>

<Fragment mimeType="audio/mp3" contentEncoding="Compression-Tool-1"

fragmentId="#mp (/byte(2000, 4500000))"/>

</Anchor>

<Anchor>

<Fragment mimeType="image/jpeg" contentEncoding="Compression-Tool-2"

fragmentId="#mp (/byte(4500000, 9000000))"/>

</Anchor>

</Component>

</Item>

</Container>

</DIDL>
Archiving Governed and Protected File

Table G.5 provides DIDL instance example of PA-AF that contains a governed and protected file. The file is protected with AES encryption tool and the use of the file is allowed only during the year 2007.

Table G.5 — Archiving governed and protected file

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:dii="urn:mpeg:mpeg21:2002:01-DII-NS"

xmlns:ipmpdidl="urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS"

xmlns:ipmpinfo="urn:mpeg:mpeg21:2004:01-IPMPINFO-BASE-NS"

xmlns:mx="urn:mpeg:mpeg21:2003:01-REL-MX-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2003:01-REL-MX-NS rel-mx.xsd

urn:mpeg:mpeg21:2004:01-IPMPINFO-BASE-NS IPMPGeneralInfo-AMD1.xsd

urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS IPMPDIDLforPA-AF.xsd

urn:mpeg:mpeg21:2002:01-DII-NS dii.xsd">

<Container>

<Descriptor>

<Statement mimeType="text/xml">

<ipmpinfo:IPMPGeneralInfoDescriptor>

<ipmpinfo:ToolList>

<ipmpinfo:ToolDescription localID="AESEncrypt">

<ipmpinfo:IPMPToolID>urn:mpegRA:mpeg21:IPMP:ABC005:77:29</ipmpinfo:IPMPToolID>

<ipmpinfo:Remote ref="urn:IPMPToolsServer:ToolEnc005-3485"/>

</ipmpinfo:ToolDescription>

</ipmpinfo:ToolList>

<ipmpinfo:LicenseCollection>

<ipmpinfo:RightsDescriptor>

<ipmpinfo:License>

<r:license>

<r:grant>

<mx:play/>

<mx:diReference>

<mx:identifier>IPMPId001</mx:identifier>

</mx:diReference>

<r:allConditions>

<r:validityInterval>

<r:notBefore>2007-01-01T00:00:00</r:notBefore>

<r:notAfter>2007-12-31T12:59:59</r:notAfter>

</r:validityInterval>

</r:allConditions>

</r:grant>

</r:license>

</ipmpinfo:License>

</ipmpinfo:RightsDescriptor>

</ipmpinfo:LicenseCollection>

</ipmpinfo:IPMPGeneralInfoDescriptor>

</Statement>

</Descriptor>

<Item id="MyAudioFile">

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="application/mp21-IPMP">

<ipmpdidl:ProtectedAsset mimeType="audio/raw">

<ipmpdidl:Identifier>

<dii:Identifier>IPMPId001</dii:Identifier>

</ipmpdidl:Identifier>

<ipmpdidl:Info>

<ipmpinfo:IPMPInfoDescriptor>

<ipmpinfo:Tool>

<ipmpinfo:ToolRef localidref="AESEncrypt"/>

<ipmpinfo:InitializationSettings>

<ipmpinfo:InitializationData>

<key_length>64</key_length>

<operating_mode>PBE</operating_mode>

<encrypt_format>Based64</encrypt_format>

<initialization_vector>Adrad%daf&fa;</initialization_vector>

<padding_scheme>PCK#5</padding_scheme>

</ipmpinfo:InitializationData>

</ipmpinfo:InitializationSettings>

</ipmpinfo:Tool>

</ipmpinfo:IPMPInfoDescriptor>

</ipmpdidl:Info>

<ipmpdidl:Contents ref="protectedAudio.au"/>

</ipmpdidl:ProtectedAsset>

</Resource>

</Component>

</Item>

</Container>

</DIDL>
Archiving File with Digital Signature for Integrity Check

Table G.6 provides DIDL instance example of PA-AF that contains file. The archived file is signed digitally to enable checking for its integrity in the future.

Table G.6 — Archiving a digitally signed file

<?xml version="1.0" encoding="UTF-8"?>

<DIDL xmlns="urn:mpeg:mpeg21:2002:02-DIDL-NS"

xmlns:dii="urn:mpeg:mpeg21:2002:01-DII-NS"

xmlns:ipmpdidl="urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS"

xmlns:ipmpinfo="urn:mpeg:mpeg21:2004:01-IPMPINFO-BASE-NS"

xmlns:mx="urn:mpeg:mpeg21:2003:01-REL-MX-NS"

xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="urn:mpeg:mpeg21:2003:01-REL-MX-NS rel-mx.xsd

urn:mpeg:mpeg21:2004:01-IPMPINFO-BASE-NS IPMPGeneralInfo-AMD1.xsd

urn:mpeg:mpeg21:2004:01-IPMPDIDL-NS IPMPDIDLforPA-AF.xsd

urn:mpeg:mpeg21:2002:01-DII-NS dii.xsd">

<Container>

<Item id="MyAudioFile">

<Descriptor>

<Statement mimeType="text/xml">

<!--Put file attribute description here-->

</Statement>

</Descriptor>

<Descriptor>

<Statement mimeType="text/xml">

<!--Put creation information here-->

</Statement>

</Descriptor>

<Component>

<Resource mimeType="application/mp21-IPMP">

<ipmpdidl:ProtectedAsset mimeType="audio/raw">

<ipmpdidl:Info>

<ipmpinfo:IPMPInfoDescriptor>

<dsig:Signature Id="ToolSignature">

<dsig:SignedInfo>

<dsig:CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>

<dsig:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#dsa-sha1"/>

<dsig:Reference URI="http://www.w3.org/TR/2000/REC-xhtml1-20000126/">

<dsig:Transforms>

<dsig:Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315"/>

</dsig:Transforms>

<dsig:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1"/>

<dsig:DigestValue>rqfdsvuiojbew9$#$fda4321hjjl</dsig:DigestValue>

</dsig:Reference>

</dsig:SignedInfo>

<dsig:SignatureValue>fdafdasfdasrrcvarew2432dfdaf</dsig:SignatureValue>

</dsig:Signature>

</ipmpinfo:IPMPInfoDescriptor>

</ipmpdidl:Info>

<ipmpdidl:Contents ref="protectedAudio.au"/>

</ipmpdidl:ProtectedAsset>

</Resource>

</Component>

</Item>

</Container>

</DIDL>

(informative)
Example of File Format Structure for Professional Archival AF

File Format Structure Example

Figure H.1 shows an example of file format structure for Professional Archival AF. Archived files are stored in the MDAT boxes either in its original stream or in the form after preprocessing steps such as lossless compression and protection. The physical location of each archived file in the MDAT is described by information in iinf (Item Information) and iloc (item location). In addition, logical structure (model) of the archived files is described by MPEG-21 DIDL which is stored in the XML box.

Figure H.1 — Example of file format structure for Professional Archival AF

The Item Location Box and the Item Information Box

Table H.1 shows example of associated information of archived files stored in Professional Archival AF as illustrated in Figure H1.

Table H.1 — Example of IINF and ILOC boxes’ content

ftype box:

major-brand = 'mp21', compatible-brands = 'mp21'

meta box: (container)

handler box:	hdr='mp21'

XML box:	contains the MPEG-21 DID XML (This will be described in a latter chapter.)

Item Location:

item_count = 4;

item_ID = 1, data_reference_index = 0, extent_count = 1

, extent_offset = X1, extent_length = Y1, base_offset = X1;

item_ID = 2, data_reference_index = 0, extent_count = 1

, extent_offset = X2, extent_length = Y2, base_offset = X2;

item_ID = 3, data_reference_index = 0, extent_count = 1

, extent_offset = X3, extent_length = Y3, base_offset = X3;

item_ID = 4, data_reference_index = 0, extent_count = 1

, extent_offset = X4, extent_length = Y4, base_offset = X4;

Item Information:

entry_count = 4;

item_ID = 1, item_protection_index = 0 (unused)

, item_name = "folder1/file1.txt", content_type = "text/plain"

, content_encoding = "" (binary);

item_ID = 2, item_protection_index = 0 (unused)

, item_name = "folder1/folder2/file2.wav", content_type = "audio/x-wav"

, content_encoding = "audio/mp4als" (encoded with MPEG-4 ALS and contained in MP4ff);

item_ID = 3, item_protection_index = 0 (unused)

, item_name = "folder1/folder2/file3.aiff", content_type = "audio/x-aiff"

, content_encoding = "audio/mp4als" (encoded with MPEG-4 ALS and contained in MP4ff);

item_ID = 3, item_protection_index = 0 (unused)

, item_name = "folder1/folder2/file4.mp4", content_type = "audio/mp4"

, content_encoding = "" (binary);

Media data box:

A binary data of “folder1/file1.txt” (at file offset X1, with length Y1);

An ALS encoded binary data of “folder1/folder2/file2.wav” (at file offset X2, with length Y2);

An ALS encoded and mp4 file formatted binary data of “folder1/folder2/file3.aiff”

(at file offset X3, with length Y3);

A binary data of “folder1/folder2/file4.mp4” (at file offset X4, with length Y4);

© ISO/IEC 2008 – All rights reserved

Document type: International Standard

Document subtype:

Document stage: (30) Committee

Document language: E

STD Version 2.1c2

ISO/IEC CD 23000-6

vi	© ISO/IEC 2008 – All rights reserved

© ISO/IEC 2008 – All rights reserved	vii

ii	© ISO/IEC 2008 – All rights reserved

52	© ISO/IEC 2008 – All rights reserved

© ISO/IEC 2008 – All rights reserved	53

COMMITTEE DRAFT	ISO/IEC CD 23000-6

© ISO/IEC 2008 – All rights reserved	1

ISO/IEC JTC 1/SC 29 N

ogura

2008-01-25

afnor