Module: Ddr::Index::Fields

Defined in:
lib/ddr/index/fields.rb

Constant Summary collapse

ID =
UniqueKeyField.instance
ACCESS_ROLE =
Field.new :access_role, :stored_sortable
ADMIN_POLICY_ID =
Field.new :admin_policy_id, :symbol
ADMIN_SET =
Field.new :admin_set, :stored_sortable
ADMIN_SET_FACET =
Field.new :admin_set_facet, :facetable
ADMIN_SET_TITLE =
Field.new :admin_set_title, :stored_sortable
AFFILIATION =
Field.new :affiliation, :stored_searchable
AFFILIATION_FACET =
Field.new :affiliation_facet, :facetable
ALEPH_ID =
Field.new :aleph_id, :stored_sortable
ALL_TEXT =
Field.new :all_text, solr_name: "all_text_timv"
ARRANGER_FACET =
Field.new :arranger_facet, :facetable
ASPACE_ID =
Field.new :aspace_id, :stored_sortable
ATTACHED_FILES_HAVING_CONTENT =
Field.new :attached_files_having_content, :symbol
ATTACHED_TO_ID =
Field.new :attached_to_id, :symbol
AVAILABLE =
Field.new :available, :symbol
BIBLICAL_BOOK_FACET =
Field.new :biblical_book_facet, :facetable
BOX_NUMBER_FACET =
Field.new :box_number_facet, :facetable
CATEGORY_FACET =
Field.new :category_facet, :facetable
CHAPTER_AND_VERSE_FACET =
Field.new :chapter_and_verse_facet, :facetable
COLLECTION_FACET =
Field.new :collection_facet, :facetable
COLLECTION_ID =
Field.new :collection_id, :symbol
COLLECTION_TITLE =
Field.new :collection_title, :stored_sortable
COMMON_MODEL_NAME =
Field.new :common_model_name, :stored_sortable
COMPANY_FACET =
Field.new :company_facet, :facetable
COMPOSER_FACET =
Field.new :composer_facet, :facetable
CONTENT_CREATE_DATE =
Field.new :content_create_date, :stored_sortable, type: :date
CONTENT_SHA1 =
Field.new :content_sha1, :stored_sortable
CONTENT_SIZE =
Field.new :content_size, solr_name: "content_size_lsi"
CONTENT_SIZE_HUMAN =
Field.new :content_size_human, :symbol
CONTENTDM_ID =
Field.new :contentdm_id, :stored_sortable
CONTRIBUTOR_FACET =
Field.new :contributor_facet, :facetable
CREATOR_FACET =
Field.new :creator_facet, :facetable
DATE_FACET =
Field.new :date_facet, :facetable
DATE_SORT =
Field.new :date_sort, :sortable
DC_IS_PART_OF =
Field.new :isPartOf, :symbol
DEPOSITOR =
Field.new :depositor, :stored_sortable
DERIVED_IMAGE_FILE_PATH =
Field.new :derived_image_file_path, :stored_sortable
DESCRIPTION =

DDR-1997 - description should always be indexed as _tesim regardless of length - Valkyrie indexes fields > 1000 characters in length as _tsim only

Field.new :description, :stored_searchable
DISPLAY_FORMAT =
Field.new :display_format, :stored_sortable
DOI =
Field.new :doi, :symbol
EAD_ID =
Field.new :ead_id, :stored_sortable
EFFECTIVE_ROLE =
Field.new :effective_role, :symbol
ENGRAVER_FACET =
Field.new :engraver_facet, :facetable
EXTRACTED_TEXT =
Field.new :extracted_text, solr_name: "extracted_text_tsm"
FCREPO3_PID =
Field.new :fcrepo3_pid, :stored_sortable
FOLDER_FACET =
Field.new :folder_facet, :facetable
FOR_COLLECTION_ID =
Field.new :for_collection_id, :symbol
FORMAT_FACET =
Field.new :format_facet, :facetable
GENRE_FACET =
Field.new :genre_facet, :facetable
IDENTIFIER_ALL =
Field.new :identifier_all, :symbol
ILLUSTRATED_FACET =
Field.new :illustrated_facet, :facetable
ILLUSTRATOR_FACET =
Field.new :illustrator_facet, :facetable
INGESTED_BY =
Field.new :ingested_by, :stored_sortable
INGESTION_DATE =
Field.new :ingestion_date, :stored_sortable, type: :date
INSTRUMENTATION_FACET =
Field.new :instrumentation_facet, :facetable
INTERVIEWER_NAME_FACET =
Field.new :interviewer_name_facet, :facetable
IS_FORMAT_OF =
Field.new :isFormatOf, :symbol
IS_LOCKED =
Field.new :is_locked, :stored_sortable
IS_MEMBER_OF_COLLECTION =

Keeping IS_MEMBER_OF_COLLECTION and IS_PART_OF for now for backwards compatibility

Field.new :is_member_of_collection, :symbol
IS_PART_OF =
Field.new :is_part_of, :symbol
LANGUAGE_FACET =
Field.new :language_facet, :facetable
LANGUAGE_NAME =
Field.new :language_name, :stored_searchable
LAST_FIXITY_CHECK_ON =
Field.new :last_fixity_check_on, :stored_sortable, type: :date
LAST_FIXITY_CHECK_OUTCOME =
Field.new :last_fixity_check_outcome, :symbol
LAST_VIRUS_CHECK_ON =
Field.new :last_virus_check_on, :stored_sortable, type: :date
LAST_VIRUS_CHECK_OUTCOME =
Field.new :last_virus_check_outcome, :symbol
LICENSE =
Field.new :license, :stored_sortable
LITHOGRAPHER_FACET =
Field.new :lithographer_facet, :facetable
LOCAL_ID =
Field.new :local_id, :stored_sortable
LYRICIST_FACET =
Field.new :lyricist_facet, :facetable
MEDIA_SUB_TYPE =
Field.new :content_media_sub_type, :facetable
MEDIA_MAJOR_TYPE =
Field.new :content_media_major_type, :facetable
MEDIA_TYPE =
Field.new :content_media_type, :symbol
MEDIUM_FACET =
Field.new :medium_facet, :facetable
MULTIRES_IMAGE_FILE_PATH =
Field.new :multires_image_file_path, :stored_sortable
NESTED_PATH =
Field.new :nested_path, :stored_sortable
NESTED_PATH_TEXT =
Field.new :nested_path_text, :searchable
ORIGINAL_FILENAME =
Field.new :original_filename, :stored_sortable
PARENT_ID =
Field.new :parent_id, :symbol
PERFORMER_FACET =
Field.new :performer_facet, :facetable
PERMANENT_ID =
Field.new :permanent_id, :stored_sortable
PERMANENT_URL =
Field.new :permanent_url, :stored_sortable
PLACEMENT_COMPANY_FACET =
Field.new :placement_company_facet, :facetable
POLICY_ROLE =
Field.new :policy_role, :symbol
PRODUCER_FACET =
Field.new :producer_facet, :facetable
PRODUCT_FACET =
Field.new :product_facet, :facetable
PUBLICATION_FACET =
Field.new :publication_facet, :facetable
PUBLISHER_FACET =
Field.new :publisher_facet, :facetable
RESEARCH_HELP_CONTACT =
Field.new :research_help_contact, :stored_sortable
RESOURCE_CREATE_DATE =
Field.new :created_at, :stored_sortable, type: :date
RESOURCE_MODEL =
Field.new :resource_model, solr_name: "internal_resource_ssim"
RESOURCE_MODIFIED_DATE =
Field.new :updated_at, :stored_sortable, type: :date
RESOURCE_ROLE =
Field.new :resource_role, :symbol
RIGHTS_NOTE =
Field.new :rights_note, :stored_searchable
ROLL_NUMBER_FACET =
Field.new :roll_number_facet, :facetable
SERIES_FACET =
Field.new :series_facet, :facetable
SETTING_FACET =
Field.new :setting_facet, :facetable
SPATIAL_FACET =
Field.new :spatial_facet, :facetable
STREAMABLE_MEDIA_TYPE =
Field.new :streamable_media_type, :stored_sortable
STRUCTURE =
Field.new :structure, solr_name: "structure_ss"
STRUCTURE_SOURCE =
Field.new :structure_source, :stored_sortable
SUBJECT_FACET =
Field.new :subject_facet, :facetable
SUBSERIES_FACET =
Field.new :subseries_facet, :facetable
TARGET_ID =
Field.new :target_id, :symbol
TECHMD_COLOR_SPACE =
Field.new :techmd_color_space, :symbol
TECHMD_CREATING_APPLICATION =
Field.new :techmd_creating_application, :symbol
TECHMD_CREATION_TIME =
Field.new :techmd_creation_time, :stored_searchable, type: :date
TECHMD_FILE_SIZE =
Field.new :techmd_file_size, solr_name: "techmd_file_size_lsi"
TECHMD_FITS_VERSION =
Field.new :techmd_fits_version, :stored_sortable
TECHMD_FITS_DATETIME =
Field.new :techmd_fits_datetime, :stored_sortable, type: :date
TECHMD_FORMAT_LABEL =
Field.new :techmd_format_label, :symbol
TECHMD_FORMAT_VERSION =
Field.new :techmd_format_version, :symbol
TECHMD_ICC_PROFILE_NAME =
Field.new :techmd_icc_profile_name, :symbol
TECHMD_ICC_PROFILE_VERSION =
Field.new :techmd_icc_profile_version, :symbol
TECHMD_IMAGE_HEIGHT =
Field.new :techmd_image_height, :stored_searchable, type: :integer
TECHMD_IMAGE_WIDTH =
Field.new :techmd_image_width, :stored_searchable, type: :integer
TECHMD_MD5 =
Field.new :techmd_md5, :stored_sortable
TECHMD_MEDIA_TYPE =
Field.new :techmd_media_type, :symbol
TECHMD_MODIFICATION_TIME =
Field.new :techmd_modification_time, :stored_searchable, type: :date
TECHMD_PRONOM_IDENTIFIER =
Field.new :techmd_pronom_identifier, :symbol
TECHMD_VALID =
Field.new :techmd_valid, :symbol
TECHMD_WELL_FORMED =
Field.new :techmd_well_formed, :symbol
TEMPORAL_FACET =
Field.new :temporal_facet, :facetable
TITLE =
Field.new :title, :stored_sortable
TONE_FACET =
Field.new :tone_facet, :facetable
TYPE_FACET =
Field.new :type_facet, :facetable
VOLUME_FACET =
Field.new :volume_facet, :facetable
WORKFLOW_STATE =
Field.new :workflow_state, :stored_sortable
YEAR_FACET =
Field.new :year_facet, solr_name: "year_facet_iim"

Class Method Summary collapse

Class Method Details

.adminmdObject



152
153
154
155
156
157
158
159
160
# File 'lib/ddr/index/fields.rb', line 152

def self.adminmd
  @adminmd ||= Ddr::HasAdminMetadata.term_names.map do |term_name|
    begin
      get(term_name)
    rescue NameError
      Field.new term_name
    end
  end.freeze
end

.descmdObject



146
147
148
149
150
# File 'lib/ddr/index/fields.rb', line 146

def self.descmd
  @descmd ||= Ddr::Describable.term_names.map do |term_name|
    Field.new term_name, *Ddr::Describable.indexers_for(term_name)
  end.freeze
end

.get(name) ⇒ Object



138
139
140
# File 'lib/ddr/index/fields.rb', line 138

def self.get(name)
  const_get(name.to_s.upcase, false)
end

.techmdObject



142
143
144
# File 'lib/ddr/index/fields.rb', line 142

def self.techmd
  @techmd ||= constants(false).select { |c| c =~ /\ATECHMD_/ }.map { |c| const_get(c) }.freeze
end