Milosz Derezynski wrote: > Hi, > > I'm one of the main authors of BMP 2 (still being worked on), and along > the way of reworking our library, i came across the idea of encoding > library queries as URIs, which may look like this: > > "query:///?artist=Air&album=Moon%20Safari" > > BMP 2 has a plugin archicture which is a small VFS on it's own, and we > treat certain things as "containers" (i.e. they "contain" URIs, like PLS > playlists, XSPF, M3U, etc). > Now i thought it might be not a bad idea to create a playlist format > with these query URLs, and i've called it "MLQ" for media library query. > In theory, it's not even > application specific. The keys (identifiers), like artist, album, etc, > are all based on GStreamer tag identifiers. (They could be maybe adapted > to http://www.freedesktop.org/wiki/Standards_2faudio_2dmetadata_2dspec , > but it seems insufficient and doesn't specify certain items, like > musicbrainz metadata, which GST does).
Tracker's metadata spec does (http://freedesktop.org/wiki/Standards/shared-filemetadata-spec) > > So i've called this file format "MLQ", with the extension .mlq, created > a mime package file for it: > > <?xml version="1.0" encoding="UTF-8"?> > <mime-info xmlns="http://www.freedesktop.org/standards/shared-mime-info "> > <mime-type type="application/x-media-library-query"> > <comment xml:lang="en">Media Library Query List</comment> > <magic priority="50"> > <match value="query:///" type="string" offset="0"/> > </magic> > <glob pattern="*.mlq"/> > </mime-type> > </mime-info> > > Adding a file of this type to BMPx, or just a plain query:/// URI itself > causes a library query and appending of the relevant items to the > tracklist (BMP is currently mostly based on the concept of a mutable > playlist to which items can be added from various sources, unlike e.g. > RB which has mostly immutable "Playlists", but allows for custom queues). > > Another example is: > > query:///?artist=Air&album=Moon%20Safari&title=La%20Femme%20d'Argent > query:///?artist=Air&album=Moon%20Safari&title=Sexy%20Boy > query:///?artist=Air&album=Moon%20Safari&title=All%20I%20Need > query:///?artist=Air&album=Moon%20Safari&title=Kelly,%20Watch%20The%20Stars! > query:///?artist=Air&album=Moon%20Safari&title=Talisman > query:///?artist=Air&album=Moon%20Safari&title=Remember > query:///?artist=Air&album=Moon%20Safari&title=You%20Make%20It%20Easy > query:///?artist=Air&album=Moon%20Safari&title=Ce%20Matin%20La > query:///?artist=Air&album=Moon%20Safari&title=New%20Star%20In%20The%20Sky > query:///?artist=Air&album=Moon%20Safari&title=Le%20Voyage%20De%20Penelope > > Or it might just be: > > query:///?genre=Jazz > > Since this is very common, and having the discussions about a common > music database in mind, this seems like a useful proposal, since it is > not player specific. > This ships currently with BMP 2/BMPx SVN, and while i will ship this > with the 0.20 release (end-July) anyway, what does everyone think of > this in a broader context (common music database, etc)? Could be interesting as an alternative to rdf query that tracker uses but rdf query is a *standard* and is the WC3's recommended means of querying metadata. A more compact version of the xml based rdf query language is sparql (http://www.w3.org/TR/rdf-sparql-query/) and is also a candidate for standardisation. I guess its going to be fun deciding which to use (I will go with the flow) -- Mr Jamie McCracken http://jamiemcc.livejournal.com/ _______________________________________________ gnome-multimedia mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gnome-multimedia
