From c1a9a77cc8af2f153970347a205ac3cbc9b2ba85 Mon Sep 17 00:00:00 2001 From: Dan Scott Date: Fri, 5 Apr 2013 13:21:47 -0400 Subject: [PATCH] Fix schema.org mapping for MusicAlbum, add Map We had set LDR[06] = j to MusicRecording, but that is really meant for individual songs. Use MusicAlbum instead, and per http://schema.org/MusicAlbum, use a new MusicGroup itemtype with a 'byArtist' property for the primary artist rather than the generic 'accountablePerson'. Also map LDR[06] = e to Map, because that seems like a safe bet. Signed-off-by: Dan Scott --- Open-ILS/src/templates/opac/parts/misc_util.tt2 | 3 ++- Open-ILS/src/templates/opac/parts/record/authors.tt2 | 12 ++++++++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Open-ILS/src/templates/opac/parts/misc_util.tt2 b/Open-ILS/src/templates/opac/parts/misc_util.tt2 index 36fa33e47a..5a0bae18b1 100644 --- a/Open-ILS/src/templates/opac/parts/misc_util.tt2 +++ b/Open-ILS/src/templates/opac/parts/misc_util.tt2 @@ -88,7 +88,8 @@ args.schema.itemtype = {}; schema_typemap = {}; schema_typemap.a = 'http://schema.org/Book'; - schema_typemap.j = 'http://schema.org/MusicRecording'; + schema_typemap.e = 'http://schema.org/Map'; + schema_typemap.j = 'http://schema.org/MusicAlbum'; args.isbns = []; FOR isbn IN xml.findnodes('//*[@tag="020"]/*[@code="a"]'); diff --git a/Open-ILS/src/templates/opac/parts/record/authors.tt2 b/Open-ILS/src/templates/opac/parts/record/authors.tt2 index 7e223fb14f..5440c67f0e 100644 --- a/Open-ILS/src/templates/opac/parts/record/authors.tt2 +++ b/Open-ILS/src/templates/opac/parts/record/authors.tt2 @@ -52,11 +52,19 @@ BLOCK build_author_links; # schema.org changes IF type == 'author'; - iprop = ' itemprop="accountablePerson"'; + IF args.schema.itemtype && args.schema.itemtype.match('MusicAlbum'); + iprop = ' itemtype="http://schema.org/MusicGroup" itemscope itemprop="byArtist"'; + ELSE; + iprop = ' itemprop="accountablePerson"'; + END; ELSIF type == 'added'; iprop = ' itemprop="contributor"'; END; - '' _ term.replace('^\s+', '') _ ''; + ''; + IF iprop; ''; END; + term.replace('^\s+', ''); + IF iprop; ''; END; + ''; FOREACH link880 IN graphics; diratt = ''; IF link880.dir; -- 2.11.0