Class: DigitalScriptorium::NameClaimTransformer

Inherits:
QualifiedClaimTransformerWithFacetFallback show all
Includes:
PropertyId
Defined in:
lib/digital_scriptorium/transformers/name_claim_transformer.rb

Overview

Transformer for associated name (P14) claims. NOTE: Name claims produce fields prefixes derived from the value of their role (P15) qualifiers (owner, author, scribe, artist, agent).

Constant Summary

Constants included from PropertyId

PropertyId::ACKNOWLEDGEMENTS, PropertyId::ASSOCIATED_NAME_AS_RECORDED, PropertyId::CENTURY, PropertyId::DATED, PropertyId::DATE_ADDED, PropertyId::DATE_LAST_UPDATED, PropertyId::DESCRIBED_MANUSCRIPT, PropertyId::DS_ID, PropertyId::EARLIEST_DATE, PropertyId::END_TIME, PropertyId::EQUIVALENT_PROPERTY, PropertyId::EXTERNAL_IDENTIFIER, PropertyId::EXTERNAL_URI, PropertyId::FORMATTER_URL, PropertyId::GENRE_AS_RECORDED, PropertyId::HOLDING_INSTITUTION_AS_RECORDED, PropertyId::HOLDING_INSTITUTION_IN_AUTHORITY_FILE, PropertyId::HOLDING_STATUS, PropertyId::IIIF_MANIFEST, PropertyId::INSTANCE_OF, PropertyId::INSTITUTIONAL_ID, PropertyId::IN_ORIGINAL_SCRIPT, PropertyId::LANGUAGE_AS_RECORDED, PropertyId::LANGUAGE_IN_AUTHORITY_FILE, PropertyId::LATEST_DATE, PropertyId::LINK_TO_INSTITUTIONAL_RECORD, PropertyId::MANUSCRIPT_HOLDING, PropertyId::MATERIAL_AS_RECORDED, PropertyId::MATERIAL_IN_AUTHORITY_FILE, PropertyId::NAME_IN_AUTHORITY_FILE, PropertyId::NOTE, PropertyId::PHYSICAL_DESCRIPTION, PropertyId::PLACE_IN_AUTHORITY_FILE, PropertyId::PRODUCTION_CENTURY_IN_AUTHORITY_FILE, PropertyId::PRODUCTION_DATE_AS_RECORDED, PropertyId::PRODUCTION_PLACE_AS_RECORDED, PropertyId::ROLE_IN_AUTHORITY_FILE, PropertyId::SHELFMARK, PropertyId::STANDARD_TITLE, PropertyId::START_TIME, PropertyId::SUBCLASS_OF, PropertyId::SUBJECT_AS_RECORDED, PropertyId::TERM_IN_AUTHORITY_FILE, PropertyId::TITLE_AS_RECORDED, PropertyId::UNIFORM_TITLE_AS_RECORDED, PropertyId::VIAF_ID, PropertyId::WIKIDATA_QID

Instance Attribute Summary

Attributes inherited from QualifiedClaimTransformer

#authority_id, #export_hash

Attributes inherited from BaseClaimTransformer

#claim, #prefix

Instance Method Summary collapse

Methods inherited from QualifiedClaimTransformerWithFacetFallback

#facet_values

Methods inherited from QualifiedClaimTransformer

#display_values, #external_uri, #facet_values, #in_original_script, #linked_term_for, #linked_term_labels, #linked_terms, #main_snak_value, #search_values, #wikidata_id, #wikidata_uri

Methods inherited from BaseClaimTransformer

#display_value, #display_values, #facet_values, #search_values, #solr_props

Constructor Details

#initialize(claim, export_hash, **kwargs) ⇒ NameClaimTransformer



10
11
12
# File 'lib/digital_scriptorium/transformers/name_claim_transformer.rb', line 10

def initialize(claim, export_hash, **kwargs)
  super(claim, export_hash, prefix: role_prefix(claim, export_hash), authority_id: kwargs[:authority_id])
end

Instance Method Details

#role_prefix(claim, export_hash) ⇒ Object



14
15
16
17
18
19
20
21
# File 'lib/digital_scriptorium/transformers/name_claim_transformer.rb', line 14

def role_prefix(claim, export_hash)
  role_entity_id = claim.qualifiers_by_property_id(ROLE_IN_AUTHORITY_FILE)&.first&.entity_id_value
  raise 'Missing role qualifier for name claim' unless role_entity_id

  role_item = export_hash[role_entity_id]
  role_label = role_item.label('en')
  role_label.split.last.downcase
end