DataONEorg / d1_cn_index_processor

The CN index processor component
0 stars 1 forks source link

Populate 'resourceMap' Solr field based on 'ore:isAggregatedBy' #1

Open gothub opened 3 years ago

gothub commented 3 years ago

Currently the index processor populates the 'resourceMap' field for each aggregated object in a resource map based on the cito:documents relationship, putting the resource map id in that field.

This approach doesn't work for metadata only packages, where there are no objects that have the 'cito:documents' field. Client software such as the dataone R package add a self-refering 'cito:documents' relationship for the metadata object, so that the link from the Solr doc for the metadata object back to the resource map is made.

An approach that we should consider is to use the 'ore:isAggregatedBy' relationship to identify all the package members that should have the resourceMap field populated, because for metadata-only packages, this relationship is present, as the ORE spec requires.

Things to consider with this change: