I’m having difficulty removing comments from the disambiguation field of live bootleg recordings. For example:
“live, 1969‐01‐10, 1st show: Fillmore West, San Francisco, CA, US”
This states the form should be:
“live, 1969‐01‐10: Fillmore West, San Francisco, CA, US”
Where does “1st show” go? If the comment was at the end like:
“live, 1969‐01‐10: Fillmore West, San Francisco, CA, US; 1st show”
which would allow for a regular expression to remove it gracefully when only the comment is wanted. Something like this, but not exactly
$noop(recording disambig? remove search hints)
$set(_comment,$rsearch(%_recordingcomment%,^\(?:\\d{4}-\\d{2}-\\d{2}.*; \){0\,1}\(.*\)\$))
$if(%_comment%, \(%_comment%\))
Also, the use of disambig is a bit old fashioned as we have the ‘recorded at’ and ‘recording of’ relationships in the database. Here’s an example using a direct API call.
browse API call for A Train Kept a-Rollin work to return recordings (page 1)
If I apply this XSLT transform
<?xml version="1.0"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:mb="http://musicbrainz.org/ns/mmd-2.0#">
<xsl:template match="/">
<html>
<body>
<h2>MusicBrainz browse test by davygrvy@pobox.com</h2>
Count is <xsl:value-of select="mb:metadata/mb:recording-list/@count" /><br/>
<table border="1">
<tr bgcolor="#9acd32">
<th>Title</th>
<th>Artist</th>
<th>Attributes</th>
<th>Date</th>
<th>Place</th>
<th>Disambig</th>
</tr>
<xsl:for-each select="mb:metadata/mb:recording-list/mb:recording">
<tr>
<td><a href="https://musicbrainz.org/recording/{@id}"><xsl:value-of select="mb:title"/></a></td>
<td><xsl:value-of select="mb:artist-credit/mb:name-credit/mb:artist/mb:name"/></td>
<td><xsl:value-of select="mb:relation-list/mb:relation/mb:attribute-list"/></td>
<td><xsl:value-of select="mb:relation-list/mb:relation/mb:begin"/></td>
<td><xsl:value-of select="mb:relation-list/mb:relation/mb:place/mb:name"/></td>
<td><xsl:value-of select="mb:disambiguation"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
I can generate a table like this. As you see, all the info that the bootleg live style asks for is already in the database. The issue as I see is that normal indexed browsing doesn’t add a place column thus keeping the need to have disambig show those search hints.


