Descripción general

Esta función agrega a DSpace una detección básica de duplicados mediante la comparación de títulos de ítems normalizados en Solr, con una distancia de edición de Levenshtein, configurable que permite la coincidencia aproximada de posibles duplicados.

Los duplicados pueden buscarse a través de un paso de envío, con el fin de advertir a los depositantes o editores sobre posibles duplicados mientras editan los metadatos de un ítem en curso. También está disponible un nuevo enlace REST /duplicates que permite buscar y recuperar una lista paginada de posibles duplicados para cualquier ítem.

Los revisores o editores del flujo de trabajo también recibirán una advertencia en tareas reclamadas o asignadas al grupo (claimed y pooled tasks), indicando el número total de posibles duplicados detectados.

Esta función debe ser habilitada mediante configuración (ver más abajo). Está deshabilitada por defecto.

Al habilitar esta función por primera vez, es necesario realizar una reindexación completa de Discovery ejecutando: ${dspace.dir]/bin/dspace index-discovery -b.

Ejemplos de la visualización predeterminada de duplicados en el frontend de DSpace:

Vista previa de un posible duplicado durante la entrega de un ítem

Advertencia de 1 posible duplicado para una tarea asignada al grupo (pooled task).

Configuración

Configuración de la detección básica de duplicados

Para habilitar la detección básica de duplicados y configurar sus parámetros, edite el archivo $[dspace.dir}/config/modules/duplicate-detection.cfg y descomentar o ajustar las propiedades predeterminadas según corresponda.

A continuación se muestra la configuración predeterminada.

Property:

duplicate.enable

Example Value:

duplicate.enable = true

Informational Note:

This setting enables or disables the entire duplicate detection feature.  When changing the value you MUST reindex the site (./dspace index-discovery -b)

If the value is not true, any requests to the duplicate detection REST endpoints or section data will be an empty list (the search will not be performed) and item signatures will not be indexed.

Default: false

Property:

duplicate.signature.normalise.lowercase

Example Value:

duplicate.signature.normalise.lowercase = false

Informational Note:

Specifies whether the metadata used in the fuzzy match for duplicates should be lowercased at index and query time.

This is recommended to help keep the edit distance used in fuzzy search predictable and in line with typical user expectations.

Default: true

Property:

duplicate.signature.normalise.whitespace

Example Value:

duplicate.signature.normalise.whitespace = false

Informational Note:

Specifies whether the metadata used in the fuzzy match for duplicates should have all whitespace stripped at index and query time.

This is recommended to help keep the edit distance used in fuzzy search predictable and in line with typical user expectations.

Default: true

Property:

duplicate.signature.distance

Example Value:

duplicate.signature.distance = 2

Informational Note:

Specifies the maximum edit distance between the two item "signatures" (normalised titles). This value is appended to the Solr term query with the ~ operator.

For more information see https://en.wikipedia.org/wiki/Levenshtein_distance

A distance of 0 is an exact match (not including any case or whitespace differences as per normalisation rules above)

Default: 0

Property:

duplicate.signature.field

Example Value:

duplicate.signature.field = item_signature

Informational Note:

Specifies the Solr field name to use when indexing the normalised value for fuzzy duplicate matching. This field name should end in signature to ensure that the expected Solr schema field type and rules are used.

It is not recommended to change this field name.

Default: item_signature

Property:

duplicate.preview.metadata.field

Example Value:

duplicate.preview.metadata.field = dc.title

duplicate.preview.metadata.field = dc.date.issued

Informational Note:

Specifies the item metadata field(s) to include in the duplicate match object, which will be displayed to users. Customise this list of fields to suit your preferences and metadata privacy requirements.

Default: 

duplicate.preview.metadata.field = dc.title

duplicate.preview.metadata.field = dc.date.issued

duplicate.preview.metadata.field = dc.type

duplicate.preview.metadata.field = dspace.entity.type

Para mostrar vistas previas de posibles duplicados durante el envío de ítems, deberá habilitar el paso según se indica a continuación

Configuración de la detección básica de duplicados en el envío de ítems

Para incluir una sección en el flujo de envío que muestre una lista de posibles duplicados a los depositantes y editores de ítems:

Por defecto, el paso "Basic Duplicate Detection" está deshabilitado. Para habilitarlo, simplemente actualice su item-submission.xml e incluya la siguiente etiqueta dentro del bloque <submission-process>:

<submission-process name= "traditional" >
<!-- This step enables preview of potential duplicates for the in-progress item -->
<step id= "duplicates" />

...

</submission-process>

Después de realizar esta actualización, deberá reiniciar el backend (REST API) para que los cambios surtan efecto.

También deberá habilitar la funcionalidad general de detección básica de duplicados en la configuración de DSpace, como se indicó anteriormente.