Articoli di un determinato anno
Filtro: articoli (tipologia ministeriale 262) del 2009
Campi visualizzati: handle, concatenazione degli autori, tipologia referee.
Tipologia di metadati da estrarre: master (metadati in modifica, non necessariamente approvati)
select
I.HANDLE,
CON.CON_PEOPLE,
TY.TYPE_REFEREE
from ODS_L1_IR_ITEM_MASTER I
LEFT JOIN ODS_L1_IR_ITEM_DATE DA ON DA.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_TYPE TY ON TY.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_CONTRIBUTOR CON ON CON.ITEM_ID=I.ITEM_ID
WHERE DA.DATE_ISSUED_YEAR=2009 AND TY.TYPE_MIUR_ID=262
N.B.: Per utilizzare invece i metadati in versione “più validati” (visualizzati in bi) è sufficiente partire dalla ODS_L1_IR_ITEM_MOST_VALIDATED al posto della ODS_L1_IR_ITEM_MASTER
Articoli di un determinato dipartimento
Filtro: articoli (tipologia ministeriale 262) con autori del “Dipartimento X”. Il dipartimento va individuato in base all’afferenza corrente dei contributor.
Campi visualizzati: handle, cognome autore, nome autore, codice fiscale
Tipologia di metadati da estrarre: più validati
select
I.HANDLE,
COP.LAST_NAME , COP.FIRST_NAME, COP.CODICE_FISCALE
from ODS_L1_IR_ITEM_MOST_VALIDATED I
LEFT JOIN ODS_L1_IR_ITEM_TYPE TY ON TY.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_CON_PERSON COP ON COP.ITEM_ID=I.ITEM_ID AND COP.QUALIFIER='people'
WHERE TY.TYPE_MIUR_ID=262 AND COP.RM_PERSON_ID IN (
SELECT RM_PERSON_ID FROM ODS_L1_RM_PERSON_POSITION_CUR WHERE ORG_UNIT_DES='Dipartimento X'
)
Conteggio Pubblicazioni, raggruppate per tipologia e dipartimento
Filtro: Il dipartimento va individuato in base all’ultima afferenza dei contributor.
Campi visualizzati: tipologia, dipartimento, conteggio pubblicazioni, conteggio contributi
Tipologia di metadati da estrarre: più validati
select
coalesce(DEP.ORG_UNIT_DES,'N.D.') department,
coalesce(TY.TYPE_MIUR_DES,'N.D.') type_miur_des,
COUNT(DISTINCT I.ITEM_ID) ITEM_COUNT,
COUNT(DISTINCT COP.RM_PERSON_ID) CONTRIBUTOR_COUNT
from ODS_L1_IR_ITEM_MOST_VALIDATED I
LEFT JOIN ODS_L1_IR_ITEM_TYPE TY ON TY.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_CON_PERSON COP ON COP.ITEM_ID=I.ITEM_ID AND COP.QUALIFIER='people'
LEFT JOIN ODS_L1_RM_PERSON_POSITION_LAST DEP ON DEP.RM_PERSON_ID=COP.RM_PERSON_ID AND DEP.ORG_UNIT_TYPE_DES='department'
GROUP BY
coalesce(DEP.ORG_UNIT_DES,'N.D.'),
coalesce(TY.TYPE_MIUR_DES,'N.D.')
N.B.
è necessario il “DISTINCT I.ITEM_ID” siccome vogliamo contare 1 sola volta la pubblicazione con 2 o più autori sullo stesso dipartimento. Se una pubblicazione ha due o più autori su N dipartimenti, verrà contata N volte
è necessario il “DISTINCT COP.RM_PERSON_ID” per il conteggio dei contributi, in quanto il join su “ODS_L1_RM_PERSON_POSITION_LAST” potrebbe duplicare le righe dei contributi (per autori che hanno più position attive sullo stesso dipartimento, come assegnista e come dottorando ad es.)
Pubblicazioni di Docenti e Ricercatori, con indicazione del dipartimento, ruolo e area dell’autore
Filtro: Il dipartimento, area e ruolo vanno individuati in base all’ultima afferenza dei contributor.
Campi visualizzati: handle, titolo, dipartimento, ruolo, area
Tipologia di metadati da estrarre: più validati
select
DISTINCT
i.handle,i.title,
COP.LAST_NAME , COP.FIRST_NAME,
ROLE_.ROLE_DES,
DEP.ORG_UNIT_DES DEPARTMENT,
AREA.ORG_UNIT_DES AREA
from ODS_L1_IR_ITEM_MOST_VALIDATED I
LEFT JOIN ODS_L1_IR_ITEM_TYPE TY ON TY.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_CON_PERSON COP ON COP.ITEM_ID=I.ITEM_ID AND COP.QUALIFIER='people'
LEFT JOIN ODS_L1_RM_PERSON_ROLE_LAST ROLE_ ON ROLE_.RM_PERSON_ID=COP.RM_PERSON_ID AND ROLE_.ROLE_DISCRIMINATOR='research'
LEFT JOIN ODS_L1_RM_PERSON_POSITION_LAST DEP ON DEP.RM_PERSON_ID=COP.RM_PERSON_ID AND DEP.ORG_UNIT_TYPE_DES='department' and DEP.RM_ROLE_ID=ROLE_.RM_ROLE_ID
LEFT JOIN ODS_L1_RM_PERSON_POSITION_LAST AREA ON AREA.RM_PERSON_ID=COP.RM_PERSON_ID AND AREA.ORG_UNIT_TYPE_DES='academicArea' and AREA.RM_ROLE_ID=ROLE_.RM_ROLE_ID
where ROLE_.ROLE_DES IN ('Docente di I Fascia','Docenti di II Fascia','Ricercatori')
Pubblicazioni di un determinato anno, con estrazione di metadato personalizzato in input-form
Filtro: tutte le pubblicazioni
Campi visualizzati: handle, concatenazione degli autori, metadato indicato in input-form di tipo dc.type.custom (metadato non ripetibile)
Tipologia di metadati da estrarre: master (metadati in modifica, non necessariamente approvati)
select
I.HANDLE,
CON.CON_PEOPLE,
TYPE_CUSTOM.STRING_VALUE TYPE_CUSTOM
from ODS_L1_IR_ITEM_MASTER I
LEFT JOIN ODS_L1_IR_ITEM_DATE DA ON DA.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_CONTRIBUTOR CON ON CON.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L0_IR_ITEM_TYPE TYPE_CUSTOM ON TYPE_CUSTOM.ITEM_ID=I.ITEM_ID AND TYPE_CUSTOM.ELEMENT='type' AND TYPE_CUSTOM.QUALIFIER='custom' AND TYPE_CUSTOM.PLACE=1
N.B:
essendo il type.custom non ripetibile in IR il metadato viene salvato con PLACE=1. Nel caso in cui fosse ripetibile, è necessario rimuovere la condizione ed utilizzare funzioni di aggregazioni oracle (listagg)
type.custom viene salvato nella tabella ITEM_TYPE essendo l’element=type. Se l’element fosse diverso (ad es. dc.ateneo.custom) allora il metadato verrebbe salvato in ITEM_DATA
Allegati delle pubblicazioni, con tutte le informazioni sugli allegati
Filtro: tutte le pubblicazioni
Campi visualizzati: handle, tipologia fulltext (open, embargoed, etc), informazioni sugli allegati
Tipologia di metadati da estrarre: master (metadati in modifica, non necessariamente approvati)
select
I.HANDLE,
DES.DES_FULLTEXT,
FULLTEXT.*
from ODS_L1_IR_ITEM_MASTER I
JOIN ODS_L1_IR_ITEM_FULLTEXT FULLTEXT ON FULLTEXT.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_ITEM_DESCRIPTION DES ON DES.ITEM_ID=I.ITEM_ID
Articoli con indicazione della rivista su cui sono pubblicati e altre informazioni ricavate da ANCE e da ISI
Filtro: articoli
Campi visualizzati: handle, rivista, codice ance della rivista, issn, natura, editore della rivista, pagina iniziale, pagina finale, impact factor della rivista, impact factor a 5 anni della rivista
Tipologia di metadati da estrarre: master (metadati in modifica, non necessariamente approvati)
select
I.HANDLE,
RELATION.REL_ISPARTOFJOURNAL , RELATION.REL_ISPARTOFJOURNAL_ANCE,
JOURNAL.JOURNAL_ISSN , JOURNAL.JOURNAL_NATURE , JOURNAL.JOURNAL_PUBLISHER,
RELATION.REL_FIRSTPAGE , RELATION.REL_LASTPAGE,
WOS.WOS_JOU_IF, WOS.WOS_JOU_5YRIF
from ODS_L1_IR_ITEM_MASTER I
LEFT JOIN ODS_L1_IR_ITEM_RELATION RELATION ON RELATION.ITEM_ID=I.ITEM_ID
LEFT JOIN ODS_L1_IR_CRIS_JOURNAL JOURNAL ON JOURNAL.CRIS_ID=RELATION.REL_ISPARTOFJOURNAL_CRIS_ID
LEFT JOIN ODS_L1_IR_ITEM_WOS_CUR WOS ON WOS.ITEM_ID=I.ITEM_ID
Personale senza pubblicazioni
Filtro: personale attivo alla data odierna
Campi visualizzati: dipartimento, id persona, cognome, nome, codice fiscale, conteggio pubblicazioni
Tipologia di metadati da estrarre: master (metadati in modifica, non necessariamente approvati)
select * from (
select
DE.ORG_UNIT_DES,
PE.RM_PERSON_ID,
PE.LAST_NAME,PE.FIRST_NAME,
PE.CODICE_FISCALE,
COUNT(DISTINCT CON.ITEM_ID) COUNT_ITEM
from ODS_L1_RM_PERSON PE
LEFT JOIN ODS_L1_RM_PERSON_ROLE_CUR RO ON RO.RM_PERSON_ID=PE.RM_PERSON_ID
LEFT JOIN ODS_L1_RM_PERSON_POSITION_CUR DE ON DE.RM_PERSON_ID=RO.RM_PERSON_ID AND DE.RM_ROLE_ID=RO.RM_ROLE_ID AND DE.ORG_UNIT_TYPE_DES='department'
LEFT JOIN (
SELECT
CON.RM_PERSON_ID,I.ITEM_ID
FROM ODS_L1_IR_ITEM_MASTER I
JOIN ODS_L1_IR_ITEM_CON_PERSON CON ON CON.ITEM_ID=I.ITEM_ID
) CON ON CON.RM_PERSON_ID=PE.RM_PERSON_ID
WHERE RO.ROLE_DES IN ('Docenti di ruolo di Ia fascia','Docenti di ruolo di IIa fascia','Ricercatori')
GROUP BY DE.ORG_UNIT_DES,PE.RM_PERSON_ID,
PE.LAST_NAME,PE.FIRST_NAME,
PE.CODICE_FISCALE
) where COUNT_ITEM=0
ODS_L1_IR_ITEM_MOST_VALIDATED
La vista contiene la versione “più validata” dell’item, ovvero soddisfa le seguenti condizioni:
- sono esclusi i ritirati [withdrawn=0];
- sono esclusi quelli in stato bozza/respinti [workflow_validation_status in (0, 1, 3, 4, 5)];
- la versione è quella “più pubblicata” [is_most_validated=1];
In questo caso non ha senso parlare di "riaperto" perché, per un prodotto "riaperto" viene automaticamente presa la versione più validata prima che il prodotto venisse riaperto.
La logica per il recupero della versione più pubblicata era quella presente in BI, ovvero tra più versioni viene scelta (in ordine di priorità la prima che viene trovata):
- la versione master in stato pubblicato (wf_validation_status 0 o 1);
- la versione snapshot in stato pubblicato (wf_validation_status 0 o 1);
- la versione più recente in stato workflow step 3 (wf_validation_status 5);
- la versione più recente in stato workflow step 2 (wf_validation_status 4);
- la versione più recente in stato workflow step 1 (wf_validation_status 3);