Yeah well just to stay within the focus of a music library, there has to be something<br>that does the resolution.<br><br>ONE possible option would be to specify a D-BUS interface name, and a have simple launcher.<br><br>All apps supporting MLQs would have to have a minimal common subset
<br>of D-BUS interfacery to allow this kind of query to be sent to them in some way<br>(something like an AddUri call might just suffice), then the launcher would basically<br>consist of starting the relevant apllication trough D-BUS activation, and then pass on
<br>the actual query to it. <br><br>(We have a dummy method &quot;Startup&quot; on our D-BUS iface which<br>does nothing, but causes D-BUS to start up BMP. The reasoning is that we have one main<br>binary and one &quot;remote&quot; binary, which is though set so that it is perceived as being the main
<br>binary, as in it's in /usr/bin, whereas the -bin (main) binary is in /usr/libexec. The reason<br>is so that we have a lightweight remote app that can perform actions on the main binary<br>and don't have to have the main app be capable of being a client to it's own server
<br>and have all the startup shizzle going just to perform a certain remote operation).<br><br>For example you'd have:<br>query://org.beepmediaplayer.bmp/?artist=Air&amp;Album=Moon%20Safari<br><br>The script, or be it a binary, let's call it &quot;play-mlq&quot;, would launch the
<br>player with the specified interface and pass it the actual query.<br><br>_Another_ possibility, although this would require players that can work with<br>mutable playlists like BMP, is that it would pass the query on to 
e.g. something<br>like Tracker or some other indexer, which would then execute the query and<br>_IT_ would then start the player specified by the interface and pass it along the<br>resulting URIs.<br><br>-- Milosz<br><br>
<div><span class="gmail_quote">On 6/22/06, <b class="gmail_sendername">Josef Spillner</b> &lt;<a href="mailto:spillner@kde.org">spillner@kde.org</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Alle 11:25, giovedì, 22. giugno 2006, Milosz Derezynski ha scritto:<br>&gt; Since this is very common, and having the discussions about a common music<br>&gt; database in mind, this seems like a useful proposal, since it is not player
<br>&gt; specific.<br><br>It is not even music specific. I've used query:// URIs for a long time with<br>metaservers, although only in a read-only context, whereas for write access<br>the (alternative) full-blown XML interface is used.
<br><br>The way it is used for the metaserver is like query://type/category, where<br>e.g. type would be the generic name for a server (say, 'freeciv' or 'cupsd')<br>and category would be 'connection' (to get back a connection URI) or 'meta'
<br>(to get back other metaserver URIs for the same type).<br>Using such a scheme makes an application resistant against host name changes<br>in the long run, i.e. it will pick up moving servers automatically.<br><br>This is probably not the same thing as your query, but obviously it's also
<br>used to query a database behind it (which is a XML database in my case, but<br>could be SQL or anything else for that matter). So maybe it makes sense to<br>standardise this in a broader context.<br><br>KDE Radio Station is one example where this is used (ha - found a relation to
<br>music!), and the GGZ Gaming Zone project is another one (where it originated<br>since metaservers are commonplace with game servers).<br><br>Josef<br>_______________________________________________<br>xdg mailing list
<br><a href="mailto:xdg@lists.freedesktop.org">xdg@lists.freedesktop.org</a><br><a href="http://lists.freedesktop.org/mailman/listinfo/xdg">http://lists.freedesktop.org/mailman/listinfo/xdg</a><br></blockquote></div><br>