MARC Holdings - Default Mapping profile

MODSOURCE-336 - Getting issue details... STATUS

IN PROGRESS

Mapping 

Field group

Leader


Character Positions
Inventory HoldingsNotesMapping profileRule




LDR









    06







Type of recordHoldings types:
  • in case of "u - Unknown" type what corresponding value on Inventory should be?



function "set_holdings_type_id" should be created in NormalizationFunction.java




3 Aug For now- ask library about the default value.

{
  "name": "holdingsTypeId",
  "path":   "holdings.holdingsTypeId",
  "value": "",
  "enabled": "false",
  "subfields": []
}




{
  "target": "holdingsTypeId",
  "description": "",
  "subfield": [],
  "rules": [
    {
      "description": "Holdings type based on 6 leader`s byte",
      "conditions": [
        {
          "type": "set_holdings_type_id",
          "LDR": true
      }
    ]
  }
]
}
  • u - Unknown

  • v - Multipart item holdings
Multi-part monograph
  • x - Single-part item holdings
Monograph
  • y - Serial item holdings
Serial

Physical

Electronic
Control fileds
Field

Character

Positions


Inventory HoldingsNotesMapping profileRule
001
Control Numberholdings Hrid001 + 003→ 035
{
  "name": "hrid",
  "path": "holdings.hrid",
  "value": "",
  "enabled": "false",
  "subfields": []
}
"001": [
  {
	"target": "hrid",
	"description": "The human readable ID",
	"subfield": [],
	"rules": []
  }
]
004
Control Number for Related Bibliographic Record

proposed to have a separate spike


hrid of Inventory Holdings



MARC HoldingsInventory HoldingsMapping profileNotesRule
Data Fields

014





035a

System control number (NR)

formerIds

 Click here to expand...
"035": [
{
"entityPerRepeatedSubfield": true,
"entity": [
{
"target": "formerIds",
"description": "",
"subfield": [
"a"
]
}
]
}
]
Note Fields561
Ownership and Custodial History

notes

holdings notes

Provenance note type

Natalia revise -561 field some code is already exists561 field
 Click here to expand...
"561": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Provenance"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Provenance note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"u",
"3",
"5",
"6",
"8"
]
}
],
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
]
562
Copy and Version Identification Note

notes

holdings notes

Copy note type

562 field562 field
 Click here to expand...
"562": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Copy note"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Copy note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
]
}
],
"subfield": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
]
563
Binding Information

notes

holdings notes

Binding note type


563 field
 Click here to expand...
563": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Binding"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Binding note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"u",
"3",
"5",
"6",
"8"
]
}
],
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
]
583
Action Note

notes

holdings notes

Action note type

the same as 561 field 


583 field
 Click here to expand...
"583": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"b",
"c",
"d",
"e",
"f",
"h",
"i",
"j",
"k",
"l",
"n",
"o",
"u",
"x",
"z",
"2",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Action note"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Action note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"b",
"c",
"d",
"e",
"f",
"h",
"i",
"j",
"k",
"l",
"n",
"o",
"u",
"x",
"z",
"2",
"3",
"5",
"6",
"8"
]
}
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"subfield": [
"a",
"b",
"c",
"d",
"e",
"f",
"h",
"i",
"j",
"k",
"l",
"n",
"o",
"u",
"x",
"z",
"2",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
]

Location and Access












852

Location






bSublocation or collection

permanentLocationId

locations

Might be covered in MappingManager.java
document

permanentLocationId is required field! - skip record and an error(discarded)


 Click here to expand...
"852": [
{
"entity": [
{
"target": "callNumberTypeId",
"description": "Call number type, defined by 1st indicator",
"subfield": [
],
"rules": [
{
"conditions": [
{
"type": "set_call_number_type_id"
}
]
}
]
},
{
"target": "permanentLocationId",
"description": "",
"subfield": [
"b"
],
"rules": [
{
"conditions": [
{
"type": "set_permanent_location_id"
}
]
}
]
},
{
"target": "callNumber",
"applyRulesOnConcatenatedData": true,
"description": "",
"subfield": [
"h",
"i"
],
"subFieldDelimiter": [
{
"value": " ",
"subfields": [
"h",
"i"
]
}
]
},
{
"target": "callNumberPrefix",
"description": "",
"subfield": [
"k"
]
},
{
"target": "shelvingTitle",
"description": "",
"subfield": [
"l"
]
},
{
"target": "callNumberSuffix",
"description": "",
"subfield": [
"m"
]
},
{
"target": "copyNumber",
"description": "",
"subfield": [
"t"
]
}
]
}
]

First Indicator

callNumberTypeId

call number types

What should happen if "Source specified in subfield $2"? - default mapping will not cover this, user should view the source for this subfuled $2

hClassification part callNumber

What is the delimiter? - space

remove slashes 




iItem part
kCall number prefixcallNumberPrefix

lShelving form of titleshelvingTitle

mCall number suffixcallNumberSuffix

tCopy number copyNumber

 Q- needed?

863 $t


xNonpublic notedigitizationPolicy852 $x needed?
zPublic noteretentionPolicy

852 $z needed?

notes


856

Electronic Location and Access
uUniform Resource Identifierelectronic access uri
the same mapping as for MARC_BIB
 Click here to expand...

"856": [

  {
"entity": [
{
"target": "electronicAccess.relationshipId",
"applyRulesOnConcatenatedData": true,
"description": "Relationship between the electronic resource at the location identified and the item described in the record as a whole",
"subfield": [
"3",
"y",
"u",
"z"
],
"rules": [
{
"conditions": [
{
"type": "set_electronic_access_relations_id"
}
]
}
]
},
{
"target": "electronicAccess.uri",
"description": "URI",
"subfield": [
"u"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "electronicAccess.linkText",
"description": "Link text",
"subfield": [
"y"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "electronicAccess.materialsSpecification",
"description": "Materials Specified",
"subfield": [
"3"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "electronicAccess.publicNote",
"description": "URL public note",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
]
yLink text electronic link text

zPublic noteelectronic access public note

$3Materials specifiedelectronic access material specified


866 

aTextual holdingsholdings Statements



 Click here to expand...
"866": [
{
"entity": [
{
"target": "holdingsStatements.statement",
"description": "",
"subfield": [
"a"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatements.note",
"description": "",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatements.staffNote",
"description": "",
"subfield": [
"x"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
]

xNonpublic noteholdings Statements staff note

zPublic noteholdings Statements note is it correct note = public note for statements - yes.

867

aTextual holdingsholdingsStatementsForSupplements statement



 Click here to expand...
"867": [
{
"entity": [
{
"target": "holdingsStatementsForSupplements.statement",
"description": "",
"subfield": [
"a"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForSupplements.note",
"description": "",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForSupplements.staffNote",
"description": "",
"subfield": [
"x"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
]

xNonpublic noteholdingsStatementsForSupplements staffNote

zPublic noteholdingsStatementsForSupplements note

868

aTextual holdingsholdingsStatementsForIndexes statement



 Click here to expand...
"868": [
{
"entity": [
{
"target": "holdingsStatementsForIndexes.statement",
"description": "",
"subfield": [
"a"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForIndexes.note",
"description": "",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForIndexes.staffNote",
"description": "",
"subfield": [
"x"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
]

xNonpublic noteholdingsStatementsForIndexes staffNote

zPublic noteholdingsStatementsForIndexes note

NON -MARC fields

Inventory Instance fieldNoteMapping profile
discoverySuppress

Same mapping applied as for MARC_BIB

Document suppress from discovery

{
  "name": "discoverySuppress",
  "path": "holdings.discoverySuppress",
  "value": "",
  "enabled": "true",
  "subfields": []
}
source

Same mapping applied as for MARC_BIB

Document source

{
  "name": "source",
  "path": "holdings.source",
  "value": "",
  "enabled": "false",
  "subfields": []
}

Fields Logic:





Leader


Control fileds001

When MARC Holdings created in SRS, incoming MARC Holdings needs the same 001/003/035 manipulation as MARC Bibs

Document


004

Data Fields014


035Document

Action plan:


TaskJIRA TicketHigh level estimation
can be done in parallelAdd default mapping profile, action profile  and relations between them in 'mod-data-import-converter-storage' for MARC Holdings. See example here

MODDICONV-199 - Getting issue details... STATUS

2
Add rules in JSON format to 'mod-source-record-manager' module

MODSOURMAN-540 - Getting issue details... STATUS

3
can be done in parallelModify existing mapping endpoints to work with MARC Holdings rules

MODSOURMAN-539 - Getting issue details... STATUS

3-5
Spike: define what is needed to update in 'mod-data-import-converter-storage' module to support creation of Inventory Holdings

MODDICONV-198 - Getting issue details... STATUS

3

Testing


Test full data-import flow for MARC_HOLDINGS


adjustments for MARC_HOLDINGS default profile


additional modifications for fields logic in 'mod-source-record-manager', 'mod-inventory'


test linkage between MARC_HOLDINGS and MARC_BIB

Spike Outcome:

 Default mapping profile
INSERT INTO ${myuniversity}_${mymodule}.action_profiles (id, jsonb) values ('8aa0b850-9182-4005-8435-340b704b2a19',
'{
	"id": "8aa0b850-9182-4005-8435-340b704b2a19",
	"name": "Default - Create Holdings",
	"action": "CREATE",
	"deleted": false,
	"metadata": {
  		"createdDate": "2021-08-05T14:00:00.000",
		"updatedDate": "2021-08-05T15:00:00.462+0000",
		"createdByUserId": "00000000-0000-0000-0000-000000000000",
		"updatedByUserId": "00000000-0000-0000-0000-000000000000"
	},
	"userInfo": {
		"lastName": "System",
		"userName": "System",
		"firstName": "System"
	},
"description": "This action profile is used with FOLIO''s default job profile for creating Inventory Holdings and SRS MARC Holdings records. It can be edited, duplicated.",
"folioRecord": "HOLDINGS",
"childProfiles": [],
"parentProfiles": []
}') ON CONFLICT DO NOTHING;


INSERT INTO ${myuniversity}_${mymodule}.mapping_profiles (id, jsonb) values ('13cf7adf-c7a7-4c2e-838f-14d0ac36ec0a',
'{
	"id": "13cf7adf-c7a7-4c2e-838f-14d0ac36ec0a",
	"name": "Default - Create holdings",
	"deleted": false,
	"metadata": {
	"createdDate": "2021-08-05T14:00:00.000",
	"updatedDate": "2021-08-05T15:00:00.462+0000",
	"createdByUserId": "00000000-0000-0000-0000-000000000000",
	"updatedByUserId": "00000000-0000-0000-0000-000000000000"
},
"userInfo": {
	"lastName": "System",
	"userName": "System",
	"firstName": "System"
},
"description": "This field mapping profile is used with FOLIO''s default job profile for creating Inventory Holdings and SRS MARC Holdings records. It can be edited, duplicated, deleted, or linked to additional action profiles.",
"childProfiles": [],
"mappingDetails": {
	"name": "holdings",
	"recordType": "HOLDINGS",
	"mappingFields": [
	  {
		"name": "hrid",
		"path": "holdings.hrid",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "holdingsTypeId",
		"path": "holdings.holdingsTypeId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "discoverySuppress",
		"path": "holdings.discoverySuppress",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "formerIds",
		"path": "holdings.formerIds",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "instanceId",
		"path": "holdings.instanceId",
		"value": "",
		"enabled": "false",
		"subfields": []
	 }, {
		"name": "permanentLocationId",
		"path": "holdings.permanentLocationId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "temporaryLocationId",
		"path": "holdings.temporaryLocationId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "effectiveLocationId",
		"path": "holdings.effectiveLocationId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "callNumberTypeId",
		"path": "holdings.callNumberTypeId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "callNumberPrefix",
		"path": "holdings.callNumberPrefix",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
	 	"name": "callNumber",
		"path": "holdings.callNumber",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "callNumberSuffix",
		"path": "holdings.callNumberSuffix",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, { 
		"name": "shelvingTitle",
		"path": "holdings.shelvingTitle",
		"value": "",
		"enabled": "false",
		"subfields": []
 	  }, {
		"name": "acquisitionFormat",
		"path": "holdings.acquisitionFormat",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "acquisitionMethod",
		"path": "holdings.acquisitionMethod",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "receiptStatus",
		"path": "holdings.receiptStatus",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "illPolicyId",
		"path": "holdings.illPolicyId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "retentionPolicy",
		"path": "holdings.retentionPolicy",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "digitizationPolicy",
		"path": "holdings.digitizationPolicy",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "copyNumber",
		"path": "holdings.copyNumber",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "numberOfItems",
		"path": "holdings.numberOfItems",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "electronicAccess",
		"path": "holdings.electronicAccess[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "notes",
		"path": "holdings.notes[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "holdingsStatements",
		"path": "holdings.holdingsStatements[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "holdingsStatementsForIndexes",
		"path": "holdings.holdingsStatementsForIndexes[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "holdingsStatementsForSupplements",
		"path": "holdings.holdingsStatementsForSupplements[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "receivingHistory",
		"path": "holdings.receivingHistory",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "statisticalCodeIds",
		"path": "holdings.statisticalCodeIds[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "holdingsItems",
		"path": "holdings.holdingsItems[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "bareHoldingsItems",
		"path": "holdings.bareHoldingsItems[]",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "holdingsInstance",
		"path": "holdings.holdingsInstance",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }, {
		"name": "sourceId",
		"path": "holdings.sourceId",
		"value": "",
		"enabled": "false",
		"subfields": []
	  }
	],
	"marcMappingDetails": []
},
"parentProfiles": [],
"existingRecordType": "HOLDINGS",
"incomingRecordType": "MARC_HOLDINGS",
"marcFieldProtectionSettings": []
}
') ON CONFLICT DO NOTHING;


INSERT INTO ${myuniversity}_${mymodule}.job_to_action_profiles (id, jsonb) values ('866a90ce-53b2-4b7b-afb5-d3a564e5087e',
'{
	"id": "866a90ce-53b2-4b7b-afb5-d3a564e5087e",
	"order": 0,
	"triggered": false,
	"detailProfileId": "8aa0b850-9182-4005-8435-340b704b2a19",
	"masterProfileId": "80898dee-449f-44dd-9c8e-37d5eb469b1d",
	"detailProfileType": "ACTION_PROFILE",
	"masterProfileType": "JOB_PROFILE"
}') ON CONFLICT DO NOTHING;

INSERT INTO ${myuniversity}_${mymodule}.action_to_mapping_profiles (id, jsonb) values ('8aa0b850-9182-4005-8435-340b704b2a19',
'{
	"id": "8aa0b850-9182-4005-8435-340b704b2a19",
	"order": 0,
	"triggered": false,
	"detailProfileId": "13cf7adf-c7a7-4c2e-838f-14d0ac36ec0a",
	"masterProfileId": "8aa0b850-9182-4005-8435-340b704b2a19",
	"detailProfileType": "MAPPING_PROFILE",
	"masterProfileType": "ACTION_PROFILE"
}') ON CONFLICT DO NOTHING;

 MARC_HOLDINGS rules
{
"001": [
{
"target": "hrid",
"description": "The human readable ID",
"subfield": [],
"rules": []
},
{
"target": "holdingsTypeId",
"description": "",
"subfield": [],
"rules": [
{
"description": "Holdings type based on 6 leader`s byte",
"conditions": [
{
"type": "set_holdings_type_id",
"LDR": true
}
]
}
]
}
],
"035": [
{
"entityPerRepeatedSubfield": true,
"entity": [
{
"target": "formerIds",
"description": "",
"subfield": [
"a"
]
}
]
}
],
"561": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Provenance"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Provenance note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"u",
"3",
"5",
"6",
"8"
]
}
],
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
],
"562": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Copy note"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Copy note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
]
}
],
"subfield": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"b",
"c",
"d",
"e",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
],
"563": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Binding"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Binding note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"u",
"3",
"5",
"6",
"8"
]
}
],
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"u",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
],
"583": [
{
"entity": [
{
"target": "notes.holdingsNoteTypeId",
"description": "Holdings note type id",
"applyRulesOnConcatenatedData": true,
"subfield": [
"a",
"b",
"c",
"d",
"e",
"f",
"h",
"i",
"j",
"k",
"l",
"n",
"o",
"u",
"x",
"z",
"2",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [
{
"type": "set_holdings_note_type_id",
"parameter": {
"name": "Action note"
}
}
]
}
]
},
{
"target": "notes.note",
"description": "Action note data",
"applyRulesOnConcatenatedData": true,
"subFieldDelimiter": [
{
"value": " ; ",
"subfields": [
"a",
"b",
"c",
"d",
"e",
"f",
"h",
"i",
"j",
"k",
"l",
"n",
"o",
"u",
"x",
"z",
"2",
"3",
"5",
"6",
"8"
]
}
],
"rules": [
{
"conditions": [
{
"type": "trim"
}
]
}
]
},
{
"target": "notes.staffOnly",
"description": "If true, determines that the note should not be visible for others than staff",
"subfield": [
"a",
"b",
"c",
"d",
"e",
"f",
"h",
"i",
"j",
"k",
"l",
"n",
"o",
"u",
"x",
"z",
"2",
"3",
"5",
"6",
"8"
],
"rules": [
{
"conditions": [],
"value": "false"
}
]
}
]
}
],
"852": [
{
"entity": [
{
"target": "callNumberTypeId",
"description": "Call number type, defined by 1st indicator",
"subfield": [
],
"rules": [
{
"conditions": [
{
"type": "set_call_number_type_id"
}
]
}
]
},
{
"target": "permanentLocationId",
"description": "",
"subfield": [
"b"
],
"rules": [
{
"conditions": [
{
"type": "set_permanent_location_id"
}
]
}
]
},
{
"target": "callNumber",
"applyRulesOnConcatenatedData": true,
"description": "",
"subfield": [
"h",
"i"
],
"subFieldDelimiter": [
{
"value": " ",
"subfields": [
"h",
"i"
]
}
]
},
{
"target": "callNumberPrefix",
"description": "",
"subfield": [
"k"
]
},
{
"target": "shelvingTitle",
"description": "",
"subfield": [
"l"
]
},
{
"target": "callNumberSuffix",
"description": "",
"subfield": [
"m"
]
},
{
"target": "copyNumber",
"description": "",
"subfield": [
"t"
]
}
]
}
],
"856": [
{
"entity": [
{
"target": "electronicAccess.relationshipId",
"applyRulesOnConcatenatedData": true,
"description": "Relationship between the electronic resource at the location identified and the item described in the record as a whole",
"subfield": [
"3",
"y",
"u",
"z"
],
"rules": [
{
"conditions": [
{
"type": "set_electronic_access_relations_id"
}
]
}
]
},
{
"target": "electronicAccess.uri",
"description": "URI",
"subfield": [
"u"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "electronicAccess.linkText",
"description": "Link text",
"subfield": [
"y"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "electronicAccess.materialsSpecification",
"description": "Materials Specified",
"subfield": [
"3"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "electronicAccess.publicNote",
"description": "URL public note",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
],
"866": [
{
"entity": [
{
"target": "holdingsStatements.statement",
"description": "",
"subfield": [
"a"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatements.note",
"description": "",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatements.staffNote",
"description": "",
"subfield": [
"x"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
],
"867": [
{
"entity": [
{
"target": "holdingsStatementsForSupplements.statement",
"description": "",
"subfield": [
"a"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForSupplements.note",
"description": "",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForSupplements.staffNote",
"description": "",
"subfield": [
"x"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
],
"868": [
{
"entity": [
{
"target": "holdingsStatementsForIndexes.statement",
"description": "",
"subfield": [
"a"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForIndexes.note",
"description": "",
"subfield": [
"z"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
},
{
"target": "holdingsStatementsForIndexes.staffNote",
"description": "",
"subfield": [
"x"
],
"rules": [
{
"conditions": [
{
"type": "remove_ending_punc, trim"
}
]
}
]
}
]
}
]
}