VMD — Video MetaData
Changes 2011-02-24 by Saašha Metsärantala
replaced the tabs by spaces and reindented the xsd to avoid inconsistent indentation
added my name among the editors
added an xml-stylesheet PI to take advantage of the W3C's xsd.xsl transformation
renamed VIDEOMDType to videoType for consistency
added an xs:import for the xml NS, thus enabling more xmlish instances: allowing for an @xml:lang on videoType and replacing every @ID with @xml:id [*]
changed type for the sound element to the more xmlish xs:boolean [*]
changed base of the ANALOGDIGITALFLAG attribute on the videoType complex type to xs:string to obtain equality between value space and lexical space [*]
changed xs:string types for duration elements to dayTime simple type thus achieving full sorting capabilities
changed datatype for the element bitsPerSample to xs:unsignedInt thus preventing validation of negative values
changed datatype for the element numberCarriers to nonNegativeInteger thus avoiding non-numeric values
renamed closedCaptioningNote to closedCaptioningType in the xs:documentation
renamed calibrationType to calibrationInfoType in the xs:documentation
moved the position of the frameRate element in the documentation to be in accordance with the schema and added a missing word in it
Note: changes marked with [*] may not be backward compatible.
Improvements 2011-02-24 suggested by Saašha Metsärantala
Endianness values could be changed to the more usual and obvious values LE och BE.
The name of the otherType and type attributes are really confusing. Names ending with "Type" are usually used for datatypes. Furthermore the design of this element would need attention: A location element is able to validate even if it has an otherType attribute whereas its type attribute has another value than OTHER.
The sampling, aspectRatio, dtvAspectRatio and dtvResolution elements would need to be restricted by a pattern.
The dtvScan element would need to be restricted to the values "interlaced" or "progressive".
The bitsPerPixelStored element could be restricted to positive values.
More consistency could be applied when choosing the datatypes xs:string or xs:NMTOKEN for element.
The xs:documentation for calibrationInfoType documents an attribute for the calibrationInfoType but it seems to be missing from the schema.
Several of the attributes of the dimensionsType complex type woould need to be restricted by patterns or to positive values.
Documentation for the "method" and "usedSlides" elements is missing.
I would suggest to avoid giving the same name to elements and types. This applies to trackingType and timecodeType which are both elements and types.
VIDEOMD: LC-AV Video Metadata Extension Schema.
VIDEOMD contains technical metadata that describe a digital video object. It is based upon metadata
defined by LC. VIDEOMD contains 36 top-level elements. videoType has 2 attributes,
ID: (XML ID)
ANALOGDIGITALFLAG: A major indicator of the type of video object i.e Analog, PhysDigital, or FileDigital.
An xs:simpleType defined for compatibility with XMLSchema 1.0. Later on, with vc aware schema validators, this xs:simpleType may be replaced by the newer, fully ordered xs:dayTimeDuration as defined by XDM (2007, second edition december 2010), thus allowing for duration comparisons.
security: This is the simple element which provides a place to store the the type of security applied to a digital video file e.g. password, encryption, hidden, etc....
use: This is the simple element which provides a place to store the use of the digital video file, e.g. Master, Service, Preview, etc.....
fileData: The fileData element is used to describe technical characteristics of a video file.
bitsPerSample: This is the simple element which provides a place to store the size of a digital video sample in bits.
byteOrder: This is the simple element which provides a place to store the order of bit significance in a byte from left to right i.e. 0-least-to-most, 1-most-to-least, 2-mixed-endianess.
color: This is the simple element which provides a place to store information that describes the presented color of the digital video file.
dataRateUnit: This is the element which provides a place to store the data rate unit
of a digital video file.
dataRateMode: This is the simple element which provides a place to store the
mode of the data rate in a digital video file.
location: This is the simple element which provides a place to store where the referenced file is located
sampling: This is the simple element which provides a place to store the video sampling format used in a digital video file. (in terms of luminance and chrominance), e.g., 4:2:0, 4:2:2, 2:4:4, etc.)
signalFormat: This is the simple element which provides a place to store the signal format of a video source item e.g. NTSC, PAL, SECAM.
sound: This is the simple element which provides a place to store information that describes the sound component of the digital video file.
bitsPerSample: This is the simple element which provides a place to store the size of a digital video sample in bits.
sampling: This is the simple element which provides a place to store the video sampling format used in a digital video file. (in terms of luminance and chrominance), e.g., 4:2:0, 4:2:2, 2:4:4, etc.)
signalFormat: This is the simple element which provides a place to store the signal format of a video source item e.g. NTSC, PAL, SECAM.
This is the element to record the EBU Storage Media Codes (http://www.ebu.ch/en/technical/metadata/specifications/storage_media_codes.php) for the physical media.
colorBurst: This is the simple element which provides a place to store an indicator of the presence or absence of color burst signal in a video source item.
condition: This is the simple element which provides a place to store the physical condition of a video item.
disposition: This is the simple element which provides a place to store what became of a video source item.
generation: This is the simple element which provides a place to store the generation of a video source item.
numberCarriers: This is the simple element which provides a place to store the number of containers holding a video source item.
physFormat: This is the simple element which provides a place to store the physical format of the video item. e.g. reel-to-reel tape, 1/4 inch cassette, etc...
signalFormat: This is the simple element which provides a place to store the signal format of a video source item e.g. NTSC, PAL, SECAM.
videodiscType: This is the simple element which provides a place to store the type of videodisc used for a video source item.
videotapeType: This is the simple element which provides a place to store the type of videotape used for a video source item.
note: This is the simple element which provides a place to store miscellaneous information about the physical item quality.
aspectRatio: This is the simple element which provides a place to store the desired aspect ratio of the image on screen e.g., 4:3, etc. Some files produced for display on non-square-pixel monitors have a desired aspect ratio that differs from the ratio of horizontal to vertical pixels in a byte from left to right.
closedCaptioningType: This is the simple element which provides a place to store the type of closed captioning in a video source item.
duration: This is the simple element which provides a place to store the duration of a digital video file.
note: This is the simple element which provides a place to store miscellaneous information about the video file. e.g. digital alterations or enhancements to improve quality.
calibrationInfoType: Complex Type for recording the type of calibration used for a digital video file.
calibrationInfoType has 1 attribute and 3 elements.
ID: (XML ID)
- imageData: location of the calibration target file if not contained within the image file (external) e.g. URN, URL, etc;
- targetId: calibration target name, manufacturer, version, etc..;
- targetType: identifies the calibration target image as internal or external to the image file itself.
messageDigestType: Complex Type for recording the type of messageDigest used for a digital video file.
messageDigestType has 1 attribute and 3 elements.
ID: (XML ID)
- messageDigestDatetime: datetime the messageDigest was calculated and applied;
- messageDigestAlgorithm: the type of messageDigest used;
- messageDigest: the messageDigest value.
mode: This is the simple element which provides a place to store the mode of the data rate in a digital video file.
compressionType: complexType for recording the type of compression used for a digital video file.
compressionType has 1 attribute and 4 elements.
ID: (XML ID)
- codecCreatorApp: name of the creator of the compression application e.g. Adobe Premiere, etc...;
- codecCreatorAppVersion: version of the compression application e.g. 6.0, etc...;
- codecName: the name of the compression algorithm used e.g. MPEG, etc..;
- codecQuality: impact of the compression on quality e.g. lossless or lossy.
dimensionsType: Complex Type for recording the dimensions of an object.
dimensionsType has the following attributes:
1. DEPTH: the depth as a floating point number;
2. DIAMETER: The diameter of a circular item as a floating point number;
3. GAUGE: The width of the medium unwound (e.g. tape);
4. HEIGHT: The height as a floating point number;
5. LENGTH: The length of the medium unwound (e.g. tape);
6. NOTE: Miscellaneous information about the dimensions;
7. THICKNESS: the thickness of the medium unwound (e.g. tape);
8. UNITS: the unit of measurement;
9. WIDTH: the width as a floating point number.
dtvType: complexType for recording Information about a high definition TV video source item. dtvType has 1 attribute,
ID (XML ID).
- dtvAspectRatio: Aspect ratio of high definition video source item expressed as ratio, e.g., 4:3, 16:9, etc.
- dtvNote: Note about a high definition video source item.
- dtvResolution: Resolution of high definition video source item expressed as horizontal lines.
- dtvScan: Indication whether high definition video source item is scanned in an interlaced or progressive mode.
frameType: Complex Type for recording the size of a frame in a digital video file.
frameType has 1 attribute and 6 elements.
ID: (XML ID).
- pixelsHorizontal: the horizontal dimension of a frame in pixels.
- pixelsVertical: the vertical dimension of a frame in pixels.
- frameRate: the rate of frames displayed in one second (or average rate of frames per second in the case of variable frame-rate). Present as a ratio of time base over frame duration, such as 30000/1001 or as a decimal, such as 29.970
- par: pixel aspect ratio (present as a ratio or decimal)
- dar: display aspect ratio (present as a ratio or decimal such as 4/3 or 6/9 or 1.33333)
- rotation: the rotation in a decimal value.
materialType: Complex Type for recording the physical characteristics of the construction and material of an video source item. materialType has 1 attribute and 5 elements.
ID: (XML ID)
- baseMaterial: type of material used in the recording carrier e.g plastic, glass, vinyl, mylar, etc...
- binder: type of adhesive used to bind the recording surface to the substrate
- discSurface: the type of recording surface aluminium, celluloid etc....
- oxide: type of oxide used on the recording surface, e.g. cobalt, chromium dioxide, ferrous oxide
- reflectiveLayer: type of material used on the recording surface, e.g. dye, tellurium-selenium alloy, etc..
- stockBrand: name of the manufacturer of the recording medium, e.g. Scotch, Maxell, Sony, etc...
timecodeType: Complex Type for recording tracking information about a video source item. timecodeType has 1 attribute and 3 elements.
ID: (XML ID)
- timecodeRecordMethod: Method for recording timecode on the video source item;
- timecodeType: Type of timecode recorded on video source item, e.g., SMPTE dropframe, SMPTE nondropframe, etc..
- timecodeInitialValue: Starting value for timecode.
trackingType: complexType for recording tracking information about a video source item. trackingType has 1 attribute and 2 elements.
ID: (XML ID)
- trackingType: The type of tracking code, e.g., MAVIS number, actual shelf numbers, bar-code, etc.;
- trackingValue: Shelf number or other identifier for source, e.g., MAVIS number, actual shelf numbers, etc..