Groups keyboard shortcuts have been updated
Dismiss
See shortcuts

How to find out which authors on a paper are from my institution?

98 views
Skip to first unread message

Matthijs de Zwaan

unread,
Apr 18, 2024, 7:36:46 AM4/18/24
to OpenAlex Community
Hi all
Is there a way to find out which authors on a paper are from my institution? I downloaded a list of DOI's from the website, and thought naively that I could look up the index of my institution (by 'author_institution_ids' or by 'author_institution_names') and then match that index to the list of authors. But soon found out that those indices don't match because any author can have list multiple affiliations. Any ideas?

Thanks!
Matthijs

Kevin Leonard

unread,
Apr 18, 2024, 8:07:44 AM4/18/24
to OpenAlex Community
Hi Matthijs,

This is something I'm keenly interested in doing as well, and I know that it is at least possible using the API and a little extra data manipulation on the side. There's probably a more efficient way, but I query OpenAlex with my institution's ROR to get a list of articles for my institution. Then for each article, go through each author and iterate through their listed affiliations, comparing the ones listed against the ROR used to query. Then you can just augment your list of DOIs with the names (or ORCIDS) of your affiliated authors.

Best,
Kevin

Donny Winston

unread,
Apr 18, 2024, 9:45:15 AM4/18/24
to OpenAlex Community
I like <https://semopenalex.org>, which maps openalex data for graph-oriented queries. Is this query what you had in mind? It retrieves (182,498) works authored by at least one author from your institution, and lists all your-institution authors for each work.

```sparql
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX xsd: <http://www.w3.org/2001/XMLSchema#>
PREFIX dcterms: <http://purl.org/dc/terms/>
PREFIX org: <http://www.w3.org/ns/org#>
PREFIX soa: <https://semopenalex.org/ontology/>
PREFIX skos: <http://www.w3.org/2004/02/skos/core#>

SELECT ?work (GROUP_CONCAT(?author) as ?authors) WHERE {
  ?inst a soa:Institution .
  ?inst foaf:name ?instName .
  FILTER(?instName = "Vrije Universiteit Amsterdam")
  ?author org:memberOf ?inst .
  ?work dcterms:creator ?author .
}
GROUP BY ?work
```

Best,
Donny

Samuel Mok

unread,
Apr 18, 2024, 9:52:39 AM4/18/24
to Kevin Leonard, OpenAlex Community
I also do something similar - a bit more elaborate but the same principle: I requestall the papers linked to my institution, store all the responses locally, then iterate over works -> authorships -> affiliations to find all matches. For my use case, I then copy the openalex id for each author (also helps with deduplication), and then use the openalex api to retrieve all available data for these authors in batches of 50.
In python-esque code:

image.png

Cheers,
Samuel
--
You received this message because you are subscribed to the Google Groups "OpenAlex Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openalex-commun...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openalex-community/a2c63af4-7e0c-4afa-9479-d80ca5db8632n%40googlegroups.com.

Matthijs de Zwaan

unread,
Apr 21, 2024, 3:59:19 PM4/21/24
to OpenAlex Community
Thank you all for your suggestions! Very helpful, and was unaware of SemOpenAlex until now.

Matthijs

Op donderdag 18 april 2024 om 15:52:39 UTC+2 schreef Samuel Mok:
Reply all
Reply to author
Forward
0 new messages