Now that Kazaa has added "Kazaa Playlists" -- .kpl files, with a list of
other files inside -- it seems a good time to discuss and settle on an
official format (or formats) for MAGNET "manifest topics".
Recall that anywhere an 'xt' (exact topic) or 'kt' (keyword topic) can
appear, a 'mt' (manifest topic) may also appear.
This is assumed to be a URI (perhaps an HTTP URL, perhaps an URN) which
if resolved provides a *list* (or 'manifest') of other topics to be
considered for MAGNET processing options.
My preference would be for the official manifest format to:
- Be XML, to easily handle other people's mixed-in extensions
- Allow use of the same field names/abbrieviations ('xt', 'dn',
etc.) as the URI format, whenever possible
- Add other field names, as necessary
- Be capable of expressing multiple reasons why a list is necessary,
including:
-- these items are *substitutes* for each other
-- these items are part of an *ordered series* that should be kept together
-- these items are *related*
This could eventually become an open-ended format for expressing
collections/playlists/libraries, but it is important that initially,
it remains very simple. (Things like arbitrary metadata markup,
playback parameters, etc. could be handled by later mix-in extensions,
which is to say, optional new namespaces.)
Does anyone know of existing work that could be leveraged? It
strikes me that this need is a little like RSS, or the new XMLish
WinAmp b4s playlist format.
A naive first, incomplete attempt to simply copy the MAGNET-URI
conventions over to XML might look like:
<manifest>
<dn>A bunch of songs I like</dn>
<item>
<xt>urn:sha1:BLAHBLAH</xt>
<dn>The Blah Song</dn>
</item>
<item>
<xt>urn:sha1:HALBHALB</xt>
<dn>Hot In Therre</dn>
</item>
</manifest>
The rules for nesting could become very confusing (or powerful!)
very quickly, so they need to be handled carefully.
For comparison, the Kazaa KPL format is like a Windows INI file. \
Here's an example I just made:
[Metadata]
artist=Too Much Joy
album=Live at Least (Outtakes)
category=
language=All
year=
keywords=
description=Tracks from http://www.sayhername.com/tmj_live.php
[Entries]
entry1=Too_Much_Joy_-_Live_at_Least_-_Outtakes_-_Susquehanna_Hat_Company.mp3\382\
fa430dab2be8b5f019a40e075911598c4749b\Susquehanna
Hat Company\Too Much Joy\Live at Least - Outtakes\0:03:02
entry2=Too_Much_Joy_-_Live_at_Least_-_Outtakes_-_Seasons_in_the_Sun.mp3\ab8594bc\
f41dc01ba5f5ec7837a324424ae3d06f\Seasons in the
Sun\Too Much Joy\Live at Least - Outtakes\Unknown
entry3=Too_Much_Joy_-_Live_at_Least_-_Outtakes_-_What_It_Is.mp3\006526823c536f25\
6766c994ce1b633db132e16c\What It Is\Too Much
Joy\Live at Least - Outtakes\0:04:28
entry4=Too_Much_Joy_-_Live_at_Least_-_Outtakes_-_Secret_Handshake.mp3\6832cef43d\
f690f877a4483092e171f5ccfac3e7\Secret Handshake\Too
Much Joy\Live at Least - Outtakes\Unknown
- Gojomo
____________________
Gordon Mohr <gojomo@ . . . At Bitzi, people cooperate to identify, rate,
bitzi.com> Bitzi CTO . . . describe and discover files of every kind.
_ http://bitzi.com _ . . . Bitzi knows bits -- because you teach it!