Create function to populate an Authority Source file ID
Description
Environment
None
Potential Workaround
None
has to be done after
has to be done before
Checklist
hideTestRail: Results
Activity
Show:
Maryna Steshenko August 8, 2022 at 1:27 PM
Authority Source File ID feature stories can only be verified together once all linked issues are done. As of now MODINVSTOR-892 is blocked what makes https://folio-org.atlassian.net/browse/MODDICORE-276#icft=MODDICORE-276 and https://folio-org.atlassian.net/browse/MODSOURMAN-821#icft=MODSOURMAN-821 impossible to test. Therefore this task is closed but still needs to be verified in future.
Done
Details
Details
Assignee
Gurleen Kaur1
Gurleen Kaur1Reporter
Pavlo Smahin
Pavlo SmahinLabels
Priority
Story Points
3
Sprint
None
Development Team
Spitfire
Fix versions
Release
Nolana (R3 2022)
TestRail: Cases
Open TestRail: Cases
TestRail: Runs
Open TestRail: Runs
Created July 14, 2022 at 10:43 AM
Updated January 10, 2023 at 12:45 PM
Resolved August 8, 2022 at 1:27 PM
TestRail: Cases
TestRail: Runs
Context: Catalogers want a way to know the source of their authority records. They want a facet/filter that provides them the ability to only view records of the selected source or sources. This knowledge may prove important to our team in supporting the link between bibliographic records and authority records.'
Requirements
When user imports an authority record Then we need to the check 001 or 010 $a for the identifying prefix (code). If the prefix (code) matches any of the values on the below tables THEN assign the record to a Source file.
An authority record can only be assigned to one Source file
Each identifying prefix (code) is unique and can be assigned to only one Source file (see list below)
identifying prefix (code) is the "alpha value" of the 001 and 010$a
identifying prefix (code) is case insensitive
System should check if 001 has one of the prefixes (codes) below. If not then check 010 $a (all of them). If multiple $a with identifying prefixes (codes) then pick the first one.
If there is no prefix (code) OR the prefix (code) is not on the below list then assign to Not specified or not at all (whatever is easiest given additional requirements will support a user adding their own information to this list).
Development should consider that additional rules will added to this implementation
Each Source file can only be assigned to one Authority type (see below list)
List
Identifying prefix: MARC field: 001 prefix
Source file name
Authority type
Example file
n,nb,nr,no
LC Name Authority file (LCNAF)
Names
sh
LC Subject Headings (LCSH)
Subjects
sj
LC Children's Subject Headings
Subjects
gf
LC Genre/Form Terms (LCGFT)
Subjects
dg
LC Demographic Group Terms (LCFGT)
Subjects
mp
LC Medium of Performance Thesaurus for Music (LCMPT)
Subjects
fst
Faceted Application of Subject Terminology (FAST)
Subjects
http://id.worldcat.org/fast/831961.html
D
Medical Subject Headings (MeSH)
Subjects
lcgtm
Thesaurus for Graphic Materials (TGM)
Subjects
rbmscv
Rare Books and Manuscripts Section (RBMS)
Subjects
aat
Art & architecture thesaurus (AAT)
Subjects
gsafd
GSAFD Genre Terms (GSAFD)
Subjects
h4.
Acceptance Criteria
No impact to mod-search performance.
Write Karate tests
Given a MARC authority record is created via data import
When 001 is populated
AND the alpha prefix matches a value (i.e. n) on the Authority Source file list
Then assign the record to an Authority source file (i.e. LC Name Authority file (LCNAF))
Given a MARC authority record is created via data import
When 001 is populated
AND has no identifying alpha prefix that matches what is on the list
BUT 010 $a does have an identifying alpha prefix that matches a value (i.e. n) on the Authority Source file list
Then assign the record to an Authority source file (i.e. LC Name Authority file (LCNAF))
Given a MARC authority record is created via data import
When 001 is populated
AND has no identifying alpha prefix that matches what is on the list
AND 010 $a also does not have an identifying alpha prefix that matches what is on the list
Then do not assign to an Authority source file
Approach
Extend MappingParameters with AuthoritySourceFiles field
Create set_authority_source_file_id function that will be use in mapping rules to satisfy requirements