Index: Slim/Schema.pm
===================================================================
--- Slim/Schema.pm	(revision 29102)
+++ Slim/Schema.pm	(working copy)
@@ -2104,16 +2104,14 @@
 	}
 
 	if ( !main::SLIM_SERVICE ) {
-		# The ARTISTSORT and ALBUMARTISTSORT tags are normalized in Contributor->add()
+		# The ARTISTSORT and ALBUMARTISTSORT etc. tags are normalized in Contributor->add()
 		# since the tag may need to be split.  See bugs #295 and #4584.
 		#
 		# Push these back until we have a Track object.
-		for my $tag (Slim::Schema::Contributor->contributorRoles, qw(
-			COMMENT GENRE ARTISTSORT PIC APIC ALBUM ALBUMSORT DISCC
+		for my $tag ( ( map { ( $_ , "${_}SORT", "MUSICBRAINZ_${_}_ID" ) } Slim::Schema::Contributor->contributorRoles), qw(
+			COMMENT GENRE PIC APIC ALBUM ALBUMSORT DISCC
 			COMPILATION REPLAYGAIN_ALBUM_PEAK REPLAYGAIN_ALBUM_GAIN 
-			MUSICBRAINZ_ARTIST_ID MUSICBRAINZ_ALBUM_ARTIST_ID MUSICBRAINZ_ALBUM_ID 
-			MUSICBRAINZ_ALBUM_TYPE MUSICBRAINZ_ALBUM_STATUS
-			ALBUMARTISTSORT
+			MUSICBRAINZ_ALBUM_ID MUSICBRAINZ_ALBUM_TYPE MUSICBRAINZ_ALBUM_STATUS
 		)) {
 
 			next unless defined $attributes->{$tag};
Index: Slim/Formats/FLAC.pm
===================================================================
--- Slim/Formats/FLAC.pm	(revision 29102)
+++ Slim/Formats/FLAC.pm	(working copy)
@@ -47,7 +47,7 @@
 	'URL'                       => 'URLTAG',
 	'MUSICBRAINZ_SORTNAME'      => 'ARTISTSORT',
 	'MUSICBRAINZ_ALBUMARTIST'   => 'ALBUMARTIST',
-	'MUSICBRAINZ_ALBUMARTISTID' => 'MUSICBRAINZ_ALBUMARTIST_ID',
+	( map { ( "MUSICBRAINZ_${_}ID" => "MUSICBRAINZ_${_}_ID" ) } Slim::Schema::Contributor->contributorRoles ) ,
 	'MUSICBRAINZ_ALBUMID'       => 'MUSICBRAINZ_ALBUM_ID',
 	'MUSICBRAINZ_ALBUMSTATUS'   => 'MUSICBRAINZ_ALBUM_STATUS',
 	'MUSICBRAINZ_ALBUMTYPE'     => 'MUSICBRAINZ_ALBUM_TYPE',