Copyright © 2011 W3C® (MIT, ERCIM, Keio), All Rights Reserved. W3C liability, trademark and document use rules apply.
This document defines the Ontology for Media Resources 1.0. The term "Ontology" is used in its broadest possible definition: a core vocabulary. The intent of this vocabulary is to bridge the different descriptions of media resources, and provide a core set of descriptive properties. This document defines a core set of metadata properties for media resources, along with their mappings to elements from a set of existing metadata formats. Besides that, the document presents a Semantic Web compatible implementation of the abstract ontology using RDF/OWL. The document is mostly targeted towards media resources available on the Web, as opposed to media resources that are only accessible in local repositories.
This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the W3C technical reports index at http://www.w3.org/TR/.
This is the Candidate Recommendation of the Ontology for Media Resources 1.0 specification.
It has been produced by the Media Annotations Working Group, which is part of the W3C Video on the Web Activity. The Working Group expects to advance this specification to Recommendation Status.
Please send review comments about this Candidate Recommendation to the public mailing list public-media-annotation@w3.org mailing list (public archive). Use "[CR Comment ONT]" in the subject line of your email. We expect that sufficient feedback to determine its future will have been received by 01 August 2011.
This specification will remain a Candidate Recommendation until at least 01 August 2011 and until the API for Media Resource 1.0 specification enters Candidate Recommendation.
The Media Annotation Working Group will advance this specification to Proposed Recommendation when the following exit criteria have been met:
Sufficient reports of implementation experience have been gathered to demonstrate that the formats that were selected as in-scope of a potential mapping are mapped to the Ontology for Media Resources 1.0 in a consistent manner. To do so, the Working Group will insure that all the multimedia metadata formats in scope and multimedia container formats in scope listed in the mapping table of the Ontology for Media Resources 1.0 are included in the testsuite and have been implemented in an interoperable way. This defined as :
The Working Group is currently working on a initial public test suite for this Ontology for Media Resources 1.0.
Formats for which there are not at least one example file and associated RDF file at the end of the Candidate Recommendation period may be removed from this specification.
The Implementation results are publicly released and are intended solely to be used as proof of Media Ontology 1.0 implementability. It is only a snap shot of the actual implementation behaviors at one moment of time, as these implementations may not be immediately available to the public. The interoperability data is not intended to be used for assessing or grading the performance of any individual implementation. Any feedback on implementation and use of this specification would be very welcome. To the extent possible, please provide a separate email message for each distinct comment.
Furthermore, the following formats available in the previous Working Drafts versions of this specifiaction are removed.
For convenience, the differences between this CR version and the Second Last Call Working Draft are highlighted in the CR Diff file.
This W3C Working Draft version of the Ontology for Media Resources 1.0 specification incorporates requests for changes from comments sent during the first Last Call Review, as agreed with the commenters (see Disposition of Last Call comments for Ontology for Media Resources 1.0) and changes following implementation experiences from the Working Group. The Working Group wishes to have these changes reviewed before proceeding to Candidate Recommendation.
Publication as a Candidate Recommendation does not imply endorsement by the W3C Membership. This is a draft document and may be updated, replaced or obsoleted by other documents at any time. It is inappropriate to cite this document as other than work in progress.
This document was produced by a group operating under the 5 February 2004 W3C Patent Policy. W3C maintains a public list of any patent disclosures made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains Essential Claim(s) must disclose the information in accordance with section 6 of the W3C Patent Policy.
1 Introduction
1.1 Formats in scope
1.1.1 Multimedia metadata
formats in scope
1.1.2 Multimedia
container formats in scope
1.2 Formats out of scope
2 Conformance Requirements
3 Terminology
4 Property value type
definitions
4.1 URI
4.2 String
4.3 Integer
4.4 Decimal
4.5 Date
5 Property definitions
5.1 Core property
definitions
5.1.1 Description of the approach
followed for the property definitions
5.1.2 Descriptive properties
(Core Set)
5.1.3 Examples for the Core
Set of properties
5.1.3.1 Examples for the compression
property
5.1.3.2 Examples
for the policy property
5.2 Property mapping table
5.2.1 Rationale regarding
the mapping table
5.2.1.1 Semantic
Level Mappings
5.2.1.2 Syntactic
Level Mappings
5.2.1.3 Mapping
expression
5.2.2 Multimedia metadata
formats mapping tables
5.2.2.1 CableLabs 1.1
5.2.2.2 DIG35
5.2.2.3 Dublin Core
5.2.2.4 EBUCore
5.2.2.5 EXIF 2.2
5.2.2.6 ID3
5.2.2.7 IPTC
5.2.2.8 LOM 2.1
5.2.2.9 Media RSS
5.2.2.10 MPEG-7
5.2.2.11 OGG
5.2.2.12 QuickTime
5.2.2.13 DMS-1
5.2.2.14 TTML
5.2.2.15 TV-Anytime
5.2.2.16 TXFeed
5.2.2.17 XMP
5.2.2.18 YouTube
5.2.3 Multimedia container
formats mapping tables
5.2.3.1 3GP
5.2.3.2 Flash
5.2.3.2.1 FLV
5.2.3.2.2 F4V
5.2.3.3 QuickTime
5.2.3.4 MP4
5.2.3.5 OGG
5.2.3.6 WebM
6 Usage Examples
6.1 Example1: How to use the POWDER protocol in
combination with the Media Ontology's properties for publishing descriptions of
media resources
6.2 Subtitles and the Ontology for Media
Resources
6.3 Semantic annotation
6.4 Captions and signing
6.5 Language for media resources
7 Namespace and RDF-representation of the Ontology for Media
Resources 1.0
7.1 Namespace of core property definitions
7.2 Correspondence
between the informal ontology and the RDF representation
7.3 RDF ontology
8 Turtle (TTL) ontology
A References (Normative)
B References (Non-Normative)
C Acknowledgements (Non-Normative)
This document defines the Ontology for Media Resources 1.0. In this document, the term "ontology" is used in its broadest possible definition: a core vocabulary. The Ontology for Media Resources 1.0 is both a core vocabulary (a set of properties describing media resources) and its mapping to a set of metadata formats currently describing media resources published on the Web. Mappings to formats for media resources non available on the Web have not been taken into account in this version of the Ontology. The purpose of the mappings is to provide an interoperable set of metadata, thereby enabling different applications to share and reuse these metadata. The set of properties of the Ontology for Media Resources 1.0 was selected with respect to the most commonly adopted set of elements from metadata formats currently in use to describe media resources.
Ideally, the mappings defined in this document would preserve the semantics of a metadata item across metadata formats. In reality, however, this cannot be easily achieved: there is often a difference in the extension of what is covered by the elements (or terms) from different formats. This means that a mapping between the Ontology's property and the elements from two different formats that have such a difference will not allow a semantic-preserving mapping. For example, the property dc:creator from the Dublin Core and the property exif:Artist defined in the Exchangeable Image File Format, or EXIF are both mapped to the property creator, in the Ontology. The document therefore also specifies types of mappings: "exact", "more specific", "more generic" and "related". Nevertheless, mapping back and forth between properties from different schemata, using only the Ontology defined in this specification as a reference, will induce a certain loss in semantics. Mechanisms for correcting for this loss are beyond the scope of this document.
The Ontology defines mappings between
its set of properties and the elements from metadata formats commonly used to
describe media resources. The namespace for the Ontology is http://www.w3.org/ns/ma-ont#
,
which is identified with the "ma" prefix in this document. Although some of the
properties can appear to be redundant with Dublin
Core, there are several differences that distinguish them:
Dublin Core is only one of the vocabularies for which a mapping is defined.
The Dublin Core set does not cover all needs of the Media Ontology; this specification would be at least an extension of Dublin Core.
More importantly, the Dublin Core properties have been created with a set of restrictions. While these restrictions are in general somewhat loose, this specification required other restrictions on the properties of the Ontology, related to its use in an API (see API for Media Resources).
The Media Ontology (i.e. the core set of properties and mappings defined in this specification) provides the basic information needed by targeted applications (see Use Cases and Requirements for Ontology and API for Media Ressource 1.0) for supporting interoperability among the various kinds of metadata formats related to media resources that are available on the Web. The Ontology is accompanied by an API (see API for Media Resources 1.0) that provides a uniform access to all of its elements. Furthermore a Semantic Web compatible implementation of the Ontology is available which is presented in Section 7 of this document. This implementation uses the Semantic Web ontology languages RDF/OWL and its derivation from the core vocabulary is presented in detail with it.
The properties defined in this document are used to describe media resources that are available on the web. Media resources can denote both the abstract concept of a media resource (e.g., the movie "Notting Hill") as well as a specific instance (e.g., a certain file with an MPEG-4 encoding of the English version of "Notting Hill" with French subtitles). For the sake of simplicity, we do not make distinctions between these different levels of abstraction that exist in some formats (e.g., [FRBR])
This section is normative; however, examples contained in this section are informative.
The following table lists the formats that were selected as in-scope of a potential mapping from the Media Ontology, along with the identifiers which are used as prefixes to identify them in this specification.
We distinguish multimedia metadata formats that focus on the description of multimedia resources from multimedia container formats. In the case of the latter, only few technical properties are relevant for the Ontology for Media Resources, because of they widespread usage. Very specific properties are out of the scope of this specification
Identifier | Format | Example | Reference |
---|---|---|---|
cl11 | CableLabs 1.1 | cl11:Writer_Display | Cablelabs 1.1 |
dig35 | DIG35 | dig35:ipr_name/ipr_person@description='Image Creator' | DIG35 |
dc | Dublin Core | dc:creator | Dublin Core |
ebuc | EBUCore | ebuc:creator | EBUCore |
exif | EXIF 2.2 | exif:Artist | EXIF |
id3 | ID3 | id3:TCOM | ID3 |
iptc | IPTC | iptc:Creator | IPTC |
lom21 | LOM 2.1 | lom21:LifeCycle/Contribute/Entity | LOM |
mrss | Media RSS | mrss:credit@role='author' | Media RSS |
mpeg7 | MPEG-7 | mpeg7:CreationInformation/Creation/Creator/Agent | MPEG-7 |
ogg | OGG | ogg:track=serialno/vorbiscomment/title and ogg:track=serialno/skeleton/title | OGG |
qt | QuickTime | qt:com.apple.quicktime.author | QuickTime |
dms | DMS-1 | dms:Participant/Person | DMS-1 |
ttml | TTML | ttml:actor | TTML |
tva | TV-Anytime | tva:CredistsList/CredistItem | TV-Anytime |
txf | TXFeed | txf:author | TXFeed |
xmp | XMP | xmp:CreatorTool | XMP |
yt | YouTube Data API Protocol | yt:author | YouTube Data API Protocol |
Identifier | Format | Example | Reference |
---|---|---|---|
3gp | 3GP | 3gp:udta/auth | 3GP |
flv | FLV | Flash | |
qt | QuickTime | qt:com.apple.quicktime.author | QuickTime |
mp4 | MP4 | mp4:udta/cprt | MP4 |
ogg | OGG | ogg:track=serialno/vorbiscomment/title and ogg:track=serialno/skeleton/title | OGG |
webm | WebM | webm:segment=id/track=id/Language | WebM |
The following formats are out of scope for this specification.
MPEG-21: It is not a media description format in the narrower sense.
This section is normative.
This document contains normative, non-normative, and informative sections. The parts of this document that define the Ontology, as well as the syntactic and semantic level mappings between elements from existing formats and the core properties defined in this document, are normative, and are marked as such. For normative sections only, the keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "RECOMMENDED", "MAY", and "OPTIONAL" are to be interpreted as described in RFC2119 [RFC 2119]. To facilitate the differentiation between the normative use of these terms as defined in RFC2119 and a non-normative use of these terms, the normative use of these terms MUST occur in all capital letters. All other sections, including examples, are not normative.
A "strictly conforming" application is one that satisfies all "MUST" and "SHALL" provisions in this document. In contrast, a "conditionally conforming" application is one that satisfies all "MUST" provisions in this document, but not all "SHALL" provisions. It should be noted that an application that does not specify all "MUST" provisions in this document is not conforming".
Note: In this specification the use of "Media Ontology" and "Ontology for Media Resources 1.0 " is equivalent.
This section is normative.
A formal definition of an ontology is as follows. "An ontology is a formal, explicit specification of a shared, often machine-readable, vocabulary. Its meaning, in the form of entities and relationships between them, intends to describe some knowledge in a given domain. Formal refers to the fact that the ontology should be representable in a formal grammar. Explicit means that the entities and relationships used, and the constraints on their use, are precisely and unambiguously defined in a declarative language suitable for knowledge representation. Shared means that all users of an ontology will represent a concept using the same or equivalent set of entities and relationships. Domain refers to the content of the universe of discourse being represented by the ontology" [KEUO]. In this specification, the broadest possible definition of an ontology is used: a shared vocabulary. The vocabulary in question is the list of core properties (relationships) defined here (prefixed ma in this document); its machine-readable format is specified in the following section. The vocabulary used is RDF [RDF]. However, implementations are not limited to using RDF. Implementations MAY use different formats and still be considered to be conformant with this specification, as long as they comply to the definition of the properties listed in the following section 5.
A media resource is any physical or logical resource that can be identified using a Uniform Resource Identifier (URI), as defined by [RFC 3986]), which has or is related to one or more media content types. Note that [RFC 3986] points out that a resource may be retrievable or not. Hence, this term encompasses the abstract notion of a movie (e.g., Notting Hill) as well as the binary encoding of this movie (e.g., the MPEG-4 encoding of Notting Hill on a DVD), or any intermediate levels of abstraction (e.g., the director's cut or the plain version of the Notting Hill movie). Although some ontologies (FRBR, BBC) define different concepts for different levels of abstraction, other ontologies do not. Therefore, in order to foster interoperability, the ontology defined in this specification does not provide such a classification of media resources.
A property is an element from an existing metadata format for describing media resources, or an element from the core vocabulary as defined in this specification. For example, the Dublin Core dc:creator element and the Media Ontology creator element are both properties. A property links a Media Resource with a literal value or another resource. In the above example, the dc:creator property links a given resource with the value of its creator property. In this example, Dublin Core does this by defining the dc:creator property as follows: "Examples of a creator include a person, an organization, or a service".
Properties can have structured or unstructured values. The set of properties defined in the Media Ontology core vocabulary is listed in section 5 Property definitions.
For the purposes of this document, a mapping is defined as a function that transforms information represented in one schema using one format to information in a different schema that uses a different format. In this document, a set of mappings are defined between a subset of the "in scope" Vocabularies and the properties of the core vocabulary of the Media Ontology that is defined in this document. These mappings are presented in section 5.2 Property mapping table.
Property value types are the data types of the values for a property. For example, the property dc:creator can have either string or URI as data types. Property value types are defined in section 4 Property value type definitions. They are dependent on XML Schema data types [XML Schema 2].
This section is normative.
Note:
Currently, the data types of property values that used in this document are defined in terms of XML Schema 1.1, part 2.
Applications that wish to be conformant with this specification MUST use the data types specified in this section for property values that are defined in this specification.
"A Uniform Resource Identifier", or URI, is defined in [RFC 3986]. In this specification, the term URI is used, since it is well known. However, the use of this term is extended in this specification to also include "Internationalized Resource Identifiers" (IRIs), as defined in [RFC 3987]. An IRI is a URI that MAY contain non-escaped characters other than ASCII characters. The data type is anyURI. Hence, in this specification, the term "URI" MUST be interpreted to also include IRI.
A String
value MUST be represented using the XML Schema string data type.
An Integer
value MUST be represented using the XML Schema integer data type.
A Decimal
value SHOULD be represented using the XML Schema decimal data type, but
MAY be represented using the XML Schema double data type if
decimal is not available.
A Date
value MUST be represented using one of the specific
date/time data types of XML Schema, depending on the available precision: gYear gYearMonth, date, dateTime, or dateTimeStamp.
This section is normative; however, examples contained within this section are informative.
This list of core properties has been defined by creating an initial set of mappings from the list of vocabularies in scope. The core list is a selection of the properties that were supported by the majority of the vocabularies in scope [findtop10].
The ranking of the core properties by expected importance, as determined by the use cases defined in Use Cases and Requirements for Ontology and API for Media Resource 1.0, has been used as an additional criteria for narrowing down the set of core properties for this specification. The resulting set of properties is nearly identical to that chosen by the [jpsearch] initiative.
The following information is available for each property:
Name
Description
Mappings to existing formats
Several properties in this specification are defined as complex types, consisting of a tuple of attributes. This is used to support qualifiers and optional attributes. Hence, a special syntax has been defined to accommodate this requirement, and is explained below.
All properties names are intentionally in singular form and MUST contain only a single value. However, multiple instances of a property MAY be used. In addition, each property MAY have an associated language attribute, which can be used to enable several instances of that property to be defined in different languages.
The following syntax is used for the type descriptions:
( ) (parentheses) are used to indicate a attribute/value pair
| (vertical bar) is used to indicate a choice between different values
{ } (curly brackets) are used to define a complex type, i.e., a tuple of attribute/value pairs
? (question mark) is used to indicate an optional element
contributor { (attName="contributor", attValue="URI" | "String"), (attName="role", attValue="URI" | "String")? } is interpreted as a complex type that has two elements. The first identifies the contributor of a media resource by using a URI or a string. The second specifies an optional role, which is defined by a string. Elements are comma separated, and the collection of elements that makes up the complex type is enclosed in curly brackets.
Name | Type definition | Description |
---|---|---|
Identification | ||
identifier | (attName="identifier", attValue="URI") | A URI identifying a media resource, which can be either an abstract concept (e.g., Hamlet) or a specific object (e.g., an MPEG-4 encoding of the English version of "Hamlet"). |
title | { (attName="title", attValue="String"), (attName="type", attValue="URI" | "String")? } | A tuple that specifies the title or name given to the resource. The type can be used to optionally define the category of the title. |
language | (attName="language", attValue="URI" | "String") | The language used in the resource. We recommend to use a controlled vocabulary such as [BCP 47]. An BCP 47 language identifier can also identify sign languages e.g. using ISO 639-3 subtags like bfi (British sign language). |
locator | (attName="locator", attValue="URI") | The logical address at which the resource can be accessed (e.g. a URL, or a DVB URI). |
Creation | ||
contributor | { (attName="contributor", attValue="URI" | "String"), (attName="role", attValue="URI" | "String")? } | A tuple identifying the agent, using either a URI (recommended best practice) or plain text. The role can be used to optionally define the nature of the contribution (e.g., actor, cameraman, director, singer, author, artist, or other role types). An example of such a tuple is: {imdb:nm0000318, director}. |
creator | { (attName="creator", attValue="URI" | "String"), (attName="role", attValue="URI" | "String")? } | A tuple identifying the author of the resource, using either a URI (recommended best practice) or plain text. The role can be used to optionally define the category of author (e.g., playwright or author). The role is defined as plain text. An example of such a tuple is: {dbpedia:Shakespeare, playwright}. |
date | { (attName="date", attValue="Date"), (attName="type", attValue="URI" | "String")? } | A tuple defining the date and time that the resource was created. The type can be used to optionally define the category of creation date (e.g., release date, date recorded, or date edited). |
location | { (attName="name", attValue="URI" | "String")?, (attName="longitude", attValue="Decimal")?, (attName="latitude", attValue="Decimal")?, (attName="altitude", attValue="Decimal")?, (attName="coordinateSystem", attValue="URI" | "String")? } | A tuple identifying a name or a set of geographic coordinates, in a given system, that describe where the resource has been created, developed, recorded, or otherwise authored. The name can be defined using either a URI (recommended best practice) or plain text. The geographic coordinates include longitude, latitude and an optional altitude information, in a given geo-coordinate system (such as the World Geodetic System) that MAY also be specified. At least a name or (longitude, latitude) must be provided. A registry of coordinate reference systems such as EPSG Geodetic Parameter Dataset can be used to identify coordinate systems by URIs. |
Content description | ||
description | (attName="description", attValue="String") | Free-form text describing the content of the resource. |
keyword | (attName="keyword", attValue="URI" | "String") | A concept, descriptive phrase or keyword that specifies the topic of the resource, using either a URI (recommended best practice) or plain text. In addition, the concept, descriptive phrase, or keyword contained in this element SHOULD be taken from an ontology or a controlled vocabulary. |
genre | (attName="genre", attValue="URI" | "String") | The category of the content of the resource, using either a URI (recommended best practice) or plain text. In addition, the genre contained in this element SHOULD be taken from an ontology or controlled vocabulary, such as the EBU vocabulary. |
rating | { (attName="value", attValue="Decimal"), (attName="ratingSystem", attValue="URI" | "String")?, {(attName="min", attValue="Decimal"), (attName="max", attValue="Decimal")}? } | The rating value (e.g., customer rating, review, audience appreciation), specified by a tuple defining the rating value, an optional rating person or organization defined as either a URI (recommended best practice) or as plain text, and an optional voting range. The voting range can optionally be used to define the minimum and maximum values that the rating can have. |
Relational | ||
relation | { (attName="target", attValue="URI" | "String"), (attName="type", attValue="URI" | "String")? } | A tuple that identifies a resource that the current resource is related with (using either a URI -recommended best practice- or plain text), and optionally, specifies the nature of the relationship. An example is a listing of content that has a (possibly named) relationship to another content, such as the trailer of a movie, or the summary of a media resource. |
collection | (attName="collection", attValue="URI" | "String") | The name of the collection (using either a URI or plain text) from which the resource originates or to which it belongs. We recommend to use a URI, as a best practice. |
Rights | ||
copyright | { (attName="copyright", attValue="String"), (attName="holder", attValue="URI" | "String")? } | A tuple containing the copyright statement associated with the resource and optionally, the identifier of the copyright holder. Other issues related to Digital Rights Management are out of scope for this specification. |
policy | { (attName="statement", attValue="URI" | "String"), (attName="type", attValue="URI" | "String")? } | A tuple containing a policy statement either human readable as a string or machine resolvable as a URI, and the type of the policy to provide more information as to the nature of the policy. See examples. |
Distribution | ||
publisher | (attName="publisher", attValue="URI" | "String") | The publisher of a resource, defined as either a URI or plain text. We recommend, as a best practice, to define the publisher as a URI. |
targetAudience | { (attName="audience", attValue="URI" | "String"), (attName="classificationSystem", attValue="URI" | "String")? } | A tuple identifying the audience being addressed (demographic class, parental guidance group, or geographical region) and an optional classification system (e.g., a parental guidance issuing agency). . |
Fragment | ||
fragment | { (attName="identifier", attValue="URI"), (attName="role", attValue="URI" | "String")? } | A tuple containing a fragment identifier and optionally, its role. A fragment is a portion of the resource, as defined by the [MediaFragment] Working Group. |
namedFragment | { (attName="identifier", attValue="URI"), (attName="label", attValue="String") } | A tuple containing a named fragment identifier and its label. |
Technical Properties | ||
frameSize | { (attName="width", attValue="Decimal"), (attName="height", attValue="Decimal"), (attValue="unit", attValue="String")? } | A tuple defining the frame size of the resource (e.g., width and height of 720 and 480 units, respectively). The units can be optionally specified; if the units are not specified, then the units MUST be interpreted as pixels. |
compression | (attName="compression", attValue="URI" | "String") | The compression type used. For container files (e.g., QuickTime, AVI), the compression is not defined by the format, as a container file can have several tracks that each use different encodings. In such a case, several compression instances should be used. Thus, querying the compression property of the track media fragments will return different values for each track fragment. Either or both of two values may be supplied: a URI, and a free-form string which can be used for user display or when the naming convention is lost or unknown. The URI consists of a absolute-URI (RFC 3986 [RFC 3986], section 4.3) and fragment (RFC 3986 [RFC 3986], section 3.5), that is, e.g. in the form absolute-URI#name. The absolute-URI identifies the naming convention used for the second parameter, which is a string name from that convention. A URL is preferred for the URI, and if it is used, it (a) might contain a date in the form mmyyyy, indicating that the owner of the domain in the URL agreed to its use as a label around that date and (b) should be de-referencable, yielding an informative resource about the naming convention. Note that this use of URIs with fragments also closely matches RDF (see RDF concepts). Note that for some container files, the format parameter can also carry an extended MIME type to document this; see [RFC 4281] for one such instance. See examples. |
duration | (attName="duration", attValue="Decimal") | The actual duration of the resource. The units are defined to be seconds. |
format | (attName="format", attValue="URI" | "String") | The MIME type of the resource (e.g., wrapper or bucket media types), ideally including as much information as possible about the resource such as media type parameters, for example, using the "codecs" parameter [RFC 4281]. |
samplingRate | (attName="samplingRate", attValue="Decimal") | The audio sampling rate. The units are defined to be samples/second. |
frameRate | (attName="frameRate", attValue="Decimal") | The video frame rate. The units are defined to be frames/second. |
averageBitRate | (attName="averageBitRate", attValue="Decimal") | The average bit rate. The units are defined to be kbps. |
numTracks | { (attName="number", attValue="Integer"), (attName="type", attValue="String")? } | A tuple defining the number of tracks of a resource, optionally followed by the type of track (e.g., video, audio, or subtitle). |
A number of these properties use qualifiers to define subtypes and roles: identifier, title, contributor, creator, date, relation, collection, policy, fragment and numTracks. In addition, the location, rating, copyright, and frameSize properties use optional elements to define the unit of measure of their values, the ranges that the values of these elements can have, or other supplementary information. All subtype and role qualifiers for these properties are optional. The set of possible values for subtypes is not normative. However, whenever possible, values defined in an existing controlled vocabulary or classification scheme SHOULD be used.
Example | Property | Attribute name | Value | Comment |
---|---|---|---|---|
Example 1 | compression | compression | urn:example-org:codingnames2010#ITU-H264 | ITU-H264 and G711 are defined by example.org (who also defined a URN to identify their naming conventions), and by example.net (who use a URL to identify theirs). |
compression | compression | Advanced Video Coding | ||
Example 2 | compression | compression | http://example.net/012011/standards/codecs.htm#G711 | The second example gives only an identifier, |
Example 3 | compression | compression | Raw audio | the third example has no identifier, only an indicator. |
Example 4 | compression | compression | urn:x-ul:060E2B34.0401.0101.04020202.03020500 | layer 2 or 3 compression, SMPTE |
compression | compression | MPEG Layer II/III | ||
Example 5 | compression | compression | AVC MP@L42 | AVC compression, Cablelabs |
Example 6 | compression | compression | c125 | AVC compression, IPTC |
The "type definition" of the policy property would include:
policy.statement : A human-readable description of the Policy (string) or an Identifier of the Policy (URI)
policy.type : The category of the Policy (URI)
Recommended values for policy.type is the Meta information from the XHTML Vocabulary (http://www.w3.org/1999/xhtml/vocab/#)
The copyright would naturally be mapped into policy.statement
Examples:
Property | Attribute name | Value |
---|---|---|
policy | statement | Copyright PLING Inc 2010. All Rights Reserved |
type | http://www.w3.org/1999/xhtml/vocab/#copyright | |
policy | statement | http://p3pbook.com/examples/10-4.xml |
type | http://www.w3.org/1999/xhtml/vocab/#p3pv1 | |
policy | statement | http://odrl.net/license/license.xml |
type | http://www.w3.org/1999/xhtml/vocab/#license | |
policy | statement | http://creativecommons.org/licenses/by/3.0/ |
type | http://www.w3.org/1999/xhtml/vocab/#license |
The mappings between the Media Ontology and a subset of the "in-scope" vocabularies of this specification specify both the semantic and some elements of the syntactic correspondences between the Media Ontology properties and the elements of a given vocabulary. The vocabularies selected were those that were deemed to be the most popular and useful regarding the proposed Use Cases (see Use Cases and Requirements for Ontology and API for Media Ressource 1.0).
The presented mappings are uni-directional mappings, because the semantics of the elements being mapped from the same Media Ontology property may be very different across formats. For example, copyright is mapped to both xmpDM:copyright and dc:rights (as part of the XMP standard [XMP]); the same property is mapped to exif:Copyright (see [EXIF]). Unfortunately, no semantic relationship can be inferred between the elements defined in the XMP and EXIF standards. The mappings that have been taken into account have different semantics that have one of the following four characteristics:
Exact match: the semantics of the two properties are equivalent in all possible contexts. For example, the semantics of the property title exactly matches the semantics of the property vra:title.
More specific: the property of the vocabulary taken into account has associated semantics that contain a superset of the semantics expressed by the property defined in this specification. For example in DIG35, ipr_names@description and ipr_person@description are both more specific than the property publisher to which they are mapped.
More generic: the inverse of the above, meaning that the property of the vocabulary taken into account has associated semantics that is broader than the property defined in this specification. For example, the DIG35 location is more general than the location property.
Related: the two properties are related in a way that is relevant for some use cases, but this relation has no defined and/or commonly applied semantics. For example, in Media RSS, media:credit is related to creator.
This list of relations between vocabularies (or informal mappings) and the "Core Media Properties list" is published as a table. Feedback from people or companies actually using the different vocabularies in communities that are currently using the different vocabularies is very welcome; if such feedback is received, it will be incorporated into an updated of this specification.
Syntactic level mappings define the correspondence between two similar properties that have different syntactic expressions, but (roughly) similar associated semantics. For example, one important use case is date formatting, where the format of the date and/or time used is different in two vocabularies, but the overall semantics (identifying a date and/or time) is the same.
The mapping expression corresponds to the concrete implementation or representation of the mappings defined in the previous paragraph, both at a semantic level and at syntactic one.
SKOS (acronym for the Simple Knowledge Organization System) is a Recommendation of the W3C Semantic Web activity which defines a vocabulary for representing Knowledge Organization Systems, such as vocabularies, and relationships amongst them. In SKOS the mapping properties that we take into account in the mapping table are expressed as: skos:exactMatch, skos:narrowMatch, skos:broadMatch and skos:relatedMatch.
A future version of this specification may include additional information about the properties. For example, some restrictions might be added to a set of mappings (e.g., if they are symmetric) to enhance more efficient mappings. If such changes are implemented, every effort will be made to produce a new and revised specification that is backwards-compatible with the current version of this specification.
The following mappings are established from the Media Ontology's properties to various multimedia metadata formats. This list of formats is not closed, nor does it pretend to be exhaustive. A future version of this specification may include additional mappings if a need or use case is established for these new mappings.
For each format there is a mapping table with the following columns.
MAWG: the name of the property being mapped to, like identifier, title etc.
Relation: the semantic relation. Possible values are: more specific, more general, related, exact, non applicable (N/A).
Third column: the name of the format specific property.
Spec: the abbrevation of the specification wich defines that property.
How to do the mapping: details about the mapping. Not given for all formats.
Datatype: the datatype of the format specific property.
Required vs Optional: information about optionality. Not given for all formats.
XPath: an XPath 1.0 expression pointing to the property in the format. Not given for all formats.
For the Cablelabs format the mapping table has the following extra columns.
Type (MediaType): Defines the type of asset that this field refers to in the Cablelabs 1.1 ADI and Content Specs. The type defines whether the asset is a movie, a still or other structure in the whole Video package.
Spec: In CableLabs Cablelabs 1.1 ADI and Content Specs there are two specifications (ADI and CONTENT) which apply to the management of the content and the content metadata itself. The AMS refers to the former, the MOD or SVOD refers to the latter - defining the type of service used.
Metadata Name: Defines the actual field value of the named field.
MAWG | Relation | Cablelabs1.1 | How to do the mapping | Datatype | XPath | |||
---|---|---|---|---|---|---|---|---|
Descriptive Properties (Core Set) | ||||||||
Identification | ||||||||
Type (MediaType). | Spec | Metadata Name. | Type (DataType) | Required vs Optional | ||||
identifier | exact | Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Asset_ID | An identifier for the asset that is unique within a provider's asset ID space. The unique portable identification of an asset is the combinations of its Provider_ID and its Asset_ID. | String (fixed 20 characters, alpha/numeric). 4 alpha characters followed by 16 numbers, no spaces allowed. ~~~ Example: "ABCD1234567890123456" | Req | N/A |
related | Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Asset_Name | A string containing the identifying name of the asset. Asset names must be unique within a product. | String (max 50 characters). ~~~ Example: "WesCravensDracula2000encrypted" | Req | N/A | |
Movie | MOD or SVOD | Avail | String. ~~~ Format of "HH:MM:SS:FF,HH:MM:SS:FF,HH:MM:SS:FF,HH:MM:SS:FF,XX". ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Avail"" value=""00:00:00:00,00:08:00:00,00:00:00:00,00:00:00:00,XX"" > ~~~ < app_data app=""MOD"" name=""Avail"" value=""00:00:00:00,00:08:00:00,00:09:00:00,00:00:00:00,XX"" > ~~~ < app_data app=""MOD"" name=""Avail"" value=""00:00:02:00,00:08:00:00,00:09:00:00,00:00:00:00,XX"" > ~~~ < app_data app=""MOD"" name=""Avail"" value=""00:07:50:00,00:08:00:00,00:09:00:00,00:09:10:00,XX"" > ~~~ </app_data></app_data></app_data></app_data> | Opt | N/A | |||
Title | MOD or SVOD | Billing_ID | Integer (max 5 digits) | Req | N/A | |||
Title | MOD or SVOD | Box_Office | Integer | Opt | N/A | |||
Title | MOD or SVOD | Chapter | String (max 128 characters per heaing, max 1024 characters total for all headings) containing the two components (SMPTE time code, heading), one per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Chapter"" value=""01:01:01:01,Opening" scene"="" > ~~~ < app_data app=""MOD"" name=""Chapter"" value=""01:30:01:01,Max" encounters="" a="" problem"="" > ~~~ </app_data></app_data> | Opt | N/A | |||
Title | MOD or SVOD | Closed_Captioning | String "Y" or "N" | Opt | N/A | |||
Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | MOD or SVOD | Content_CheckSum | String “ Hex (32 chars) | Req | N/A | |||
Title | MOD or SVOD | Contract_Name | String | Opt | N/A | |||
Title | MOD or SVOD | Display_As_Last_Chance | Integer “ number of days | Opt | N/A | |||
Title | MOD or SVOD | Display_As_New | Integer “ number of days | Opt | N/A | |||
Title | MOD or SVOD | Distributor_Name | String (max 128 characters). | Opt | N/A | |||
title | exact | Title | MOD or SVOD | Title | Movie title (for display). | String (max 128 characters). Special characters allowed. ~~~ Example: "Wes Craven's Dracula 2000" | Req | N/A |
more general | Title | MOD or SVOD | Title_Brief | A brief version of the movie title (for display). | String (max 19 characters). | Req | N/A | |
more general | Title | MOD or SVOD | Title_Sort_Name | String (max 32 characters). ~~~ Example: "Blob, The" | Opt | N/A | ||
Trick Asset | MOD or SVOD | Trick_Mode | String. ~~~ Examples: "FFWD", "FREV", "Index", "All", "Archive" | Req | N/A | |||
Title, Movie, Still-Image, Preview | MOD or SVOD | Type | Values are expected to be: "title", "movie", "box cover", "poster", and "preview" for the corresponding assets. Other asset types can be specified. | Req | N/A | |||
Encrypted Asset | MOD or SVOD | Vendor_Name | String | Opt | N/A | |||
Trick Asset | MOD or SVOD | Vendor_Name | String | Opt | N/A | |||
Trick Asset | MOD or SVOD | Vendor_Product | String | Req | N/A | |||
Package , title, Movie, Still-Image, Preview, TrickAsset, EncryptedAsset | AMS | Verb | String. | Opt | N/A | |||
Package , title, Movie, Still-Image, Preview, TrickAsset, EncryptedAsset | AMS | Version_Major | Integer | Req | N/A | |||
Package , title, Movie, Still-Image, Preview, TrickAsset, EncryptedAsset | AMS | Version_Minor | Integer | Req | N/A | |||
language | exact | Movie, Preview | MOD or SVOD | Languages | Available languages.
NOTE: Audio PID(s) shall correspond with Languages. Two character language code from 639-1. |
String “ (max 2 characters per language, 1024 total), one language per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Languages"" value=""en"/" > ~~~ < app_data app=""MOD"" name=""Languages"" value=""es"/" > </app_data></app_data> | Opt | N/A |
locator | N/A | N/A | ||||||
Creation | ||||||||
contributor | more specific | Title | MOD or SVOD | Actors | Actors “ Last Name,First Name (for searching). The separator MUST be a "," between the last name and the first name. On-air talent MAY be included. | String (max 35 characters per actor), one actor per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Actors"" value=""Willis,Bruce"/"> ~~~ <app_data app=""MOD"" name=""Actors"" value=""Gere,Richard"/"> ~~~ </app_data> </app_data > | Opt | N/A |
more specific | Title | MOD or SVOD | Actors_Display | Actors -- A human-readable string for display; use Name 1, Name 2. | String (max 1024 characters total all Actors). ~~~ Example: ~~~ "Voices of Tom Hanks, Robin Williams" | Opt | N/A | |
more specific | Title | MOD or SVOD | Advisories | String, one advisory per element (max 1024 characters for all advisories). ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Advisories"" value=""S"/" > ~~~ < app_data app=""MOD"" name=""Advisories"" value=""V"/" > ~~~ There are at most six occurrences of "Advisories", with a combined maximum of at most 12 characters.</app_data></app_data> | Opt | N/A | ||
more specific | Title | MOD or SVOD | Director | String (max 35 characters per director), one director per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Director"" value=""Puzo," mario"="" > ~~~ < app_data app=""MOD"" name=""Director"" value=""Lucas,George"/" > ~~~</app_data> </app_data> | Opt | N/A | ||
creator | more specific | Title | MOD or SVOD | Writer_Display | Writer(s)”A human-readable string for display; use Name 1, Name 2. | String (max 1024 characters total all Writers). ~~~ Example: ~~~ "Francis Ford Coppola, Mario Puzo" | Opt | N/A |
date | exact | Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Creation_Date | A string representing the date on which the Asset was created. | String “ "yyyy-mm-dd" | Req | N/A |
location | Title | MOD or SVOD | Studio_Royalty_Flat_Rate | Currency. Maximum of 3 digits right of the decimal allowed. ~~~ Example: "1.995" | Opt | N/A | ||
Content description | ||||||||
description | more specific | Title | MOD or SVOD | Summary_Long | Movie summary in full. | String (max 4096 characters). Special characters allowed. | Opt | N/A |
more specific | Title | MOD or SVOD | Summary_Medium | Movie summary paragraph “ for EPG-like description. | String (max 1024 characters). Special characters allowed. | Opt | N/A | |
exact | Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Description | A human-readable string describing the Asset. | String. ~~~ Example: "Wes Craven's Dracula 2000 asset package" | Req | N/A | |
keyword | more general | Title | MOD or SVOD | Summary_Short | String (max 256 characters). Special characters allowed. ~~~ Example: "Samantha is hired to plan a bat mitzvah; Charlottte tries to improve life with Trey" | Req | N/A | |
genre | exact | Title | MOD or SVOD | Genre | Genres “ Subject-matter classification of the show. See [GENRE] for values. | String (max 20 characters per genre), one genre per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Genre"" value=""Action"/" > ~~~ < app_data app=""MOD"" name=""Genre"" value=""Comedy"/" > ~~~</app_data></app_data> | Opt | N/A |
more general | Title | MOD or SVOD | Category | A nested list of human readable categories and sub-categories which effect how the UI presents the asset. | String (max 20 characters per category component), one category per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Category"" value=""Movies/Movies" a-z"="" > ~~~ < app_data app=""MOD"" name=""Category"" value=""Movies/Comedy"/" > ~~~</app_data></app_data> | Opt | N/A | |
more specifc | title, preview | MOD or SVOD | MSORating | String, one rating per element. ~~~ Example: ~~~ < app_data app=""MOD"" name=""MSORating"" value=""Age-14"/" > ~~~</app_data> | Opt | N/A | ||
more specific | Title | MOD or SVOD | Advisories | One content advisory code (see Annex A, Ratings and Advisories). | String, one advisory per element (max 1024 characters for all advisories). ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Advisories"" value=""S"/" > ~~~ < app_data app=""MOD"" name=""Advisories"" value=""V"/" > ~~~ There are at most six occurrences of "Advisories", with a combined maximum of at most 12 characters.</app_data></app_data> | Opt | N/A | |
Relational | ||||||||
relation | more general | Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Asset_Class | A system-level type for the asset. This is intended to be helpful for the application mapping and routing, and expected to be more general than the Type value for the content. Expected Value is "package". | String - Expected Values are: Move, Box Cover, Poster, Preview, Trickfile,encrypted. | Req | N/A |
more specific | Encrypted Asset | MOD or SVOD | Asset_Encrypted | Asset ID of the asset for which content is encrypted. It is assumed that the Provider_ID for that asset is the same as for this asset, or, is within this same Title asset). | String (per Asset_ID element) | Opt | N/A | |
related | Title | MOD or SVOD | Year | Year of release. | String “ "yyyy" | Opt | N/A | |
collection | more specific | Title | MOD or SVOD | Episode_ID | A unique identifier given to each individual episode of a series. | String. ~~~ Example: "Episode #45" | Opt | N/A |
more specific | Title | MOD or SVOD | Episode_Name | The name of an individual episode of a series. | String. ~~~ Example: "Hot Child in the City" | Opt | N/A | |
Rights | ||||||||
copyright | more general | Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Provider | A unique identifier for the provider of the Asset “ represents the business relationship between the MSO and the Asset Provider. | String. ~~~ Examples: "iN_DEMAND" or "HBO" | Req | N/A |
policy | more specific | MOD or SVOD | Contract_Name | Identifying name of the contract under which this title is licensed.> | String | Opt | N/A | |
Distribution | ||||||||
publisher | more general | Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Provider | A unique identifier for the provider of the Asset “ represents the business relationship between the MSO and the Asset Provider. | String. ~~~ Examples: "iN_DEMAND" or "HBO" | Req | N/A |
Package | MOD or SVOD | Provider_Content_Tier | String “ one tier per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Provider_Content_Tier"" value=""HBO1"/" > ~~~ < app_data app=""MOD"" name=""Provider_Content_Tier"" value=""HBO8"/" > </app_data></app_data> | Opt | N/A | |||
Package, Title, Movie, Still-Image, Preview, TrickAsset,Encrypted Asset | AMS | Provider_ID | String (max 20 characters). ~~~ Example: "indemand.com" | Req | N/A | |||
Title | MOD or SVOD | Provider_QA_Contact | String | Req ~~~ (*Opt for SVOD) | N/A | |||
Encrypted Asset | MOD or SVOD | Receiver_Type | String. ~~~ Examples: "Moto", "SA" | Req | N/A | |||
Encrypted Asset | MOD or SVOD | Receiver_Version | Integer | Opt | N/A | |||
Title | MOD or SVOD | Studio | String (max 256 characters). ~~~ Example: "Buena Vista" | Opt | N/A | |||
Title | MOD or SVOD | Studio_Name | String (max 128 characters). | Opt | N/A | |||
targetAudience | exact | Preview | MOD or SVOD | Audience | Field to indicate target audience (see Annex A for examples). | String, one rating per element. ~~~ Example: ~~~ < app_data app=""MOD"" name=""Audience"" value=""Adult"/" > ~~~</app_data> | Opt | N/A |
Title | MOD or SVOD | Audience | String, one rating per element. ~~~ Example: ~~~ < app_data app=""MOD"" name=""Audience"" value=""Adult"/" > ~~~</app_data> | Opt | N/A | |||
Title | MOD or SVOD | Rating | MPAA or TV Rating, whichever is appropriate (see Annex A, Ratings and Advisories). | String, one rating per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Rating"" value=""TV-G"/" > ~~~ < app_data app=""MOD"" name=""Rating"" value=""G"/" > ~~~</app_data></app_data> | Req | N/A | ||
Title | MSORating | N/A | ||||||
Title | Advisories | N/A | ||||||
Fragments | ||||||||
fragments | more specific | Title | MOD or SVOD | Episode_ID | A unique identifier given to each individualepisode of a series | String | N/A | |
namedFragments | more specific | Title | MOD or SVOD | Episode_Name | The name of an individual episode of aseries. | String | N/A | |
Technical Properties | ||||||||
frameSize | more general | movie ,preview | MOD or SVOD | Resolution | Other values may be supplied. Currently, defined values are one of "480i", "720p", "1080i", or "1080p". | String | Req | N/A |
more general | movie ,preview | MOD or SVOD | Screen_Format | Screen format (Standard, Widescreen, Letterbox, OAR) (for display). | String | Opt | N/A | |
compression | more specific | Movie | MOD or SVOD | Codec | Other values may be supplied. Currently,defined values are one of "MPEG2" or when AVC/MPEG4 one of "AVC MP@L30", "AVC MP@L40", "AVC MP@L42", "AVC HP@L30", "AVC HP@L40","AVC HP@L42" | String | Req | N/A |
duration | more general | Title | MOD or SVOD | Display_Run_Time | Run time (for display). | String “ "hh:mm" | Req | N/A |
exact | title, preview | MOD or SVOD | Run_Time | Run time. | String “ "hh:mm:ss" | Req | N/A | |
Title | MOD or SVOD | Maximum_Viewing_Length | String “ "DD:HH:MM". ~~~ Example: "00:24:00" | Opt | N/A | |||
format | more specific | Encrypted Asset | MOD or SVOD | Encrypting_System_Info | Information pertaining to the encrypting system. | String | Opt | N/A |
more specific | Movie | MOD or SVOD | Encryption | String "Y" or "N". ~~~ Example: ~~~ < app_data app=""MOD"" name=""Encryption"" value=""Y"/" > ~~~</app_data> | Opt | N/A | ||
more specific | Encrypted Asset | MOD or SVOD | Encryption_Algorithm | Further identification of the encryption type. | String. ~~~ Examples: "DES", "3DES", "RC5" | Opt | N/A | |
Encrypted Asset | MOD or SVOD | Encryption_Date | Date | Opt | N/A | |||
Encrypted Asset | MOD or SVOD | Encryption_Key_Block | String (max 4096 characters) | Opt | N/A | |||
Encrypted Asset | MOD or SVOD | Encryption_Time | Time | Opt | N/A | |||
Encrypted Asset | MOD or SVOD | Encryption_Type | String. ~~~ Examples: "symmetric", "public key" | Opt | N/A | |||
Movie, Preview | MOD or SVOD | Audio_Type | String “ one audio type per element. ~~~ Examples: ~~~ < app_data app=""MOD"" name=""Audio_Type"" value=""Dolby" digital"="" > ~~~ < app_data app=""MOD"" name=""Audio_Type"" value=""Mono"/"> ~~~</app_data></app_data> | Req | N/A | |||
samplingRate | N/A | N/A | ||||||
frameRate | exact | Movie | MOD or SVOD | Frame_Rate | Other values may be supplied. Currently, defined values are one of 24, 30, or 60. | Integer | Req | N/A |
averageBitRate | exact | Movie | Bit_Rate | The maximum overall bit rate of the included content, in kilobits per second. | Numeric “ ex. 3750 | Req | N/A | |
numTracks | N/A | N/A |
MAWG | Relation | DIG35 | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | IMAGE_ID | ComplexType: sequence of UID (string) and ID_TYPE (URI) | METADATA/BASIC_IMAGE_INFO/IMAGE_ID | |
title | exact | IPR_TITLE | dig35:tLangString (ComplexType extending string with "ref" attribute of type xml:lang ) | METADATA/IPR/IPR_DESCRIPTION/IPR_TITLE | |
language | N/A | N/A | |||
locator | N/A | N/A | |||
Creation | |||||
contributor | more general | IPR_NAMES/IPR_PERSON@DESCRIPTION="" | dig35:tPerson (ComplexType including different fields to describe person-related information) | METADATA/IPR/IPR_NAMES/IPR_PERSON | |
creator | GENERAL_CREATION_INFO/IMAGE_CREATOR
OR IPR_NAMES/IPR_PERSON@DESCRIPTION=Image Creator OR IPR_NAMES/IPR_PERSON@DESCRIPTION=Original Work Author |
dig35:tPerson (ComplexType including different fields to describe person-related information) | METADATA/IMAGE_CREATION/GENERAL_CREATION_INFO/IMAGE_CREATOR
or METADATA/IPR/IPR_NAMES/IPR_PERSON[@DESCRIPTION='Image Creator'] or METADATA/IPR/IPR_NAMES/IPR_PERSON[@DESCRIPTION='Original Work Author'] |
||
date | exact | CREATION_TIME or CAPTURE_TIME | dateTime
or dig35:tDateTime (ComplexType describing the date, including day, month, year, week day, or season) |
METADATA/IMAGE_CREATION/GENERAL_CREATION_INFO/CREATION_TIME
or METADATA/CONTENT_DESCRIPTION/CAPTURE_TIME |
|
location | more specific | LOCATION | dig35:tLocation (ComplexType: sequence including logitude and latitude, address, GPS or a comment) | METADATA/CONTENT_DESCRIPTION/LOCATION | |
Content description | |||||
description | exact | CAPTION
or IPR_CAPTION |
dig35:tLangString (ComplexType extending string with "ref" attribute of type xml:lang ) | METADATA/CONTENT_DESCRIPTION/CAPTION
or METADATA/IPR/IPR_DESCRIPTION/IPR_CAPTION |
|
keyword | exact | CAPTION
or IPR_CAPTION |
dig35:tLangString (ComplexType extending string with "ref" attribute of type xml:lang ) | METADATA/CONTENT_DESCRIPTION/CAPTION
or METADATA/IPR/IPR_DESCRIPTION/IPR_CAPTION |
|
genre | GENERAL_CREATION_INFO/SCENE_TYPE OR GENERAL_CREATION_INFO/IMAGE_SOURCE | dig35:tLangString (ComplexType extending string with "ref" attribute of type xml:lang ) | METADATA/IMAGE_CREATION/GENERAL_CREATION_INFO/SCENE_TYPE
or METADATA/IMAGE_CREATION/GENERAL_CREATION_INFO/IMAGE_SOURCE |
||
rating | N/A | N/A | |||
Relational | |||||
relation | N/A | N/A | |||
collection | N/A | N/A | |||
Rights | |||||
copyright | exact | COPYRIGHT | dig35:tLangString (ComplexType extending string with "ref" attribute of type xml:lang ) | METADATA/IPR/IPR_DESCRIPTION/COPYRIGHT | |
policy | more general | IPR_EXPLOITATION | ComplexType including different fields to describe protection, use restriction, obligation, and IPR management system iinformation. | METADATA/IPR/IPR_EXPLOITATION | |
Distribution | |||||
publisher | more general | IPR_NAMES/IPR_PERSON@DESCRIPTION="" | dig35:tPerson (ComplexType including different fields to describe person-related information) | METADATA/IPR/IPR_NAMES/IPR_PERSON | |
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | exact | IMAGE_SIZE/HEIGHT AND IMAGE_SIZE/WIDTH | positiveInteger | METADATA/BASIC_IMAGE_INFO/IMAGE_SIZE/HEIGHT
or METADATA/BASIC_IMAGE_INFO/IMAGE_SIZE/WIDTH |
|
compression | exact | COMPRESSION | string | METADATA/BASIC_IMAGE_INFO/COMPRESSION | |
duration | N/A | N/A | |||
format | exact | FILE_FORMAT/MIME_TYPE | string | METADATA/BASIC_IMAGE_INFO/FILE_FORMAT/MIME_TYPE | |
samplingRate | N/A | N/A | |||
frameRate | N/A | N/A | |||
averageBitRate | N/A | N/A | |||
numTracks | N/A | N/A |
MAWG | Relation | Dublin Core | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | identifier | ASCII Text | N/A | |
title | exact | title | ASCII Text | N/A | |
language | exact | language | ASCII Text | N/A | |
locator | N/A | N/A | |||
Creation | |||||
contributor | exact | contributor | ASCII Text | N/A | |
creator | exact | creator | ASCII Text | N/A | |
date | related | date | ASCII Text | N/A | |
location | exact | coverage | ASCII Text | N/A | |
Content description | |||||
description | exact | description | ASCII Text | N/A | |
keyword | exact | subject | ASCII Text | N/A | |
genre | exact | type | ASCII Text | N/A | |
rating | N/A | N/A | |||
Relational | |||||
relation | exact | relation | ASCII Text | N/A | |
collection | related | source | ASCII Text | N/A | |
Rights | |||||
copyright | related | rights | ASCII Text | N/A | |
policy | N/A | N/A | |||
Distribution | |||||
publisher | exact | publisher | ASCII Text | N/A | |
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | N/A | N/A | |||
compression | N/A | N/A | |||
duration | N/A | N/A | |||
format | exact | format | ASCII Text | N/A | |
samplingRate | N/A | N/A | |||
frameRate | N/A | N/A | |||
averageBitRate | N/A | N/A | |||
numTracks | N/A | N/A |
MAWG | Relation | EBUCore | How to do the mapping | Datatype | XPath
Notes: the default namespace in the following expressions is
|
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | dc:identifier | DC compliance requires a string but it is recommended to use URIs or IRIs instead | string | EBUCoreMain/coreMetadata/identifier/dc:identifier |
title | exact | dc:title | title/dc:title and/or
alternativeTitle/dc:title |
string | EBUCoreMain/coreMetadata/title/dc:title
or EBUCoreMain/coreMetadata/alternativeTitle/dc:title |
language | exact | dc:language
languageCode |
A free text term and/or a reference to a web resource such as a classification scheme term | string
anyURI |
EBUCoreMain/coreMetadata/language/dc:language
or EBUCoreMain/coreMetadata/language/languageCode |
locator | exact | Format/Location | an address at which the resource can be found and e.g. played from e.g. a dvb url | string | EBUCoreMain/coreMetadata/location |
Creation | |||||
contributor | exact | contributor |
Either a person or an organisation | string | EBUCoreMain/coreMetadata/contributor/contactDetails/name/name
or EBUCoreMain/coreMetadata/contributor/organisationName |
creator | exact | creator | Either a person or an organisation | string | EBUCoreMain/coreMetadata/creator/contactDetails/name/name
or EBUCoreMain/coreMetadata/creator/organisationName |
date | exact | created |
date | EBUCoreMain/coreMetadata/date/created | |
location | exact | dc:coverage
name code posx + posy |
Information about resource related location information | string
string anyURI float + float |
EBUCoreMain/coreMetadata/coverage/dc:coverage
or EBUCoreMain/coreMetadata/coverage/spatial/location/name or EBUCoreMain/coreMetadata/coverage/spatial/location/code or EBUCoreMain/coreMetadata/coverage/spatial/location/posx or EBUCoreMain/coreMetadata/coverage/spatial/location/posy |
Content Description | |||||
description | exact | dc:description | Free text | string | EBUCoreMain/coreMetadata/description/dc:description |
keyword | related | dc:subject
subjectCode |
A free text term and/or a reference to a web resource such as a classification scheme term | string
anyURI |
EBUCoreMain/coreMetadata/subject/dc:subject
or EBUCoreMain/coreMetadata/subject/subjectCode |
genre | exact | dc:type
genre/@typeLabel genre/@typeLink |
Either a free text term in dc:type (not necessarily only genre) or genre/@typeLabel or a reference to a web resource such as a classification scheme term genre/@typeLink | string
string anyURI |
EBUCoreMain/coreMetadata/type/dc:type
or EBUCoreMain/coreMetadata/type/genre/@typeLabel or EBUCoreMain/coreMetadata/type/genre/@typeLink |
rating | EBUCoreMain/coreMetadata/ | ||||
Relational | |||||
relation | related | dc:relation
dc:identifier relationLink |
Free text ro an identifier or a link to a related
resource.
Specialised relations are provided in EBU which would qualify for mapping (see XPaths) |
string
string anyURI |
EBUCoreMain/coreMetadata/relation/dc:relation
or EBUCoreMain/coreMetadata/relation/relationIdentifier/dc:identifier or EBUCoreMain/coreMetadata/relation/relationLink or EBUCoreMain/coreMetadata/isVersionOf or EBUCoreMain/coreMetadata/hasversion or EBUCoreMain/coreMetadata/isReplacedBy or EBUCoreMain/coreMetadata/replaces or EBUCoreMain/coreMetadata/isRequiredby or EBUCoreMain/coreMetadata/requires or EBUCoreMain/coreMetadata/ispartOf or EBUCoreMain/coreMetadata/hasPart or EBUCoreMain/coreMetadata/isreferencedBy or EBUCoreMain/coreMetadata/references or EBUCoreMain/coreMetadata/isFormatOf or EBUCoreMain/coreMetadata/hasFormat |
collection | related | Title | The 'type' of content being described should be "collection" in type/objectType/@typeLabel (free text) or type/objectType/@typeLink (anyURI to refer to e.g. a classification scheme term) | string | EBUCoreMain/coreMetadata/title/dc:title
or EBUCoreMain/coreMetadata/type/objectType/@typeLabel or EBUCoreMain/coreMetadata/type/objectType/@typeLink |
Rights | |||||
copyright | related | dc:rights
rightsLink exploitationIssues |
Free text or a link to a web page with rights declaration or more specifically exploitation issues | string
anyURI string |
EBUCoreMain/coreMetadata/rights/dc:rights
or EBUCoreMain/coreMetadata/rights/rightsLink or EBUCoreMain/coreMetadata/rights/exploitationIssues |
policy | N/A | N/A | |||
Distribution | |||||
publisher | dc:publisher | Either a person or an organisation | string | EBUCoreMain/coreMetadata/publisher/contactDetails/name/name or EBUCoreMain/coreMetadata/publisher/organisationName |
|
targetAudience | dc:type
genre/@typeLabel genre/@typeLink |
Fre text in type or genre/@typeLabel or @typeLink (using a targetAudience Classification Scheme or equivalent) | string
string anyURI |
EBUCoreMain/coreMetadata/type/dc:type
or EBUCoreMain/coreMetadata/type/genre/@typeLabel or EBUCoreMain/coreMetadata/type/genre/@typeLink |
|
Fragments | |||||
fragments | exact | hasPart | e.g. a scene or shot identified by its uri | string
anyURI |
EBUCoreMain/coreMetadata/hasPart/relationLink |
namedFragments | exact | hasPart | e.g. a scene or shot identified by an identifier or title | string
string |
EBUCoreMain/coreMetadata/part/identifier or EBUCoreMain/coreMetadata/part/title |
Technical Properties | |||||
frameSize |
exact | height
width |
see the syntax of frameSize for correct mapping | nonNegativeInteger
nonNegativeInteger |
EBUCoreMain/coreMetadata/format/height
or EBUCoreMain/coreMetadata/format/width |
compression | exact | encoding/@typeLabel
encoding/@typeLink |
free text or a link to a classification scheme e.g. published as a web resource | string
anyURI |
EBUCoreMain/coreMetadata/format/channel/encoding/@typeLabel
or EBUCoreMain/coreMetadata/format/channel/encoding/@typeLink |
duration | exact | duration | It is important to look at the format used for expressing the duration in duration/@formatLabel or duration/@formatLink | string | EBUCoreMain/coreMetadata/format/duration |
format | related | dc:format | Free text or a series or more specific attributes provided in the XPath column, which would qualify to map into format | string | EBUCoreMain/coreMetadata/format/dc:format
or EBUCoreMain/coreMetadata/format/medium/@*[name()='typeLabel' or name()='typeLink'] or EBUCoreMain/coreMetadata/format/mimeType/@*[name()='typeLabel' or name()='typeLink'] or EBUCoreMain/coreMetadata/format/fileFormat/@*[name()='typeLabel' or name()='typeLink'] etc. |
samplingRate | exact | samplingRate | if in dc:format, a syntax should be used to prefix the property being documented e.g. samplingRate:xxx | string | EBUCoreMain/coreMetadata/format/technicalAttributeInteger
or EBUCoreMain/coreMetadata/format/technicalAttributeInteger/@typeLabel='samplingRate' |
frameRate | exact | frameRate | if in dc:format, a syntax should be used to prefix the property being
documented
e.g. frameRate:xxx |
string | EBUCoreMain/coreMetadata/format/technicalAttributeInteger
or EBUCoreMain/coreMetadata/format/technicalAttributeInteger/@typeLabel='frameRate' |
averageBitRate | exact | bitrate | if in dc:format, a syntax should be used to prefix the property being documented e.g. bitrate:xxx | string | EBUCoreMain/coreMetadata/format/technicalAttributeInteger
or EBUCoreMain/coreMetadata/format/technicalAttributeInteger/@typeLabel='bitrate' |
numTracks | related | videoFormat
audioFormat |
the video or audio formats imply the number of video and / or audio tracks | string
anyURI string anyURI |
EBUCoreMain/coreMetadata/format/videoFormat/@formatLabel
EBUCoreMain/coreMetadata/format/videoFormat/@formatLink EBUCoreMain/coreMetadata/format/audioFormat/@formatLabel EBUCoreMain/coreMetadata/format/audioFormat/@formatLink |
MAWG | Relation | EXIF 2.2 | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | ImageUniqueID | identifier:ImageUniqueID | ASCII Text | N/A |
title | more specific | ImageDescription, INAM | title: ImageDescription or INAM
type: n/a |
ASCII Text | N/A |
language | N/A | N/A | |||
locator | N/A | N/A | |||
Creation | |||||
contributor | exact | IART, IENG, ISRC, ITCH | contributor:IART or IENG or ISRC or ITCH
role:n/a |
ASCII Text | N/A |
creator | more specific | IART, ISRC | creator:IART or ISRC
role:n/a |
ASCII Text | N/A |
date | more specific | DateTime, DateTimeOriginal, ICRD | date:DateTime or DateTimeOriginal or ICRD
type:n/a |
ASCII Text | N/A |
location | more general | GPSLatituteREF, GPSLatitute, GPSLongitudeREF, GPSLongitude, GPSAltitude, GPSAltitudeRef | name:n/a
longitude:GPSLongitudeREF, GPSLongitude latitude:GPSLatituteREF, GPSLatitute altitude:GPSAltitudeREF, GPSAltitude coordinateSystem:n/a |
ASCII Text | N/A |
Content description | |||||
description | more general | IKEY, UserComment, Comments | description:IKEY or UserComment or Comments | ASCII Text | N/A |
keyword | related | ISBJ | keyword:ISBJ | ASCII Text | N/A |
genre | exact | IGNR | genre:IGNR | ASCII Text | N/A |
rating | N/A | N/A | |||
Relational | |||||
relation | more general | RelatedSoundFile | target:RelatedSoundFile
type:n/a |
ASCII Text | N/A |
collection | N/A | N/A | |||
Rights | |||||
copyright | exact | Copyright | copyright:Copyright
holder:n/a |
ASCII Text | N/A |
policy | N/A | N/A | |||
Distribution | |||||
publisher | N/A | N/A | |||
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | related | ImageWidth and ImageLength | width:ImageWidth
height:ImageLength unit:n/a |
ASCII Text | N/A |
compression | exact | Compression | compression:Compression | ASCII Text | N/A |
duration | N/A | N/A | |||
format | N/A | N/A | |||
samplingRate | N/A | N/A | |||
frameRate | N/A | N/A | |||
averageBitRate | N/A | N/A | |||
numTracks | N/A | N/A |
MAWG | Relation | ID3v2 frames | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | N/A | |||
title | exact | TIT2 | string | N/A | |
related |
TIT3 | string | N/A | ||
language | exact | TLAN | string
3-character code according to ISO-639-2. If several languages are used, other codes should follow according to their usages. |
N/A | |
locator | N/A | N/A | |||
Creation | |||||
contributor | more specific | TPE2, TPE3, TPE4, TEXT, TMCL, TIPL, TENC | string | N/A | |
creator | exact | TPE1 | string | N/A | |
date | more specific | TDEN, TDRC, TDRL, TDTG | string in yyyy-MM-ddTHH:mm:ss format, with arbitrary precision (e.g. yyyy, yyyy-MM, yyyy-MM-dd ...) | N/A | |
location | N/A | N/A | |||
Content description | |||||
description | related | TIT1 | string | N/A | |
keyword | more specific | TMOO | string | N/A | |
genre | related | TCON | If a number, should be converted to the corresponding ID3v1 genre label, see Appendix A of spec. | string | N/A |
rating | exact | POPM | structured {
- user email - rating (0-255) - number of times played } |
N/A | |
Relational | |||||
relation | related | APIC | NB: the APIC frame embeds the related image | structured (see spec) | N/A |
collection | more specific | TALB | string | N/A | |
Rights | |||||
copyright | exact | TCOP | string
Must start with the year followed by a space (" "). Must always be displayed following "Copyright © ". |
N/A | |
policy | N/A | N/A | |||
Distribution | |||||
publisher | exact | TPUB | string | N/A | |
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | N/A | N/A | |||
compression | related | TFLT | string
One of the codes defined in the spec if applicable, else free form. |
N/A | |
duration | more specific | TLEN | numeric string
Length in milliseconds. |
N/A | |
format | exact | TFLT | string (see compression) | N/A | |
samplingRate | N/A | N/A | |||
frameRate | N/A | N/A | |||
averageBitRate | N/A | N/A | |||
numTracks | N/A | N/A |
MAWG | Relation | IPTC NewsML-G2 | How to do the mapping | Datatype | Xpath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | altId | the main attribute is to be found in contentMeta | string | newsItem/contentMeta/altId
or newsItem/partMeta/altId or newsItem/contentSet/remoteContent/altId |
title | exact | title | string | newsItem/itemMeta/title | |
language | exact | language | the main attribute is to be found in contentMeta | string
string lang lang |
newsItem/contentMeta/language/name or newsItem/partMeta/language/name or newsItem/contentSet/remoteContent/channel/@language or newsItem/contentSet/remoteContent/@language |
locator | exact | altLoc | IRI | newsItem/contentSet/remoteContent/altLoc | |
Creation | |||||
contributor | exact | contributor |
the main attribute is to be found in contentMeta | string | newsItem/contentMeta/contributor/name
or newsItem/partMeta/contributor/name |
creator |
exact | creator |
the main attribute is to be found in contentMeta | string | newsItem/contentMeta/creator/name
or newsItem/partMeta/creator/name |
date | exact | contentCreated |
the main attribute is to be found in contentMeta | dateTime | newsItem/contentMeta/contentCreated
or newsItem/partMeta/contentCreated |
location | exact | located | the main attribute is to be found in contentMeta | string | newsItem/contentMeta/located/name
or newsItem/contentMeta/located/@QCode or newsItem/contentMeta/located/@literal or newsItem/partMeta/located/name or newsItem/partMeta/located/QCode or newsItem/partMeta/located/literal |
Content Description | |||||
description | related | description
headline slugline dateline |
All the following attributes are relevant to mapping to
description,
possibly with html formatting |
string | newsItem/contentMeta/description
or newsItem/contentMeta/headline newsItem/contentMeta/slugline or newsItem/contentMeta/Dateline newsItem/partMeta/description or newsItem/partMeta/headline newsItem/partMeta/slugline or newsItem/partMeta/Dateline |
keyword | related | subject | the main attribute is to be found in contentMeta | string | newsItem/contentMeta/subject/name
or newsItem/contentMeta/subject/@QCode or newsItem/contentMeta/subject/@literal or newsItem/partMeta/subject/name or newsItem/partMeta/subject/@QCode or newsItem/partMeta/subject/@literal |
genre | exact | genre | the main attribute is to be found in contentMeta | string | newsItem/contentMeta/subject/name
or newsItem/contentMeta/subject/@QCode or newsItem/contentMeta/subject/@literal or newsItem/partMeta/subject/name or newsItem/partMeta/subject/@QCode or newsItem/partMeta/subject/@literal |
rating | N/A | N/A | |||
Relational | |||||
relation | related | memberOf
istanceOf sameAs broader narrower related |
string | newsItem/itemMeta/memberOf/name
or newsItem/itemMeta/memberOf/sameAs/name or newsItem/itemMeta/memberOf/broader/name or newsItem/itemMeta/memberOf/narrower/name or newsItem/itemMeta/memberOf/related/name or newsItem/itemMeta/instanceOf/name or newsItem/itemMeta/instanceOf/sameAs/name or newsItem/itemMeta/instanceOf/broader/name or newsItem/itemMeta/instanceOf/narrower/name or newsItem/itemMeta/instanceOf/related/name |
|
collection | N/A | N/A | |||
Rights | |||||
copyright | exact | copyrightNotice | with html formatting | string | newsItem/rightsInfo/copyrightNotice |
policy | related | usageTerms | with html formatting | string | newsItem/rightsInfo/usageTerms |
Distribution | |||||
publisher | provider | string | newsItem/itemMeta/provider/facet/name/name | ||
targetAudience | exact | audience
exclAudience |
the main attribute is to be found in contentMeta | string | newsItem/contentMeta/audience/name
or newsItem/contentMeta/audience/@literal or newsItem/contentMeta/audience/@QCode or newsItem/contentMeta/exclAudience/name or newsItem/contentMeta/exclAudience/@literal or newsItem/contentMeta/exclAudience/@QCode or newsItem/contentMeta/audience/name or newsItem/contentMeta/audience/@literal or newsItem/contentMeta/audience/@QCode or newsItem/contentMeta/exclAudience/name or newsItem/contentMeta/exclAudience/@literal or newsItem/contentMeta/exclAudience/@QCode |
Fragments | |||||
fragments | exact | part | A news item part is a segment delimited by a start and end time | string
string |
newsItem/partMeta/timeDelim/@start
or newsItem/partMeta/timeDelim/@end |
namedFragment | exact | part | A news item part is a segment identifier by an id or seuence number | ID
nonNegativeInteger |
newsItem/partMeta/@partId or newsItem/partMeta/@seq |
Technical Properties | |||||
frameSize | related | height
width |
Beware of the definition of the height and width units | nonNegativeInteger | newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@width
or newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@height or newsItem/contentSet/remoteContent/newsContentCharacteristics/@width or newsItem/contentSet/remoteContent/newsContentCharacteristics/@height |
compression | exact | videoCodec
audioCodec |
Use of IPTC QCodes to refer to classification schemes | string | newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@videoCodec
or newsItem/contentSet/remoteContent/newsContentCharacteristics/@videoCodec or newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@audioCodec or newsItem/contentSet/remoteContent/newsContentCharacteristics/@audioCodec |
duration | exact | duration | It is important to take into account the durationUnit | nonNegativeInteger | newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@duration
or newsItem/contentSet/remoteContent/newsContentCharacteristics/@duration |
format | related | itemClass | describe the type of news item (content structure) | string | newsItem/ItemMeta/itemClass/name |
samplingRate | exact | audiosamplerate | positiveInteger | newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@audiosamplerate
or newsItem/contentSet/remoteContent/newsContentCharacteristics/@audiosamplerate |
|
frameRate | |||||
averageBitRate | exact | audiobitrate
videoavgbitrate |
positiveinteger | newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@audiobitrate
or newsItem/contentSet/remoteContent/newsContentCharacteristics/@audiobitrate or newsItem/contentSet/remoteContent/channel/newsContentCharacteristics/@videoavgbitrate or newsItem/contentSet/remoteContent/newsContentCharacteristics/@videoavgbitrate |
|
numTracks | N/A | N/A |
MAWG | Relation | LOM 2.1 | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | identifier | CharacterString | general/identifier/entry | |
title | exact | title | LangString | general/title | |
language | exact | language | CharacterString | general/language | |
locator | exact | location | CharacterString | technical/location | |
Creation | |||||
contributor | exact | contribute | string (vCard) | lifeCycle/contribute[role='contributor']/entity | |
creator | more general | contribute | string(vCard) | lifeCycle/contribute[role='author']/entity | |
date | N/A | N/A | |||
location | N/A | N/A | |||
Content description | |||||
description | exact | description | string | general/description | |
keyword | exact | keyword or classification | N/A | ||
genre | more specific | learningResourceType | string | educational/learningResourceType | |
rating | N/A | N/A | |||
Relational | |||||
relation | exact | relation | string | relation/resource/description | |
collection | N/A | N/A | |||
Rights | |||||
copyright | N/A | N/A | |||
policy | N/A | N/A | |||
Distribution | |||||
publisher | more general | contribute | string (vCard) | lifeCycle/contribute[role='publisher']/entity | |
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | more general | size | CharacterString | technical/size | |
compression | N/A | N/A | |||
duration | exact | duration | Duraction | technical/duration | |
format | exact | format | string (MIME type) | technical/format | |
samplingRate | N/A | N/A | |||
frameRate | N/A | N/A | |||
averageBitRate | N/A | N/A | |||
numTracks | N/A | N/A |
MAWG | Relation | MediaRSS | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | more specific | rss/channel/item/media:content/@url or
rss/channel/item/media:content/media:player/@url |
identifier: @url | URI | N/A |
title | exact | rss/channel/item/media:content/media:title | title: value
type: n/a |
String | N/A |
language | exact | rss/channel/item/media:content/@lang | language: @lang(RFC 3066) | String | N/A |
locator | exact | rss/channel/item/media:content/@url | locator: @url | URI | N/A |
Creation | |||||
contributor | more general | rss/channel/item/media:content/media:credit | contributor: value
role: @role NOTE: @scheme(e.g. urn:ebu, urn:yvs) is the URI that identifies the role scheme. It's an optional attribute. |
String | N/A |
creator | more general | rss/channel/item/media:content/media:credit | creator: value
role: @role NOTE: @scheme(e.g. urn:ebu, urn:yvs) is the URI that identifies the role scheme. It's an optional attribute. |
String | N/A |
date | N/A | ||||
location | exact | rss/channel/item/media:content/media:location | name: @description
latitude: first value of georss:where/gml:Point/gml:pos longitude: second value of georss:where/gml:Point/gml:pos altitude: n/a NOTE: media:location element can include geoRSS format to specify geographical information. |
String
String(Value of gml:pos element. This has latitude and longitude information with space-delimited) |
|
Content description | |||||
description | exact | rss/channel/item/media:content/media:description | description: value | String | N/A |
keyword | exact | rss/channel/item/media:content/media:keywords | keyword: value | String | N/A |
genre | exact | rss/channel/item/media:content/media:category | genre: value
NOTE: @scheme is the URI that identifies the categorization scheme. It is an optional attribute. If this attribute is not included, the default scheme is 'http://search.yahoo.com/mrss/category_schema'. |
String | N/A |
rating | more specific | rss/channel/item/media:content/media:community/media:starRating | value: @average
ratingSystem: n/a min: @min max: @max |
Float
n/a Float Float |
N/A |
Relational | |||||
relation | N/A | N/A | |||
collection | exact | rss/channel/item/title | collection: value | String | N/A |
Rights | |||||
copyright | exact | rss/channel/item/media:content/media:copyright | copyright: value
holder: @url |
String | N/A |
policy | more specific | rss/channel/item/media:content/media:license | statement: value or @href
type: n/a |
String or | N/A |
Distribution | |||||
publisher | more general | rss/channel/item/media:content/media:credit[@role='publisher'] | publisher: value
NOTE: @scheme(e.g. urn:ebu, urn:yvs) is the URI that identifies the role scheme. It's an optional attribute. |
String | N/A |
targetAudience | more specific | rss/channel/item/media:content/media:rating or
rss/channel/item/media:content/media:restriction |
In case of media:rating element,
audience: @scheme classificationSystem: value (The meaning of this value is depend on the value of schema attribute) In case of media: restriction element, audience: n/a classificationSystem: value(space-delimited list) NOTE: @relationship indicates whether the video is allowed to be played in the specified countries. It's value is 'allow' or 'deny'. @type should be 'country' as a value |
N/A | |
Fragments | |||||
fragments | more specific | rss/channel/item/media:content/media:scenes | identifier: values of media:scene/sceneStartTime and
media:scene/sceneEndTime
role: value of media:scene/sceneTitle |
String(This is for two values such as start time and end time of video) | N/A |
namedFragments | more specific | rss/channel/item/media:content/media:scenes | identifier: values of media:scene/sceneStartTime and
media:scene/sceneEndTime
label: value of media:scene/sceneTitle |
String(This is for two values such as start time and end time of video) | N/A |
Technical Properties | |||||
frameSize | exact | rss/channel/item/media:content/@height or rss/channel/item/media:content/@width | width: @width
height: @height unit: n/a |
Float Float |
N/A |
compression | exact | rss/channel/item/media:content/@type | compression: @type | String | N/A |
duration | exact | rss/channel/item/media:content/@duration | duration: @duration | Float | N/A |
format | exact | rss/channel/item/media:content/@type | format: @type | String | N/A |
samplingRate | exact | rss/channel/item/media:content/@samplingrate | samplingRate: @samplingrate | Float | N/A |
frameRate | exact | rss/channel/item/media:content/@framerate | frameRate: @framerate | Float | N/A |
averageBitRate | exact | rss/channel/item/media:content/@bitrate | averageBitRate: @bitrate | Float | N/A |
numTracks | more specific | rss/channel/item/media:content/@channels | number: @channels
type: n/a |
Interger | N/A |
MAWG | Relation | MPEG-7 | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | more specific | DescriptionMetadata/PublicIdentifier or
MediaInformation/MediaIdentification/EntityIdentifier
NOTE: for fragments, the identifier of the fragment can be appended to this base identifier |
type: @type
identifier: value (for fragment value + fragment identifier) |
Unique ID (identifier type and value) | DescriptionMetadata/PublicIdentifier or MediaInformation/MediaIdentification/EntityIdentifier |
title | exact | CreationInformation/Creation/Title | type: @type
title: value |
string + qualifier (main, secondary, alternative, original, popular, opusNumber, songTitle, albumTitle, seriesTitle, episodeTitle or reference to term in classication scheme) | CreationInformation/Creation/Title |
language | exact | CreationInformation/Classification/Language | language: RFC 1766 is a subset of BCP 47 | string + qualifier (original, dubbed, background), [RFC 1766] | CreationInformation/Classification/Language |
locator | exact | MediaInformation/MediaProfile/MediaInstance/MediaLocator/MediaUri | locator | URI | MediaInformation/MediaProfile/MediaInstance/MediaLocator/MediaUri |
Creation | |||||
contributor | more general | CreationInformation/Creation/Creator | role: /Role/Name
contributor: string composed from structured person/organisation name NOTE: the implementation has to take care that according to role type appropriate roles are mapped to contributor rather than creator |
PersonNameType (structured person name), OrganizationType (structured organisation name) | CreationInformation/Creation/Creator |
creator | more general | CreationInformation/Creation/Creator | role: /Role/Name
creator: string composed from structured person/organisation name NOTE: the implementation has to take care that according to role type appropriate roles are mapped to contributor rather than creator |
PersonNameType (structured person name), OrganizationType (structured orgnaisation name) | CreationInformation/Creation/Creator |
date | exact | CreationInformation/Creation/CreationCoordinates/Date/TimePoint | date: created from parsed timePointType according to pattern | timePointType (structured) | CreationInformation/Creation/CreationCoordinates/Date/TimePoint |
location | more specific | CreationInformation/Creation/CreationCoordinates/Location | name: /Name
coordinates: /GeographicPosition/Point |
string | CreationInformation/Creation/CreationCoordinates/Location |
Content description | |||||
description | more specific | CreationInformation/Creation/Abstract | value of /FreeTextAnnotation or string created from concatenating entries in structured/keyword annotation | TextAnnotationType (free text, structured text annotation or keywords) | CreationInformation/Creation/Abstract |
keyword | exact | CreationInformation/Classification/Subject | value of /FreeTextAnnotation or multipe values created from structured/keyword annotation | TextAnnotationType (free text, structured text annotation or keywords) | CreationInformation/Classification/Subject |
genre | exact | CreationInformation/Classification/Genre | /Name or name of the term determined from resolving reference to classification scheme | ControlledTermUseType (reference to term in classication scheme) | CreationInformation/Classification/Genre |
rating | more specific | CreationInformation/Classification/MediaReview/Rating | value: value
min, max, identifier: attributes of rating scheme |
float (+ rating scheme) | CreationInformation/Classification/MediaReview/Rating |
Relational | |||||
relation | more specific | CreationInformation/RelatedMaterial/MediaLocator/MediaUri | target: value
type: n/a |
URI | CreationInformation/RelatedMaterial/MediaLocator/MediaUri |
collection | exact | CreationInformation/Creation/Title[@type='albumTitle' or @type='seriesTitle'] | collection | string | CreationInformation/Creation/Title[@type='albumTitle' or @type='seriesTitle'] |
Rights | |||||
copyright | exact | CreationInformation/Creation/CopyrightString | copyright | string | CreationInformation/Creation/CopyrightString |
policy | exact | UsageInformation/Availability/Rights | type: @type
statement: value |
Unique ID (identifier type and value) | UsageInformation/Availability/Rights |
Distribution | |||||
publisher | more specific | UsageInformation/Availability/Dissemination/Disseminator or CreationInformation/Creation/Creator[@role='publisher'] | publisher: string composed from structured person/organisation name | PersonNameType (structured person name), OrganizationType (structured organisation name) | UsageInformation/Availability/Dissemination/Disseminator or CreationInformation/Creation/Creator[@role='publisher'] |
targetAudience | more specific | CreationInformation/Classification/Target/Age or CreationInformation/Classification/Target/Region | audience: string from age and/or region | age: 2 non-negative integers (min, max); region: ISO region code | CreationInformation/Classification/Target/Age or CreationInformation/Classification/Target/Region |
Fragments | |||||
fragments | more specific | *Decomposition/*Segment/@id | URI of content + # + id of segment (could be any type of segment in any type of decomposition, on any level) | identifier | *Decomposition/*Segment/@id |
namedFragments | more general | SegmentCollection/SegmentRef or SegmentCollection/SegmentRef/CreationInformation/Creation/Title | identifier: URI of content + # + id of segment
(references any type of segment, annotation on collection could be used
to identify role of fragments)
label: value of title of segment |
ID reference and string | SegmentCollection/SegmentRef or SegmentCollection/SegmentRef/CreationInformation/Creation/Title |
Technical Properties | |||||
frameSize | exact | MediaInformation/MediaProfile/MediaFormat/VisualCoding/Frame/@height or MediaInformation/MediaProfile/MediaFormat/VisualCoding/Frame/@width | width: @width
height: @height |
non-negative integer | MediaInformation/MediaProfile/MediaFormat/VisualCoding/Frame/@height or MediaInformation/MediaProfile/MediaFormat/VisualCoding/Frame/@width |
compression | more specific | MediaInformation/MediaProfile/MediaFormat/VisualCoding/Format or MediaInformation/MediaProfile/MediaFormat/AudioCoding/Format | /Name or name of the term determined from resolving reference to classification scheme | ControlledTermUseType (reference to term in classication scheme) | MediaInformation/MediaProfile/MediaFormat/VisualCoding/Format or MediaInformation/MediaProfile/MediaFormat/AudioCoding/Format |
duration | exact | MediaTime/MediaDuration | duration calculated from values in mediaDurationType | mediaDurationType (structured time point) | MediaTime/MediaDuration |
format | more specific | MediaInformation/MediaProfile/MediaFormat/FileFormat | if appropriate classification scheme is used, MIME type can be determined directly | ControlledTermUseType (reference to term in classication scheme) | MediaInformation/MediaProfile/MediaFormat/FileFormat |
samplingRate | exact | MediaInformation/MediaProfile/MediaFormat/AudioCoding/Sample/@rate | @rate | non-negative float | MediaInformation/MediaProfile/MediaFormat/AudioCoding/Sample/@rate |
frameRate | exact | MediaInformation/MediaProfile/MediaFormat/VisualCoding/Frame/@rate | @rate | non-negative float | MediaInformation/MediaProfile/MediaFormat/VisualCoding/Frame/@rate |
aveargeBitRate | exact | MediaInformation/MediaProfile/MediaFormat/BitRate/@average | @average x 1000 | non-negative integer | MediaInformation/MediaProfile/MediaFormat/BitRate/@average |
numTracks | more specific | MediaInformation/MediaProfile/MediaFormat/AudioCoding/AudioChannels | AudioChannel maps to numTracks of an audio track. For a media resource, the number of video and audio channels can be determined from the number of parallel tracks being described | non-negative integer | MediaInformation/MediaProfile/MediaFormat/AudioCoding/AudioChannels |
MAWG | Relation | Ogg properties | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | Name | Name field in skeleton header (new) | String | N/A |
title | exact | Title | TITLE field in vorbiscomment header | String | N/A |
exact | Title | Title field in skeleton header (new) | String | N/A | |
related | Album | ALBUM title in vorbiscomment header | String | N/A | |
language | exact | Language | Language field in skeleton header (new) | language code | N/A |
locator | exact | file URI from system | URI | N/A | |
Creation | |||||
contributor | exact | Artist, Performer | ARTIST and PERFORMER vorbiscomment headers | Strings | N/A |
creator | related | Organization | ORGANIZATION field in vorbiscomment header | N/A | |
date | exact | Date | DATE field in vorbiscomment header | ISO date format | N/A |
location | exact | Location | LOCATION field in vorbiscomment header | String | N/A |
Content description | |||||
description | exact | Description | DESCRIPTION field in vorbiscomment header | String | N/A |
keyword | N/A | N/A | |||
genre | exact | Genre | GENRE field in vorbiscomment header | String | N/A |
rating | N/A | N/A | |||
Relational | |||||
relation | related | Version, Tracknumber | VERSION (version of a title), TRACKNUMBER (CD track) fields in vorbiscomment header | Strings | N/A |
collection | related | Album | ALBUM field of vorbiscomment header | String | N/A |
Rights | |||||
copyright | exact | Copyright | COPYRIGHT field of vorbiscomment header | String | N/A |
policy | exact | License | LICENSE field of vorbiscomment header | String | N/A |
Distribution | |||||
publisher | related | Organization | ORGNIZATION field of vorbiscomment header | String | N/A |
targetAudience | more specific | Role | Role field of Skeleton header (new) | String | N/A |
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | exact | extract from binary header of video track | int, int (width x height) | N/A | |
compression | exact | Content-type | Content-type field of Skeleton header | MIME type | N/A |
duration | exact | calculate as duration = last_sample_time - first_sample_time of OggIndex header of skeleton | Float (or rather: rational - rational) | N/A | |
format | exact | Content-type | Content-type field of Skeleton header | MIME type | N/A |
samplingRate | exact | calculate as granulerate = granulerate_numerator / granulerate_denominator of Skeleton header | Rational (or rather int / int) | N/A | |
frameRate | exact | calculate as granulerate = granulerate_numerator / granulerate_denominator of Skeleton header | Rational (or rather int / int) | N/A | |
bitRate | exact | calculate as bitrate = length_of_segment / duration from OggIndex headers of skeleton | Float | N/A | |
numTracks | exact | Tracknumber | TRACKNUMBER field of vorbiscomment header (track number on album) | Int | N/A |
MAWG | Relation | QuickTime | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | N/A | |||
title | exact | The title of the movie file content. This is typically a single text line. | key: com.apple.quicktime.title value: string containing title | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
language | N/A | N/A | |||
locator | N/A | N/A | |||
Creation | |||||
contributor | related | Name of the artist or artists who created the movie file content. | key: com.apple.quicktime.artist value: string containing artist name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
related | Name of the director of the movie content. | key: com.apple.quicktime.director value: string containing director name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A | |
creator | related | Name of the author of the movie file content. | key: com.apple.quicktime.author value: string containing author name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
date | exact | The date the movie file content was created. | key: com.apple.quicktime.creationdate value: string containing creation date | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
location | related | Geographic point location by coordinates as defined in ISO 6709:2008. | key: com.apple.quicktime.location.ISO6709 value: a string containing location coordinates | Defined in ISO 6709:2008. | N/A |
related | Name of the location. | key: com.apple.quicktime.location.name value: a string containing the name of the location | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A | |
related | The astronomical body, for compatibility with the 3GPP format. 'earth' is assumed if not present. | key: com.apple.quicktime.location.body value: a string containing the astronomical body name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A | |
related | A descriptive note. | key: com.apple.quicktime.location.note value: a string containing descriptive note | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A | |
related | A single byte, binary value containing a value from the set: 0 indicates "shooting location", 1 indicates "real location", 2 indicates "fictional location". Other values are reserved. | key: com.apple.quicktime.location.role value: an unsigned integer indicating location role | A big-endian unsigned integer in 1,2,3 or 4 bytes; size of value determines integer size. | N/A | |
related | A date and time, stored using the extended format defined in ISO 8601:2004- Data elements and interchange format. | key: com.apple.quicktime.location.date value: a string containing the location date and time | Defined in ISO 8601:2004- Data elements and interchange format. | N/A | |
related | A machine readable facing direction. Directions are specified as a string consisting of one or two angles, separated by a slash if two occur. The first is a compass direction, expressed in degrees and decimal degrees, optionally preceded by the characters "+" or "-", and optionally followed by the character "M". The direction is determined as accurately as possible; the nominal due north (zero degrees) is defined as facing along a line of longitude of the location system, unless the angle is followed by the "M" character indicating a magnetic heading. The second is an elevation direction, expressed in degrees and decimal degrees between +90.0 and -90.0, with 0 being horizontal (level), +90.0 being straight up, and -90.0 being straight down (and for these two cases, the compass direction is irrelevant). | key: com.apple.quicktime.direction.facing value: a string containing the facing direction | A UTF-8 string. This should not be tagged with a country or language code. | N/A | |
related | A machine readable direction of motion. Directions are specified as a string consisting of one or two angles, separated by a slash if two occur. The first is a compass direction, expressed in degrees and decimal degrees, optionally preceded by the characters "+" or "-", and optionally followed by the character "M". The direction is determined as accurately as possible; the nominal due north (zero degrees) is defined as facing along a line of longitude of the location system, unless the angle is followed by the "M" character indicating a magnetic heading. The second is an elevation direction, expressed in degrees and decimal degrees between +90.0 and -90.0, with 0 being horizontal (level), +90.0 being straight up, and -90.0 being straight down (and for these two cases, the compass direction is irrelevant). | key: com.apple.quicktime.direction.motion value: a string containing the motion direction | A UTF-8 string. This should not be tagged with a country or language code. | N/A | |
Content description | |||||
description | exact | Description of the movie file content. | key: com.apple.quicktime.description value: string containing description | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
keyword | exact | Keyword(s) associated with the movie file content. | key: com.apple.quicktime.keywords value: string containing keyword(s) | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
genre | exact | Text describing the genre or genres to which the movie content conforms. There is no prescribed vocabulary for names of genres. | key: com.apple.quicktime.genre value: string containing genre(s) | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
rating | related | A number, assigned by the user, that indicates the rating or relative value of the movie. This number can range from 0.0 to 5.0. A value of 0.0 indicates that the user has not rated the movie. | key: com.apple.quicktime.rating.user value: a number designating the rating | A big-endian 32-bit floating point value (IEEE754). The range of this number is 0.0 to 5.0, inclusive. | N/A |
Relational | |||||
relation | N/A | N/A | |||
collection | related | Album or collection name of which the movie content forms a part. | key: com.apple.quicktime.album value: a string containing the album name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
related | A name indicating a user-defined collection that includes this movie. | key: com.apple.quicktime.collection.user value: a string containing the collection name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A | |
Rights | |||||
copyright | exact | Copyright statement for the movie file content. | key: com.apple.quicktime.copyright value: a string containing the copyright statement | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
policy | N/A | N/A | |||
Distribution | |||||
publisher | exact | Name of publisher of movie file content. | key: com.apple.quicktime.publisher value: string containing publisher name | A UTF-8 string. Can have multiple values with different language and country code designations. | N/A |
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | exact | The width and height fields from the track header box of that track. moov.trak.tkhd.(track width | track height) | If requested for a movie, and there is only one video track, or if requested for a specific video track, the width and height of that track. If the requested movie has more than one visual track, it is calculated as the spatial union of all non-empty track dimensions. | Width and height are 32-bit fixed-point integers of the form (16.16) | N/A |
compression | exact | The four-character codes from the video sample description/s in the track’s sample description box (see QT file format [QuickTime]). moov.track.mdia.minf.stbl.stsd.(sampledescription dataFormat) | Follow the box hierarchy inside the movie box, into each video or sound track’s mdia.stbl.stsd, and then extract the 4-character codes from the video sample description or descriptions. | four character code(s) | N/A |
duration | exact | The duration field from the movie header (overall movie) or track header (for a track), divided by the timescale from the movie header. moov.mvhd.duration or moov.trak.tkhd.duration; divided by moov.mvhd.timescale | Find the movie header box (mvhd) and get the timescale field, and then retrieve the duration field from the movie or track header (mvhd, tkhd) as appropriate, and divide. | float (after division), rational (as stored) | N/A |
format | exact | video/quicktime (valid for all resources) | MIME type | N/A | |
samplingRate | exact | The field sample rate in the version 0 or 1 sound sample description(s) for the movie sound tracks. This is a 16.16 integer with the fractional 16 bits, fractional bits may be non-zero. moov.trak.mdia.minf.stbl.stsd.(sound sample description v0/v1.sampleRate) | Follow the box hierarchy inside the movie box, into each sound track’s mdia.stbl.stsd, and locate the sound description. Confirm the sound description version is 0 or 1 before proceeding. Retrieve the 32-bit fixed-point number. | 32-bit fixed-point integer of the form (16.16) | N/A |
exact | The field audio sample rate in the version 2 sound sample description(s) for the movie sound tracks. This is a 64-bit floating point double. moov.trak.mdia.minf.stbl.stsd.(sound sample description v2.audioSampleRate) | Follow the box hierarchy inside the movie box, into each sound track’s mdia.stbl.stsd, and locate the sound description. Confirm the sound description version is 2 before proceeding. Retrieve the 64-bit double. | Double | N/A | |
frameRate | more general | The sample count from the sample size (stsz) box in the sample table, divided by the duration (see above). moov.trak.mdia.minf.stbl.stsz.sampleCount, divided by duration. NOTE: As frame durations may vary within a track, this is the average frame rate. The frame rate is not guaranteed to be constant. | moov.mdia.stbl.stsz.samplecount / (moov.trak.tkhd.duration / moov.mvhd.timescale) | Rational, float | N/A |
averageBitRate | more specific or exact | Either (a.i) sum the top-level box sizes or (a.ii) find the file size from external means (e.g. file system) or (b) for each track, compute the total sample size (from the sample size table). Then divide by duration (computed above). | (a.i) sum over all top-level atoms(atom size) or (b) sum over all samples(moov.trak.mdia.mif.stbl.stsz( sampleSize ) (count also in the stsz box) | N/A | |
numTracks | exact | count( moov.trak ), find types by mapping moov.trak.mdia.hdlr. Standard types are: ‘vide’ Video track, ‘soun’ Audio track, ‘hint’ Hint track, ‘meta’ Timed Metadata track Other types may be documented in QT file format specification [QuickTime]. | (count, type) tuples | N/A |
MAWG | Relation | SMPTE Designator | SMPTE Item | SMPTE Element name | DMS-1 Set | DMS-1 Framework | Comment (SMPTE) | Comment (RP210) | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||||||||
Identification | |||||||||||
identifier | more specific | (various) | 01.01.00.* through 01.15.* | Production | large number of different globally or locally unique identifiers | type: SMPTE element name
identifier: for most identifiers mappings to URI/URN are defined (e.g. UMID, ISAN) |
depends on type of identifier (16bit or 7bit string, binary format, etc) | N/A | |||
title | more specific | 06.0E.2B.34.01.01.01.* | 01.05.* | various types of titles | Titles | Production | type: SMPTE element name
title: value |
either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
language | more specific | 06.0E.2B.34.01.01.01.04 | 03.01.01.02.03.01.00.00 | Primary Language | Production | spoken language | ISO 639 is a subset of the definition in BCP 47 | ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
locator | more specific | 06.0E.2B.34.01.01.01.01 | 01.02.01.01.01.00.00.00 OR
01.02.01.02.00.00.00.00 |
URL OR
PURL |
(identical) | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||||
Creation | |||||||||||
contributor | more general | (various) | 02.30.* | Participant/* | Production | properties describing participating parties | role: SMPTE element name
contributor [string]: value |
either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
creator | more general | (various) | 02.30.* | Participant/Person | Production | appropriate job function value has to be set | properties describing participating parties | role: SMPTE element name
creator [string]: value |
either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | |
date | exact | 06.0E.2B.34.01.01.01.01 | 07.02.01.10.01.01.00.00 | Creation date | Clip | only clip creaton date available | parse and tokenize date string | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
location | more general | 06.0E.2B.34.01.01.01.03 | 07.01.20.01.01.01.01.00 | Place Keyword | Location | Production | name: value | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
Content description | |||||||||||
description | exact | 06.0E.2B.34.01.01.01.03 | 03.02.01.06.03.01.00.00 | Description | Annotation | Production | value | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
genre | exact | 06.0E.2B.34.01.01.01.03 | 03.02.01.01.03.01.00.00 | Genre | value | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||||
keyword | more specific | 06.0E.2B.34.01.01.01.03 | 03.02.01.02.04.02.00.00 | Subject | Annotation | Production | value | ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set or binary TimeStamp | N/A | ||
rating | more specific | 06.0E.2B.34.01.01.01.02 | 02.20.03.04.00.00.00.00 | Audience appreciation | value: value
min: 0.0 max: 100.0 |
floating point | N/A | ||||
Relational | |||||||||||
relation | more specific | (various) | 06.* | Group Relationship, Branding | Production | different types of relation (e.g. General, production, ...) and material types (essence-essence, essence-metadata, ... relations) | type: SMPTE element name
target: identifier of target of resolved relation |
Uint32, or reference type according to SMPTE 377M or SMPTE 380M | N/A | ||
collection | exact | 06.0E.2B.34.01.01.01.03 | 01.10.03.02.01.00.00.00 | Collection | value | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||||
Rights | |||||||||||
copyright | exact | 06.0E.2B.34.01.01.01.01 | 02.05.02.02.00.00.00.00 | IP Right | Contract/Rights | Production | copyright: value | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
policy | more specific | Contract/Rights | Production, Clip | several properties: license country and region codes, license start/end date, use count, license option description | type: license
statement: need to concatenate string from relevant fields |
N/A | |||||
Distribution | |||||||||||
publisher | more specific | 06.0E.2B.34.01.01.01.04 | 02.10.02.01.01.01.00.00 | Name of the publishing organisation | Event/Publication | Production | value (string) | either 16 Bit Unicode or ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||
targetAudience | more specific | 06.0E.2B.34.01.01.01.03 OR 06.0E.2B.34.01.01.01.04 | 03.02.01.01.10.00.00.00 OR 02.10.02.01.04.01.00.00 | Programme material classification Code OR Publishing Region Name | classification: value | ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||||
Fragments | |||||||||||
fragments | related | segments are defined in the MXF container (SMPTE 377M) and only referenced from the metadata | role: temporal or track can be determined from the
fragment definition
identifier: identifier of resolved fragment definition |
N/A | |||||||
namedFragments | more general | Clip, Scene | either identifiers or titles | identifier: identifier of resolved fragment definition
label: title of resolved fragment definition |
N/A | ||||||
Technical Properties | |||||||||||
frameSize | exact | 06.0E.2B.34.01.01.01.01 | 04.01.05.01.03.00.00.00 AND 04.01.03.02.01.00.00.00 | Total Samples per Line AND Total Lines per Frame | width: value of samples/line
height: value of lines/frame |
Uint16 | N/A | ||||
compression | more specific | 06.0E.2B.34.01.01.01.02 | 04.01.06.01.00.00.00.00 | Compression Schemes (Video) | resolved name of ID of compression method | 16bit ID (identifier of compression method) | N/A | ||||
duration | exact | 06.0E.2B.34.01.01.01.01 | 07.02.02.01.02.01.00.00 | Material Absolute Duration (Days, Hours, minutes, seconds, fractions of seconds) | calculated from parsed string or binary time code | either ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set or binary mapping of 64bit time code | N/A | ||||
format | more specific | 06.0E.2B.34.01.01.01.03 | 04.09.02.01.00.00.00.00 | MIME media type | value | ISO/IEC 646:1991 - ISO 7-Bit Coded Character Set | N/A | ||||
samplingRate | exact | 06.0E.2B.34.01.01.01.05 | 04.02.03.01.01.01.00.00 | Audio Sample Rate | value | Rational | N/A | ||||
frameRate | exact | 06.0E.2B.34.01.01.01.01 | 04.01.03.01.03.00.00.00 | Frame Rate | value | UInt16 | N/A | ||||
averageBitRate | more specific | 06.0E.2B.34.01.01.01.02
OR 06.0E.2B.34.01.01.01.03 |
04.02.03.01.02.00.00.00
OR 04.01.05.01.11.00.00.00 |
Audio/Video Average Bit Rate | calculated from video+audio bitrate | Floating Point | N/A | ||||
numTracks | more specific | 06.0E.2B.34.01.01.01.05 | 04.02.01.01.04.00.00.00 | Channel Count (Audio) | channel count audio+1, if container is accessible, it could be directly determined from the tracks in the container | UInt32 | N/A |
MAWG | Relation | TTML | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | ||||
title | more specific | title | #PCDATA | metadata/ttm:title | |
language | exact | xml:lang | #CDATA | tt/@xml:lang | |
locator | N/A | ||||
Creation | |||||
contributor | more general | agent | with type attribute values person|group|organization | #PCDATA in each of the name elements | metadata/ttm:agent/ttm:name |
creator | more general | agent | with type attribute values person|group|organization | #PCDATA in each of the name elements | metadata/ttm:agent/ttm:name |
date | N/A | ||||
location | N/A | ||||
Content description | |||||
description | exact | desc | #PCDATA | metadata/ttm:desc | |
keyword | N/A | ||||
genre | N/A | ||||
rating | |||||
Relational | |||||
relation | N/A | ||||
collection | N/A | ||||
Rights | |||||
copyright | exact | copyright | #PCDATA | metadata/ttm:copyright | |
policy | N/A | ||||
Distribution | |||||
publisher | more general | agent | with type attribute values person|group|organization | #PCDATA in each of the name elements | metadata/ttm:agent/ttm:name |
targetAudience | N/A | ||||
Fragments | |||||
fragments | more general | @begin, @end | begin/end attribute of one of the following elements: body, div, p, region, span | */@begin, */@end | |
namedFragments | more general | @begin, @end | begin/end attribute of one of the following elements: body, div, p, region, span; using media-marker-value flavour of the attribute value | */@begin, */@end | |
Technical Properties | |||||
frameSize | N/A | ||||
compression | N/A | ||||
duration | more general | @dur | dur attribute of one of the following elements: body, div, p, region, span | */@dur | |
format | N/A | ||||
samplingRate | N/A | ||||
frameRate | more general | frameRate | on one of the following elements: body, div, p, region, span | */ttp:frameRate | |
averageBitRate | N/A | ||||
numTracks | N/A |
MAWG | Relation | TV-Anytime | How to do the mapping | Datatype | XPath
Each XPath expression is to be interpreted in the following context: TVAMain/ProgramDescription/ProgramInformationTable/ProgramInformation The default namespace is |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | programId
OtherIdentifier |
anyURI
string |
@programId
or OtherIdentifier |
|
title | exact | Title
ShortTitle or TitleImage or TitleVideo or TitleAudio |
Media titles allow identifying the resource by means other than text | string
string anyURI anyURI anyURI |
Title
or ShortTitle or MediaTitle/TitleImage/MediaUri or MediaTitle/TitleVideo/MediaUri or MediaTitle/TitleAudio/MediaUri |
language | exact | Language, CaptionLanguage, SignLanguage | TVA gives information on three distinct types of languages, with additional attributes, aggregation of information would allow further informing language | string
string string |
BasicDescription/Language/language/@type or
BasicDescription/Language/language/@supplemental
or BasicDescription/CaptionLanguage/language/@primary or BasicDescription/CaptionLanguage/language/@translation or BasicDescription/CaptionLanguage/language/@supplemental or BasicDescription/CaptionLanguage/language/@closed or BasicDescription/SignLanguage/language/@primary or BasicDescription/SignLanguage/language/@translation or BasicDescription/SignLanguage/language/@type or BasicDescription/SignLanguage/language/@closed |
locator | exact | ProgramURL | anyURI
anyURI anyURI anyURI |
TVAMain/ProgramDescription/ProgramLocationTable/ScheduleEvent/ProgramURL
or TVAMain/ProgramDescription/ProgramLocationTable/BroadcastEvent/ProgramURL or TVAMain/ProgramDescription/ProgramLocationTable/OnDemandProgram/ProgramURL or TVAMain/ProgramDescription/ProgramLocationTable/PushDownload/ProgramURL |
|
Creation | |||||
contributor | exact | CreditsItem | If a person, the given and family names should be aggregated | string | BasicDescription/CreditsList/CreditsItem/PersonName/*[name()='GivenName'
or name()='FamilyName']
or BasicDescription/CreditsList/CreditsItem/OrganisationName |
creator | related | CredistItem | the credit item is relevant if the role is of creator inc. 'creator' as such | string | BasicDescription/CreditsList/CreditsItem/PersonName/*[name()='GivenName'
or name()='FamilyName']
or BasicDescription/CreditsList/CreditsItem/OrganisationName (Above XPath expression only makes sense if BasicDescription/CreditsList/CreditsItem/@role is a creator role, using a reference to a classification scheme) |
date | exact | ProductionDate CreationCoordinates/CreationDate | string
string |
ProductionDate/TimePoint
or CreationCoordinates/CreationDate/TimePoint |
|
location | exact | ProductionLocation
CreationCoordinates/CreationLocation or DepictedCoordinates/CreationLocation |
string
string string |
ProductionLocation/regionCode
or CreationCoordinates/CreationLocation/regionCode or DepictedCoordinates/CreationLocation/regionCode |
|
Content Description | |||||
description | related | Synopsis,
PromotionalInformation, Keywords, ParentalRating, Award |
All the following fields are eligible to the mapping | string
string string string string |
BasicDescription/Synopsis
or BasicDescription/PromotionalInformation or BasicDescription/Keyword or BasicDescription/ParentalGuidance/ParentalRating/Name or BasicDescription/AwardList/AwardListItem/Title |
keyword | exact | Keyword | string | Keyword | |
genre | exact | Genre | Free text or reference to a classification scheme | anyURI
string |
Genre/@href
or Genre/Name |
rating | exact | Rating
FreeReviewText ReviewReference |
float
string anyURI |
TVAMain/ProgramDescription/ProgramReviewTable/Review/Rating
or TVAMain/ProgramDescription/ProgramReviewTable/Review/FreeReviewText or TVAMain/ProgramDescription/ProgramReviewTable/Review/ReviewReference |
|
Relational | |||||
relation | related | RelatedMaterial
MemberOf EpisodeOf DerivedFrom PartOfAggregatedProgram AggregationOf |
Several relational fields in TVA.
A crid attribute is an URI identifying the related resource |
anyURI
nonNegativeInteger anyURI anyURI anyURI anyURI anyURI |
BasicDescription/RelatedMaterial/MediaLocator/MediaUri
or BasicDescription/RelatedMaterial/MediaLocator/StreamId or MemberOf/crid or EpisodeOf/crid or Derivedfrom/crid or PartOfAggregatedProgramme/crid or AggregationOf/AggregatedProgram/crid |
collection | related | GroupInformation/Title | string | TVAMain/ProgramDescription/GroupInformationTable/GroupInformation/BasicDescription/Title | |
Rights | |||||
copyright | related | DRMDeclaration/LicenseLocator
DRMDeclaration/LicenseExpression |
Free text or a pointer to an external resource | anyURI
string |
PurchaseList/PurchaseItem/DRMDeclaration/LicenseLocator
or PurchaseList/PurchaseItem/DRMDeclaration/LicenseExpression |
policy | exact | DRMDeclaration/LicenseLocator DRMDeclaration/LicenseExpression | Free text or a pointer to an external resource | anyURI
string |
PurchaseList/PurchaseItem/DRMDeclaration/LicenseLocator
or PurchaseList/PurchaseItem/DRMDeclaration/LicenseExpression |
Distribution | |||||
publisher | related | CreditsItem
Owner |
CreditsItem of role 'publisher'
or service owner |
string
string |
BasicDescription/CreditsList/CreditsItem/PersonName[name()='GivenName'
or name()='FamilyName']
or BasicDescription/CreditsList/CreditsItem/OrganisationName (Above XPath expression only makes sense if BasicDescription/CreditsList/CreditsItem/@role is a publisher role, using a reference to a classification scheme) TVAMain/ProgramDescription/ServiceInformationTable/ServiceInformation/Name |
targetAudience | related | Genre | in TVA target audience is a genre using a specific classification scheme | anyURI
string |
Genre/@href
or Genre/Name |
Fragments | |||||
fragments | exact | SegmentLocator
KeyFrameLocator |
A fragment / segment can be identified by a time locator or its first frame and duration | string
string |
TVAMain/ProgramDescription/SegmentInformationTable/SegmentInformation/SegmentLocator/MediaRelTimePoint
or TVAMain/ProgramDescription/SegmentInformationTable/SegmentInformation/SegmentLocator/MediaDuration |
namedFragment | exact | segmentId
OtherIdentifier |
in TVA a fragment / segment can be named by its identifier | string
string |
TVAMain/ProgramDescription/SegmentInformationTable/SegmentInformation/@segmentId or TVAMain/ProgramDescription/SegmentInformationTable/SegmentInformation/OtherIdentifier |
Technical Properties | |||||
frameSize | derived | VideoAttributes/VerticalSize
VideoAttributes/HorizontalSize |
unsignedShort
unsignedShort |
AVAttributes/VideoAttributes/VerticalSize
or AVAttributes/VideoAttributes/HorizontalSize |
|
compression | exact | AVAttributes/AudioAttributes/Coding AVAttributes/VideoAttributes/Coding | A text or reference to a classification scheme | anyURI
string anyURI string |
AVAttributes/AudioAttributes/Coding/@href
or AVAttributes/AudioAttributes/Coding/Name or AVAttributes/VideoAttributes/Coding/@href or AVAttributes/VideoAttributes/Coding/Name |
duration | exact | Duration | duration | TVAMain/ProgramDescription/ProgramLocationTable/ScheduleEvent/PublishedDuration or TVAMain/ProgramDescription/ProgramLocationTable/BroadcastEvent/PublishedDuration or TVAMain/ProgramDescription/ProgramLocationTable/OnDemandProgram/PublishedDuration or TVAMain/ProgramDescription/ProgramLocationTable/PushDownload/PublishedDuration |
|
format | exact | FileFormat | Several TVA AVAttributes are eligible | string
string |
AVAttributes/FileFormat/Name
or AVAttributes/System/Name |
samplingRate | exact | SampleFrequency | nonNegativeInteger | AVAttributes/AudioAttributes/SampleFrequency | |
frameRate | |||||
averageBitRate | exact | Bitrate | nonNegativeInteger | AVAttributes/AudioAttributes/Bitrate | |
numTracks | exact | NumOfChannels | nonNegativeInteger | AVAttributes/AudioAttributes/NumOfChannels |
MAWG | Relation | TXFeed | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | more specific | feed/entry/link[@rel='enclosure'] | identifier: @href | URI | N/A |
title | exact | feed/entry/title | title: value
type: n/a |
String | N/A |
language | N/A | N/A | |||
locator | exact | feed/entry/link[@rel='enclosure'] | locator: @href | URI | N/A |
Creation | |||||
contributor | exact | feed/entry/contributor | contributor: value of name element
role: value of @label in pe:role element NOTE: @scheme of pe:role element is a URI that identifies the role scheme |
String | N/A |
creator | more specific | feed/entry/author | creator: value of name element and/or value of uri
element
role: n/a |
String | N/A |
date | N/A | N/A | |||
location | N/A | N/A | |||
Content description | |||||
description | exact | feed/entry/content | description: value | String | N/A |
keyword | exact | feed/entry/category/@term | keyword : value
NOTE: @scheme is not required. |
String | N/A |
genre | exact | feed/entry/category/@term | genre: value
NOTE: @scheme is a URI that identifies the categorization scheme. |
String | N/A |
rating | N/A | N/A | |||
Relational | |||||
relation | more specific | feed/entry/link[@rel='subtitle'] or
feed/entry/link[@rel='alternative'] |
target: @href
type: @rel |
URI | N/A |
collection | N/A | N/A | |||
Rights | |||||
copyright | exact | feed/entry/rights | copyright: value
holder: n/a |
String | N/A |
policy | more specific | feed/entry/link[@rel='license'] | policy: @href
type: n/a |
URI | N/A |
Distribution | |||||
publisher | N/A | N/A | |||
targetAudience | N/A | N/A | |||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | exact | feed/entry/format/width or
feed/entry/format/height |
width: value of width element
height: value of width element unit: n/a |
Float
Float |
N/A |
compression | exact | feed/entry/link[@rel='enclosure'] | compression: @type | String | N/A |
duration | exact | feed/entry/format/duration | duration: value | Float | N/A |
format | exact | feed/entry/link[@rel='enclosure'] | format: @type | String | N/A |
samplingRate | exact | feed/entry/format/samplerate | samplingRate: value | Float | N/A |
frameRate | exact | feed/entry/format/framerate | frameRate: value | Float | N/A |
aveargeBitRate | exact | feed/entry/format/video_bitrate or
feed/entry/format/audio_bitrate |
aveargeBitRate: value | Float | N/A |
numTracks | exact | feed/entry/format/channels | number:value
type: n/a |
Integer | N/A |
MAWG | Relation | XMP | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | dc:identifier | dc:identifier property in the Dublin Core namespace | string | N/A |
exact | xmp:Identifier | xmp:Identifier property in the XMP Basic namespace | string array | N/A | |
title | exact | dc:title | dc:title property in the Dublin Core namespace | array of text items with language identifiers | N/A |
related | xmpDM:album | xmpDM:album property in the XMP Dynamic Media namespace | string | N/A | |
language | exact | dc:language | dc:language property in the Dublin Core namespace | array of RFC 3066 language tags | N/A |
Creation | |||||
contributor | exact | dc:contributor | dc:contributor property in the Dublin Core namespace | sequence of names | N/A |
related | xmpDM:artist | xmpDM:artist property in the XMP Dynamic Media namespace | string | N/A | |
related | xmpDM:composer | xmpDM:composer property in the XMP Dynamic Media namespace | string | N/A | |
creator | exact | dc:creator | dc:creator property in the Dublin Core namespace. In XMP, the tiff:Artist property from the Exif namespace for TIFF properties is stored as the first item in dc:creator. | sequence of names | N/A |
date | exact | xmp:CreateDate | xmp:CreateDate property in the XMP Basic namespace | ISO date format | N/A |
exact | photoshop:DateCreated | photoshop:DateCreated property in the Photoshop namespace | ISO date format | N/A | |
exact | exif:DateTimeOriginal | exif:DateTimeOriginal property in the Exif namespace for Exif-specific properties. This should not be stored in files, only added to extracted XMP for application runtime convenience. | ISO date format | N/A | |
related | dc:date | dc:date property in the Dublin Core namespace | sequence of ISO date format values | N/A | |
related | xmp:ModifyDate | xmp:ModifyDate property in the XMP Basic namespace | ISO date format | N/A | |
location | exact | exif:GPSLatitude and exif:GPSLongitude | exif:GPSLatitude and exif:GPSLongitude properties in the Exif namespace for Exif-specific properties. These should not be stored in files, only added to extracted XMP for application runtime convenience. | GPS coordinate | N/A |
related | photoshop:Country | photoshop:Country property in the Photoshop namespace | string | N/A | |
related | photoshop:City | photoshop:City property in the Photoshop namespace | string | N/A | |
related | photoshop:State | photoshop:State property in the Photoshop namespace | string | N/A | |
Content description | |||||
description | exact | dc:description | dc:description property in the Dublin Core namespace. In XMP, also tiff:ImageDescription property values from the Exif namespace for TIFF properties are mapped to dc:description. | array of text items with language identifiers | N/A |
keyword | exact | dc:subject | dc:subject property in the Dublin Core namespace | array of text items | N/A |
genre | exact | xmpDM:genre | xmpDM:genre property in the XMP Dynamic Media namespace | string | N/A |
rating | exact | xmp:Rating | xmp:Rating property in the XMP Basic namespace | closed set of integers | N/A |
Relational | |||||
relation | exact | dc:relation | dc:relation property in the Dublin Core namespace | array of string items | N/A |
more specific | xmpMM:DerivedFrom | xmpMM:DerivedFrom property in the XMP Dynamic Media namespace | ResourceRef (multiple part reference to a resource) | N/A | |
more specific | xmpMM:History | xmpMM:History property in the XMP Dynamic Media namespace | ResourceRef (multiple part reference to a resource) | N/A | |
more specific | xmpMM:Ingredients | xmpMM:Ingredients property in the XMP Dynamic Media namespace | ResourceRef (multiple part reference to a resource) | N/A | |
collection | N/A | N/A | |||
Rights | |||||
copyright | more general | dc:rights | dc:rights property in the Dublin Core namespace | array of text items with language identifier | N/A |
policy | exact | xmpRights:Certificate | xmpRights:Certificate property in the XMP Rights Management namespace | URI | N/A |
more general | xmpRights:UsageTerms | xmpRights:UsageTerms property in the XMP Rights Management namespace | array of text items with language identifier | N/A | |
more general | xmpRights:WebStatement | xmpRights:WebStatement property in the XMP Rights Management namespace | URI | N/A | |
Distribution | |||||
publisher | exact | dc:publisher | dc:publisher property in the Dublin Core namespace | string | N/A |
targetAudience | N/A | ||||
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties - The XMP form is generally not authoritative. | |||||
frameSize | exact | xmpDM:videoFrameSize | xmpDM:videoFrameSize property in the XMP Dynamic Media namespace. xmpDM:videoFrameSize is not authoritative. Use the file format specific technical metadata. | int, int (width x height) | N/A |
compression | related | tiff:Compression | tiff:Compression property in the Exif namespace for TIFF properties. tiff:Compression is not authoritative and irrelevant to dynamic media formats. xmpDM:audioCompressor is not authoritative. Use the file format specific technical metadata. | closed choice of integers | N/A |
related | xmpDM:audioCompressor | xmpDM:audioCompressor property in the XMP Dynamic Media namespace | string | N/A | |
duration | exact | xmpDM:duration | xmpDM:duration property in the XMP Dynamic Media namespace. xmpDM:duration is not authoritative. Use the file format specific technical metadata. | time value in seconds | N/A |
format | exact | dc:format | dc:format property in the Dublin Core namespace | MIME type | N/A |
samplingRate | more specific | xmpDM:audioSampleRate | xmpDM:audioSampleRate property in the XMP Dynamic Media namespace. xmpDM:audioSampleRate is not authoritative. Use the file format specific technical metadata. | integer | N/A |
frameRate | exact | xmpDM:frameRate | xmpDM:frameRate property in the XMP Dynamic Media namespace. xmpDM:frameRate is not authoritative. Use the file format specific technical metadata. | f### (frames per seconds, e.g. "f24") or f###s### (frames per rate basis, e.g. "f30000s1001" for NTSC 29.97) | N/A |
averageBitRate | N/A | N/A | |||
numTracks | exact | xmpDM:trackNumber | xmpDM:trackNumber property in the XMP Dynamic Media namespace. xmpDM:trackNumber is not authoritative. Use the file format specific technical metadata. | integer | N/A |
MAWG | Relation | YouTube | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | more specific | rss/channel/item/media:group/media:content/@url or
rss/channel/item/media:group/media:player/@url |
identifier: @url | N/A | |
title | exact | rss/channel/item/title | title: value
type: n/a |
String | N/A |
language | N/A | ||||
locator | exact | rss/channel/item/media:group/media:content/@url | locator: value | URI | |
Creation | |||||
contributor | N/A | N/A | |||
creator | N/A | N/A | |||
date | rss/channel/item/yt:recorded | date: value
type: n/a |
String | N/A | |
location | exact | rss/channel/item/yt:location or
rss/channel/item/georss:where |
name: value of yt:location element
latitude: first value of georss:where/gml:Point/gml:pos longitude: second value of georss:where/gml:Point/gml:pos altitude: n/a NOTE: georss:where is from geoRSS format to specify geographical information. |
String
String(Value of gml:pos element. This has latitude and longitude information with space-delimited) |
|
Content description | |||||
description | exact | rss/channel/item/media:group/media:description | description: value | String | N/A |
keyword | exact | rss/channel/item/media:group/media:keywords | keyword: value | String | N/A |
genre | exact | rss/channel/item/media:group/media:category | genre: value
NOTE: @scheme is a URI that identifies the categorization scheme. |
String | N/A |
rating | more specific | rss/channel/item/gd:rating | value: @average
ratingSystem: n/a min: @min max: @max NOTE: @max specifies the maximum rating that can be assigned to a video. This value must be 5. @min specifies the minimum rating that can be assigned to a video. This value must be 1. |
Float Float Float |
N/A |
Relational | |||||
relation | N/A | N/A | |||
collection | N/A | N/A | |||
Rights | |||||
copyright | N/A | N/A | |||
policy | N/A | N/A | |||
Distribution | |||||
publisher | more specific | rss/channel/item/media:content/media:credit[@role='uploader'] | publisher: value | String | N/A |
targetAudience | more specific | rss/channel/item/media:content/media:rating or
rss/channel/item/media:group/media:restriction |
In case of media:rating
element
audience: @scheme classificationSystem: @country (This attribute value identifies the country or countries where a video is considered to contain restricted content. The attribute value will either be the word all, which indicates that the video contains content that is considered restricted everywhere, or a comma-delimited list of ISO 3166 two-letter country codes identifying particular countries where the video content is restricted) In case of media: restriction element audience: n/a classificationSystem: value(space-delimited list of ISO 3166) NOTE: @relationship indicates whether the video is allowed to be played in the specified countries. It's value is 'allow' or 'deny'. @type should be 'country' as a value |
N/A | |
Fragments | |||||
fragments | N/A | N/A | |||
namedFragments | N/A | N/A | |||
Technical Properties | |||||
frameSize | N/A | N/A | |||
compression | exact | rss/channel/item/media:content/@type | compression: @type | String | N/A |
duration | exact | rss/channel/item/media:content/@duration | duration: @duration | Float | N/A |
format | exact | rss/channel/item/media:content/@type | format: @type | String | N/A |
samplingRate | N/A | N/A | |||
frameRate | N/A | N/A | |||
averageBitRate | N/A | N/A | |||
numTracks | N/A | N/A |
The following mappings are established from the Media Ontology's properties to various multimedia container formats. This list of container formats is not closed, nor does it pretend to be exhaustive. A future version of this specification may include additional mappings if a need or use case is established for these new mappings.
MAWG | Relation | 3GP | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | N/A | |||
Content description | |||||
description | exact | In 3GP, User-data item 'dscp' (see 26.244 ). Either moov.udta.dscp, or moov.trak.udta.dscp | Find the 'dscp' user-data item in the movie box (overall) or the track box if a specific track is identified. There may be multiple dscp items, varying by ISO 639/T language code. | Unicode string (stored as UTF-8 or UTF-16, as needed) | N/A |
Technical Properties | |||||
frameSize | exact | The width and height fields from the track header box of that track. moov.trak/tkhd.(width | height) | If requested for a movie, and there is only one video track, or if requested for a specific video track, the width and height of that track. | N/A | |
compression | exact | The four-character codes from the sample entry/ies in the track's sample description box (see ISO/IEC 14496-12). moov.track.mdia.minf.stbl.stsd.(sampleentry code) | Follow the box hierarchy inside the movie box, into each track/mdia/stbl/stsd, and then extract the 4-character codes from the sample entry or entries. | four character code(s) | N/A |
duration | exact | The duration field from the movie header (overall movie) or track header (for a track), divided by the timescale from the movie header. moov.mvhd.duration or moov.trak.tkhd.duration; divide by moov.mvhd.timescale | Find the movie header box (mvhd) and get the timescale field, and then retrieve the duration field from the movie or track header (mvhd, tkhd) as appropriate, and divide. | float (after division), rational (as stored) | N/A |
format | exact | video/3gpp (valid for all resources), audio/3gpp (if it is known the movie has no visual presentation) | static; but it may help to scan for the codecs used and supply those (RFC4281), the codecs parameter for bucket mime types) for 3GPP, MP4 and Movie files. | MIME type | N/A |
samplingRate | exact | In 3GP the field samplerate in the sample entry or entries for the movie tracks. This is a 16.16 integer with the fractional 16 bits restricted to be zero. moov.trak.mdia.minf.stbl.stsd.(sampleentry.sampleRate) | Find the samplerate 32-bit field in the sample entry, and right-shift 16 bits. | Integer | N/A |
frameRate | more general | The sample count from the sample size (stsz) box in the sample table, divided by the duration (see above). moov.trak.mdia.minf.stbl.stsz.sampleCount, divided by duration. | moov.mdia.stbl.stsz.samplecount / (moov.trak.tkhd.duration / moov.mvhd.timescale) | Rational, float | N/A |
averageBitRate | more specific or exact | Either (a.i) sum the top-level box sizes or (a.ii) find the file size from external means (e.g. file system) or (b) for each track, compute the total sample size (from the sample size table). Then divide by duration (computed above). | (a.i) sum over all top-level atoms(atom size) or (b) sum over all samples(moov.trak.mdia.mif.stbl.stsz( sampleSize ) (count also in the stsz box) | N/A | |
numTracks | exact | count( moov.trak ), find types by mapping moov.trak.mdia.hdlr. Standard types are: ‘vide’ Video track, ‘soun’ Audio track, ‘hint’ Hint track, ‘meta’ Timed Metadata track, ‘auxv’ Auxiliary Video track, but other types may be registered at www.mp4ra.org. | (count, type) tuples | N/A |
Note: in 3GPP and MP4 files, a single track may be addressed by track ID using the using the ISO/IEC 21000-17:2006 "ffp()" syntax (for example http://www.example.com/sample.3gp#ffp(track_ID=101)).
FLV files can contain a SCRIPTDATA tag named onMetadata, documented in section E.5 of the FLV and F4V specification [Flash]. Beginning in Flash version 10, FLV files can also contain XMP metadata. Refer to the above XMP metadata format mapping table for more details. Technical metadata should be taken from the onMetadata tag according to the table below.
MAWG | Relation | Flash (FLV) | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | N/A | |||
Content description | |||||
description | N/A | N/A | |||
Technical Properties | |||||
frameSize | exact | The width and height fields from the onMetadata tag. The units are always pixels. | DOUBLE, 64-bit IEEE float | N/A | |
compression | Not directly represented. Implicit in the audiocodecid and videocodecid fields from the onMetadata tag. | N/A | |||
duration | exact | The duration field from the onMetadata tag. The unit is always seconds. | DOUBLE, 64-bit IEEE float | N/A | |
format | exact | video/x-flv | static | MIME type | N/A |
samplingRate | exact | The audiosamplerate field from the onMetadata tag. The unit is always samples per second. | DOUBLE, 64-bit IEEE float | N/A | |
frameRate | exact | The framerate field from the onMetadata tag. The unit is always frames per second. | DOUBLE, 64-bit IEEE float | N/A | |
averageBitRate | exact | The sum of the audiodatarate and videodatarate fields from the onMetadata tag. The units are always kilobits per second. | DOUBLE, 64-bit IEEE float | N/A | |
numTracks | exact | FLV files contain at most 1 audio track and at most 1 video track. There are 1-bit flags in the FLV header telling if audio or video are present. | N/A |
F4V is a flavor of MPEG-4, used for Adobe's "Flash video" when H.264 is the codec. Other than the format item, the technical properties are identical to MPEG-4. The full table is reproduced here for convenience. F4V files will also generally contain XMP metadata. Technical metadata from the native MPEG-4 locations should be preferred.
MAWG | Relation | F4V | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | N/A | |||
Content description | |||||
description | N/A | MP4 has no formal system. | N/A | ||
Technical Properties | |||||
frameSize | exact | The width and height fields from the track header box of that track. moov.trak/tkhd.(width | height) | If requested for a movie, and there is only one video track, or if requested for a specific video track, the width and height of that track. | N/A | |
compression | exact | The four-character codes from the sample entry/ies in the track's sample description box (see ISO/IEC 14496-12). moov.track.mdia.minf.stbl.stsd.(sampleentry code) | Follow the box hierarchy inside the movie box, into each track/mdia/stbl/stsd, and then extract the 4-character codes from the sample entry or entries. | four character code(s) | N/A |
duration | exact | The duration field from the movie header (overall movie) or track header (for a track), divided by the timescale from the movie header. moov.mvhd.duration or moov.trak.tkhd.duration; divide by moov.mvhd.timescale | Find the movie header box (mvhd) and get the timescale field, and then retreive the duration field from the movie or track header (mvhd, tkhd) as appropriate, and divide. | float (after division), rational (as stored) | N/A |
format | exact | video/mp4 (valid for all resources), audio/mp4 (if it is known the movie has no visual presentation) | static | MIME type | N/A |
samplingRate | exact | In MP4 files, the field samplerate in the sample entry or entries for the movie tracks. This is a 16.16 integer with the fractional 16 bits restricted to be zero. moov.trak.mdia.minf.stbl.stsd.(sampleentry.sampleRate) | Find the samplerate 32-bit field in the sample entry, and right-shift 16 bits. | Integer | N/A |
frameRate | more general | The sample count from the sample size (stsz) box in the sample table, divided by the duration (see above). moov.trak.mdia.minf.stbl.stsz.sampleCount, divided by duration. | moov.mdia.stbl.stsz.samplecount / (moov.trak.tkhd.duration / moov.mvhd.timescale) | Rational, float | N/A |
averageBitRate | more specific or exact | Either (a.i) sum the top-level box sizes or (a.ii) find the file size from external means (e.g. file system) or (b) for each track, compute the total sample size (from the sample size table). Then divide by duration (computed above). | (a.i) sum over all top-level atoms(atom size) or (b) sum over all samples(moov.trak.mdia.mif.stbl.stsz( sampleSize ) (count also in the stsz box) | N/A | |
numTracks | exact | count( moov.trak ), find types by mapping moov.trak.mdia.hdlr. Standard types are: 'vide' Video track, 'soun' Audio track, 'hint' Hint track, 'meta' Timed Metadata track, 'auxv' Auxiliary Video track, but other types may be registered at www.mp4ra.org. | (count, type) tuples | N/A |
Note: in MPEG-4 and F4V files, a single track may be addressed by track ID using the using the ISO/IEC 21000-17:2006 "ffp()" syntax.
The technical properties for the QuickTime container are available in the QuickTime metadata format mapping table.
MAWG | Relation | MPEG4 | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | N/A | N/A | |||
Rights | |||||
copyright | exact | Copyright statement for the movie file content. | box type: cprt container: User Data Box 'udta' value: notice A UTF-8 or UTF-16 string. Can have multiple values with different language and country code designations. | N/A | |
Content description | |||||
description | N/A | MP4 has no formal system. | N/A | ||
Technical Properties | |||||
frameSize | exact | The width and height fields from the track header box of that track. moov.trak/tkhd.(width | height) | If requested for a movie, and there is only one video track, or if requested for a specific video track, the width and height of that track. | N/A | |
compression | exact | The four-character codes from the sample entry/ies in the track's sample description box (see ISO/IEC 14496-12). moov.track.mdia.minf.stbl.stsd.(sampleentry code) | Follow the box hierarchy inside the movie box, into each track/mdia/stbl/stsd, and then extract the 4-character codes from the sample entry or entries. | four character code(s) | N/A |
duration | exact | The duration field from the movie header (overall movie) or track header (for a track), divided by the timescale from the movie header. moov.mvhd.duration or moov.trak.tkhd.duration; divide by moov.mvhd.timescale | Find the movie header box (mvhd) and get the timescale field, and then retrieve the duration field from the movie or track header (mvhd, tkhd) as appropriate, and divide. | float (after division), rational (as stored) | N/A |
format | exact | video/3gpp (valid for all resources), audio/3gpp (if it is known the movie has no visual presentation) | static; but it may help to scan for the codecs used and supply those (RFC4281), the codecs parameter for bucket mime types) for 3GPP, MP4 and Movie files. | MIME type | N/A |
samplingRate | usually exact | In MP4 files, the field samplerate in the sample entry or entries for the movie tracks. This is a 16.16 integer with the fractional 16 bits restricted to be zero. moov.trak.mdia.minf.stbl.stsd.(sampleentry.sampleRate) | Find the samplerate 32-bit field in the sample entry, and right-shift 16 bits. | Integer | N/A |
frameRate | more general | The sample count from the sample size (stsz) box in the sample table, divided by the duration (see above). moov.trak.mdia.minf.stbl.stsz.sampleCount, divided by duration. | moov.mdia.stbl.stsz.samplecount / (moov.trak.tkhd.duration / moov.mvhd.timescale) | Rational, float | N/A |
averageBitRate | more specific or exact | Either (a.i) sum the top-level box sizes or (a.ii) find the file size from external means (e.g. file system) or (b) for each track, compute the total sample size (from the sample size table). Then divide by duration (computed above). | (a.i) sum over all top-level atoms(atom size) or (b) sum over all samples(moov.trak.mdia.mif.stbl.stsz( sampleSize ) (count also in the stsz box) | N/A | |
numTracks | exact | count( moov.trak ), find types by mapping moov.trak.mdia.hdlr. Standard types are: ‘vide’ Video track, ‘soun’ Audio track, ‘hint’ Hint track, ‘meta’ Timed Metadata track, ‘auxv’ Auxiliary Video track, but other types may be registered at www.mp4ra.org. | (count, type) tuples | N/A |
Note: in 3GPP and MP4 files, a single track may be addressed by track ID using the using the ISO/IEC 21000-17:2006 "ffp()" syntax (for example http://www.example.com/sample.3gp#ffp(track_ID=101)).
The technical properties for the OGG container are available in the OGG metadata format mapping table.
MAWG | Relation | WebM properties | How to do the mapping | Datatype | XPath |
---|---|---|---|---|---|
Descriptive Properties (Core Set) | |||||
Identification | |||||
identifier | exact | TrackUID | A unique ID to identify the Track. | Unsigned Integer | N/A |
exact | diverse Tags (from Matroska, undecided support in WebM) | Pick one of ISRC (International Standard Recording Code), MCDI (CDROM TOC), ISBN (International Standard Book Number), BARCODE (EAN-13 (European Article Numbering) or UPC-A (Universal Product Code)), CATALOG_NUMBER (label-specific), LABEL_CODE (4-digit or 5-digit number to identify the record label), LCCN (Library of Congress Control Number) | String | N/A | |
related | SegmentFilename (from Matroska, undecided support in WebM) | SegmentFilename field in Segment information as a filename corresponding to this segment | String | N/A | |
title | exact | Title (from Matroska, undecided support in WebM) | Title field in Segment information as a general name of the segment | String | N/A |
exact | diverse Tags (from Matroska, undecided support in WebM) | TITLE (akin to the TIT2 tag in ID3), SUBTITLE (subtitle text) | String | N/A | |
language | exact | Language | Specifies the language of the track in the Matroska languages form | language code | N/A |
related | ChapLanguage (from Matroska, undecided support in WebM) | The languages corresponding to the string, in the bibliographic ISO-639-2 form | language code | N/A | |
related | TagLanguage (from Matroska, undecided support in WebM) | Specifies the language of the tag specified, in the Matroska languages form | language code | N/A | |
locator | exact | file URI from system | URI | N/A | |
Creation | |||||
contributor | exact | diverse Tags (from Matroska, undecided support in WebM) | LEAD_PERFORMER, ACCOMPANIMENT (TPE2 tag in ID3), COMPOSER (TCOM tag in ID3), ARRANGER, LYRICIST (TEXT tag in ID3), CONDUCTOR (TPE3 tag in ID3), DIRECTOR (IART tag in RIFF), ASSISTANT_DIRECTOR, DIRECTOR_OF_PHOTOGRAPHY (ICNM tag in Extended RIFF), SOUND_ENGINEER, ART_DIRECTOR, PRODUCTION_DESIGNER, CHOREGRAPHER, COSTUME_DESIGNER, ACTOR, CHARACTER, WRITTEN_BY, SCREENPLAY_BY, EDITED_BY (IEDT tag in Extended RIFF), PRODUCER (IPRO tag in Extended RIFF), COPRODUCER, EXECUTIVE_PRODUCER, DISTRIBUTED_BY (IDST tag in Extended RIFF), MASTERED_BY, ENCODED_BY (TENC tag in ID3), MIXED_BY, REMIXED_BY (TPE4 tag in ID3), PRODUCTION_STUDIO (ISTD tag in Extended RIFF), THANKS_TO, PUBLISHER (TPUB tag in ID3) | String | N/A |
creator | exact | diverse Tags (from Matroska, undecided support in WebM) | ARTIST (akin to the TPE1 tag in ID3), LABEL (record label) | String | N/A |
date | exact | DateUTC | Date of the origin of timecode (value 0), i.e. production date | Date | N/A |
related | diverse Tags (from Matroska, undecided support in WebM) | DATE_RELEASED (TDRL tag in ID3), DATE_RECORDED (TDRC tag in ID3), DATE_ENCODED (TDEN tag in ID3), DATE_TAGGED (TDTG tag in ID3), DATE_DIGITIZED (IDIT tag in RIFF), DATE_WRITTEN, DATE_PURCHASED | String | N/A | |
location | exact | diverse Tags (from Matroska, undecided support in WebM) | RECORDING_LOCATION / COMPOSITION_LOCATION (The countries corresponding to the string, same 2 octets as in Internet domains, or possibly ISO-3166. This code is followed by a comma, then more detailed information such as state/province, another comma, and then city.), COMPOSER_NATIONALITY (The countries corresponding to the string, same 2 octets as in Internet domains, or possibly ISO-3166.) | String | N/A |
Content description | |||||
description | exact | Name | Name field in Tracks Element as a human readable track name | String | N/A |
exact | diverse Tags (from Matroska, undecided support in WebM) | SUBJECT, DESCRIPTION, SUMMARY, SYNOPSIS, COMMENT | String | N/A | |
keyword | exact | diverse Tags (from Matroska, undecided support in WebM) | KEYWORDS (separated by a comma), INITIAL_KEY (initial key that a musical track starts in), ORIGINAL_MEDIA_TYPE (TMED tag in ID3), CONTENT_TYPE | String | N/A |
genre | exact | diverse Tags (from Matroska, undecided support in WebM) | GENRE (TCON tag in ID3), MOOD (TMOO tag in ID3) | String | N/A |
rating | exact | diverse Tags (from Matroska, undecided support in WebM) | LAW_RATING (Depending on the country it's the format of the rating of a movie (P, R, X in the USA, an age in other countries or a URI defining a logo)), ICRA (content rating for parental control, previously RSACi), RATING (how much a person likes the song/movie. The number is between 0 and 5 with decimal values possible (e.g. 2.7)) | String | N/A |
Relational | |||||
relation | exact | TargetTypeValue (from Matroska, undecided support in WebM) | SEASON / SEQUEL / EDITION / ISSUE / VOLUME / OPUS, MOVIE / EPISODE / ALBUM / OPERA / CONCERT, PART / SESSION, CHAPTER / TRACK / SONG, SUBTRACK / PART / MOVEMENT / SCENE, SHOT | String | N/A |
collection | exact | ChapterPhysicalEquiv (from Matroska, undecided support in WebM) | SET / PACKAGE, CD / 12" / 10" / 7" / TAPE / MINIDISC / DAT / DVD / VHS / LASERDISC, SIDE, LAYER, SESSION, TRACK, INDEX | String | N/A |
Distribution | |||||
publisher | exact | diverse Tags (from Matroska, undecided support in WebM) | PUBLISHER (TPUB tag in ID3) | String | N/A |
targetAudience | related | diverse Tags (from Matroska, undecided support in WebM) | CONTENT_TYPE (the type of the item. e.g. Documentary, Feature Film, Cartoon, Music Video, Music, Sound FX, ...), PERIOD (the period that the piece is from or about) | String | N/A |
Fragments | |||||
fragments | exact | Cues | Seek table provided through the following fields: Cues (top-level element to speed seeking access), CuePoint (seek point), CueTime (Absolute timecode according to the segment time base), CueTrackPositions (positions for different tracks corresponding to the timecode) | String | N/A |
namedFragments | exact | Chapter | identified by ChapterUID (uint), ChapterTimeStart (start timecode), ChapterTimeEnd (end timecode), ChapString (chapter name), ChapLanguage (language used in chapter name) | String | N/A |
Technical Properties | |||||
frameSize | exact | DisplayWidth x DisplayHeight (in pixels) | width: DisplayWidth, height: DisplayHeight; also note the pixel cropping for HDTV defined by PixelCropBottom, PixelCropTop, PixelCropLeft, PixelCropRight | unsigned integer x unsigned integer | N/A |
compression | exact | CodecID field | fixed to "VP8" for video and "Vorbis" for audio | String constant (V_VP8, A_VORBIS) | N/A |
duration | exact | Duration | use TimecodeScale field to identify resolution of Duration field (Timecode scale in nanoseconds, e.g. 1.000.000 means all timecodes in the segment are expressed in milliseconds), which provides segment duration (typically a Matroska file is composed of 1 segment) | Float | N/A |
format | exact | CodecID field | fixed to "VP8" for video and "Vorbis" for audio | String constant (V_VP8, A_VORBIS) | N/A |
samplingRate | exact | SamplingFrequency | Value of SamplingFrequency field (in Hz) | float | N/A |
frameRate | exact | FrameRate | Value of FrameRate field (informational only, since frames are timestamped) | float | N/A |
averageBitRate | exact | calculate as bitrate = length_of_file / duration on system | float | N/A | |
numTracks | exact | max TrackNumber | maximum value on all TrackNumber field values in the Tracks field | unsigned integer | N/A |
This section is informative
<?xml version="1.0"?> <powder xmlns="http://www.w3.org/2007/05/powder#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:ma="http://www.w3.org/ns/ma-ont#"> <attribution> <issuedby src="http://example.com/company.rdf#me" /> <issued>2007-12-14T00:00:00</issued> </attribution> <dr> <iriset> <includehosts>example.com</includehosts> <includepathstartswith>/movies/sci-fi/</includepathstartswith> </iriset> <descriptorset> <ma:hasGenre rdf:resource="http://example.com/ontology.rdf#sf" /> <ma:hasPublisher rdf:resource="http://example.com/company.rdf#me" /> <displaytext>Movies in this section of the website are all in the science fiction genre</displaytext> <displayicon src="http://example.com/sf-icon.png" /> </descriptorset> </dr> </powder>
Concerning external subtitles, using relation is the recommended approach. The identifier attribute contains the URL of the subtitle file, and the relation type qualifies it as a subtitle relation. The value should be a URI, but could also be a string. It is recommended to use a controlled vocabulary for the type of the relation.
Embedding of subtitles is not a use case that has been considered, however it is possible. The mechanism used to specify timed metadata is to specify fragments identified by Media Fragment URIs [MediaFragment] and then describe annotations of these fragments.
To summarize, there are three options for dealing with subtitles:
Link to external subtitle file using fragment, with type subtitle and a Timed Text Markup Language (TTML) [TTML] or WebSRT [WebSRT] file as target.
Subtitles can be embedded in a media file, in which case they can be described as a track media fragment using fragment and Media Fragment URIs [MediaFragment].
Subtitles could be embedded by using title with a type qualifier for subtitle. A list of time media fragments is defined and each fragment is annotated using title.
Although the last option is a way of embedding subtitles it is not recommended. Instead, a dedicated format such as TTML or WebSRT should be used for the subtitles and referenced.
Time based annotations are a possible and the following two cases are covered by the specification:
use description for a textual description of the media resource (or a fragment).
use relation to link to a RDF file or named graph containing the annotation for the media resource (or fragment).
At the time of writing this specification, there no solution for embedding a set of triples into one of the properties of the Ontology for Media Resources 1.0. The summary of a discussion with the Semantic Web Coordination Group is that named graphs could be a solution to this issue, but there is no standard syntax for expressing them, to which this specification could refer. Such a syntax might find its way into RDF 2.0. Thus the embedding of triples into media annotation elements is excluded until a standard syntax for named graphs is available.
Core property definitions section defines a gerenal property fragment with a role attribute to specify the relation between the resource and its fragment, like captioning or signing. In the RDF representation, this is achieved by defining subproperties of the <span><tt>ma:hasFragment</tt></span> property.
Captions and signing of a media resource can be provided in different forms, the most typical being:
To account for this diversity, the RDF ontology does not link <span><tt>ma:hasTrack</tt></span> with <span><tt>ma:hasCaptioning</tt></span> or <span><tt>ma:hasSigning</tt></span>. The last two can link a media resource to any fragment, e.g. a spatial fragment of the video track where the signing is located, or even an external file considered as a fragment of the resource. If the fragment is also a track, nothing prevents to link it with both properties <span><tt>ma:hasCaptioning</tt></span> and <span><tt>ma:hasTrack</tt></span>.
For example, the following RDF describes a video with embeded signing, subtitles as an external file, and a track containing audio-description (caption for accessibility):
<video.ogv> a ma:MediaResource ; ma:hasSigning <video.ogv#xywh=percent:70,70,90,90>; ma:hasSubtitling <./video.srt> ; ma:hasAudioDescription <video.ogv?track=subtitle> ; ma:hasTrack <video.ogv?track=subtitle> ;
The core set of properties proposed in section 5 only defines a single property for specifying the language of a media resource. However, a media resource may have several languages. For example, a video file can have the following languages applying to it:
The four language codes could be directly applied to the video file, using the language core property <span><tt>ma:hasLanguage</tt></span> in the RDF representation), but this would lose a part of the information.
If one wants to keep the complete information, the recommended option is to assign each language to the appropriate fragment of the video, using [MediaFragment] to identify them, and the core property fragment <span><tt>ma:hasFragment</tt></span> and its subproperties in the RDF representation to link them to the video file itself. In the example above, we would have:
The corresponding RDF would be:
<video.ogv> a ma:MediaResource ; ma:hasTrack <video.ogv#track=audio>, <video.ogv#track=subtitle>; ma:hasSubtitling <video.ogv#track=subtitle> ; ma:hasSigning <video.ogv#xywh=percent:70,70,90,90> . <video.ogv#track=audio> a ma:AudioTrack ; ma:hasLanguage [ rdfs:label "en-GB" ] ; ma:hasFragment <video.ogv#track=audio&t=10,20> . <video.ogv#track=audio&t=10,20> a ma:MediaFragment ; ma:hasLanguage [ rdfs:label "fr" ] . <video.ogv#track=subtitle> a ma:DataTrack ; ma:hasLanguage [ rdfs:label "es" ] . <video.ogv#xywh=percent:70,70,90,90> a ma:MediaFragment ; ma:hasLanguage [ rdfs:label "bfi" ] .
This section is normative
This section presents an implementation of the Ontology for Media Resources as a Semantic Web ontology. At first a namespace for the Ontology is defined (Section 7.1). Secondly, an implementation guideline is given which details how the core vocabulary defined in this specification relates to the RDF vocabulary (Section 7.2). Finally Section 7.3 presents an RDF vocabulary which implements the abstract ontology using RDF and OWL. The ontology is a valid OWL2 DL ontology and it can be directly used to describe media resource on the Web in a Semantic Web and Linked Data compatible way. The ontology has been built using standard ontology engineering methodologies in a small expert group inside the MAWG working group.
The namespace of the Ontology for Media Resources 1.0 is defined by this
URI: http://www.w3.org/ns/ma-ont#
.
Applications that are compliant with this specification MUST use this namespace
URI.
Note:
As specifications that use this namespace URI progress through the standardization process, they MUST use the same namespace URI. This namespace URI is expected to remain the same throughout the evolution of this ontology, even in the case new properties are added to it, so long as it remains backwards compatible. If however a new version were produced that was not backwards compatible, the WG reserves the right to change the namespace URI.
The ma
prefix name is associated with the namespace URI
http://www.w3.org/ns/ma-ont#
in
this document.
The following table gives the correspondence between the core properties as described in the Descriptive properties (Core Set)section and the RDF vocabulary given below.
Unless stated otherwise, atomic values are represented by literals while complex values are represented by resources. It follows that, in the general case, properties with complex values are represented by object properties, while properties with simple values are represented by datatype properties. Attributes in complex values are represented by properties of the resource representing the complex value; depending on their semantics, they are represented by datatype or object properties.
The RDF ontology also introduces a number of classes corresponding to the domains and ranges of the corresponding property.
Identification | |
identifier | ma:identifier or (1) |
title | ma:title |
title.title | (value of ma:title) |
title.type | (2) |
language | ma:hasLanguage (3) |
locator | ma:locator |
Creation | |
contributor | ma:hasContributor (see contributor.role) |
contributor.contributor | (URI or rdfs:label) (4) |
contributor.role | (2) |
creator | ma:hasCreator (see creator.role) |
creator.creator | (URI or rdfs:label) (4) |
creator.role | (2) |
date | ma:date |
date.date | (value of ma:date) (6) |
date.type | (2) |
location | ma:hasRelatedLocation (see location.name) |
location.name | (URI or rdfs:label) (4) |
location.longitude | ma:locationLongitude |
location.latitude | ma:locationLatitude |
location.altitude | ma:locationAltitude |
location.coordinateSystem | ma:hasLocationCoordinateSystem (3) |
Content description | |
description | ma:description |
keyword | ma:hasKeyword (3) |
genre | ma:hasGenre (3) |
rating | ma:hasRating |
rating.value | ma:ratingValue |
rating.ratingSystem | ma:hasRatingSystem |
rating.min | ma:ratingScaleMin |
rating.max | ma:ratingScaleMax |
Relational | |
relation | ma:hasRelatedResource (see relation.type) |
relation.target | (URI or rdfs:label) (4) |
relation.type | (2) |
collection | ma:isMemberOf (3) |
Rights | |
copyright | (5) |
copyright.copyright | ma:copyright |
copyright.holder | ma:isCopyrightedBy |
policy | ma:hasPolicy (see policy.type) |
policy.statement | (URI or rdfs:label) (4) |
policy.type | (2) |
Distribution | |
publisher | ma:hasPublisher (3) |
targetAudience | ma:hasTargetAudience |
targetAudience.audience | ma:hasClassification (3) |
targetAudience.classificationSystem | ma:hasClassificationSystem (3) |
Fragment | |
fragment | ma:hasFragment |
fragment.identifier | (URI pointed by ma:hasFragment) |
fragment.role | (2) |
namedFragment | ma:hasNamedFragment |
namedFragment.identifier | (URI pointed by ma:hasNamedFragment) |
namedFragment.label | ma:fragmentName |
Technical Properties | |
frameSize | (5) |
frameSize.width | ma:frameWidth |
frameSize.height | ma:frameHeight |
frameSize.unit | ma:frameSizeUnit |
compression | ma:hasCompression (3) |
duration | ma:duration |
format | ma:hasFormat (3) |
samplingRate | ma:samplingRate |
frameRate | ma:frameRate |
averageBitRate | ma:averageBitRate |
numTracks | ma:numberOfTracks |
numTracks.number | (value of the ma:numberOfTracks property) |
numTracks.type | (2) |
(1) The URI of the RDF node is the identifier.
(2) Different values of this attribute should be represented by subproperties of the original property; the RDF ontology provides such subproperties for the most common cases.
(3) If the value is a string, the RDF property should point to a blank node with that string as its rdfs:label; if the value is a URI, the RDF property should point to a resource with that URI.
(4) The pattern is the same as (3), but the value to consider is that of an attribute of the complex value.
(5) This property has no direct correspondence; the properties corresponding to the attributes of the complex value apply directly to the media resource.
(6) According to Section 4.4, several datatypes are allowed here. However, if compliance with a specific OWL 2 Profile is required, additional constraints on the allowed datatypes may apply [OWL2 Profiles].
The following is the authoritative RDF/OWL representation of the Media Ontology: the Ontology for Media Resources 1.0
<?xml version="1.0"?> <!DOCTYPE rdf:RDF [ <!ENTITY xsd "http://www.w3.org/2001/XMLSchema#" > <!ENTITY rdfs "http://www.w3.org/2000/01/rdf-schema#" > ]> <rdf:RDF xmlns="http://www.w3.org/ns/ma-ont#" xml:base="http://www.w3.org/ns/ma-ont" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="" xmlns:xsd="" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:dc="http://purl.org/dc/elements/1.1/" > <owl:Ontology rdf:about=""> <rdfs:comment>Created by Tobias Buerger, Jean Pierre Evain and Pierre-Antoine Champin with the RDFS Taskforce within the W3C Media Annotation Working Group.</rdfs:comment> <dc:date rdf:datatype="date">2011-04-06</dc:date> <owl:versionInfo>R34</owl:versionInfo> </owl:Ontology> <!-- /////////////////////////////////////////////////////////////////////////// // // Classes // /////////////////////////////////////////////////////////////////////////// --> <owl:Class rdf:about="#Agent"> <rdfs:comment>A person or organisation contributing to the media resource.</rdfs:comment> <owl:disjointWith rdf:resource="#Collection"/> <owl:disjointWith rdf:resource="#Location"/> <owl:disjointWith rdf:resource="#MediaResource"/> <owl:disjointWith rdf:resource="#Rating"/> <owl:disjointWith rdf:resource="#TargetAudience"/> </owl:Class> <owl:Class rdf:about="#AudioTrack"> <rdfs:comment>A specialisation of Track for Audio to provide a link to specific data properties such as sampleRate, etc. Specialisation is defined through object properties.</rdfs:comment> <rdfs:subClassOf rdf:resource="#Track"/> </owl:Class> <owl:Class rdf:about="#Collection"> <rdfs:comment>Any group of media resource e.g. a series.</rdfs:comment> <owl:disjointWith rdf:resource="#Location"/> <owl:disjointWith rdf:resource="#MediaResource"/> <owl:disjointWith rdf:resource="#Rating"/> <owl:disjointWith rdf:resource="#TargetAudience"/> </owl:Class> <owl:Class rdf:about="#DataTrack"> <rdfs:comment>Ancillary data track e.g. ¨captioning" in addition to video and audio tracks. Specialisation is made through the use of appropriate object properties.</rdfs:comment> <rdfs:subClassOf rdf:resource="#Track"/> </owl:Class> <owl:Class rdf:about="#Image"> <rdfs:comment>A still image / thumbnail / key frame related to the media resource or being the media resource itself.</rdfs:comment> <rdfs:subClassOf rdf:resource="#MediaResource"/> </owl:Class> <owl:Class rdf:about="#Location"> <rdfs:comment>A location related to the media resource, e.g. depicted in the resource (possibly fictional) or where the resource was created (shooting location), etc.</rdfs:comment> <owl:disjointWith rdf:resource="#MediaResource"/> <owl:disjointWith rdf:resource="#Rating"/> <owl:disjointWith rdf:resource="#TargetAudience"/> </owl:Class> <owl:Class rdf:about="#MediaFragment"> <rdfs:comment>A media fragment (spatial, temporal, track...) composing a media resource. In other ontologies fragment is sometimes referred to as a 'part' or 'segment'.</rdfs:comment> <rdfs:subClassOf rdf:resource="#MediaResource"/> </owl:Class> <owl:Class rdf:about="#MediaResource"> <rdfs:comment>An image or an audiovisual media resource, which can be composed of one or more fragment / track.</rdfs:comment> <owl:disjointWith rdf:resource="#Rating"/> <owl:disjointWith rdf:resource="#TargetAudience"/> </owl:Class> <owl:Class rdf:about="#Organisation"> <rdfs:comment>An organisation or moral agent.</rdfs:comment> <rdfs:subClassOf rdf:resource="#Agent"/> <owl:disjointWith rdf:resource="#Person"/> </owl:Class> <owl:Class rdf:about="#Person"> <rdfs:comment>A physical person.</rdfs:comment> <rdfs:subClassOf rdf:resource="#Agent"/> </owl:Class> <owl:Class rdf:about="#Rating"> <rdfs:comment>Information about the rating given to a media resource.</rdfs:comment> <owl:disjointWith rdf:resource="#TargetAudience"/> </owl:Class> <owl:Class rdf:about="#TargetAudience"> <rdfs:comment>Information about The target audience (target region, target audience category but also parental guidance recommendation) for which a media resource is intended.</rdfs:comment> </owl:Class> <owl:Class rdf:about="#Track"> <rdfs:comment>A specialisation of MediaFragment for audiovisual content.</rdfs:comment> <rdfs:subClassOf rdf:resource="#MediaFragment"/> </owl:Class> <owl:Class rdf:about="#VideoTrack"> <rdfs:comment>A specialisation of Track for Video to provide a link to specific data properties such as frameRate, etc. Signing is another possible example of video track. Specialisation is defined through object properties.</rdfs:comment> <rdfs:subClassOf rdf:resource="#Track"/> </owl:Class> <!-- /////////////////////////////////////////////////////////////////////////// // // Object Properties // /////////////////////////////////////////////////////////////////////////// --> <owl:ObjectProperty rdf:about="#createdIn"> <rdfs:comment>A subproperty of 'hasRelatedLocation" used to specify where material shooting took place.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasRelatedLocation"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isCreationLocationOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#depictsFictionalLocation"> <rdfs:comment>A subproperty of 'hasRelatedLocation' used to specify where the action depicted in the media is supposed to take place, as opposed to the location where shooting actually took place (see 'createdIn').</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasRelatedLocation"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isFictionalLocationDepictedIn"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#features"> <rdfs:comment>Corresponds to 'contributor.contributor' in the Ontology for Media Resources with a 'contributor.role' meaning "actor".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasContributor"/> <rdfs:range rdf:resource="#Person"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#playsIn"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasAccessConditions"> <rdfs:comment>Corresponds to 'policy' in the Ontology for Media Resources with a 'policy.type' "access conditions".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasPolicy"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasAudioDescription"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "audio-description".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasCaptioning"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasCaptioning"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "captioning". This property can for example point to a spatial fragment, a VideoTrack or a DataTrack. The language of the captioning track can be expressed by attaching a 'hasLanguage' property to the specific track.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasFragment"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isCaptioningOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasChapter"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "actor".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasFragment"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isChapterOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasClassification"> <rdfs:comment>Corresponds to 'targetAudience.classification' in the Ontology for Media Resources. This property is used to provide a value characterising the target audience.</rdfs:comment> <rdfs:domain rdf:resource="#TargetAudience"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasClassificationSystem"> <rdfs:comment>Corresponds to 'targetAudience.identifier' in the Ontology for Media Resources. This is used to identify the reference sheme against which the target audience has been characterised.</rdfs:comment> <rdfs:domain rdf:resource="#TargetAudience"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasCompression"> <rdfs:comment>Corresponds to 'compression' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasContributor"> <rdfs:comment>Corresponds to 'contributor.contributor' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'contributor.role'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#Agent"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#hasContributedTo"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasCreator"> <rdfs:comment>Corresponds to 'creator.creator' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'creator.role'. Note that this property is semantically a subproperty of 'hasContributor'.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasContributor"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#hasCreated"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasFormat"> <rdfs:comment>Corresponds to 'format' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasFragment"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'fragment.role'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#MediaFragment"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isFragmentOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasGenre"> <rdfs:comment>Corresponds to 'genre' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasKeyword"> <rdfs:comment>Corresponds to 'keyword' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasLanguage"> <rdfs:comment>Corresponds to 'language' in the Ontology for Media Resources. The language used in the resource. A controlled vocabulary such as defined in BCP 47 SHOULD be used. This property can also be used to identify the presence of sign language (RFC 5646). By inheritance, the hasLanguage property applies indifferently at the media resource / fragment / track levels. Best practice recommends to use to best possible level of granularity fo describe the usage of language within a media resource including at fragment and track levels.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasLocationCoordinateSystem"> <rdfs:comment>Corresponds to 'location.coordinateSystem' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Location"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasNamedFragment"> <rdfs:comment>Corresponds to 'namedFragment' in the Ontology for Media Resources.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasFragment"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isNamedFragmentOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasPermissions"> <rdfs:comment>Corresponds to 'policy' in the Ontology for Media Resources with a 'policy.type' meaning "permissions".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasPolicy"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasPolicy"> <rdfs:comment>Corresponds to 'policy' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'policy.type'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasPublisher"> <rdfs:comment>Corresponds to 'publisher' in the Ontology for Media Resources.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasContributor"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#hasPublished"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasRating"> <rdfs:comment>Corresponds to 'rating' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#Rating"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#IsRatingOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasRatingSystem"> <rdfs:comment>Corresponds to 'rating.type' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Rating"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasRelatedImage"> <rdfs:comment>Corresponds to 'relation' and in the Ontology for Media Resources with a 'relation.type' meaning "related image".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasRelatedResource"/> <rdfs:range rdf:resource="#Image"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isImageRelatedTo"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasRelatedLocation"> <rdfs:comment>Corresponds to 'location' in the Ontology for Media Resources. Subproperties are provided to specify, when possible, the relation between the media resource and the location.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#Location"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isLocationRelatedTo"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasSigning"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "signing". This property can for example point to a spatial fragment or a VideoTrack. The sign language of the captioning track can be expressed by attaching a 'hasLanguage' property to the specific track.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasFragment"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isSigningOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasSource"> <rdfs:comment>Corresponds to 'relation' and in the Ontology for Media Resources with a 'relation.type' meaning "source".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasRelatedResource"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isSourceOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasSubtitling"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "subtitling".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasCaptioning"/> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasTargetAudience"> <rdfs:comment>Corresponds to 'targetAudience' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#TargetAudience"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isTargetAudienceOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasTrack"> <rdfs:comment>Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "track".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#hasFragment"/> <rdfs:range rdf:resource="#Track"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isTrackOf"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#isCopyrightedBy"> <rdfs:comment>Corresponds to 'copyright.identifier' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#Agent"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#hasCopyrightOver"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#isMemberOf"> <rdfs:comment>Corresponds to 'collection' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="#Collection"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#hasMember"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#isProvidedBy"> <rdfs:comment>Corresponds to 'rating.identifier' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Rating"/> <rdfs:range rdf:resource="#Agent"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#provides"/> </owl:inverseOf> </owl:ObjectProperty> <owl:ObjectProperty rdf:about="#hasRelatedResource"> <rdfs:comment>Corresponds to 'relation' and in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'relation.type'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <owl:inverseOf> <owl:ObjectProperty rdf:about="#isRelatedTo"/> </owl:inverseOf> </owl:ObjectProperty> <!-- /////////////////////////////////////////////////////////////////////////// // // Data properties // /////////////////////////////////////////////////////////////////////////// --> <owl:DatatypeProperty rdf:about="#alternativeTitle"> <rdfs:comment>Corresponds to 'title.title' in the Ontology for Media Resources with a 'title.type' meaning "alternative".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#title"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#averageBitRate"> <rdfs:comment>Corresponds to 'averageBitRate' in the Ontology for Media Resources, expressed in kilobits/second.</rdfs:comment> <rdfs:range rdf:resource="decimal"/> <rdfs:domain> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <owl:Class rdf:about="#MediaResource"/> <owl:Class> <owl:complementOf rdf:resource="#Image"/> </owl:Class> </owl:intersectionOf> </owl:Class> </rdfs:domain> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#collectionName"> <rdfs:comment>The name by which a collection (e.g. series) is known.</rdfs:comment> <rdfs:subClassOf rdfs:subClassOf="label"/> <rdfs:domain rdf:resource="#Collection"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#copyright"> <rdfs:comment>Corresponds to 'copyright.copyright' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#creationDate"> <rdfs:comment>Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "creationDate".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#date"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#date"> <rdfs:comment>Corresponds to date.date in the ontology for Media Resources. Subproperties can be used to distinguish different values of 'date.type'. The recommended range is 'xsd:dateTime' (for compliance with OWL2-QL and OWL2-RL) but other time-related datatypes may be used (e.g. 'xsd:gYear', 'xsd:date'...).</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#description"> <rdfs:comment>Corresponds to 'description' in the Ontology for Media Resources. This can be specialised by using sub-properties e.g. 'summary' or 'script'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#duration"> <rdfs:comment>Corresponds to 'duration' in the Ontology for Media Resources.</rdfs:comment> <rdfs:range rdf:resource="decimal"/> <rdfs:domain> <owl:Class> <owl:intersectionOf rdf:parseType="Collection"> <rdf:Description rdf:about="#MediaResource"/> <owl:Class> <owl:complementOf rdf:resource="#Image"/> </owl:Class> </owl:intersectionOf> </owl:Class> </rdfs:domain> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#editDate"> <rdfs:comment>Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "editDate".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#date"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#fragmentName"> <rdfs:comment>Corresponds to 'namedFragment.label' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaFragment"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#frameHeight"> <rdfs:comment>Corresponds to 'frameSize.height' in the Ontology for Media Resources, measured in frameSizeUnit.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="integer"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#frameRate"> <rdfs:comment>Corresponds to 'frameRate' in the Ontology for Media Resources, in frame per second.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#frameSizeUnit"> <rdfs:comment>Corresponds to 'frameSize.unit' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#frameWidth"> <rdfs:comment>Corresponds to 'frameSize.width' in the Ontology for Media Resources measured in frameSizeUnit.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="integer"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#identifier"> <rdfs:comment>Corresponds to 'identifier' in the Ontology for Media Resources. The value being a URI, it is recommended to use owl:sameAs when appropriate, in order to maximize interoperability.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="anyURI"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#locationAltitude"> <rdfs:comment>Corresponds to 'location.altitude' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Location"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#locationLatitude"> <rdfs:comment>Corresponds to 'location.latitude' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Location"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#locationLongitude"> <rdfs:comment>Corresponds to 'location.longitude' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Location"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#locationName"> <rdfs:comment>Corresponds to 'location.name' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Location"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#locator"> <rdfs:comment>Corresponds to 'locator' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="anyURI"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#mainOriginalTitle"> <rdfs:comment>Corresponds to 'title.title' in the Ontology for Media Resources with a 'title.type' meaning "original".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#title"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#numberOfTracks"> <rdfs:comment>Corresponds to 'numTracks.number' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'numTracks.type'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="integer"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#ratingScaleMax"> <rdfs:comment>Corresponds to 'rating.max' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Rating"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#ratingScaleMin"> <rdfs:comment>Corresponds to 'rating.min' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Rating"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#ratingValue"> <rdfs:comment>Corresponds to 'rating.value' in the Ontology for Media Resources.</rdfs:comment> <rdfs:domain rdf:resource="#Rating"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#recordDate"> <rdfs:comment>Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "recordDate".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#date"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#releaseDate"> <rdfs:comment>Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "releaseDate".</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#date"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#samplingRate"> <rdfs:comment>Corresponds to 'samplingRate' in the Ontology for Media Resources, in samples per second.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> <rdfs:range rdf:resource="decimal"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#title"> <rdfs:comment>Corresponds to 'title.title' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'title.type'.</rdfs:comment> <rdfs:domain rdf:resource="#MediaResource"/> </owl:DatatypeProperty> <owl:DatatypeProperty rdf:about="#trackName"> <rdfs:comment>Corresponds to 'fragment.name' in the Ontology for Media Resources, for Track fragments.</rdfs:comment> <rdfs:subPropertyOf rdf:resource="#fragmentName"/> <rdfs:domain rdf:resource="#Track"/> </owl:DatatypeProperty> </rdf:RDF>
This section is informative
The following is the Turtle (Terse RDF Triple Language) [Turtle] representation of the Media Ontology: the Ontology for Media Resources 1.0
@prefix : <http://www.w3.org/ns/ma-ont#> . @prefix owl: <http://www.w3.org/2002/07/owl#> . @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> . @prefix xsd: <http://www.w3.org/2001/XMLSchema#> . <http://www.w3.org/ns/ma-ont> a owl:Ontology; <http://purl.org/dc/elements/1.1/date> "2011-04-06"^^xsd:date; rdfs:comment "Created by Tobias Buerger, Jean Pierre Evain and Pierre-Antoine Champin with the RDFS Taskforce within the W3C Media Annotation Working Group."; owl:versionInfo "R34" . :Agent a owl:Class; rdfs:comment "A person or organisation contributing to the media resource."; owl:disjointWith :Collection, :Location, :MediaResource, :Rating, :TargetAudience . :AudioTrack a owl:Class; rdfs:comment "A specialisation of Track for Audio to provide a link to specific data properties such as sampleRate, etc. Specialisation is defined through object properties."; rdfs:subClassOf :Track . :Collection a owl:Class; rdfs:comment "Any group of media resource e.g. a series."; owl:disjointWith :Location, :MediaResource, :Rating, :TargetAudience . :DataTrack a owl:Class; rdfs:comment """Ancillary data track e.g. ¨captioning" in addition to video and audio tracks. Specialisation is made through the use of appropriate object properties."""; rdfs:subClassOf :Track . :Image a owl:Class; rdfs:comment "A still image / thumbnail / key frame related to the media resource or being the media resource itself."; rdfs:subClassOf :MediaResource . :IsRatingOf a owl:ObjectProperty . :Location a owl:Class; rdfs:comment "A location related to the media resource, e.g. depicted in the resource (possibly fictional) or where the resource was created (shooting location), etc."; owl:disjointWith :MediaResource, :Rating, :TargetAudience . :MediaFragment a owl:Class; rdfs:comment "A media fragment (spatial, temporal, track...) composing a media resource. In other ontologies fragment is sometimes referred to as a 'part' or 'segment'."; rdfs:subClassOf :MediaResource . :MediaResource a owl:Class; rdfs:comment "An image or an audiovisual media resource, which can be composed of one or more fragment / track."; owl:disjointWith :Rating, :TargetAudience . :Organisation a owl:Class; rdfs:comment "An organisation or moral agent."; rdfs:subClassOf :Agent; owl:disjointWith :Person . :Person a owl:Class; rdfs:comment "A physical person."; rdfs:subClassOf :Agent . :Rating a owl:Class; rdfs:comment "Information about the rating given to a media resource."; owl:disjointWith :TargetAudience . :TargetAudience a owl:Class; rdfs:comment "Information about The target audience (target region, target audience category but also parental guidance recommendation) for which a media resource is intended." . :Track a owl:Class; rdfs:comment "A specialisation of MediaFragment for audiovisual content."; rdfs:subClassOf :MediaFragment . :VideoTrack a owl:Class; rdfs:comment "A specialisation of Track for Video to provide a link to specific data properties such as frameRate, etc. Signing is another possible example of video track. Specialisation is defined through object properties."; rdfs:subClassOf :Track . :alternativeTitle a owl:DatatypeProperty; rdfs:comment """Corresponds to 'title.title' in the Ontology for Media Resources with a 'title.type' meaning "alternative"."""; rdfs:subPropertyOf :title . :averageBitRate a owl:DatatypeProperty; rdfs:comment "Corresponds to 'averageBitRate' in the Ontology for Media Resources, expressed in kilobits/second."; rdfs:domain [ a owl:Class; owl:intersectionOf ( :MediaResource [ a owl:Class; owl:complementOf :Image ] ) ]; rdfs:range xsd:decimal . :collectionName a owl:DatatypeProperty; rdfs:comment "The name by which a collection (e.g. series) is known."; rdfs:domain :Collection; rdfs:subClassOf [ rdfs:subClassOf "http://www.w3.org/2000/01/rdf-schema#label" ] . :copyright a owl:DatatypeProperty; rdfs:comment "Corresponds to 'copyright.copyright' in the Ontology for Media Resources."; rdfs:domain :MediaResource . :createdIn a owl:ObjectProperty; rdfs:comment """A subproperty of 'hasRelatedLocation" used to specify where material shooting took place."""; rdfs:subPropertyOf :hasRelatedLocation; owl:inverseOf :isCreationLocationOf . :creationDate a owl:DatatypeProperty; rdfs:comment """Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "creationDate"."""; rdfs:subPropertyOf :date . :date a owl:DatatypeProperty; rdfs:comment "Corresponds to date.date in the ontology for Media Resources. Subproperties can be used to distinguish different values of 'date.type'. The recommended range is 'xsd:dateTime' (for compliance with OWL2-QL and OWL2-RL) but other time-related datatypes may be used (e.g. 'xsd:gYear', 'xsd:date'...)."; rdfs:domain :MediaResource . :depictsFictionalLocation a owl:ObjectProperty; rdfs:comment "A subproperty of 'hasRelatedLocation' used to specify where the action depicted in the media is supposed to take place, as opposed to the location where shooting actually took place (see 'createdIn')."; rdfs:subPropertyOf :hasRelatedLocation; owl:inverseOf :isFictionalLocationDepictedIn . :description a owl:DatatypeProperty; rdfs:comment "Corresponds to 'description' in the Ontology for Media Resources. This can be specialised by using sub-properties e.g. 'summary' or 'script'."; rdfs:domain :MediaResource . :duration a owl:DatatypeProperty; rdfs:comment "Corresponds to 'duration' in the Ontology for Media Resources."; rdfs:domain [ a owl:Class; owl:intersectionOf ( :MediaResource [ a owl:Class; owl:complementOf :Image ] ) ]; rdfs:range xsd:decimal . :editDate a owl:DatatypeProperty; rdfs:comment """Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "editDate"."""; rdfs:subPropertyOf :date . :features a owl:ObjectProperty; rdfs:comment """Corresponds to 'contributor.contributor' in the Ontology for Media Resources with a 'contributor.role' meaning "actor"."""; rdfs:range :Person; rdfs:subPropertyOf :hasContributor; owl:inverseOf :playsIn . :fragmentName a owl:DatatypeProperty; rdfs:comment "Corresponds to 'namedFragment.label' in the Ontology for Media Resources."; rdfs:domain :MediaFragment . :frameHeight a owl:DatatypeProperty; rdfs:comment "Corresponds to 'frameSize.height' in the Ontology for Media Resources, measured in frameSizeUnit."; rdfs:domain :MediaResource; rdfs:range xsd:integer . :frameRate a owl:DatatypeProperty; rdfs:comment "Corresponds to 'frameRate' in the Ontology for Media Resources, in frame per second."; rdfs:domain :MediaResource; rdfs:range xsd:decimal . :frameSizeUnit a owl:DatatypeProperty; rdfs:comment "Corresponds to 'frameSize.unit' in the Ontology for Media Resources."; rdfs:domain :MediaResource . :frameWidth a owl:DatatypeProperty; rdfs:comment "Corresponds to 'frameSize.width' in the Ontology for Media Resources measured in frameSizeUnit."; rdfs:domain :MediaResource; rdfs:range xsd:integer . :hasAccessConditions a owl:ObjectProperty; rdfs:comment """Corresponds to 'policy' in the Ontology for Media Resources with a 'policy.type' "access conditions"."""; rdfs:subPropertyOf :hasPolicy . :hasAudioDescription a owl:ObjectProperty; rdfs:comment """Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "audio-description"."""; rdfs:subPropertyOf :hasCaptioning . :hasCaptioning a owl:ObjectProperty; rdfs:comment """Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "captioning". This property can for example point to a spatial fragment, a VideoTrack or a DataTrack. The language of the captioning track can be expressed by attaching a 'hasLanguage' property to the specific track."""; rdfs:subPropertyOf :hasFragment; owl:inverseOf :isCaptioningOf . :hasChapter a owl:ObjectProperty; rdfs:comment """Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "actor"."""; rdfs:subPropertyOf :hasFragment; owl:inverseOf :isChapterOf . :hasClassification a owl:ObjectProperty; rdfs:comment "Corresponds to 'targetAudience.classification' in the Ontology for Media Resources. This property is used to provide a value characterising the target audience."; rdfs:domain :TargetAudience . :hasClassificationSystem a owl:ObjectProperty; rdfs:comment "Corresponds to 'targetAudience.identifier' in the Ontology for Media Resources. This is used to identify the reference sheme against which the target audience has been characterised."; rdfs:domain :TargetAudience . :hasCompression a owl:ObjectProperty; rdfs:comment "Corresponds to 'compression' in the Ontology for Media Resources."; rdfs:domain :MediaResource . :hasContributedTo a owl:ObjectProperty . :hasContributor a owl:ObjectProperty; rdfs:comment "Corresponds to 'contributor.contributor' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'contributor.role'."; rdfs:domain :MediaResource; rdfs:range :Agent; owl:inverseOf :hasContributedTo . :hasCopyrightOver a owl:ObjectProperty . :hasCreated a owl:ObjectProperty . :hasCreator a owl:ObjectProperty; rdfs:comment "Corresponds to 'creator.creator' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'creator.role'. Note that this property is semantically a subproperty of 'hasContributor'."; rdfs:subPropertyOf :hasContributor; owl:inverseOf :hasCreated . :hasFormat a owl:ObjectProperty; rdfs:comment "Corresponds to 'format' in the Ontology for Media Resources."; rdfs:domain :MediaResource . :hasFragment a owl:ObjectProperty; rdfs:comment "Corresponds to 'fragment' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'fragment.role'."; rdfs:domain :MediaResource; rdfs:range :MediaFragment; owl:inverseOf :isFragmentOf . :hasGenre a owl:ObjectProperty; rdfs:comment "Corresponds to 'genre' in the Ontology for Media Resources."; rdfs:domain :MediaResource . :hasKeyword a owl:ObjectProperty; rdfs:comment "Corresponds to 'keyword' in the Ontology for Media Resources."; rdfs:domain :MediaResource . :hasLanguage a owl:ObjectProperty; rdfs:comment "Corresponds to 'language' in the Ontology for Media Resources. The language used in the resource. A controlled vocabulary such as defined in BCP 47 SHOULD be used. This property can also be used to identify the presence of sign language (RFC 5646). By inheritance, the hasLanguage property applies indifferently at the media resource / fragment / track levels. Best practice recommends to use to best possible level of granularity fo describe the usage of language within a media resource including at fragment and track levels."; rdfs:domain :MediaResource . :hasLocationCoordinateSystem a owl:ObjectProperty; rdfs:comment "Corresponds to 'location.coordinateSystem' in the Ontology for Media Resources."; rdfs:domain :Location . :hasMember a owl:ObjectProperty . :hasNamedFragment a owl:ObjectProperty; rdfs:comment "Corresponds to 'namedFragment' in the Ontology for Media Resources."; rdfs:subPropertyOf :hasFragment; owl:inverseOf :isNamedFragmentOf . :hasPermissions a owl:ObjectProperty; rdfs:comment """Corresponds to 'policy' in the Ontology for Media Resources with a 'policy.type' meaning "permissions"."""; rdfs:subPropertyOf :hasPolicy . :hasPolicy a owl:ObjectProperty; rdfs:comment "Corresponds to 'policy' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'policy.type'."; rdfs:domain :MediaResource . :hasPublished a owl:ObjectProperty . :hasPublisher a owl:ObjectProperty; rdfs:comment "Corresponds to 'publisher' in the Ontology for Media Resources."; rdfs:subPropertyOf :hasContributor; owl:inverseOf :hasPublished . :hasRating a owl:ObjectProperty; rdfs:comment "Corresponds to 'rating' in the Ontology for Media Resources."; rdfs:domain :MediaResource; rdfs:range :Rating; owl:inverseOf :IsRatingOf . :hasRatingSystem a owl:ObjectProperty; rdfs:comment "Corresponds to 'rating.type' in the Ontology for Media Resources."; rdfs:domain :Rating . :hasRelatedImage a owl:ObjectProperty; rdfs:comment """Corresponds to 'relation' and in the Ontology for Media Resources with a 'relation.type' meaning "related image"."""; rdfs:range :Image; rdfs:subPropertyOf :hasRelatedResource; owl:inverseOf :isImageRelatedTo . :hasRelatedLocation a owl:ObjectProperty; rdfs:comment "Corresponds to 'location' in the Ontology for Media Resources. Subproperties are provided to specify, when possible, the relation between the media resource and the location."; rdfs:domain :MediaResource; rdfs:range :Location; owl:inverseOf :isLocationRelatedTo . :hasRelatedResource a owl:ObjectProperty; rdfs:comment "Corresponds to 'relation' and in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'relation.type'."; rdfs:domain :MediaResource; owl:inverseOf :isRelatedTo . :hasSigning a owl:ObjectProperty; rdfs:comment """Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "signing". This property can for example point to a spatial fragment or a VideoTrack. The sign language of the captioning track can be expressed by attaching a 'hasLanguage' property to the specific track."""; rdfs:subPropertyOf :hasFragment; owl:inverseOf :isSigningOf . :hasSource a owl:ObjectProperty; rdfs:comment """Corresponds to 'relation' and in the Ontology for Media Resources with a 'relation.type' meaning "source"."""; rdfs:subPropertyOf :hasRelatedResource; owl:inverseOf :isSourceOf . :hasSubtitling a owl:ObjectProperty; rdfs:comment """Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "subtitling"."""; rdfs:subPropertyOf :hasCaptioning . :hasTargetAudience a owl:ObjectProperty; rdfs:comment "Corresponds to 'targetAudience' in the Ontology for Media Resources."; rdfs:domain :MediaResource; rdfs:range :TargetAudience; owl:inverseOf :isTargetAudienceOf . :hasTrack a owl:ObjectProperty; rdfs:comment """Corresponds to 'fragment' in the Ontology for Media Resources with a 'fragment.role' meaning "track"."""; rdfs:range :Track; rdfs:subPropertyOf :hasFragment; owl:inverseOf :isTrackOf . :identifier a owl:DatatypeProperty; rdfs:comment "Corresponds to 'identifier' in the Ontology for Media Resources. The value being a URI, it is recommended to use owl:sameAs when appropriate, in order to maximize interoperability."; rdfs:domain :MediaResource; rdfs:range xsd:anyURI . :isCaptioningOf a owl:ObjectProperty . :isChapterOf a owl:ObjectProperty . :isCopyrightedBy a owl:ObjectProperty; rdfs:comment "Corresponds to 'copyright.identifier' in the Ontology for Media Resources."; rdfs:domain :MediaResource; rdfs:range :Agent; owl:inverseOf :hasCopyrightOver . :isCreationLocationOf a owl:ObjectProperty . :isFictionalLocationDepictedIn a owl:ObjectProperty . :isFragmentOf a owl:ObjectProperty . :isImageRelatedTo a owl:ObjectProperty . :isLocationRelatedTo a owl:ObjectProperty . :isMemberOf a owl:ObjectProperty; rdfs:comment "Corresponds to 'collection' in the Ontology for Media Resources."; rdfs:domain :MediaResource; rdfs:range :Collection; owl:inverseOf :hasMember . :isNamedFragmentOf a owl:ObjectProperty . :isProvidedBy a owl:ObjectProperty; rdfs:comment "Corresponds to 'rating.identifier' in the Ontology for Media Resources."; rdfs:domain :Rating; rdfs:range :Agent; owl:inverseOf :provides . :isRelatedTo a owl:ObjectProperty . :isSigningOf a owl:ObjectProperty . :isSourceOf a owl:ObjectProperty . :isTargetAudienceOf a owl:ObjectProperty . :isTrackOf a owl:ObjectProperty . :locationAltitude a owl:DatatypeProperty; rdfs:comment "Corresponds to 'location.altitude' in the Ontology for Media Resources."; rdfs:domain :Location; rdfs:range xsd:decimal . :locationLatitude a owl:DatatypeProperty; rdfs:comment "Corresponds to 'location.latitude' in the Ontology for Media Resources."; rdfs:domain :Location; rdfs:range xsd:decimal . :locationLongitude a owl:DatatypeProperty; rdfs:comment "Corresponds to 'location.longitude' in the Ontology for Media Resources."; rdfs:domain :Location; rdfs:range xsd:decimal . :locationName a owl:DatatypeProperty; rdfs:comment "Corresponds to 'location.name' in the Ontology for Media Resources."; rdfs:domain :Location . :locator a owl:DatatypeProperty; rdfs:comment "Corresponds to 'locator' in the Ontology for Media Resources."; rdfs:domain :MediaResource; rdfs:range xsd:anyURI . :mainOriginalTitle a owl:DatatypeProperty; rdfs:comment """Corresponds to 'title.title' in the Ontology for Media Resources with a 'title.type' meaning "original"."""; rdfs:subPropertyOf :title . :numberOfTracks a owl:DatatypeProperty; rdfs:comment "Corresponds to 'numTracks.number' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'numTracks.type'."; rdfs:domain :MediaResource; rdfs:range xsd:integer . :playsIn a owl:ObjectProperty . :provides a owl:ObjectProperty . :ratingScaleMax a owl:DatatypeProperty; rdfs:comment "Corresponds to 'rating.max' in the Ontology for Media Resources."; rdfs:domain :Rating; rdfs:range xsd:decimal . :ratingScaleMin a owl:DatatypeProperty; rdfs:comment "Corresponds to 'rating.min' in the Ontology for Media Resources."; rdfs:domain :Rating; rdfs:range xsd:decimal . :ratingValue a owl:DatatypeProperty; rdfs:comment "Corresponds to 'rating.value' in the Ontology for Media Resources."; rdfs:domain :Rating; rdfs:range xsd:decimal . :recordDate a owl:DatatypeProperty; rdfs:comment """Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "recordDate"."""; rdfs:subPropertyOf :date . :releaseDate a owl:DatatypeProperty; rdfs:comment """Corresponds to 'date.date' in the Ontology for Media Resources with a 'date.type' meaning "releaseDate"."""; rdfs:subPropertyOf :date . :samplingRate a owl:DatatypeProperty; rdfs:comment "Corresponds to 'samplingRate' in the Ontology for Media Resources, in samples per second."; rdfs:domain :MediaResource; rdfs:range xsd:decimal . :title a owl:DatatypeProperty; rdfs:comment "Corresponds to 'title.title' in the Ontology for Media Resources. Subproperties can be used to distinguish different values of 'title.type'."; rdfs:domain :MediaResource . :trackName a owl:DatatypeProperty; rdfs:comment "Corresponds to 'fragment.name' in the Ontology for Media Resources, for Track fragments."; rdfs:domain :Track; rdfs:subPropertyOf :fragmentName . #ENDS
This document is the work of the W3C Media Annotations Working Group.
Members of the Working Group are (at the time of writing, and by alphabetical order): Werner Bailer (JOANNEUM RESEARCH Forschungsgesellschaft mbH), Tobias Bürger (University of Innsbruck), Eric Carlson (Apple, Inc.), Pierre-Antoine Champin ((public) Invited expert), Ashish Chawla ((public) Invited expert), Jaime Delgado (Universitat Politècnica de Catalunya), Jean-Pierre EVAIN (European Broadcasting Union (EBU-UER)), Martin Hoeffernig (JOANNEUM RESEARCH Forschungsgesellschaft mbH), Philip Jägenstedt (Opera Software), Courtney Kennedy (Apple, Inc.), Ralf Klamma ((public) Invited expert), WonSuk Lee (Samsung Electronics Co., Ltd.), Véronique Malaisé (Vrije Universiteit), Erik Mannens (IBBT), Bennett Marks (Nokia), Hui Miao (Samsung Electronics Co., Ltd.), Thierry Michel (W3C/ERCIM), Frank Nack (University of Amsterdam), Soohong Daniel Park (Samsung Electronics Co., Ltd.), Silvia Pfeiffer (W3C Invited Experts), Chris Poppe (IBBT), Yannick Prié ((public) Invited expert), Víctor Rodríguez (Universitat Politècnica de Catalunya), Felix Sasaki (Potsdam University of Applied Sciences), David Singer (Apple, Inc.), Joakim Söderberg (ERICSSON), Florian Stegmaier ((public) Invited expert), John Strassner ((public) Invited expert), Mari Carmen Suarez-Figueroa (Universidad Politécnica de Madrid), Thai Wey Then (Apple, Inc.), Ruben Tous (Universitat Politècnica de Catalunya), Raphaël Troncy (INSTITUT TELECOM), Davy Van Deursen (IBBT).
The people who have contributed to discussions on public-media-annotation@w3.org are also gratefully acknowledged.