Proposta
In alcune situazioni possiamo decidere di tenere tutti gli ID in OpenAlex in ragione del fatto che:
- i loro dati contengono un errore, oppure
- i loro dati sono il frutto di una scelta di rappresentazione dei dati non compatibile con OCDM (in un mapping 1 a 1 per gli ID)
In altre situazioni l’errore potrebbe essere nostro, ma questi casi sono più difficili da individuare.
Nei casi in cui siamo “certi” (=abbiamo il forte sospetto) che i nostri dati sono giusti, teniamo tutto e basta (punti 1 e 3). Negli altri casi (punti 2, 4 e 5) bisogna fare dei controlli ulteriori per prendere delle decisioni ad-hoc.
- Ci sono 2 ID, uno per Source e uno per Work (per qualsiasi type di risorsa bibliografica). È normale nel loro data model, visto che il DOI lo associano solo a entità che sono registrate in Works, mentre usano ISSN (e ISSN-L) per le entità in Source. La situazione più probabile è che si tratti della stessa entità ma che venga “sdoppiata” con due identificativi a seconda del “ruolo” che viene interpretato per quella entità (cioè a seconda che sia Work o Source). Molto probabilmente, se si tratta della stessa entità per entrambi gli ID, la entry in Works ha l’entità corrispondente al Source OAID espressa come uno dei valori della proprietà
location
.
- Ci sono più di 2 ID in situazione mista (alcuni Work altri Source). Qui userei un controllo programmatico dei dati di OpenAlex e, se applicabile, di Crossref. Non mi sembra che ci sia una spiegazione generale da poter dare ai singoli casi. La soluzione alternativa sarebbe quella di stabilire una soglia numerica n entro la quale decidiamo (arbitrariamente) che tutti gli n OAID per un OMID corrispondono alla stessa entità; es., se gli OAID multi-mappati sono meno di 5, anceh se in situazione mista, li teniamo tutti senza altri controlli.
- Ci sono 2 o 3 ID, ma tutti per lo stesso tipo di entità (Work o Source). Si tratta di edizioni diverse della stessa entità. Nel caso in cui si tratti di Works, si può controllare anche attraverso l’API di Crossref, vedendo se i DOI interessati sono presenti tra i valori della proprietà
is-identical-to
.
- Ci sono n ID per lo stesso tipo di entità. Cosa facciamo? Qual è n?
- Ci sono millemila (più di 20) OAID per un singolo OMID. Sono casi rari, ma forse vale la pena controllare con soluzioni non manuali, per capire il perché avvenga questa cosa. Vedi ad esempio il caso in cui per l’OMID di un journal ci sono 153 OAID, di entrambi i tipi (però è abbastanza un outlier).
Soluzione concordata (2023/06/27)
Non teniamo mai più di 3 OpenAlex ID (OAID) per un OMID: se risultano più di 3 per una risorsa in Meta, semplicemente gli OAID vengono scartati (anche se parte di essi potrebbero potenzialmente essere mappati).
Sono particolarmente problematici i casi in cui ci sono sia OAID di Works che di Sources per una stessa risorsa; questi sono numericamente maggiori per books e journals (ma anche series sono interessate). Questo deriva dal fatto che una risorsa con type book/journal può avere assegnati sia un DOI (rappresentata quindi come Work) che un ISSN/ISBN (rappresentata quindi come Source).
La soluzione sta nel modificare il processo di mapping considerando esclusivamente:
- ISSN per i journals (e per gli altri types che possono avere un ISSN)
- ISBN per i books (e per gli altri types che possono avere un ISBN).
Quindi, anche se un journal/book ha un DOI (caso abbastanza frequente), questo DOI non viene considerato. Anche considerare il DOI in mancanza di un ISSN/ISBN crea troppi problemi: se una risorsa ha solo un DOI ma non un ISBN/ISSN, semplicemente non verrà mappata.