Gli ID delle entità in OA Sources sono i seguenti (evidenziati quelli che teniamo in considerazione per il mapping):
fatcat
issn
(List: a list of this source's ISSNs. Same as Source.issn
)issn_l
(String: this source's ISSN-L. Same as Source.issn_l
)mag
openalex
(String: this source's OpenAlex ID. Same as Source.id
)wikidata
(String: this source's Wikidata ID)In fase di creazione delle tabelle “supported_id → openalex_id”, solamente nel caso in cui per un’entità sia registrato un ISSN-L ma non sia presente nessun ISSN, l’ISSN-L viene registrato nella tabella come ISSN, cioè prefissati da “issn:”. Questo avviene perché:
Il workflow è lo stesso di quello per pre-processare la directory Works, l’unica cosa che cambia è la funzione che elabora (”riduce”) la singola riga del JSON-L che corrisponde all’entità (ho creato una nuova funzione per le Sources che funziona allo stesso modo di quella per i Works, si chiama reduce_oa_source_row
). Creare i CSV per le Sources ci mette molto di meno che creare quelle per i Works, perché i dati sono molti di meno.
Come per i Works, le tabelle sono caricate nel DB e indicizzate. La funzione per creare la tabella nel DB è stata modificata: ora ha come parametri, oltre al percorso della cartella con i CSV e al percorso del database, due stringhe in cui viene specificato il tipo di identificativo ['doi', 'pmid', 'pmcid', 'wikidata', 'issn']
) e il tipo di entità (['work', 'source']
).
Anche creare le tabelle del DB è un’operazione molto più veloce per le Sources che per i Works: meno di un secondo contro i 7-9 minuti delle tabelle con i Works.
Una volta che nel database ci sono tutte le tabelle per le BR (una per ogni tipo di identificativo di risorsa bibliografica), si può creare un unico mapping per tutte le risorse bibliografiche, indipendentemente dalla cartella in cui sono registrate in OpenAlex: ho modificato la funzione in modo che, in base al prefisso di ogni ID di BR in Meta, cerchi nella relativa tabella all’interno del DB.
Creare questi CSV di mapping, che quindi mappano agli OAID tutti gli OMID di br in Meta che è possibile mappare, impiega circa 8 ore e un quarto.