[ogg-dev] Feedback on XML metadata namespace

Daniel Aleksandersen aleksandersen+xiphlists at runbox.com
Thu Sep 6 16:03:20 PDT 2007

Hi ogg-dev list,

After discussing the [lack of] metadata standards on the 
irc://irc.freenode.net/#Vorbis channel yesterday I figured I had to 
contribute to this process.

Attached is a sample XML formatted metadata sheet describing a song; and 
shows off other media type elements as well. How this is to be embedded in 
the OGG container is not my field.

I have only spent a couple of hours making this sample. I would like to get 
feedback on initial thoughts about my sample XML file. The goal would be to 
describe one or multiple works (a motion picture, film clip, pop song, 
text, speech, ...) in a clear a way as possible. Look at it and tell me 
what you think.

Below are details describing elements and attributes:

First of all: Any element may occur multiple times. Except the container 
elements preformers, recording, and encoding as well as the title element. 
And no element or attribute is required except correct containers. So if 
you want to include a rights element it must appear inside audio:recording. 

There is no artist element! Nor is there a mechanism for suggesting values 
to populate the popular artist field in popular music management softwares. 
This is done deliberately, as I fail to see how one element (or one name) 
can sum up all work done to produce a performance. Instead persons and 
organisations involved in the process are described with a role attribute.

Since many performances often are published on several medias (such as best 
of albums, and so on) I though it would be best to be able to say that one 
song can be part of multiple collection elements. This addresses my own 
personal irritation over modern music management softwares that they fail 
to realise that one song may appear on multiple albums; but I only want to 
have to store it once on my harddrive! The track attribute describe what 
track number the song has on that CD, and the tracks (plural) attribute 
describes how many songs that collection has.

The encoding:source element was a tricky one. It has a media attribute that 
could be cd, phonerecording, or whatever. It could also point it's URI to 
another encoding:source element with a id attribute. The example file shows 
a file's encoding history by pointing back to the original media. Software 
may appear (as all elements can) multiple times. I would encourage only 
attributing the most recent software used.

The biggest logical breaker is that date can be an attribute and an element. 
Should be changed.

All suggestions and contributions are welcome!!!
Daniel Aleksandersen
-------------- next part --------------
<?xml version="1.0" encoding="UTF-8"?>
<metadata xmlns="http://xmlns.xiph.org/media-metadata/0.1/" xml:base="./">
	<video encoding="application/theora+ogg" />
	<image encoding="application/svg+xml" />
	<text encoding="text/plain" />
	<audio encoding="application/flac+ogg" uri="audio.flac">
		<title>Boys and Girls</title>
		<collection track="4" tracks="12" date="2007-01-08">Boy meats Girl</collection>
		<collection track="7" tracks="13" date="2019-02-08">Summer Hits 2019</collection>
			<person role="vocals">Some Girl</person>
			<person role="guitar">Some Boy</person>
			<organisation role="ensemble">Some People in the Background</organisation>
			<person role="producer">Some People behind the Glass</person></preformers>
			<rights>℗ 2008 Recording Company</rights>
			<organisation role="publisher">Guys and Girls Int.</organisation>
			<organisation role="label" uri="http://recording-people.com/">Recording Company</organisation>
			<location>China, Earth</location></recording>
			<quality bitrate="180" compression="best|fast|1-8" />
			<source media="flac-file" uri="#ripping-cd" />
			<source media="cd" uri="urn:x-isrc:0123456789" id="ripping-cd" />
			<software title="flac" version="2.2" uri="http://xiph.org/flac/" /></encoding></audio></metadata>

More information about the ogg-dev mailing list