Skip to content

Commit 41b2b81

Browse files
videos(digitized): remove cds related identifier resource type
1 parent 516985c commit 41b2b81

2 files changed

Lines changed: 15 additions & 1 deletion

File tree

cds_migrator_kit/videos/weblecture_migration/transform/transform.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -495,6 +495,12 @@ def get_keywords(json_data):
495495
unique_keywords = []
496496
for kw in all_keywords:
497497
name = kw["name"]
498+
if name == "XX":
499+
self.migration_logger.add_information(
500+
json_data["recid"],
501+
{"message": "Keyword XX found and ignored!", "value": name},
502+
)
503+
continue
498504
if name not in seen:
499505
seen.add(name)
500506
unique_keywords.append(kw)

cds_migrator_kit/videos/weblecture_migration/transform/xml_processing/rules/digitized_video_lecture.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,18 +96,25 @@ def validate_copyright(self, key, holder, year):
9696
@model.over("related_id", "^962__", override=True)
9797
@for_each_value
9898
def related_id(self, key, value):
99-
"""Translates tag 962."""
99+
"""
100+
Overridden version of the `presented_at` rule.
101+
102+
This rule uses the new `related_id` key so that only tag 962 handling is customized,
103+
without overriding all rules for related identifiers.
104+
"""
100105
pagination = value.get("k", "").strip()
101106
# Only 2 records has this field: 300427, 317239
102107
if pagination and pagination != "no pagination":
103108
raise UnexpectedValue(field=key, subfield="k", value=pagination)
104109
new_related_id = presented_at(self, key, value)
105110
if new_related_id:
106111
rel_id = new_related_id[0]
112+
rel_id.pop("resource_type", None)
107113
rel_ids = self.get("related_identifiers", [])
108114
if rel_id not in rel_ids:
109115
rel_ids.append(rel_id)
110116
self["related_identifiers"] = rel_ids
117+
# Related identifier is already added, ignore this key
111118
raise IgnoreKey("related_id")
112119

113120

@@ -418,6 +425,7 @@ def creation_date(self, key, value):
418425
@for_each_value
419426
def action_note(self, key, value):
420427
"""Translates action note (digitized information)."""
428+
421429
def format_field(value, subfield):
422430
val = value.get(subfield)
423431
if isinstance(val, (list, tuple)):

0 commit comments

Comments
 (0)