OK, that's in SVN r4716 smile! You can use 'qmc2NEO.queryLocalXml(id, query)' now to restrict the XQuery (query) to a single game/machine (id)... everything else is the same as in the global query.


        if ( "$EMULATOR_TYPE$" == "MESS" ) {
                document.write("<h3>" + tr('Software lists') + "</h3>");
                if ( qmc2NEO.queryLocalXml("$ID$", "doc($xmlDocument)//machine/softwarelist/@name/string()") ) {
                        var result = qmc2NEO.getXmlResult();
                        if ( result.length > 0 ) {
                                document.write("<p>" +  tr('Associated software-lists:'));
                                for (var i = 0; i < result.length; i++)
                                        document.write((i > 0 ? ", " : " ") + result[i]);
                        } else
                                document.write("<p>" + tr('This system has no associated software-lists.') +"</p>");
                } else
                        document.write(tr('XML query error!'));

I'm reusing a slightly modified function from the ROMAlyzer to accomplish this. There's implicit internal indexing whenever a game/machine is queried, so subsequent queries of the same game's/machine's XML data will be faster. This is much faster than a global query and should thus also be usable for bigger data as in MAME and UME.

A mind is like a parachute. It doesn't work unless it's open. [Frank Zappa]