Compare commits

..

No commits in common. "main" and "v5.1.3" have entirely different histories.
main ... v5.1.3

1471 changed files with 756 additions and 83692 deletions

View File

@ -1,308 +0,0 @@
# Guide for authenticated requests
The OpenAIRE APIs can be accessed over HTTPS both by authenticated and non authenticated requests.
You can use authenticated requests to increase the rate limit of your requests (please refer [here](./terms#authentication--limits) for the current API rate limits).
There are 2 main modes that you can use to authenticate API requests:
* [Personal access tokens](#personal-access-token)
* [Registered services](#registered-services)
In the following, we elaborate on these modes.
## Personal access token
To access the OpenAIRE APIs with better rate limits you can use your personal access token. To have access to the following functionalities you need to login to OpenAIRE. In case you are not already a member you will need to register first and provide your [Personal information](https://develop.openaire.eu/personal-info).
:::info New!
The registration process has been updated! In order to visit the Personal Token and Registered Services functionalities you need to fill in the Personal Information form available [here](https://develop.openaire.eu/personal-info). This update will not affect the operation of your existing services. However, if you want to register a new service or access/modify an existing one, you will need to provide your personal information first.
:::
### How to create your personal access token
To create your personal access token go to [your personal access token page](https://develop.openaire.eu/personal-token) and copy it!
:::info
Your access token is valid for an hour.
:::
:::caution
Do not share your personal access token. Send your personal access token over HTTPS.
:::
### How to use your personal access token
To access the OpenAIRE APIs send your personal access token using the Authorization header.
```js
GET https://api.openaire.eu/{resourceServicePath}
Authorization: Bearer {ACCESS_TOKEN}
```
### An hour is not enough? What to do.
To prolong your access to our APIs you can use a **refresh token** that allows you to programmatically issue a new access token.
To get your refresh tokeng go to [your personal access token page](https://develop.openaire.eu/personal-token) and click the **"Get a refresh token"** button to get your refresh token.
OpenAIRE refresh token expires after 1 month.
In case you already have a refresh token a new one will be issued and the old one will no longer be valid.
Please copy your refresh token and store it confidentially. You will not be able to retrieve it. Do not share your refresh token. Send your refresh token over HTTPS.
Since the OpenAIRE refresh token expires after one month, when a client gets a refresh token, this token must be stored securely to keep it from being used by potential attackers. If a refresh token is leaked, it may be used to obtain new access tokens and access protected resources until a new one is issued or it expires.
To get a personal access token using your refresh token you need to make the following request:
```js
GET https://services.openaire.eu/uoa-user-management/api/users/getAccessToken?refreshToken={your_refresh_token}
```
The response has the following format:
```json
{
"access_token": "...",
"token_type": "Bearer",
"refresh_token": "...",
"expires_in": "...",
"scope": "...",
"id_token": "..."
}
```
## Registered services
If you have a service (client) that you want to interact with the OpenAIRE APIs you need to register it.
:::info
You can register up to 5 services.
:::
We offer two ways of authenticting your service: the Basic Authentication and the Advanced Authentication.
### Which one is for me?
| | How | Client Credential Issuer | Authentication Method |
| --- | --- | --- | --- |
| **Basic** | Client ID & Client Secret | OpenAIRE AAI server | Client Secret (Basic) |
| **Advanced** | Private Key signed JWT | Service owner | Private Key JWT Client Authentication |
For the **Basic Authentication** method the OpenAIRE AAI server generates a pair of _Client ID_ and _Client Secret_ credentials for your service upon its registration. The service sends the client id and client secret when authenticating to the OpenAIRE AAI Server to obtain the access token for the OpenAIRE APIs. The OpenAIRE AAI server checks whether the client id and client secret sent is valid. [Continue reading for the Basic Authentication](#basic-service-authentication-and-registration).
For the **Advanced Authentication** method your service does not send a client secret but it uses a _self signed client assertion_ to authenticate to the OpenAIRE AAI server in order to obtain the access token for the OpenAIRE APIs. The client assertion is a JWT that must be signed with RSASSA using SHA-256 hash algorithm. The OpenAIRE AAI server validates the client assertion using the public key that you have provided upon the service registration. [Continue reading for the Advanced Authentication](#advanced-service-authentication-and-registration).
:::info
The Advanced Authentication method allows the OpenAIRE AAI server to verify that the client authentication request at the token endpoint was signed by your service and not altered in any way. This is more computation intensive compared to the Basic Authentication but it ensures non-repudiation. On the other hand, the Basic Authentication is more lightweight and easy to deploy but it does not provide signature verification, and there is always a possibility of the Client ID/secret credentials being stolen. Note that tThe Advanced authentication method gives a higher level of security to the process as long as it is used correctly, i.e. when the signed JWT has a short duration. When the duration of the JWT is long, the process is no different from the basic one.
:::
### Basic service authentication and registration
To have access to the following functionalities you need to login to OpenAIRE. In case you are not already a member you will need to register first and provide your [Personal information](https://develop.openaire.eu/personal-info).
:::info New!
The registration process has been updated! In order to visit the Personal Token and Registered Services functionalities you need to fill in the Personal Information form available [here](https://develop.openaire.eu/personal-info). This update will not affect the operation of your existing services. However, if you want to register a new service or access/modify an existing one, you will need to provide your personal information first.
:::
For the **Basic Authentication** method the OpenAIRE AAI server generates a pair of _Client ID_ and _Client Secret_ for your service upon its registration. The service uses the client id and client secret to obtain the access token for the OpenAIRE APIs. The OpenAIRE AAI server checks whether the client id and client secret sent is valid.
#### How to register your service
To register your service you need to:
1. Go to your [Registered Services](https://develop.openaire.eu/apis) page and click the **\+ New Service** button.
2. Provide the mandatory information for your service.
3. Select the **Basic** Security level.
4. Click the **Create** button.
Once your service is created, the _Client ID_ and _Client Secret_ will appear on your screen. Click "OK" and your new service will be appear in the list of your [Registered Services](https://develop.openaire.eu/apis) page.
#### How to make a request
##### Step 1. Request for an access token
To make an access token request use the _Client ID_ and _Client Secret_ of your service.
```js
curl -u {CLIENT_ID}:{CLIENT_SECRET} \
-X POST 'https://aai.openaire.eu/oidc/token' \
-d 'grant_type=client_credentials'
```
where **{CLIENT_ID}** and **{CLIENT_SECRET}** are the _Client ID_ and _Client Secret_ assigned to your service upon registration.
The response is:
```json
{
"access_token": ...,
"token_type": "Bearer",
"expires_in": ...
}
```
Store the access token confidentially on the service side.
##### Step 2. Make a request
To access the OpenAIRE APIs send the access token returned in **Step 1**.
```js
GET https://api.openaire.eu/{resourceServicePath}
Authorization: Bearer {ACCESS_TOKEN}
```
### Advanced service authentication and registration
To have access to the following functionalities you need to login to OpenAIRE. In case you are not already a member you will need to register first and provide your [Personal information](https://develop.openaire.eu/personal-info).
:::info New!
The registration process has been updated! In order to visit the Personal Token and Registered Services functionalities you need to fill in the Personal Information form available [here](https://develop.openaire.eu/personal-info). This update will not affect the operation of your existing services. However, if you want to register a new service or access/modify an existing one, you will need to provide your personal information first.
:::
For the **Advanced Authentication** method your service does not send a client secret but it uses a _self signed client assertion_ to obtain the access token for the OpenAIRE APIs. The client assertion is a JWT that must be signed with RSASSA using SHA-256 hash algorithm. The OpenAIRE AAI server validates the client assertion using the public key that you have provided upon the service registration.
#### Prepare to register your service
Before you register your service you need to prepare a pair of a private key and a public key on your side.
:::info
We accept keys signed with RSASSA using SHA-256 hash algorithm.
:::
To create the key pair you have the following options:
* Use OpenAIRE authorization server built in tool. You can access the service here: [https://aai.openaire.eu/oidc/generate-oidc-keystore](https://aai.openaire.eu/oidc/generate-oidc-keystore).
The response is your **Public and Private Keypair** and has the following format:
```json
{
"p" : ...,
"kty" : "RSA",
"q" : ...,
"d" : ...,
"e" : "AQAB",
"kid" : ...,
"qi" : ...,
"dp" : ...,
"alg" : "RS256",
"dq" : ...,
"n" : ....
}
```
Use the public key parameters (kty, e, kid, alg, n) to create your **Public Key** in the following format:
```json
{
"kty": "RSA",
"e": "AQAB",
"kid": ...,
"alg": "RS256",
"n": ...
}
```
:::info
Store both the **Public and Private keypair** and the **Public key**. You will need them to register your service.
:::
:::caution
Store the **Public and Private keypair** confidentially on the service side.
:::
* Use openssl and then convert the keys to jwk format using PEM to JWK scripts, such as [https://github.com/danedmunds/pem-to-jwk](https://github.com/danedmunds/pem-to-jwk). Alternatively, the client application can read the key pair in PEM format and then convert them, using JWK libraries. Use the public key parameters (kty, e, kid, alg, n) to the service registration.
:::info
You can also provide a public key in JWK format that can be accessed using a link.
:::
#### How to register your service
To register your service you need to:
1. Go to your [Registered Services](https://develop.openaire.eu/apis) page and click the **\+ New Service** button.
2. Provide the mandatory information for your service.
3. Select the **Advanced** Security level.
4. Use the public key parameters (kty, e, kid, alg, n) you previously produced to declare your **"Public Key"** **"By value"** in the following format:
```json
{
"kty": "RSA",
"e": "AQAB",
"kid": ...,
"alg": "RS256",
"n": ...
}
```
**\- OR -**
If your service has a public key in JWK format that can be accessed using a link, you can set **“Public Key”** to **“By URL”**.
5. Click the **Create** button.
Once your service is created it will appear in the list of your [Registered Services](https://develop.openaire.eu/apis) page, with the **Service Id** that was automatically assigned to it by the AAI OpenAIRE service.
#### How to make a request
##### Step 1. Create and sign a JWT
Your service must create and sign a JWT and include it in the request to token endpoint as described in the [OpenID Connect Core 1.0, 9. Client Authentication](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication).
To create a JWT you can use [https://mkjose.org/](https://mkjose.org/). To do so you need to create a **payload** that should contain the following claims:
```json
{
"iss": "{SERVICE_ID}",
"sub": "{SERVICE_ID}",
"aud": "https://aai.openaire.eu/oidc/token",
"jti": "{RANDOM_STRING}",
"exp": {EXPIRATION_TIME_OF_SIGNED_JWT}
}
```
* **iss**, _(required)_ the “issuer” claim identifies the principal that issued the JWT. The value is the **Service Id** that was created when you registered your service.
* **sub**, _(required)_ the “subject” claim identifies the principal that is the subject of the JWT. The value is the **Service Id** that was created when you registered your service.
* aud, _(required)_ the “audience” claim identifies the recipients that the JWT is intended for. The value is **https://aai.openaire.eu/oidc/token**>.
* **jti**, _(required)_ The “JWT ID” claim provides a unique identifier for the JWT. The value is a random string.
* **exp**, _(required)_ the “expiration time” claim identifies the expiration time on or after which the JWT **MUST NOT** be accepted for processing. The value is a timestamp in **epoch format**.
Fill in the payload in the form available at [https://mkjose.org/](https://mkjose.org/), select the Signing Algorithm to be **RS256 using SHA-256** and paste the **Public and Private Keypair** previously created.
To check your JWT you can go to [https://jwt.io/](https://jwt.io/). The **header** should contain the following claims:
```json
{
"alg": "RS256",
"kid": ...
}
```
where **kid** is the one of your **Public and Private Keypair** you used to sign the JWT in **Step 1**.
:::caution
Store the signed key confidentially on the service side. You will need it in Step 2.
:::
##### Step 2. Request for an access token
To make an access token request use the _signed JWT_ that you created in **Step 1**. The OpenAIRE AAI server will check if the signed JWT is valid using the public key that you declared in the **"How to register your service"** process.
```js
curl -k -X POST "https://aai.openaire.eu/oidc/token" \
-d "grant_type=client_credentials" \
-d "client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer" \
-d "client_assertion={signedJWT}"
```
where **{signedJWT}** is the signed JWT created in **Step 1**.
The response is:
```json
{
"access_token": {ACCESS_TOKEN}
"token_type":"Bearer",
"expires_in": ...,
"scope":"openid"
}
```
Store the access token confidentially on the service side.
##### Step 3. Make a request
To access the OpenAIRE APIs send the access token returned in **Step 2**.
```js
GET https://test.openaire.eu/{resourceServicePath}
Authorization: Bearer {ACCESS_TOKEN}
```

View File

@ -1,50 +0,0 @@
# Broker API
## Introduction
The Broker Service is available to use via the OpenAIRE Content Provider Dashboard. Thanks to the Broker, repositories, publishers or aggregators can exchange metadata and enrich their local metadata collection by subscribing to notifications of different types. The Broker is able to notify providers when the OpenAIRE Graph contains information that is not available in the original collection of the data source. In particular, the data source manager can subscribe via the [Content Provider Dashboard](https://provide.openaire.eu) and be notified about:
* Additional PIDs of its publications (e.g. DOIs)
* Links to projects
* ORCID that can be associated to an author of datasource publications
* Links to Open Access versions
* Additional classification subjects (e.g. subjects from standard schemes like ACM, JEL and DDC)
* Abstracts identified in duplicate publications
* Missing publication dates
All Repository managers approaching the Content Provider Dashboard will be offered the possibility to preview a set of enrichments relative to their repository that OpenAIRE can derive from the Graph. More specifically, enrichments will be organized into categories named topics and representing the different types of enrichments OpenAIRE can build. For each topic the preview consists of 100 “enrichment events”, a subset of all the possible enrichments pertinent to a given repository in the OpenAIRE Graph, that the user can explore by applying filters on different criteria and the total number of events that can be potentially built is highlighted in the UI. Repository managers can create subscriptions for specific topics and that include the filtering criteria they used to analyze the enrichments preview, or can subscribe to all the available topics with no restrictions at once. Once the repository manager creates a subscription, the algorithm analyzing the OpenAIRE Graph will produce the full set of enrichments for the manager's repository, possibly far beyond the 100 enrichments available in the preview. The enrichments will be made available as notifications in a dedicated section in the Content Provider Dashboard UI to be further checked as well as through the broker service API for programmatic access. Notifications will be sent to subscribers every time the OpenAIRE Graph will be updated and analyzed to derive the enrichments.
## Usage Example
The following commands indicate how the broker API documented at [api.openaire.eu/broker](https://api.openaire.eu/broker/swagger-ui/index.html) can be used to access the set of enrichments:
1. Get the list of subscriptions for a given subscriber, e.g.
```js
curl -X GET --header 'Accept: application/json' 'https://api.openaire.eu/broker/subscriptions?email=[subscriber_email]'
```
2. Extract the subscription ID and use it to access the 1st page of enrichment notification records
```js
curl -X GET --header 'Accept: application/json' 'https://api.openaire.eu/broker/scroll/notifications/bySubscriptionId/[sub-1234]'
```
3. Extract the scroll ID from the response to request subsequent pages
```js
curl -X GET --header 'Accept: application/json' 'https://api.openaire.eu/broker/scroll/notifications/[scroll_id]'
```
To simplify accessing the enrichment notification records, please check the OpenAIRE broker cmdline client available on [GitHub](https://github.com/openaire/broker-cmdline-client).
## Terms of Use and SLA
APIs are free-to-use (no sign-up needed) by any third-party service
**Metadata license is CC-BY**: the metadata records retuned by the service can be freely re-used by commercial and non-commercial partners under CC-BY license, hence as long as OpenAIRE is acknowledged as data source.
**Quality of Service**: all API services are running in production 24/7 within the OpenAIRE infrastructure premises deployed at the [data center](http://icm.edu.pl/en/centre-of-technology/) facilities of the [Interdisciplinary Centre for Mathematical and Computational Modelling](http://icm.edu.pl/en/) (ICM).
**APIs rate limits**: please check [here](./authentication).

View File

@ -1,61 +0,0 @@
# Dspace & EPrints API
<!-- Bulk access to projects -->
The APIs offer custom access to metadata about projects funded by a selection of international funders for the **DSpace** and **EPrints** platforms. The currently supported funders and relative codes are:
* **FP7:** The 7th Framework Programme funded by the European Commission
* **H2020:** Horizon2020 Programme funded by the European Commission
* **HE:** Horizon Europe Programme funded by the European Commission
* **AKA:** Academy of Finland
* **ARC:** Australian Research Council
* **FWF:** Austrian Science Foundation
* **CHISTERA:** CHIST-ERA
* **CIHR:** Canadian Institutes of Health Research
* **HRZZ:** Croatian Science Foundation
* **EEA:** European Environemnt Agency
* **ANR:** French National Research Agency
* **FCT:** The funding programme of Fundação para a Ciência e a Tecnologia, the national funding agency of Portugal
* **MESTD:** The Ministry of Education, Science and Technological Development of Serbia
* **MZOS:** Ministry of Science, Education and Sports of the Republic of Croatia
* **NHMRC:** Australian National Health and Medical Research Council
* **NIH:** US National Institutes of Health
* **NSF:** US National Science Foundation
* **NSERC:** Natural Sciences and Engineering Research Council of Canada
* **NWO:** The Netherlands Organisation for Scientific Research
* **SFI:** Science Foundation Ireland
* **SSHRC:** Social Sciences and Humanities Research Council
* **SNSF:** Swiss National Science Foundation
* **TARA:** Tara Expeditions Foundation
* **TUBITAK:** The National funder of Turkey
* **UKRI:** United Kingdom Research and Innovation
* **WT:** Wellcome Trust
## DSpace/ePrints
DSpace endpoint: http://api.openaire.eu/projects/dspace/$fundingStream/ALL/ALL
ePrints endpoint: http://api.openaire.eu/projects/eprints/$fundingStream/ALL/ALL
The URLs embed the parameters needed to collect projects funded by specific funding stream, where the pattern is FundingStream/FundingSubStream/FundingSubSubStream.
Additional parameters can be concatenated to the URL to refine the results by date (date must be in the form `YYYY-MM-DD`):
* startFrom
* startUntil
* endFrom
* endUntil
## Examples
Get Wellcome Trust projects for EPrints: [http://api.openaire.eu/projects/eprints/WT/ALL/ALL](http://api.openaire.eu/projects/eprints/WT/ALL/ALL)
Get EC-FP7 projects of the specific programme “SP2-IDEAS” for EPrints: [http://api.openaire.eu/projects/eprints/FP7/SP2/ALL](http://api.openaire.eu/projects/eprints/FP7/SP2/ALL)
Get EC-FP7 projects for DSpace that started after the given date: [http://api.openaire.eu/projects/dspace/FP7/ALL/ALL?startFrom=2011-01-01](http://api.openaire.eu/projects/dspace/FP7/ALL/ALL?startFrom=2011-01-01).
## Terms of Use and SLA
APIs are free-to-use (no sign-up needed) by any third-party service.
**Metadata license is CC-BY**: the metadata records retuned by the service can be freely re-used by commercial and non-commercial partners under CC-BY license, hence as long as OpenAIRE is acknowledged as data source.
**Quality of Service**: all API services are running in production 24/7 within the OpenAIRE infrastructure premises deployed at the [data center](http://icm.edu.pl/en/centre-of-technology/) facilities of the [Interdisciplinary Centre for Mathematical and Computational Modelling](http://icm.edu.pl/en/) (ICM).
**APIs rate limits**: please check [here](./authentication).

View File

@ -1,50 +0,0 @@
# Getting a single entity
This is a guide on how to retrieve detailed information on a single entity using the OpenAIRE Graph API.
## Endpoints
Currently, the Graph API supports the following entity types:
- Research products - endpoint: `GET /researchProducts/{id}`
- Organizations - endpoint: `GET /organizations/{id}`
- Data sources - endpoint: `GET /dataSources/{id}`
- Projects - endpoint: `GET /projects/{id}`
You can retrieve the data of a single entity by providing the entity's OpenAIRE identifier (id) in the corresponding endpoint.
The OpenAIRE id is the primary key of an entity in the OpenAIRE Graph.
:::note
Note that if you want to retrieve multiple entities based on their OpenAIRE ids, you can use the [search endpoints and filter](./searching-entities/filtering-search-results.md#or-operator) by the `id` field using `OR`.
:::
## Response
The response of the Graph API is a [Research product](../../data-model/entities/research-product.md), [Organization](../../data-model/entities/organization.md), [Data Source](../../data-model/entities/data-source.md), or [Project](../../data-model/entities/project.md), depending on the endpoint used.
## Example
In order to retrieve the research product with OpenAIRE id: `doi_dedup___::2b3cb7130c506d1c3a05e9160b2c4108`,
you have to perform the following API call:
[https://api-beta.openaire.eu/graph/researchProducts/doi_dedup___::a55b42c0d32a4a24cf99e621623d110e](https://api-beta.openaire.eu/graph/researchProducts/doi_dedup___::a55b42c0d32a4a24cf99e621623d110e)
This will return all the data of the research product with the provided identifier:
```json
{
id: "doi_dedup___::a55b42c0d32a4a24cf99e621623d110e",
mainTitle: "OpenAIRE Graph Dataset",
description: [
"The OpenAIRE Graph is exported as several dataseta, so you can download the parts you are interested into. <strong>publication_[part].tar</strong>: metadata records about research literature (includes types of publications listed here)<br> <strong>dataset_[part].tar</strong>: metadata records about research data (includes the subtypes listed here) <br> <strong>software.tar</strong>: metadata records about research software (includes the subtypes listed here)<br> <strong>otherresearchproduct_[part].tar</strong>: metadata records about research products that cannot be classified as research literature, data or software (includes types of products listed here)<br> <strong>organization.tar</strong>: metadata records about organizations involved in the research life-cycle, such as universities, research organizations, funders.<br> <strong>datasource.tar</strong>: metadata records about data sources whose content is available in the OpenAIRE Graph. They include institutional and thematic repositories, journals, aggregators, funders' databases.<br> <strong>project.tar</strong>: metadata records about project grants.<br> <strong>relation_[part].tar</strong>: metadata records about relations between entities in the graph.<br> <strong>communities_infrastructures.tar</strong>: metadata records about research communities and research infrastructures Each file is a tar archive containing gz files, each with one json per line. Each json is compliant to the schema available at http://doi.org/10.5281/zenodo.8238874. The documentation for the model is available at https://graph.openaire.eu/docs/data-model/ Learn more about the OpenAIRE Graph at https://graph.openaire.eu. Discover the graph's content on OpenAIRE EXPLORE and our API for developers."
],
type: "dataset",
publicationDate: "2023-08-08",
publisher: "Zenodo",
id: [
{
scheme: "Digital Object Identifier",
value: "10.5281/zenodo.8217359"
}
],
// for brevity, the rest of the fields are omitted
}
```

View File

@ -1,32 +0,0 @@
# Graph API <span class="theme-doc-version-badge badge badge--secondary">beta</span>
The OpenAIRE Graph API provides a comprehensive way for developers to explore the [OpenAIRE Graph](https://graph.openaire.eu/), a vast interconnected dataset that aggregates metadata from a wide range of scholarly resources.
The Graph API offers endpoints for accessing and querying this interconnected dataset, enabling users to retrieve detailed information on research products, data sources, organizations, and projects.
## Base URL and Swagger documentation
The base URL of the Graph API is:
```
https://api-beta.openaire.eu/graph/
```
You can access the API Swagger documentation in [https://api-beta.openaire.eu/graph/swagger-ui/index.html#/](https://api-beta.openaire.eu/graph/swagger-ui/index.html#/).
## Notes
Please note that the Graph API:
- is intended for data discovery and exploration, hence you are now allowed to navigate the full result set: you are limited to the first 10,000 results of a search query. If you are interested to access the whole graph, we encourage you to download the [OpenAIRE full Graph dataset](../../downloads/full-graph.md).
- adhers to the [terms of use](../terms.md) of the OpenAIRE public APIs - certain (rate limit) restrictions apply.
## Learn more
Please use the following links to learn more about the Graph API:
- [Getting a single entity](./getting-a-single-entity.md) - Retrieve detailed information on a single entity.
- [Searching entities](./searching-entities/searching-entities.md) - Retrieve a list of entities based on specific search criteria.
- [Filtering results](./searching-entities/filtering-search-results.md) - Filter search results based on specific criteria.
- [Sorting results](./searching-entities/sorting-and-paging.md#sorting) - Sort search results based on specific criteria.
- [Paging](./searching-entities/sorting-and-paging.md#paging) - Retrieve a subset of search results.
- [Making requests](./making-requests.md) - Learn how to make requests with different programming languages.

View File

@ -1,41 +0,0 @@
# Making requests
This guide provides examples of how to make requests to the OpenAIRE Graph API using different programming languages.
## Using `curl`
```bash
curl -X GET "https://api-beta.openaire.eu/graph/researchProducts?search=OpenAIRE%20Graph&type=publication&page=1&pageSize=10&sortBy=relevance%20DESC" -H "accept: application/json"
```
## Using Python (with `requests` library)
```python
import requests
url = "https://api-beta.openaire.eu/graph/researchProducts"
params = {
"search": "OpenAIRE Graph",
"type": "publication",
"page": 1,
"pageSize": 10,
"sortBy": "relevance DESC"
}
headers = {
"accept": "application/json"
}
response = requests.get(url, headers=headers, params=params)
if response.status_code == 200:
data = response.json()
print(data)
else:
print(f"Failed to retrieve data: {response.status_code}")
```
:::note
Note that when using `curl` you should ensure that the URL is properly encoded, especially when using special characters or spaces in the query parameters. On the contrary, the `requests` library in Python takes care of URL encoding automatically.
:::

View File

@ -1,222 +0,0 @@
# Filtering search results
Filters can be used to narrow down the search results based on specific criteria.
Filters are provided as query parameters in the request URL (see [here](./searching-entities.md) for the available search entpoints).
Multiple filters can be provided in a single request; they should be formatted as follows:
`param1=value1&param2=value2&...&paramN=valueN`.
:::note
Filters are combined using the logical `AND` operator.
If a filter is provided multiple times, its values are combined using the logical `OR` operator.
For more information on how to use logical operators when searching and filtering, see [Using logical operators](#using-logical-operators).
:::
Examples:
- Get all research products that contain the word `"covid"`, sorted by popularity in descending order:
[https://api-beta.openaire.eu/graph/researchProducts?search=covid&sortBy=popularity DESC](https://api-beta.openaire.eu/graph/researchProducts?search=covid&sortBy=popularity%20DESC)
- Get all publications that are published after `2019-01-01`:
[https://api-beta.openaire.eu/graph/researchProducts?type=publication&fromPublicationDate=2019-01-01](https://api-beta.openaire.eu/graph/researchProducts?type=publication&fromPublicationDate=2019-01-01)
- Get the organization with the ROR id `https://ror.org/0576by029`:
[https://api-beta.openaire.eu/graph/organizations?pid=https://ror.org/0576by029](https://api-beta.openaire.eu/graph/organizations?pid=https://ror.org/0576by029)
## Available parameters
This section provides an overview of the available parameters for each entity type.
### Research products
The following query parameters are available for research products:
| **Parameter** | **Description** |
|-------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **search** | Search in the content of the research product. |
| **mainTitle** | Search in the research product's main title. |
| **description** | Search in the research product's description. |
| **id** | The OpenAIRE id of the research product. |
| **pid** | The persistent identifier of the research product. |
| **originalId** | The identifier of the record at the original sources. |
| **type** | The type of the research product. One of `publication`, `dataset`, `software`, or `other` |
| **fromPublicationDate** | Gets the research products whose publication date is greater than or equal to the given date. A date formatted as `ΥΥΥΥ` or `YYYY-MM-DD` |
| **toPublicationDate** | Gets the research products whose publication date is less than or equal to the given date. A date formatted as `YYYY` or `YYYY-MM-DD` |
| **subjects** | List of subjects associated to the research product. |
| **countryCode** | The country code for the country associated with the research product. |
| **authorFullName** | The full name of the authors involved in producing this research product. |
| **authorOrcid** | The ORCiD of the authors involved in producing this research product. |
| **publisher** | The name of the entity that holds, archives, publishes prints, distributes, releases, issues, or produces the resource. |
| **bestOpenAccessRightLabel** | The best open access rights among the research product's instances. One of `OPEN SOURCE`, `OPEN`, `EMBARGO`, `RESTRICTED`, `CLOSED`, `UNKNOWN` |
| **influenceClass** | Citation-based indicator that reflects the overall impact of a research product. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of influence respectively. |
| **impulseClass** | Citation-based indicator that reflects the initial momentum of a research product directly after its publication. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of impulse respectively |
| **popularityClass** | Citation-based indicator that reflects current impact or attention of a research product. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of popularity respectively. |
| **citationCountClass** | Citation-based indicator that reflects the overall impact of a research product by summing all its citations. Please, choose a class among `C1`, `C2`, `C3`, `C4`, or `C5` for top 0.01%, top 0.1%, top 1%, top 10%, and average in terms of citation count respectively. |
| **instanceType** `[Only for publications]` | Retrieve publications of the given instance type. Check [here](http://api.openaire.eu/vocabularies/dnet:publication_resource) for all possible instance type values. |
| **sdg** `[Only for publications]` | Retrieves publications classified with the respective Sustainable Development Goal number. Integer in the range [1, 17] |
| **fos** `[Only for publications]` | Retrieves publications classified with a given Field of Science (FOS). A FOS classification identifier (see [here](https://explore.openaire.eu/assets/common-assets/vocabulary/fos.json) for details). |
| **isPeerReviewed** `[Only for publications]` | Indicates whether the publications are peerReviewed or not. (Boolean) |
| **isInDiamondJournal** `[Only for publications]` | Indicates whether the publication was published in a diamond journal or not. (Boolean) |
| **isPubliclyFunded** `[Only for publications]` | Indicates whether the publication was publicly funded or not. (Boolean) |
| **isGreen** `[Only for publications]` | Indicates whether the publication was published following the green open access model. (Boolean) |
| **openAccessColor** `[Only for publications]` | Specifies the Open Access color of the publication. One of `bronze`, `gold`, or `hybrid` |
| **relOrganizationId** | Retrieve research products connected to the organization (with OpenAIRE id). |
| **relCommunityId** | Retrieve research products connected to the community (with OpenAIRE id). |
| **relProjectId** | Retrieve research products connected to the project (with OpenAIRE id). |
| **relProjectCode** | Retrieve research products connected to the project with code. |
| **hasProjectRel** | Retrieve research products that are connected to a project. (Boolean) |
| **relProjectFundingShortName**| Retrieve research products connected to a project that has a funder with the given short name. |
| **relProjectFundingStreamId** | Retrieve research products connected to a project that has the given funding identifier. |
| **relHostingDataSourceId** | Retrieve research products hosted by the data source (with OpenAIRE id). |
| **relCollectedFromDatasourceId**| Retrieve research products collected from the data source (with OpenAIRE id). |
| **debugQuery** | Retrieve debug information for the search query. (Boolean) |
| **page** | Page number of the results. (Integer) |
| **pageSize** | Number of results per page. Integer in the range [1, 100] |
| **cursor** | Cursor-based pagination. Initial value: `cursor=*` |
| **sortBy** | The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order and `fielaname` is one of `relevance`, `publicationDate`, `dateOfCollection`, `influence`, `popularity`, `citationCount`, `impulse`. Multiple sorting parameters should be comma-separated. |
### Organizations
The following query parameters are available for organizations:
| **Parameter** | **Description** |
|----------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|**search** | Search in the content of the organization. |
|**legalName** | The legal name of the organization. |
|**legalShortName** | The legal name of the organization in short form. |
|**id** | The OpenAIRE id of the organization. |
|**pid** | The persistent identifier of the organization. |
|**countryCode** | The country code of the organization. |
|**relCommunityId** | Retrieve organizations connected to the community (with OpenAIRE id). |
|**relCollectedFromDatasourceId**| Retrieve organizations collected from the data source (with OpenAIRE id). |
|**debugQuery** | Retrieve debug information for the search query. |
|**page** | Page number of the results. |
|**pageSize** | Number of results per page. |
| **cursor** | Cursor-based pagination. Initial value: `cursor=*` |
|**sortBy** | The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order - organizations can only be sorted by `relevance`. |
### Data sources
The following query parameters are available for data sources:
| **Parameter** | **Description** |
|----------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|**search** | Search in the content of the data source. |
|**officialName** |The official name of the data source. |
|**englishName** |The English name of the data source. |
|**legalShortName** |The legal name of the organization in short form. |
|**id** |The OpenAIRE id of the data source. |
|**pid** |The persistent identifier of the data source. |
|**subjects** |List of subjects associated to the datasource. |
|**dataSourceTypeName** |The data source type; see all possible values <a href='https://api.openaire.eu/vocabularies/dnet:datasource_typologies' target='_blank'>here</a> . |
|**contentTypes** |Types of content in the data source, as defined by OpenDOAR. |
|**relOrganizationId** |Retrieve data sources connected to the organization (with OpenAIRE id). |
|**relCommunityId** |Retrieve data sources connected to the community (with OpenAIRE id). |
|**relCollectedFromDatasourceId**|Retrieve data sources collected from the data source (with OpenAIRE id). |
|**debugQuery** |Retrieve debug information for the search query. |
|**page** |Page number of the results. |
|**pageSize** |Number of results per page. |
| **cursor** | Cursor-based pagination. Initial value: `cursor=*` |
|**sortBy** |The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order - data sources can only be sorted by `relevance`.|
### Projects
The following query parameters are available for projects:
| **Parameter** | **Description** |
|----------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|**search** | Search in the content of the projects. |
|**title** | Search in the project's title. |
|**keywords** | The project's keywords. |
|**id** | The OpenAIRE id of the project. |
|**code** | The grant agreement (GA) code of the project. |
|**acronym** | Project's acronym. |
|**callIdentifier** | The identifier of the research call. |
|**fundingShortName** | The short name of the funder. |
|**fundingStreamId** | The identifier of the funding stream. |
|**fromStartDate** | Gets the projects with start date greater than or equal to the given date. Please provide a date formatted as `YYYY` or `YYYY-MM-DD`. |
|**toStartDate** | Gets the projects with start date less than or equal to the given date. Please provide a date formatted as `YYYY` or `YYYY-MM-DD`. |
|**fromEndDate** | Gets the projects with end date greater than or equal to the given date. Please provide a date formatted as `YYYY` or `YYYY-MM-DD`. |
|**toEndDate** | Gets the projects with end date less than or equal to the given date. Please provide a date formatted as `YYYY` or `YYYY-MM-DD`. |
|**relOrganizationName** | The name or short name of the related organization. |
|**relOrganizationId** | The organization identifier of the related organization. |
|**relCommunityId** | Retrieve projects connected to the community (with OpenAIRE id). |
|**relOrganizationCountryCode** | The country code of the related organizations. |
|**relCollectedFromDatasourceId**| Retrieve projects collected from the data source (with OpenAIRE id). |
|**debugQuery** | Retrieve debug information for the search query. |
|**page** | Page number of the results. |
|**pageSize** | Number of results per page. |
| **cursor** | Cursor-based pagination. Initial value: `cursor=*` |
|**sortBy** | The field to set the sorting order of the results. Should be provided in the format `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order and `fielaname` is one of `relevance`, `startDate`, `endDate`. Multiple sorting parameters should be comma-separated. |
## Using logical operators
The API supports the use of logical operators `AND`, `OR`, and `NOT` to refine your search queries.
These operators help you combine or exclude one or more values for a specific filter.
### `AND` operator
Use the `AND` operator to retrieve results that include all specified values. This narrows your search.
Examples:
- Get research products that contain both `"climate"` and `"change"`:
[https://api-beta.openaire.eu/graph/researchProducts?search=climate AND change](https://api-beta.openaire.eu/graph/researchProducts?search=climate%20AND%20change)
- Get research products that are classified with both Fields of Study (FOS) `"03 medical and health sciences"` and `"0502 economics and business"`:
[https://api-beta.openaire.eu/graph/researchProducts?fos="03 medical and health sciences" AND "0502 economics and business"](https://api-beta.openaire.eu/graph/researchProducts?fos=%2203%20medical%20and%20health%20sciences%22%20AND%20%220502%20economics%20and%20business%22)
:::note
Note that when multiple tokens denote a single filter value, you should enclose them in double quotes, as in the FOS example above.
:::
### `OR` operator
Use the `OR` operator to retrieve results that include any of the specified terms. This broadens your search.
The same functionality can be achieved by providing multiple times the same query parameter or using a comma to separate the values.
Examples:
- Get research products with the OpenAIRE ids `doi_dedup___::2b3cb7130c506d1c3a05e9160b2c4108` or `pmid_dedup__::1591ebf0e0698ed4a99455ff2ba4adc0`:
[https://api-beta.openaire.eu/graph/researchProducts?id=r3730f562f9e::539da48b3796663b17e6166bb966e5b1 OR pmid_dedup__::1591ebf0e0698ed4a99455ff2ba4adc0](https://api-beta.openaire.eu/graph/researchProducts?id=r3730f562f9e::539da48b3796663b17e6166bb966e5b1%20OR%20pmid_dedup__::1591ebf0e0698ed4a99455ff2ba4adc0)
- Get projects that are connected to organizations in the US or Greece:
[https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US OR GR](https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US%20OR%20GR)
or by using the same query parameter multiple times: [https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US&relOrganizationCountryCode=GR](https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US&relOrganizationCountryCode=GR)
or just using comma: [https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US,GR](https://api-beta.openaire.eu/graph/projects?relOrganizationCountryCode=US,GR)
### `NOT` operator
Use the `NOT` operator to exclude specific terms from your search results. This refines your search by filtering out unwanted results.
Examples:
- Get research products that contain `"semantic"` but not `"web"`:
[https://api-beta.openaire.eu/graph/researchProducts?search=semantic NOT web](https://api-beta.openaire.eu/graph/researchProducts?search=semantic%20NOT%20web)
- Get all data sources that are not journals:
[https://api-beta.openaire.eu/graph/dataSources?dataSourceTypeName=NOT Journal](https://api-beta.openaire.eu/graph/dataSources?dataSourceTypeName=NOT%20Journal)
:::note
All the above operators can be combined, along with parentheses, and quotes to create more complex queries.
For example, to get research products that contain the phrase "semantic web" but not "ontology" or "linked data":
[https://api-beta.openaire.eu/graph/researchProducts?search="semantic web" AND NOT (ontology OR "linked data")](https://api-beta.openaire.eu/graph/researchProducts?search=%22semantic%20web%22%20AND%20NOT%20(ontology%20OR%20%22linked%20data%22))
:::

View File

@ -1,44 +0,0 @@
# Searching entities
This is a guide on how to search for specific entities using the OpenAIRE Graph API.
## Endpoints
Currently, the Graph API supports the following entity types:
* Research products - endpoint: [`GET /researchProducts`](https://api-beta.openaire.eu/graph/researchProducts)
* Organizations - endpoint: [`GET /organizations`](https://api-beta.openaire.eu/graph/organizations)
* Data sources - endpoint: [`GET /dataSources`](https://api-beta.openaire.eu/graph/dataSources)
* Projects - endpoint: [`GET /projects`](https://api-beta.openaire.eu/graph/projects)
Each of these endpoints can be used to list all entities of the corresponding type.
Listing such entities can be more useful when using the [filtering](./filtering-search-results.md),
[sorting](./sorting-and-paging.md#sorting), and [paging](./sorting-and-paging.md#paging) capabilities of the Graph API.
## Response
The response of the aforementioned endpoints is an object of the following type:
```json
{
header: {
numFound: 36818386,
maxScore: 1,
queryTime: 21,
page: 1,
pageSize: 10
},
results: [
...
]
}
```
It contains a `header` object with the following fields:
- `numFound`: the total number of entities found
- `maxScore`: the maximum relevance score of the search results
- `queryTime`: the time in milliseconds that the search took
- `page`: the current page of the search results (when using basic pagination)
- `pageSize`: the number of entities per page
- `nextCursor`: the next page cursor (when using cursor-based pagination, see: [paging](./sorting-and-paging.md#paging)
Finally, the `results` field contains an array of entities of the corresponding type (i.e., [Research product](../../../data-model/entities/research-product.md), [Organization](../../../data-model/entities/organization.md), [Data Source](../../../data-model/entities/data-source.md), or [Project](../../../data-model/entities/project.md)).

View File

@ -1,87 +0,0 @@
# Sorting and paging
The OpenAIRE Graph API allows you to sort and page through the results of your search queries.
This enables you to retrieve the most relevant results and manage large result sets more effectively.
## Sorting
Sorting based on specific fields, helps to retrieve data in the preferred order.
Sorting is achieved using the `sortBy` parameter, which specifies the field and the direction (ascending or descending) for sorting.
* `sortBy`: Defines the field and the sort direction. The format should be `fieldname sortDirection`, where the `sortDirection` can be either `ASC` for ascending order or `DESC` for descending order.
The field names that can be used for sorting are specific to each entity type and can be found in the `sortBy` field values of the [available paremeters](../searching-entities/filtering-search-results.md#available-parameters).
Note that the default sorting is based on the `relevance` score of the search results.
Examples:
- Get research products published after `2020-01-01` and sort them by the publication date in descending order:
[https://api-beta.openaire.eu/graph/researchProducts?fromPublicationDate=2020-01-01&sortBy=publicationDate DESC](https://api-beta.openaire.eu/graph/researchProducts?fromPublicationDate=2020-01-01&sortBy=publicationDate%20DESC)
- Get research products with the keyword `"COVID-19"` and sort them by their (citation-based) popularity:
[https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=popularity DESC](https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=popularity%20DESC)
Note that you can combine multiple sorting conditions by separating them with a comma.
Example:
- Get research products with the keyword `"COVID-19"` and sort them by their publication date in ascending order and then by their popularity in descending order:
[https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=publicationDate ASC,popularity DESC](https://api-beta.openaire.eu/graph/researchProducts?search=COVID-19&sortBy=publicationDate%20ASC,popularity%20DESC)
## Paging
The OpenAIRE Graph API supports basic and cursor-based pagination. In basic pagination, `page` and `pageSize` parameters are used, enabling you to specify which part of the result set to retrieve and how many results per page.
### Offset-based paging
Offset-based paging should be used to retrieve a small dataset only (up to 10000 records).
* `page`: Specifies the page number of the results you want to retrieve. Page numbering starts from 1.
* `pageSize`: Defines the number of results to be returned per page. This helps limit the amount of data returned in a single request, making it easier to process.
Example:
- Get the top 10 most influential research products that contain the phrase "knowledge graphs":
[https://api-beta.openaire.eu/graph/researchProducts?search="knowledge graphs"&page=1&pageSize=10&sortBy=influence DESC](https://api-beta.openaire.eu/graph/researchProducts?search=%22knowledge%20graphs%22&page=1&pageSize=10&sortBy=influence%20DESC)
response:
```json
{
header: {
numFound: 36818386,
maxScore: 1,
queryTime: 21,
page: 1,
pageSize: 10
},
results: [
...
]
}
```
### Cursor-based paging
Cursor should be used when it is required to retrieve a big dataset (more than 10000 records).
* `cursor`: Cursor-based pagination. Initial value: `cursor=*`.
Example:
- [https://api-beta.openaire.eu/graph/researchProducts?search="knowledge graphs"&pageSize=10&cursor=*&sortBy=influence DESC](https://api-beta.openaire.eu/graph/researchProducts?search=%22knowledge%20graphs%22&pageSize=10&cursor=*&sortBy=influence%20DESC)
response:
```json
{
header: {
numFound: 36818386,
maxScore: 1,
queryTime: 21,
pageSize: 10,
nextCursor: "AoI/D2M2NGU1YjVkNTQ4Nzo6NjlmZTBmNjljYzM4YTY1MjI5YjM3ZDRmZmIyMTU1NDAIP4AAAA=="
},
results: [
...
]
}
```
Use `nextCursor` value, to get the next page of results.

View File

@ -1,10 +0,0 @@
# Public APIs
The OpenAIRE Graph data are accessible through various public APIs. More specifically, the following APIs are currently provided:
* [Graph API](./graph-api/graph-api.md) - an API to explore the OpenAIRE Graph
* [Search API](./search-api/search-api.md) - an API to search for research products and projects
* [ScholeXplorer API](https://api.scholexplorer.openaire.eu/swagger-ui/index.html?urls.primaryName=Scholexplorer%20API%20V2.0) - an API offering dataset-publication & dataset-dataset links
* [DSpace & EPrints API](./dspace-eprints-api.md) - an API to offer custom access to metadata for projects funded by a selection of international funders for DSpace and EPrints platforms
* [Broker API](./broker-api.md) - an API to enrich metadata for repositories, publishers, and aggregators
It is also worth mentioning that, between 2015 and 2023 a LOD API was being provided but the respective service has been discontinued. Old LOD datasets can be found on Zenodo [here](https://zenodo.org/records/4587369).

View File

@ -1,31 +0,0 @@
# Searching for projects
## Endpoints
For research projects: http://api.openaire.eu/search/projects
## Parameters
| Parameter | Option | Description |
| --- | --- | --- |
| page | integer | Page number of the search results. |
| size | integer | Number of results per page. |
| format | json \| xml \| csv \| tsv | The format of the response. The default is xml. |
| model | openaire \| sygma | The data model of the response. Default is openaire. Model sygma is a simplified version of the openaire model. For sygma, only the xml format is available. The relative XML schema is available [here](https://www.openaire.eu/schema/sygma/oaf_sygma_v2.1.xsd). |
| sortBy | `sortBy=field,[ascending\|descending]`; **'field'** is one of: `projectstartdate`, `projectstartyear`, `projectenddate`, `projectendyear`, `projectduration` | The sorting order of the specified field. |
| hasECFunding | true \| false | If hasECFunding is true gets the entities funded by the EC. If hasECFunding is false gets the entities related to projects not funded by the EC. |
| hasWTFunding | true \| false | If hasWTFunding is true gets the entities funded by Wellcome Trust. The results are the same as those obtained with `funder=wt`. If hasWTFunding is false gets the entities related to projects not funded by Wellcome Trust. |
| funder | WT \| EC \| ARC \| ANDS \| NSF \| FCT \| NHMRC | Search for entities by funder. |
| fundingStream | ... | Search for entities by funding stream. |
| FP7scientificArea | ... | Search for FP7 entities by scientific area. |
| keywords | White-space separated list of keywords. | N/A |
| sortBy | `sortBy=field,[ascending\|descending]`; **'field'** is one of: `projectstartdate`, `projectstartyear`, `projectenddate`, `projectendyear`, `projectduration` | The sorting order of the specified field. |
| grantID | Comma separated list of grant identifiers. | Gets the project with the given grant identifier, if any. |
| openairePublicationID | Comma separated list of OpenAIRE identifiers. | Gets the publication with the given openaire identifier, if any. |
| name | White-space separated list of keywords. | Gets the projects whose names contain the given list of keywords. Using double quotes `"` you get an exact match, if any. |
| acronym | N/A | Gets the project with the given acronym, if any. |
| callID | N/A | Search for projects by call identifier. |
| startYear | Year formatted as `YYYY` | Gets the projects that started in the given year. |
| endYear | Year formatted as `YYYY`. | Gets the projects that ended in the given year. |
| participantCountries | Comma separeted list of 2 letter country codes. | Search for projects by participant countries. |
| participantAcronyms | White space separeted list of acronyms of institutions. | Search for projects by participant institutions. |

View File

@ -1,98 +0,0 @@
# Searching for research products
## Endpoints
For research products: https://api.openaire.eu/search/researchProducts
By specific type:
* publications: https://api.openaire.eu/search/publications
* research data: https://api.openaire.eu/search/datasets
* research software: https://api.openaire.eu/search/software
* other research products: https://api.openaire.eu/search/other
## General parameters
Endpoint: https://api.openaire.eu/search/researchProducts
| Parameter | Option | Description |
| --- | --- | --- |
| page | integer | Page number of the search results. |
| size | integer | Number of results per page. |
| format | json \| xml \| csv \| tsv | The format of the response. The default is xml. |
| model | openaire \| sygma | The data model of the response. Default is openaire. Model sygma is a simplified version of the openaire model. For sygma, only the xml format is available. The relative XML schema is available [here](https://www.openaire.eu/schema/sygma/oaf_sygma_v2.1.xsd). |
| sortBy | `sortBy=field,[ascending\|descending]` <br/>**'field'** can one of: <ul> <li>`dateofcollection`</li><li>`resultstoragedate`</li><li>`resultstoragedate`</li> <li>`resultembargoenddate`</li><li>`resultembargoendyear`</li><li>`resultdateofacceptance`</li> <li>`resultacceptanceyear`</li><li>`influence`</li><li>`popularity`</li> <li>`citationCount`</li><li>`impulse`</li> </ul>Multiple sorting is supported by repeating the `sortBy` parameter. | The sorting order of the specified field. |
| hasECFunding | true \| false | If hasECFunding is true gets the entities funded by the EC. If hasECFunding is false gets the entities related to projects not funded by the EC. |
| hasWTFunding | true \| false | If hasWTFunding is true gets the entities funded by Wellcome Trust. The results are the same as those obtained with `funder=wt`. If hasWTFunding is false gets the entities related to projects not funded by Wellcome Trust. |
| funder | WT \| EC \| ARC \| ANDS \| NSF \| FCT \| NHMRC | Search for entities by funder. |
| fundingStream | ... | Search for entities by funding stream. |
| FP7scientificArea | ... | Search for FP7 entities by scientific area. |
| keywords | White-space separated list of keywords. | This parameter is used to support a keyword search functionality in various fields (e.g., for research products the keywords are used to search in the products title, description, authors, etc). Regarding the semantics, when you provide multiple keywords, all keywords should be present, hence the correct interpretation is `kwd1 AND kw2`. |
| doi | Comma separated list of DOIs. <br/>Alternatively, it is possible to repeat the parameter for each requested doi. | Gets the research products with the given DOIs, if any. |
| orcid | Comma separated list of ORCID iDs of authors. <br/>Alternatively, it is possible to repeat the parameter for each author ORCID iD. | Gets the research products linked to the given ORCID iD of an author, if any. |
| fromDateAccepted | Date formatted as `YYYY-MM-DD` | Gets the research products whose date of acceptance is greater than or equal the given date. |
| toDateAccepted | Date formatted as `YYYY-MM-DD` | Gets the research products whose date of acceptance is less than or equal the given date. |
| title | White-space separated list of keywords. | Gets the research products whose titles contain the given list of keywords. |
| author | White-space separated list of names and/or surnames. | Search for research products by authors. |
| OA | true \| false | If OA is true gets Open Access research products. If OA is false gets the non Open Access research products |
| projectID | The given grant identifier of the project | Search for research products of the project with the specified projectID |
| country | 2 letter country code | Search for research products associated to the country code |
| influence <br/> | Accepted values: <br/>`C1` for top 0.01% in terms of influence <br/>`C2` for top 0.1% in terms of influence <br/>`C3` for top 1% in terms of influence <br/>`C4` for top 10% in terms of influence <br/>`C5` for average/low in terms of influence <br/> <br/>Comma separated list of values or repeat of the parameter for each value will form a query with OR semantics, eg. `?influence=C1&influence=C2` | Search for research products based on their influence. |
| popularity <br/> | Accepted values: <br/>`C1` for top 0.01% in terms of popularity <br/>`C2` for top 0.1% in terms of popularity <br/>`C3` for top 1% in terms of popularity <br/>`C4` for top 10% in terms of popularity <br/>`C5` for average/low in terms of popularity <br/> <br/>Comma separated list of values or repeat of the parameter for each value will form a query with OR semantics, eg. `?popularity=C1&popularity=C2` | Search for research products based on their popularity. |
| impulse <br/> | Accepted values: <br/>`C1` for top 0.01% in terms of impulse <br/>`C2` for top 0.1% in terms of impulse <br/>`C3` for top 1% in terms of impulse <br/>`C4` for top 10% in terms of impulse <br/>`C5` for average/low in terms of impulse <br/> <br/>Comma separated list of values or repeat of the parameter for each value will form a query with OR semantics, eg. `?impulse=C1&impulse=C2` | Search for research products based on their impulse. |
| citationCount <br/> | Accepted values: <br/>`C1` for top 0.01% in terms of citation count <br/>`C2` for top 0.1% in terms of citation count <br/>`C3` for top 1% in terms of citation count <br/>`C4` for top 10% in terms of citation count <br/>`C5` for average/low in terms of citation count <br/> <br/>Comma separated list of values or repeat of the parameter for each value will form a query with OR semantics, eg. `?citationCount=C1&citationCount=C2` | Search for research products based on their number of citations. |
| openaireProviderID | Comma separated list of identifiers. | Search for research products by openaire data provider identifier. <br/>Alternatively, it is possible to repeat the parameter for each provider id. In both cases, provider identifiers will form a query with OR semantics. |
| openaireProjectID | Comma separated list of identifiers. <br/>Alternatively, it is possible to repeat the parameter for each provider id. In both cases, provider identifiers will form a query with OR semantics. | Search for research products by openaire project identifier. Alternatively, it is possible to repeat the parameter for each provider id. In both cases, provider identifiers will form a query with OR semantics. |
| hasProject | true \| false | If hasProject is true gets the research products that have a link to a project. If hasProject is false gets the publications with no links to projects. |
| FP7ProjectID | ... | Search for research products associated to a FP7 project with the given grant number. It is equivalent to a query by `funder=FP7&projectID={grantID}` |
## Parameters for publications
Endpoint: https://api.openaire.eu/search/publications
You can use all the [general research products parameters](#general-parameters) as well as those in the following table.
| Parameter | Option | Description |
| --- | --- | --- |
| instancetype | Comma separated list of publication types. Check [here](http://api.openaire.eu/vocabularies/dnet:publication_resource) to see the possible values | Gets the publication of the given type, if any. |
| originalId | Comma separated list of original identifiers as we get them from the data source. <br/>Alternatively, it is possible to repeat the parameter for each requested identifier. | Gets the publication with the given openaire identifier, if any. |
| sdg | The number of the Sustainable Development Goals `[1-17]`. <br/>Check [here](https://sdgs.un.org/goals) to see the Sustainable Developemnt Goals. | Gets the publications that are classified with the respective Sustainable Development Goal number. |
| fos | The Field of Science classification value. <br/>Check [here](/resources/athenarc_fos_hierarchy.json) to see the Field of Science classification values | Gets the publications that are classified with the respective Field of Science classification value. |
| openairePublicationID | Comma separated list of OpenAIRE identifiers. <br/>Alternatively, it is possible to repeat the parameter for each requested identifier. | Gets the publication with the given openaire identifier, if any. |
| peerReviewed | Accepted values: <br/>true \| false | Specify if the publications are peerReviewed or not. |
| diamondJournal | Accepted values: <br/>true \| false | Specify if the publications are published in a diamond journal or not. |
| publiclyFunded | Accepted values: <br/>true \| false | Specify if the publications are publicly funded or not. |
| green | Accepted values: <br/>true \| false | Specify if the publications are green open access or not. |
| openAccessColor | Accepted values: <br/>`gold`\| `bronze`\| `hybrid` <br/>Comma separated list of values or repeat of the parameter for each value will form a query with OR semantics, eg. `?openAccessColor=gold&openAccessColor=hybrid` | Specify the open access color of a publication. |
## Parameters for research data
Endpoint: https://api.openaire.eu/search/datasets
You can use all the [general research products parameters](#general-parameters) as well as those in the following table.
| Parameter | Option | Description |
| --- | --- | --- |
| openaireDatasetID | Comma separated list of OpenAIRE identifiers. <br/>Alternatively, it is possible to repeat the parameter for each requested identifier. | Gets the research data with the given openaire identifier, if any. |
## Parameters for research software
Endpoint: https://api.openaire.eu/search/software
You can use all the [general research products parameters](#general-parameters) as well as those in the following table.
| Parameter | Option | Description |
| --- | --- | --- |
| openaireSoftwareID | Comma separated list of OpenAIRE identifiers. <br/>Alternatively, it is possible to repeat the parameter for each requested identifier. | Gets the research software with the given openaire identifier, if any. |
## Parameters for other research products
Endpoint: https://api.openaire.eu/search/other
You can use all the [general research products parameters](#general-parameters) as well as those in the following table.
| Parameter | Option | Description |
| --- | --- | --- |
| openaireOtherID | Comma separated list of OpenAIRE identifiers. <br/>Alternatively, it is possible to repeat the parameter for each requested identifier. | Gets the other research products with the given openaire identifier, if any. |

View File

@ -1,172 +0,0 @@
# Response metadata format
In this page, we elaborate on the metadata response format, as well as response headers and errors.
## Main response
The OpenAIRE Search API supports the following types of response formats:
* XML
* JSON
* CSV
* TSV
In the next paragraphs, we elaborate on the respective metadata formats.
### XML/JSON
The default format of delivered records is oaf (OpenAIRE Format - current version 1.0):
* XML schema: https://www.openaire.eu/schema/1.0/oaf-1.0.xsd
* Documentation: https://www.openaire.eu/schema/1.0/doc/oaf-1.0.html
For the list of changes [click here](https://www.openaire.eu/openaire-xml-schema-change-announcement).
Note that latest versions of the XML schema and documentation are also available at the following permanent links:
* XML schema: https://www.openaire.eu/schema/latest/oaf.xsd
* Documentation: https://www.openaire.eu/schema/latest/doc/oaf.html
Older versions:
* oaf v0.3 [XML schema](https://www.openaire.eu/schema/0.3/oaf-0.3.xsd) and [documentation](https://www.openaire.eu/schema/0.3/doc/oaf-0.3.html)
* oaf v0.2 [XML schema](https://www.openaire.eu/schema/0.2/oaf-0.2.xsd) and [documentation](https://www.openaire.eu/schema/0.2/doc/oaf-0.2.html)
* oaf v0.1 [XML schema](https://www.openaire.eu/schema/0.1/oaf-0.1.xsd) and [documentation](https://www.openaire.eu/schema/0.1/doc/oaf-0.1.html)
### CSV/TSV
The API returns in comma-separated files (CSV) or tab-separated files (TSV) the following fields:
* Title
* AUthors
* Publicatioy year
* DOI
* Download from
* Publication type
* Journal
* Funder
* Project name (GA Number)
* Access
## Headers
| Name | Description |
| --- | --- |
| x-ratelimit-limit | The maximum number of requests allowed for the client in one time window. |
| x-ratelimit-used | The number of requests already made by the client in the current time window. |
The OpenAIRE APIs use a sliding time window of one hour.
## Errors
### General
404 - Not found
```json
{
"error": "Not found",
"description": "Invald request path."
}
```
429 - Rate limit abuse
```json
{
"error": "Too many requests",
"description": "Request rate exceeded. Slow down."
}
```
### Only for authenticated requests
400 - Missing grant type
```json
{
"error": "invalid_request",
"error_description": "Missing grant type"
}
```
400 - Wrong grant type
```json
{
"error": "unsupported_grant_type",
"error_description": "Unsupported grant type: ..."
}
```
400 - Missing Refresh Token
```json
{
"status" : "error",
"code" : "400",
"message" : "Bad Request",
"description" : "Missing refreshToken parameter"
}
```
401 - Missing username or/and password
```json
{
"error": "unauthorized",
"error_description": "Client id must not be empty!"
}
```
401 - Wrong username or/and password
```json
{
"error": "unauthorized",
"error_description": "Bad credentials"
}
```
401 - Invalid Refresh Token (for authenticated requests)
```json
{
"status" : "error",
"code" : "401",
"message" : "Unauthorised",
"description" : "Invalid refreshToken token"
}
```
401 - Invalid client assertion
```json
{
"error":"invalid_client",
"error_description":"Bad client credentials"
}
```
401 - Client assertion for missing service
```json
{
"error":"invalid_client",
"error_description":"Could not find client {SERVICE_ID}"
}
```
401 - Expired signed jwt
```json
{
"error":"unauthorized",
"error_description":"Assertion Token in expired: {EXPIRATION_TIME}"
}
```
403 - Invalid Access Token
```json
{
"error": "Token invalid",
"description": "Authorization header value invalid."
}
```

View File

@ -1,7 +0,0 @@
# Search API
The Search API allows developers to access metadata records of the OpenAIRE Graph by performing queries over research products (i.e., publications, data, software, other research products), and projects.
The API is intended for metadata discovery and exploration only, hence it does not provide access to the whole information space: the number of total results returned by one query is limited to 10,000.
For accessing the whole graph, developers are encouraged to use the [OpenAIRE full Graph dataset](../../downloads/full-graph).

View File

@ -1,93 +0,0 @@
# APIs specification changelog
| Date | Description |
| --- | --- |
| 2024-01-09T11:14:10.524604Z | New parameters for publications. Now you can specifυ if they are peer reviewed, in diamond journal, publicly funded, green and specify their OA colour. |
| 2023-11-30T11:39:10.159187Z | Added impact factor parameters. Now you can sort results and query by impact, influence, impulse and citation count. |
| 2023-11-29T12:26:17.660379Z | New registration and token process available at https://develop.openaire.eu. Updated documentation |
| 2023-05-25T09:16:19.903365Z | new instancetype parameter added |
| 2022-09-29T07:03:32.109909Z | updated URLs to the broker swagger UI |
| 2022-09-28T20:35:13.116653Z | updated URLs to the broker swagger UI |
| 2022-07-28T12:02:06.271154Z | Updated list of funders supported by the API for bulk access to projects: EC Horizon Europe also included |
| 2022-05-11T10:01:33.969973Z | New end point for researchProducts in selective access! FOS and SDG classifications available for publication requests |
| 2022-03-29T15:03:29.583536Z | Graph dataset: add new Scholix version 4 |
| 2021-11-12T12:04:52.900385Z | originalId parameter added |
| 2021-10-18T15:31:18.446582Z | OAI-PMH publisher completely dismissed as announced in January 2021 |
| 2021-10-12T07:46:48.032978Z | orcid parameter added in selective access |
| 2021-04-08T10:28:02.371361Z | Authenticated requests to our APIs are now enabled. |
| 2021-02-26T16:28:15.364435Z | NEWS: new dataset available with research products with project funding information |
| 2021-02-17T07:39:46.051129Z | WIP: broker API documentation |
| 2021-02-11T09:06:41.608115Z | Broker API documentation |
| 2021-02-10T10:17:39.504429Z | Authentication documentation added + broker card + broker dummy page |
| 2021-02-01T08:55:35.496938Z | OAI-PMH shutdown announced for the end of April 2021 |
| 2021-01-15T18:56:04.748404Z | Updated documentation on OpenAIRE Research Graph Datasets |
| 2021-01-15T16:57:08.569766Z | Announcing the shutdown of the OAI-PMH publisher |
| 2019-01-25T15:36:27.264313Z | Added new parameter country for research products |
| 2018-10-17T10:39:56.570815Z | Software and Other research products are available via HTTP API. Documentation has been updated. |
| 2018-04-09T09:20:24.763966Z | Added section on terms of services and SLA in the specific API pages |
| 2018-04-09T08:26:18.897089Z | Added section for terms of use and SLA in the home page |
| 2018-03-21T15:31:13.490821Z | dded page with list of changes generated from the svn log |
| 2018-03-21T14:58:14.569096Z | Added APi rate limits |
| 2018-03-21T14:46:32.362617Z | ignore intellij settings |
| 2018-02-01T14:44:00.743257Z | Latest schema version is 1.0 |
| 2018-01-30T10:29:03.037760Z | removed authorOpenaireId parameter + change the message to say the schema is already changed |
| 2018-01-26T13:09:17.887663Z | Removed openaireAuthorID from API documentation |
| 2018-01-11T14:41:29.910148Z | Rephrase LOD to Linked Open Data |
| 2018-01-11T13:56:40.051318Z | add LOD box in overview.html |
| 2018-01-11T13:48:19.812005Z | Adding warning for schema change |
| 2017-10-23T14:21:15.794995Z | intellij file |
| 2017-10-09T10:43:56.532687Z | Added HTML files for api documentation based on uikit |
| 2017-10-06T12:08:16.603152Z | deleting old API documentation: new will be committed soon by Katerina |
| 2017-10-06T12:04:55.560134Z | copied from dnet40 |
| 2017-05-26T11:44:59.926816Z | removed warning for fundingStream queries |
| 2017-05-25T12:36:43.800409Z | warning and location of the api in the prod infra |
| 2017-03-29T13:58:34.013071Z | reformatted xml and new generated HTML |
| 2017-03-29T13:57:23.196971Z | changed pubdate |
| 2017-03-29T13:46:08.349593Z | added link to the OpenAIRE helpdesk |
| 2017-03-29T13:39:44.386894Z | fixed param hasWTFunding (instead of hasUKFunding) + list of supported funders |
| 2017-03-29T13:37:43.381141Z | param name is dateOfAcceptance not of collection |
| 2017-02-22T09:31:34.767373Z | #2630: informing that incremental harvesting is not supported and updated list of interesting OAI sets |
| 2016-01-18T10:38:57.125792Z | commented warning section |
| 2015-09-15T09:04:00.819955Z | added this week in the warning week |
| 2015-09-15T09:02:37.458839Z | updated supported funders and removed section about the TSV as it is only to be used by NOADs |
| 2015-09-15T08:56:37.943151Z | removed organizations OAI set in the examples. Added FP7Publications. |
| 2015-09-15T08:54:41.579385Z | Updated links to the guidelines |
| 2015-09-15T08:53:06.677011Z | OAI-PMH discards duplicates now |
| 2015-08-26T08:51:32.795385Z | added schema 0.3 as the latest schema |
| 2015-05-18T12:10:24.329058Z | csvn and tsv formats available for search api |
| 2015-03-20T10:54:31.069584Z | fixed tsv URL |
| 2015-03-20T10:49:46.639336Z | updated date |
| 2015-03-20T10:49:11.327980Z | added documentation for the projects2tsv endpoint |
| 2015-03-19T11:18:36.226626Z | minor changes to a couple of sentences |
| 2015-03-13T17:35:01.980176Z | updated the generated html |
| 2015-03-13T17:33:41.882951Z | added list of avaialble funding streams and those that are coming soon |
| 2015-03-13T17:33:02.339565Z | openaire compliance of OAI-PMH |
| 2015-02-04T14:16:56.528188Z | #1062: OAI-PMH and HTTP numbers are not the same becuase of duplicates |
| 2014-12-03T15:17:27.207961Z | #1031: title of eprints/dspace export |
| 2014-11-13T16:11:13.633046Z | Updated date and generated new html |
| 2014-11-13T16:08:12.045544Z | Fixed documentation about datasets |
| 2014-11-11T18:43:18.738678Z | Fixed documentation for publications |
| 2014-11-11T17:09:19.351093Z | added sortby parameter |
| 2014-09-17T09:05:38.726757Z | created tag folder for release |
| 2014-08-04T10:59:48.089720Z | Updated pubdate |
| 2014-08-04T10:58:22.814919Z | Overview cleanup |
| 2014-08-04T10:50:54.515588Z | added links to the latest available schema and documentation |
| 2014-07-24T14:09:49.733958Z | #690: HTTP API documentation for project and other updates. |
| 2014-06-06T08:41:45.731338Z | #550: making it clear we are delivering metadata only. Clenaup. |
| 2014-05-14T16:38:30.702554Z | updated date |
| 2014-05-14T16:35:05.787718Z | re-added OAI set for projects |
| 2014-04-30T10:42:18.355154Z | updated oxygen project with the correct tree structure |
| 2014-04-30T10:41:14.539090Z | Added and commented property to generate output in chunks |
| 2014-04-30T10:40:30.012256Z | mvn generates output with no chunks in a single file: api-doc.html |
| 2014-04-30T10:39:37.875730Z | Main docbook file renamed from book.xml to api-doc.xml |
| 2014-04-30T10:34:16.576722Z | updated OAI-PMH sets: now delivering only research products and no other entities. |
| 2014-04-15T09:53:22.158487Z | copied dnet-api-http-doc to new dnet40 codebase |
| 2014-04-10T09:55:41.690052Z | ignore |
| 2014-04-10T09:53:59.192401Z | removed target/*classes from svn |
| 2014-04-09T10:46:05.757155Z | mavenized project. Generates html running mvn docbkx:generate-html. results are then in target/docbkx |
| 2014-04-09T09:18:26.268418Z | added links to xsd and xsd doc in the overview chapter |
| 2014-04-08T12:55:01.169556Z | ticket #300: updated doc for APIs |
| 2014-03-10T18:13:38.784171Z | not a maven project |
| 2014-03-10T18:13:18.180379Z | basic structure for API doc |
| 2014-03-10T13:50:02.957489Z | added files as generated by the archetype docbkx-quickstart-archetype v2.0.15 |
| 2014-03-10T13:45:30.505315Z | created module for HTTP API docbook |

View File

@ -1,17 +0,0 @@
# Terms of use
## Authentication & limits
The OpenAIRE APIs are free-to-use by any third-party service and can be accessed over HTTPS both by authenticated and unauthenticated requests. The rate limit for the former type of requests is up to 7200 requests per hour, while the latter is up to 60 requests per hour.
To make an authenticated request, you must first [register](https://services.openaire.eu/uoa-user-management/register.jsp). Then, you can go to the [personal access token page](https://develop.openaire.eu/user-info?errorCode=1&redirectUrl=%2Fpersonal-token) in your account, copy your token and use it for up to one hour, [find out more](./authentication.md).
Our OAuth 2.0 implementation, conforms to the OpenID Connect specification, and is [OpenID Certified](https://openid.net/certification/). OpenID Connect is a simple identity layer on top of the OAuth 2.0 protocol. For more information about OAuth2.0 please visit the [OAuth2.0 official site](https://oauth.net/2/). For more information about OpenID Connect please visit the [OpenID Connect official site](https://openid.net/connect/). Also, check [here](http://www.openaire.eu/privacy-policy) for more information on our Privacy Policy.
## Quality of service
OpenAIRE API services are running in production 24/7 within the OpenAIRE infrastructure premises deployed at the data center facilities of the Interdisciplinary Centre for Mathematical and Computational Modelling (ICM).
## License
OpenAIRE Graph license is CC-BY: the records returned by the service can be freely re-used by commercial and non-commercial partners under CC-BY license, hence as long as OpenAIRE is acknowledged as a data source.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 188 KiB

After

Width:  |  Height:  |  Size: 96 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 666 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 221 KiB

After

Width:  |  Height:  |  Size: 74 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

View File

@ -18,233 +18,9 @@ In our case, given a version `MAJOR.MINOR.PATCH`, we increment the:
This section documents all notable changes for each graph version. This section documents all notable changes for each graph version.
--- ---
### v9.0.0
_Start Date: 2024-10-03 &bull; Release Date: 2024-10-23 &bull; Dataset release: **no**_
#### Added
- ~2.5% increase (+6.7Mi) in the number of research products
- ~6.35% increase (+11.9Mi) in the number of affiliations
- ~7.3% increase (+311K) in the number of funded research products
- Import of SDG classifications without a DOI
- Introduced plugins for collecting research results from the OSF preprints server and the UKRI registry
#### Changed
- Updated Crossref publications to include contents until Aug 2024 and updated mapping so that
- records with a relationship "is-review-of" are mapped as publication of type "Review".
- force the hostedby of Crossref records with DOI prefix `10.3410` and `10.12703` to the H1 Connect data source.
- Updated ORCID contents until Sept 2024
- Updated Datacite contents until Sept 2024
- Improvements in the comparators used in the organization deduplication.
- Changed the selection criteria for the pivot record of a group so that by best pid type becomes the first criteria, as consequence pivots will converge to records having DOI pid.
- Community tags added to all the entity types.
### v8.0.1
_Start Date: 2024-08-09 &bull; Release Date: 2024-09-12 &bull; Dataset release: **no**_
#### Added
- Introduced mapping of affiliations from publisher websites
#### Changed
- Updated Crossref publications to include contents until June 2024
- Updated ORCID contents until July 2024
- Updated Datacite contents until July 2024
- Include only FoS L1..L2 in the record serialization
### v8.0.0
_Start Date: 2024-07-03 &bull; Release Date: 2024-07-15 &bull; Dataset release: **yes**_
#### Added
- General increase of the scientific products with ORCID identified authors +0.43% (+145K)
#### Changed
- Improved matching of organizations in the deduplication algorithm, leading to less false positives
- Updated Crossref publications to include contents until May 2024
- Updated ORCID contents until June 2024
- Updated Datacite contents until June 2024
- Updated serialization of the data model as follows
- The serialization of the property names is changed to camelCase
- The serialization of the impact indicators was updated renaming the element `bipIndicators` as
`citationImpact`, which includes the following:
- `citationCount`, `influence`, `popularity`, `impulse`, all of them typed as Double
- `citationClass`, `influenceClass`, `impulseClass`, `popularityClass`, all of them typed as String
- The element `datasettype` was renamed to `type`
### v7.2.0
_Start Date: 2024-05-15 &bull; Release Date: 2024-06-20 &bull; Dataset release: **no**_
#### Added
- Introduced new Field of Science classifications for publications, reaching a total of ~77.2Mi publications classified
- General increase of the affiliations +20% (from 162Mi to 195Mi)
- General increase of the scientific products with ORCID identified authors +10% (from 3.09Mi to 3.39Mi)
#### Changed
- Revised deduplication configuration to better exploit resource types
- The DOIBoost dataset was superseded by the direct aggregation of its datasources: Crossref, Unpaywall, Microsoft
Academic Graph, ORCID. See the [aggregation of the non compatible sources](category/non-compatible-sources) section
to know more
details
- Relaxed Crossref publication inclusion criteria, now accepting records without author information, leading to a
+15% increase (from 127Mi to 146Mi records). Included contents until April 2024
- Updated ORCID contents until April 2024
- Updated Datacite contents until April 2024
### v7.1.3
_Start Date: 2024-04-10 &bull; Release Date: 2024-04-22 &bull; Dataset release: **no**_
#### Added
- Introduced new Field of Science classifications, reaching a total of ~73Mi publications classified
- General increase of the funded scientific outputs, thanks to the full-text mining scanning new OpenAccess publications, some examples:
- European Commission - EC +7% (from 1.52Mi to 1.62Mi)
- Irish Research Council - IRC +7% (from 12.7K to 13.5K)
- French National Research Agency - ANR +5.8% (from 91.5K to 96.8K)
- National Institute of Health - NIH +5% (from 594K to 626K)
- UK Research and Innovation - UKRI +3.7% (from 434K to 450K)
- General increase of the scientific products with author affiliation information +2% (from 83.12Mi to 84.88Mi)
#### Changed
- Updated Crossref publications to include contents until March 2023
- Updated Datacite contents until March 2024
- Updated ORCID contents until March 2024
### v7.1.2
_Start Date: 2024-03-15 &bull; Release Date: 2024-03-27 &bull; Dataset release: **no**_
#### Added
- General increase of the funded scientific outputs, thanks to the full-text mining scanning new OpenAccess publications
#### Changed
- Updated Crossref publications to include contents until February 2023
- Updated Datacite contents until February 2024
- Updated ORCID contents until February 2024
### v7.1.1
_Start Date: 2024-02-23 &bull; Release Date: 2024-03-06 &bull; Dataset release: **no**_
#### Added
- Updated the content import criteria applied to Datacite, resulting in +13Mi Other Research Products (+167%)
- Introduced project PIDs; DOI currently available for grants funded by FCT and TWCF
#### Changed
- Scientific products typed as "Collection" categorized under "Research Data" instead of "Other Research Product".
- Updated Crossref publications to include contents until January 2023
- Updated Datacite contents until January 2024
### v7.1.0
_Start Date: 2024-01-30 &bull; Release Date: 2024-02-20 &bull; Dataset release: **no**_
#### Added
- The scientific products aggregated increased by ~5Mi records (+1.6%)
#### Changed
- A refined version of the deduplication strategy allowed to catch more duplicates among the scientific products, implying
a decrease of their total number of ~3.2Mi (-1.35%). More details about the deduplication algorithm are available [here](graph-production-workflow/deduplication/research-products).
- Updated Crossref publications to include contents until November 2023
- Updated Datacite contents until December 2023
### v7.0.0
_Start Date: 2023-12-18 &bull; Release Date: 2024-01-06 &bull; Dataset release: **yes**_
#### Added
- the scientific products increased by ~3Mi records (+1.26%)
- the number of relations increased by 28.6Mi (+1%)
- the funded contents increased by 5%, from 3.6Mi to 3,8Mi. Funders that recorded the highest increase include, for example, EC with +120K linked research products, and SFI with +1K products.
#### Changed
This graph release also introduces new fields to identify reseach products published using specific open access models, in diamond journals, and those that received public funding. These fields will also be added to the graph dataset in Zenodo. In details:
- `ResearchProduct.isGreen (true, false)`: indicates whether or not the researh product was published following the green open access model;
- `ResearchProduct.openAccesColor (bronze, gold, hybrid)`: indicates the specific open access model used for the publication;
- `ResearchProduct.isInDiamondJournal (true, false)`: indicates whether or not the research product was published in a diamond journal;
- `ResearchProduct.publicly-funded (true, false)`: indicates whether or not the grants acknowledged by the publication come from public funds.
### v6.2.2
_Start Date: 2023-11-07 &bull; Release Date: 2023-11-23 &bull; Dataset release: **no**_
#### Added
- Imported Opencitation's POCI dataset, containing citations among publications in PubMed
- Imported Affiliations from Crossref and from PubMed
- Imported Software Heritage identifiers for Software records
- Extended coverage of Irish funders imported from Crossref
- Peer reviewed material identified with a revised heuristic that allowed to improve the coverage
- Project references identified by TDM increased by ~10%
- Introduced new Field of Science classifications for ~40Mi publications
#### Changed
- Updated Crossref publications to include contents until October 2023
- Updated Datacite contents until October 2023
- Indicators regarding data source downloads and views taken by usage counts from September 2023
### v6.1.1
_Start Date: 2023-09-11 &bull; Release Date: 2023-10-15 &bull; Dataset release: **no**_
#### Added
- Affiliation (research product to organization) relations from Crossref
- Links to the full text of research products
- Cleaning for author and publisher names (get rid of tabs, CR characters, \n(s), escape double quotes)
#### Changed
- Projects without a grant code are removed
- Crossref dump from July 2023
- ORCID works without a DOI from March 2023
- Usage counts from July 2023
- Datacite contents from early July 2023
- OpenCitations relations from December 2022
### v6.0.0
_Start Date: 2023-07-26 &bull; Release Date: 2023-08-16 &bull; Dataset release: **yes**_
#### Changed
- [Relationship data model](./data-model/relationships/relationship-object): flattened properties source, sourceType, target, targetType
- BIP! indicators are now serialised as an array; see the updated model [here](./data-model/entities/other#bipindicators)
- Crossref dump from June 2023
- ORCID works without a DOI from June 2023
- Usage counts from June 2023
- Datacite contents from June 2023
- OpenCitations relations from January 2023
- BIP! indicators from June 2023
- New Datasources/Services were added, collected from an updated EOSC Service catalogue endpoint
### v5.2.0
_Start Date: 2023-07-03 &bull; Release Date: 2023-07-17 &bull; Dataset release: **no**_
#### Added
- Citations imported from Crossref & MAG
- FoS and SDG classifications introduced for ~16Mi research products
#### Changed
- Removed the numerical prefix from the OpenAIRE identifiers (```"20|openorgs____::..." --> "openorgs____::..."```)
- Dataset file names in the Zenodo depositions changed from `dump` to `dataset`
- Crossref dump from May 2023
- ORCID works without a DOI from June 2023
- Usage counts from April 2023
- Datacite contents from June 2023
- OpenCitations relations from January 2023
- Deduplication of the datasource
- Avoid duplicated organisation PIDs
### v5.1.3 ### v5.1.3
_Start Date: 2023-05-22 &bull; Release Date: 2023-06-12 &bull; Dataset release: **no**_ _Start Date: 2023-05-22 &bull; Release Date: 2023-06-12 &bull; Dump release: **no**_
#### Added #### Added
- Datasource and project level usage counts - Datasource and project level usage counts
@ -259,7 +35,7 @@ _Start Date: 2023-05-22 &bull; Release Date: 2023-06-12 &bull; Dataset release:
- Deduplication of the datasource - Deduplication of the datasource
### v5.1.2 ### v5.1.2
_Start Date: 2023-03-20 &bull; Release Date: 2023-04-04 &bull; Dataset release: **no**_ _Start Date: 2023-03-20 &bull; Release Date: 2023-04-04 &bull; Dump release: **no**_
#### Changed #### Changed
@ -270,15 +46,15 @@ _Start Date: 2023-03-20 &bull; Release Date: 2023-04-04 &bull; Dataset release:
- OpenCitations relations from January 2023 - OpenCitations relations from January 2023
### v5.1.1 ### v5.1.1
_Start Date: 2023-02-13 &bull; Release Date: 2023-03-01 &bull; Dataset release: **no**_ _Start Date: 2023-02-13 &bull; Release Date: 2023-03-01 &bull; Dump release: **no**_
#### Added #### Added
- Revised SDG classification: improved coverage (+600K classified DOIs) - Revised SDG classification: improved coverage (+600K classified DOIs)
- General increase of the funded scientific outputs, thanks to the full text mining scanning new OpenAccess publications - General increase of the funded scientific outputs, thanks to the full text mining scanning new OpenAccess publications
- Integrated contents from - Integrated contents from
- [EMBL-EBIs Protein Data Bank in Europe](./graph-production-workflow/aggregation/non-compatible-sources/ebi) - [EMBL-EBIs Protein Data Bank in Europe](/graph-production-workflow/aggregation/non-compatible-sources/ebi)
- [UniProtKB/Swiss-Prot](./graph-production-workflow/aggregation/non-compatible-sources/uniprot) - [UniProtKB/Swiss-Prot](/graph-production-workflow//aggregation/non-compatible-sources/uniprot)
#### Changed #### Changed
@ -289,7 +65,7 @@ _Start Date: 2023-02-13 &bull; Release Date: 2023-03-01 &bull; Dataset release:
- OpenCitations relations from December 2022 - OpenCitations relations from December 2022
### v5.1.0 ### v5.1.0
_Start Date: 2023-01-16 &bull; Release Date: 2023-01-30 &bull; Dataset release: **no**_ _Start Date: 2023-01-16 &bull; Release Date: 2023-01-30 &bull; Dump release: **no**_
#### Added #### Added
@ -306,18 +82,18 @@ _Start Date: 2023-01-16 &bull; Release Date: 2023-01-30 &bull; Dataset release:
### v5.0.0 ### v5.0.0
_Start Date: 2022-12-19 &bull; Release Date: 2022-12-28 &bull; Dataset release: **yes**_ _Start Date: 2022-12-19 &bull; Release Date: 2022-12-28 &bull; Dump release: **yes**_
#### Added #### Added
- [Impact & Usage indicators](./data-model/entities/research-product.md#indicators) at the level of the research product - [Impact & Usage indicators](/data-model/entities/result#indicators) at the level of the Result
- [Beginner's kit](./downloads/beginners-kit) in the Downloads section - [Beginner's kit](/downloads/beginners-kit) in the Downloads section
- New relationship types were introduced; see the complete list [here](./data-model/relationships/relationship-types) - New relationship types were introduced; see the complete list [here](/data-model/relationships/relationship-types)
#### Changed #### Changed
- FOS and SDGs were removed from the [ResearchProduct.subjects](./data-model/entities/research-product#subjects) - FOS and SDGs were removed from the [result subjects](/data-model/entities/result#subjects)
- Measures were removed from the [ResearchProduct.instance](./data-model/entities/research-product#instance) - Measures were removed from the [result instance](/data-model/entities/result#instance)
- Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022 - Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022
- Added ORCID works without a DOI from November 2022 - Added ORCID works without a DOI from November 2022

View File

@ -5,19 +5,18 @@ The OpenAIRE Graph comprises several types of [entities](../category/entities) a
The latest version of the JSON schema can be found on the [Downloads](../downloads/full-graph) section. The latest version of the JSON schema can be found on the [Downloads](../downloads/full-graph) section.
<p align="center"> <p align="center">
<img loading="lazy" alt="Data model" src={require('../assets/img/data-model-3.png').default} width="80%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Data model" src={require('../assets/img/data-model-2.png').default} width="80%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
The figure above, presents the graph's data model. The figure above, presents the graph's data model.
Its main entities are described in brief below: Its main entities are described in brief below:
* [Research products](./entities/research-product) represent the outcomes (or products) of research activities. * [Results](/data-model/entities/result) represent the outcomes (or products) of research activities.
* [Data sources](./entities/data-source) are the sources from which the metadata of graph objects are collected. * [Data Sources](/data-model/entities/data-source) are the sources from which the metadata of graph objects are collected.
* [Organizations](./entities/organization) correspond to companies or research institutions involved in projects, * [Organizations](/data-model/entities/organization) correspond to companies or research institutions involved in projects,
responsible for operating data sources or consisting the affiliations of Product creators. responsible for operating data sources or consisting the affiliations of Product creators.
* [Projects](./entities/project) are research project grants funded by a Funding Stream of a Funder. * [Projects](/data-model/entities/project) are research project grants funded by a Funding Stream of a Funder.
* [Communities](./entities/community) are groups of people with a common research intent (e.g. research infrastructures, university alliances). * [Communities](/data-model/entities/community) are groups of people with a common research intent (e.g. research infrastructures, university alliances).
* Persons correspond to individual researchers who are involved in the design, creation or maintenance of research products. Currently, this is a non-materialized entity type in the Graph, which means that the respective metadata (and relationships) are encapsulated in the author field of the respective research products.
:::note Further reading :::note Further reading

View File

@ -19,7 +19,7 @@ _Type: String &bull; Cardinality: ONE_
The OpenAIRE id for the community/research infrastructure, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers). The OpenAIRE id for the community/research infrastructure, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers).
```json ```json
"id": "context_____::5b7f9fa40bdc12072249204cedfa7808" "id": "00|context_____::5b7f9fa40bdc12072249204cedfa7808"
``` ```
### acronym ### acronym
@ -72,11 +72,11 @@ The type of the community; one of `{ Research Community, Research infrastructure
"type": "Research Community" "type": "Research Community"
``` ```
### zenodoCommunity ### zenodo_community
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The URL of the Zenodo community associated to the Research community/Research infrastructure. The URL of the Zenodo community associated to the Research community/Research infrastructure.
```json ```json
"zenodoCommunity": "https://zenodo.org/communities/covid-19" "zenodo_community": "https://zenodo.org/communities/covid-19"
``` ```

View File

@ -4,7 +4,7 @@ sidebar_position: 2
# Data sources # Data sources
OpenAIRE entity instances are created out of data collected from various data sources of different kinds, such as publication repositories, research data archives, CRIS systems, funder databases, etc. Data sources export information packages (e.g., XML records, HTTP responses, RDF data, JSON) that may contain information on one or more of such entities and possibly relationships between them. OpenAIRE entity instances are created out of data collected from various data sources of different kinds, such as publication repositories, dataset archives, CRIS systems, funder databases, etc. Data sources export information packages (e.g., XML records, HTTP responses, RDF data, JSON) that may contain information on one or more of such entities and possibly relationships between them.
For example, a metadata record about a project carries information for the creation of a Project entity and its participants (as Organization entities). It is important, once each piece of information is extracted from such packages and inserted into the OpenAIRE information space as an entity, for such pieces to keep provenance information relative to the originating data source. This is to give visibility to the data source, but also to enable the reconstruction of the very same piece of information if problems arise. For example, a metadata record about a project carries information for the creation of a Project entity and its participants (as Organization entities). It is important, once each piece of information is extracted from such packages and inserted into the OpenAIRE information space as an entity, for such pieces to keep provenance information relative to the originating data source. This is to give visibility to the data source, but also to enable the reconstruction of the very same piece of information if problems arise.
@ -18,7 +18,7 @@ _Type: String &bull; Cardinality: ONE_
The OpenAIRE id of the data source, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers). The OpenAIRE id of the data source, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers).
```json ```json
"id": "issn___print::22c514d022b199c346e7f29ca06efc95" "id": "10|issn___print::22c514d022b199c346e7f29ca06efc95"
``` ```
### originalId ### originalId
@ -49,70 +49,70 @@ The persistent identifiers for the datasource.
] ]
``` ```
### type ### datasourcetype
_Type: [ControlledField](other#controlledfield) &bull; Cardinality: ONE_ _Type: [ControlledField](other#controlledfield) &bull; Cardinality: ONE_
The datasource type; see the vocabulary [dnet:datasource_typologies](https://api.openaire.eu/vocabularies/dnet:datasource_typologies). The datasource type; see the vocabulary [dnet:datasource_typologies](https://api.openaire.eu/vocabularies/dnet:datasource_typologies).
```json ```json
"type": { "datasourcetype": {
"scheme": "pubsrepository::journal", "scheme": "pubsrepository::journal",
"value": "Journal" "value": "Journal"
} }
``` ```
### openaireCompatibility ### openairecompatibility
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The OpenAIRE compatibility of the ingested research products, indicates which guidelines they are compliant according to the vocabulary [dnet:datasourceCompatibilityLevel](https://api.openaire.eu/vocabularies/dnet:datasourceCompatibilityLevel). The OpenAIRE compatibility of the ingested results, indicates which guidelines they are compliant according to the vocabulary [dnet:datasourceCompatibilityLevel](https://api.openaire.eu/vocabularies/dnet:datasourceCompatibilityLevel).
```json ```json
"openaireCompatibility": "collected from a compatible aggregator" "openairecompatibility": "collected from a compatible aggregator"
``` ```
### officialName ### officialname
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The official name of the datasource. The official name of the datasource.
```json ```json
"officialBame": "Recent Patents and Topics on Medical Imaging" "officialname": "Recent Patents and Topics on Medical Imaging"
``` ```
### englishName ### englishname
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The English name of the datasource. The English name of the datasource.
```json ```json
"englishName": "Recent Patents and Topics on Medical Imaging" "englishname": "Recent Patents and Topics on Medical Imaging"
``` ```
### websiteUrl ### websiteurl
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The URL of the website of the datasource. The URL of the website of the datasource.
```json ```json
"websiteUrl": "http://dspace.unict.it/" "websiteurl": "http://dspace.unict.it/"
``` ```
### logoUrl ### logourl
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The URL of the logo for the datasource. The URL of the logo for the datasource.
```json ```json
"logoUrl": "https://impactum-journals.uc.pt/public/journals/26/pageHeaderLogoImage_en_US.png" "logourl": "https://impactum-journals.uc.pt/public/journals/26/pageHeaderLogoImage_en_US.png"
``` ```
### dateOfValidation ### dateofvalidation
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The date of validation against the OpenAIRE guidelines for the datasource records. The date of validation against the OpenAIRE guidelines for the datasource records.
```json ```json
"dateOfValidation": "2016-10-10" "dateofvalidation": "2016-10-10"
``` ```
### description ### description
@ -143,61 +143,61 @@ _Type: String &bull; Cardinality: MANY_
The languages present in the data source's content, as defined by OpenDOAR. The languages present in the data source's content, as defined by OpenDOAR.
```json ```json
"languages": [ "languages":[
"eng", "eng",
... ...
] ]
``` ```
### contentTypes ### contenttypes
_Type: String &bull; Cardinality: MANY_ _Type: String &bull; Cardinality: MANY_
Types of content in the data source, as defined by OpenDOAR Types of content in the data source, as defined by OpenDOAR
```json ```json
"contentTypes": [ "contenttypes": [
"Journal articles", "Journal articles",
... ...
] ]
``` ```
### releaseStartDate ### releasestartdate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Releasing date of the data source, as defined by re3data.org. Releasing date of the data source, as defined by re3data.org.
```json ```json
"releaseStartDate": "2010-07-24" "releasestartdate": "2010-07-24"
``` ```
### releaseEndDate ### releaseenddate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Date when the data source went offline or stopped ingesting new research data. As defined by re3data.org Date when the data source went offline or stopped ingesting new research data. As defined by re3data.org
```json ```json
"releaseEndDate": "2016-03-28" "releaseenddate": "2016-03-28"
``` ```
### accessRights ### accessrights
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Type of access to the data source, as defined by re3data.org. Possible values: `{ open, restricted, closed }`. Type of access to the data source, as defined by re3data.org. Possible values: `{ open, restricted, closed }`.
```json ```json
"accessRights": "open" "accessrights": "open"
``` ```
### uploadRights ### uploadrights
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Type of data upload, as defined by re3data.org; one of `{ open, restricted, closed }`. Type of data upload, as defined by re3data.org; one of `{ open, restricted, closed }`.
```json ```json
"uploadRights": "closed" "uploadrights": "closed"
``` ```
### databaseAccessRestriction ### databaseaccessrestriction
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Access restrictions to the research data repository. Allowed values are: `{ feeRequired, registration, other }`. Access restrictions to the research data repository. Allowed values are: `{ feeRequired, registration, other }`.
@ -205,10 +205,10 @@ Access restrictions to the research data repository. Allowed values are: `{ feeR
This field only applies for re3data data source; see [re3data schema specification](https://gfzpublic.gfz-potsdam.de/rest/items/item_758898_6/component/file_775891/content) for more details. This field only applies for re3data data source; see [re3data schema specification](https://gfzpublic.gfz-potsdam.de/rest/items/item_758898_6/component/file_775891/content) for more details.
```json ```json
"databaseAccessRestriction": "registration" "databaseaccessrestriction": "registration"
``` ```
### dataUploadRestriction ### datauploadrestriction
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Upload restrictions applied by the datasource, as defined by re3data.org. One of `{ feeRequired, registration, other }`. Upload restrictions applied by the datasource, as defined by re3data.org. One of `{ feeRequired, registration, other }`.
@ -216,7 +216,7 @@ Upload restrictions applied by the datasource, as defined by re3data.org. One of
This field only applies for re3data data source; see [re3data schema specification](https://gfzpublic.gfz-potsdam.de/rest/items/item_758898_6/component/file_775891/content) for more details. This field only applies for re3data data source; see [re3data schema specification](https://gfzpublic.gfz-potsdam.de/rest/items/item_758898_6/component/file_775891/content) for more details.
```json ```json
"dataUploadRestriction": "feeRequired registration" "datauploadrestriction": "feeRequired registration"
``` ```
### versioning ### versioning
@ -231,7 +231,7 @@ This field only applies for re3data data source; see [re3data schema specificati
"versioning": true "versioning": true
``` ```
### citationGuidelineUrl ### citationguidelineurl
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The URL of the data source providing information on how to cite its items. The DataCite citation format is recommended (http://www.datacite.org/whycitedata). The URL of the data source providing information on how to cite its items. The DataCite citation format is recommended (http://www.datacite.org/whycitedata).
@ -239,16 +239,16 @@ The URL of the data source providing information on how to cite its items. The D
This field only applies for re3data data source; see [re3data schema specification](https://gfzpublic.gfz-potsdam.de/rest/items/item_758898_6/component/file_775891/content) for more details. This field only applies for re3data data source; see [re3data schema specification](https://gfzpublic.gfz-potsdam.de/rest/items/item_758898_6/component/file_775891/content) for more details.
```json ```json
"citationGuidelineUrl": "https://physionet.org/about/#citation" "citationguidelineurl": "https://physionet.org/about/#citation"
``` ```
### pidSystems ### pidsystems
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The persistent identifier system that is used by the data source. As defined by re3data.org. The persistent identifier system that is used by the data source. As defined by re3data.org.
```json ```json
"pidSystems": "hdl" "pidsystems": "hdl"
``` ```
### certificates ### certificates
@ -284,11 +284,11 @@ Information about the journal, if this data source is of type Journal.
} }
``` ```
### missionStatementUrl ### missionstatementurl
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The URL of a mission statement describing the designated community of the data source. As defined by re3data.org The URL of a mission statement describing the designated community of the data source. As defined by re3data.org
```json ```json
"missionStatementUrl": "https://www.sigma2.no/content/nird-research-data-archive" "missionstatementurl": "https://www.sigma2.no/content/nird-research-data-archive"
``` ```

View File

@ -17,34 +17,34 @@ _Type: String &bull; Cardinality: ONE_
The OpenAIRE id for the organization, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers). The OpenAIRE id for the organization, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers).
```json ```json
"id": "openorgs____::b84450f9864182c67b8611b5593f4250" "id": "20|openorgs____::b84450f9864182c67b8611b5593f4250"
``` ```
### legalShortName ### legalshortname
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The legal name in short form of the organization. The legal name in short form of the organization.
```json ```json
"legalShortName": "ARC" "legalshortname": "ARC"
``` ```
### legalName ### legalname
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The legal name of the organization. The legal name of the organization.
```json ```json
"legalName": "Athena Research and Innovation Center In Information Communication & Knowledge Technologies" "legalname": "Athena Research and Innovation Center In Information Communication & Knowledge Technologies"
``` ```
### alternativeNames ### alternativenames
_Type: String &bull; Cardinality: MANY_ _Type: String &bull; Cardinality: MANY_
Alternative names that identify the organization. Alternative names that identify the organization.
```json ```json
"alternativeNames": [ "alternativenames": [
"Athena Research and Innovation Center In Information Communication & Knowledge Technologies", "Athena Research and Innovation Center In Information Communication & Knowledge Technologies",
"Athena RIC", "Athena RIC",
"ARC", "ARC",
@ -52,13 +52,13 @@ Alternative names that identify the organization.
] ]
``` ```
### websiteUrl ### websiteurl
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The websiteurl of the organization. The websiteurl of the organization.
```json ```json
"websiteUrl": "https://www.athena-innovation.gr/el/announce/pressreleases.html" "websiteurl": "https://www.athena-innovation.gr/el/announce/pressreleases.html"
``` ```
### country ### country
@ -86,7 +86,8 @@ The list of persistent identifiers for the organization.
}, },
{ {
"scheme": "GRID", "scheme": "GRID",
"value": "grid.19843.37" "value":
"grid.19843.37"
}, },
... ...
] ]

View File

@ -20,7 +20,7 @@ Indicates the OpenAccess status. Values are set according to the [Unpaywall meth
``` ```
## AlternateIdentifier ## AlternateIdentifier
Type used to represent the information associated to persistent identifiers associated to the research product that have not been forged by an authority for that pid type. For example we collect metadata from an institutional repository that provides as identifier for the research product also the DOI. Type used to represent the information associated to persistent identifiers associated to the result that have not been forged by an authority for that pid type. For example we collect metadata from an institutional repository that provides as identifier for the result also the doi.
### scheme ### scheme
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
@ -63,15 +63,15 @@ The quantity of money.
## Author ## Author
Represents the research product author. Represents the result author.
### fullName ### fullname
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Author's full name. Author's full name.
```json ```json
"fullName": "Turunen, Heidi" "fullname": "Turunen, Heidi"
``` ```
### name ### name
@ -95,7 +95,7 @@ Author's family name.
### rank ### rank
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Author's order in the list of authors for the given research product. Author's order in the list of authors for the given result.
```json ```json
"rank": 1 "rank": 1
@ -167,7 +167,7 @@ The author's pid value in that scheme.
``` ```
## BestAccessRight ## BestAccessRight
Indicates the most open access rights \*available among the research product instances. Indicates the most open access rights \*available among the result Instances.
\* where the openness is defined by the ordering of the access right terms in the following. \* where the openness is defined by the ordering of the access right terms in the following.
``` ```
@ -201,87 +201,36 @@ Scheme of reference for access right code. Currently, always set to COAR access
"scheme": "http://vocabularies.coar-repositories.org/documentation/access_rights/" "scheme": "http://vocabularies.coar-repositories.org/documentation/access_rights/"
``` ```
## CitationImpact
The different citation-based impact indicators as computed by [BIP!](https://bip.imsi.athenarc.gr/).
### indicator
_Type: String &bull; Cardinality: ONE_
The name of indicator; it can be either one of:
* `influence`: it reflects the overall/total (citation-based) impact of an article in the research community at large, based on the underlying citation network (diachronically).
* `citationCount`: it is an alternative to the "Influence" indicator, which also reflects the overall/total (citation-based) impact of an article in the research community at large, based on the underlying citation network (diachronically).
* `popularity`: it reflects the "current" (citation-based) impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
* `impulse`: it reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
For more details on how these indicators are calculated, please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators).
```json
"citationImpact": {
"influence": 123,
"influenceClass": "C2",
"citationCount": 456,
"citationClass": "C3",
"popularity": 234,
"popularityClass": "C1",
"impulse": 987,
"impulseClass": "C3"
}
```
### class
_Type: String &bull; Cardinality: ONE_
The impact class assigned based on the indicator score.
To facilitate comprehension, BIP! also offers impact classes for articles, to group together those that have similar impact. The following 5 classes are provided:
* `C1`: Top 0.01%
* `C2`: Top 0.1%
* `C3`: Top 1%
* `C4`: Top 10%
* `C5`: Bottom 90%
## Container ## Container
This field has information about the conference or journal where the research product has been presented or published. This field has information about the conference or journal where the result has been presented or published.
```json
"container": {
"name": "Research Policy",
"edition": "xyz",
"issnLinking": "0048-7333",
"issnOnline": "1873-7625",
"issnPrinted": "1377-9655",
"sp": "xyz",
"ep": "xyz",
"iss": "xyz",
"vol": "xyz"
}
```
```json
"container": {
"name": "Research Policy",
"conferenceDate": "2022-09-22",
"conferencePlace": "Padua, Italy"
}
```
### name ### name
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Name of the journal or conference. Name of the journal or conference.
```json
"name": "Research Policy"
```
### issnPrinted ### issnPrinted
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The journal printed issn. The journal printed issn.
```json
"issnPrinted": "0048-7333"
```
### issnOnline ### issnOnline
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The journal online issn. The journal online issn.
```json
"issnOnline": "1873-7625"
```
### issnLinking ### issnLinking
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
@ -292,88 +241,114 @@ _Type: String &bull; Cardinality: ONE_
The journal issue. The journal issue.
```json
"iss": "5"
```
### sp ### sp
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The start page. The start page.
```json
"sp": "12"
```
### ep ### ep
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The end page. The end page.
```json
"ep": "22"
```
### vol ### vol
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The journal volume. The journal volume.
```json
"vol": "50"
```
### edition ### edition
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The edition of the journal or conference. The edition of the journal or conference.
### conferencePlace ### conferenceplace
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The place of the conference. The place of the conference.
### conferenceDate ```json
"conferenceplace": "Padua, Italy"
```
### conferencedate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The date of the conference. The date of the conference.
```json
"conferencedate": "2022-09-22"
```
## ControlledField ## ControlledField
<!-- <span className="todo">TODO: similar to AlternateIdentifier and ResultPid?</span> --> <!-- <span className="todo">TODO: similar to AlternateIdentifier and ResultPid?</span> -->
Generic type used to represent the information described by a scheme and a value in that scheme (i.e. pid). Generic type used to represent the information described by a scheme and a value in that scheme (i.e. pid).
```json
{
"scheme": "DOI",
"value": "10.5281/zenodo.4707307"
}
```
### scheme ### scheme
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Vocabulary reference. Vocabulary reference.
```json
"scheme": "DOI"
```
### value ### value
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Value from the given scheme/vocabulary. Value from the given scheme/vocabulary.
```json
"value": "10.5281/zenodo.4707307"
```
## Country ## Country
To represent the generic country code and label. To represent the generic country code and label.
```json
{
"code" : "IT",
"label": "Italy"
}
```
### code ### code
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
ISO 3166-1 alpha-2 country code. ISO 3166-1 alpha-2 country code.
```json
"code" : "IT"
```
### label ### label
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The country label. The country label.
```json
"label": "Italy"
```
## Funding ## Funding
Funding information for a project. Funding information for a project.
### fundingStream ### funding_stream
_Type: [FundingStream](#fundingstream) &bull; Cardinality: ONE_ _Type: [FundingStream](#fundingstream) &bull; Cardinality: ONE_
Funding information for the project. Funding information for the project.
```json ```json
"fundingStream": { "funding_stream": {
"description": "Horizon 2020 Framework Programme - Research and Innovation action", "description": "Horizon 2020 Framework Programme - Research and Innovation action",
"id": "EC::H2020::RIA" "id": "EC::H2020::RIA"
} }
@ -469,16 +444,16 @@ The currency of the granted amount (e.g. EUR).
"currency": "EUR" "currency": "EUR"
``` ```
### fundedAmount ### fundedamount
_Type: Number &bull; Cardinality: ONE_ _Type: Number &bull; Cardinality: ONE_
The funded amount. The funded amount.
```json ```json
"fundedAmount": 1.0E7 "fundedamount": 1.0E7
``` ```
### totalCost ### totalcost
_Type: Number &bull; Cardinality: ONE_ _Type: Number &bull; Cardinality: ONE_
The total cost of the project. The total cost of the project.
@ -509,7 +484,7 @@ The description of the programme.
``` ```
## Instance ## Instance
An instance is one specific materialization or version of the research product. For example, you can have one research product with three instances due to deduplication: An instance is one specific materialization or version of the result. For example, you can have one result with three instances as result of deduplication:
* one is the pre-print * one is the pre-print
* one is the post-print * one is the post-print
@ -517,13 +492,13 @@ An instance is one specific materialization or version of the research product.
Each instance is characterized by the properties that follow. Each instance is characterized by the properties that follow.
### accessRight ### accessright
_Type: [AccessRight](#accessright) &bull; Cardinality: ONE_ _Type: [AccessRight](#accessright) &bull; Cardinality: ONE_
Maps [dc:rights](https://www.dublincore.org/specifications/dublin-core/dcmi-terms/elements11/rights/), describes the access rights of the web resources relative to this instance. Maps [dc:rights](https://www.dublincore.org/specifications/dublin-core/dcmi-terms/elements11/rights/), describes the access rights of the web resources relative to this instance.
```json ```json
"accessRight": { "accessright": {
"code": "c_abf2", "code": "c_abf2",
"label": "OPEN", "label": "OPEN",
"openAccessRoute": "gold", "openAccessRoute": "gold",
@ -534,7 +509,7 @@ Maps [dc:rights](https://www.dublincore.org/specifications/dublin-core/dcmi-term
### alternateIdentifier ### alternateIdentifier
_Type: [AlternateIdentifier](#alternateidentifier) &bull; Cardinality: MANY_ _Type: [AlternateIdentifier](#alternateidentifier) &bull; Cardinality: MANY_
All the identifiers associated to the research product other than the authoritative ones. All the identifiers associated to the result other than the authoritative ones.
```json ```json
"alternateIdentifier": [ "alternateIdentifier": [
@ -546,13 +521,13 @@ All the identifiers associated to the research product other than the authoritat
] ]
``` ```
### articleProcessingCharge ### articleprocessingcharge
_Type: [APC](#apc) &bull; Cardinality: ONE_ _Type: [APC](#apc) &bull; Cardinality: ONE_
The money spent to make this book or article available in Open Access. Source for this information is the OpenAPC initiative. The money spent to make this book or article available in Open Access. Source for this information is the OpenAPC initiative.
```json ```json
"articleProcessingCharge": { "articleprocessingcharge": {
"currency": "EUR", "currency": "EUR",
"amount": "1000" "amount": "1000"
} }
@ -582,13 +557,13 @@ The set of persistent identifiers associated to this instance that have been col
] ]
``` ```
### publicationDate ### publicationdate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The publication date of the research product. The publication date of the research product.
```json ```json
"publicationDate": "2009-02-12" "publicationdate": "2009-02-12"
``` ```
### refereed ### refereed
@ -631,27 +606,39 @@ URLs to the instance. They may link to the actual full-text or to the landing pa
## Indicator ## Indicator
These are indicators computed for a specific OpenAIRE research product. These are indicators computed for a specific OpenAIRE result.
Each Indicator object is composed of the following properties: Each Indicator object is composed of the following properties:
### citationImpact ### impactMeasures
_Type: [CitationImpact](#citationImpact) &bull; Cardinality: MANY_ _Type: [ImpactMeasures](#impactmeasures-1) &bull; Cardinality: ONE_
These indicators, provided by [BIP!](https://bip.imsi.athenarc.gr/), estimate the citation-based impact of a research product. These impact-based indicators, provided by [BIP!](https://bip.imsi.athenarc.gr/), estimate the impact of a result.
For details about their calculation, please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators). For details about their calculation, please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators).
```json ```json
"citationImpact": { "impactMeasures": {
"influence": 123, "influence": {
"influenceClass": "C2", "score": "123",
"citationCount": 456, "class": "C2"
"citationClass": "C3", },
"popularity": 234, "influence_alt" : {
"popularityClass": "C1", "score": "456",
"impulse": 987, "class": "C3"
"impulseClass": "C3" },
"popularity": {
"score": "234",
"class": "C1"
},
"popularity_alt": {
"score": "345",
"class": "C5"
},
"impulse": {
"score": "987",
"class": "C3"
}
} }
``` ```
@ -660,119 +647,215 @@ _Type: [UsageCounts](#usagecounts-1) &bull; Cardinality: ONE_
These measures, computed by the [UsageCounts Service](https://usagecounts.openaire.eu/), are based on usage statistics. These measures, computed by the [UsageCounts Service](https://usagecounts.openaire.eu/), are based on usage statistics.
Please refer [here](/graph-production-workflow/indicators-ingestion/usage-counts) for more details.
```json ```json
"usageCounts": { "usageCounts":{
"downloads": "10", "downloads": "10",
"views": "20" "views": "20"
} }
``` ```
## Language ## Language
Represents information for the language of the research product. Represents information for the language of the result
```json
"language": {
"code": "eng",
"label": "English"
}
```
### code ### code
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Alpha-3/ISO 639-2 code of the language. Values controlled by the [dnet:languages vocabulary](https://api.openaire.eu/vocabularies/dnet:languages). Alpha-3/ISO 639-2 code of the language. Values controlled by the [dnet:languages vocabulary](https://api.openaire.eu/vocabularies/dnet:languages).
```json
"code": "eng"
```
### label ### label
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Language label in English. Language label in English.
```json
"label": "English"
```
## ImpactMeasures
The different impact-based indicators as computed by [BIP!](https://bip.imsi.athenarc.gr/).
### influence
_Type: [Score](#score) &bull; Cardinality: ONE_
This indicator reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
For more details please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators#pagerank-pr).
```json
"influence": {
"score": "123",
"class": "C2"
}
```
### influence_alt
_Type: [Score](#score) &bull; Cardinality: ONE_
This is an alternative to the "Influence" indicator, which also reflects the overall/total impact of an article in the research community at large, based on the underlying citation network (diachronically).
For more details please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators#citation-count-cc).
```json
"influence_alt" :{
"score": "456",
"class": "C3"
}
```
### popularity
_Type: [Score](#score) &bull; Cardinality: ONE_
This indicator reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
For more details please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators#attrank).
```json
"popularity":{
"score": "234",
"class": "C1"
}
```
### popularity_alt
_Type: [Score](#score) &bull; Cardinality: ONE_
This is an alternative to the "Popularity" indicator, which also reflects the "current" impact/attention (the "hype") of an article in the research community at large, based on the underlying citation network.
For more details please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators#ram).
```json
"popularity_alt":{
"score": "345",
"class": "C5"
}
```
### impulse
_Type: [Score](#score) &bull; Cardinality: ONE_
This indicator reflects the initial momentum of an article directly after its publication, based on the underlying citation network.
For more details please refer [here](/graph-production-workflow/indicators-ingestion/impact-indicators#incubation-citation-count-icc).
```json
"impulse":{
"score": "987",
"class": "C3"
}
```
## OrganizationPid ## OrganizationPid
The schema and value for identifiers of the organization. The schema and value for identifiers of the organization.
```json
{
"scheme" : "GRID",
"value" : "grid.7119.e"
}
```
### scheme ### scheme
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Vocabulary reference (i.e. isni). Vocabulary reference (i.e. isni).
```json
"scheme" : "GRID"
```
### value ### value
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Value from the given scheme/vocabulary (i.e. 0000000090326370). Value from the given scheme/vocabulary (i.e. 0000000090326370).
```json
"value" : "grid.7119.e"
```
## Provenance ## Provenance
Indicates the process that produced (or provided) the information, and the trust associated to the information. Indicates the process that produced (or provided) the information, and the trust associated to the information.
```json
{
"provenance" : "Harvested",
"trust": "0.9"
}
```
### provenance ### provenance
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Provenance term from the vocabulary [dnet:provenanceActions](https://api.openaire.eu/vocabularies/dnet:provenanceActions). Provenance term from the vocabulary [dnet:provenanceActions](https://api.openaire.eu/vocabularies/dnet:provenanceActions).
```json
"provenance": "Harvested"
```
### trust ### trust
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Trust, expressed as a number in the range [0-1]. Trust, expressed as a number in the range [0-1].
```json
"trust": "0.9"
```
## ResultCountry ## ResultCountry
Indicates the country associated to the research product. It is for the country associated to the result.
It is a subclass of [Country](#country) and extends it with provenance information. It is a subclass of [Country](#country) and extends it with provenance information.
### provenance ### provenance
_Type: [Provenance](#provenance-2) &bull; Cardinality: ONE_ _Type: [Provenance](#provenance-2) &bull; Cardinality: ONE_
Indicates the reason why this country is associated to this research product. Indicates the reason why this country is associated to this result.
```json ```json
{ "provenance": {
"code" : "IT", "provenance": "inferred by OpenAIRE",
"label": "Italy", "trust": "0.85"
"provenance": {
"provenance": "inferred by OpenAIRE",
"trust": "0.85"
}
} }
``` ```
## ResultPid ## ResultPid
Type used to represent the information associated to persistent identifiers for the research product that have been forged by an authority for that pid type. Type used to represent the information associated to persistent identifiers for the result that have been forged by an authority for that pid type.
<!-- <span className="todo">Seems to be similar to the AlternateIdentifier. What is the difference?</span> --> <!-- <span className="todo">Seems to be similar to the AlternateIdentifier. What is the difference?</span> -->
```json
{
"scheme" : "doi",
"value" : "10.21511/bbs.13(3).2018.13"
}
```
### scheme ### scheme
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The scheme of the persistent identifier for the research product (i.e. doi). If the pid is here it means the information for the pid has been collected from an authority for that pid type (i.e. Crossref/Datacite for doi). The set of authoritative pid is: `doi` when collected from Crossref or Datacite, `pmid` when collected from EuroPubmed, `arxiv` when collected from arXiv, `handle` from the repositories. The scheme of the persistent identifier for the result (i.e. doi). If the pid is here it means the information for the pid has been collected from an authority for that pid type (i.e. Crossref/Datacite for doi). The set of authoritative pid is: `doi` when collected from Crossref or Datacite, `pmid` when collected from EuroPubmed, `arxiv` when collected from arXiv, `handle` from the repositories.
```json
"scheme": "doi"
```
### value ### value
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The value expressed in the scheme (i.e. 10.1000/182). The value expressed in the scheme (i.e. 10.1000/182).
```json
"value": "10.21511/bbs.13(3).2018.13"
```
## Score
The specific score object for each calculated impact measure calculated by [BIP!](https://bip.imsi.athenarc.gr/).
### score
_Type: String &bull; Cardinality: ONE_
The actual indicator score.
```json
"score": "1234"
```
### class
_Type: String &bull; Cardinality: ONE_
The impact class assigned based on the indicator score.
To facilitate comprehension, BIP! also offers impact classes for articles, to group together those that have similar impact. The following 5 classes are provided:
* `C1`: Top 0.01%
* `C2`: Top 0.1%
* `C3`: Top 1%
* `C4`: Top 10%
* `C5`: Bottom 90%
```json
"class": "C2"
```
## Subject ## Subject
Represents keywords associated to the research product. Represents keywords associated to the result.
### subject ### subject
_Type: [SubjectSchemeValue](#subjectschemevalue) &bull; Cardinality: ONE_ _Type: [SubjectSchemeValue](#subjectschemevalue) &bull; Cardinality: ONE_
@ -782,14 +865,25 @@ Contains the subject term: subject type (keyword, MeSH, etc) and the subject ter
```json ```json
"subject": { "subject": {
"scheme": "keyword", "scheme": "keyword",
"value": "SVOC", "value": "SVOC"
"provenance": {
"provenance": "Harvested",
"trust": "0.9"
}
} }
``` ```
### provenance
_Type: [Provenance](#provenance-2) &bull; Cardinality: ONE_
Contains provenance information for the subject term.
```json
"provenance": {
"provenance": "Harvested",
"trust": "0.9"
}
```
## SubjectSchemeValue
Subject classification against a vocabulary
### scheme ### scheme
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
@ -804,28 +898,28 @@ _Type: String &bull; Cardinality: ONE_
The value for the subject in the selected scheme. When the scheme is 'keyword', it means that the subject is free-text (i.e. not a term from a controlled vocabulary). The value for the subject in the selected scheme. When the scheme is 'keyword', it means that the subject is free-text (i.e. not a term from a controlled vocabulary).
### provenance ```json
_Type: [Provenance](#provenance-2) &bull; Cardinality: ONE_ "value" : "pyrolysis-oil"
```
Contains provenance information for the subject term.
## UsageCounts ## UsageCounts
The usage counts indicator computed for this research product. The usage counts indicator computed for this result.
```json
"usageCounts": {
"downloads": "10",
"views": "20"
}
```
### views ### views
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The number of views for this research product. The number of views for this result.
```json
"views": "10"
```
### downloads ### downloads
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The number of downloads for this research product. The number of downloads for this result.
```json
"downloads": "5"
```

View File

@ -4,7 +4,7 @@ sidebar_position: 4
# Projects # Projects
Of crucial interest to OpenAIRE is also the identification of the funders (e.g. European Commission, WellcomeTrust, FCT Portugal, NWO The Netherlands) that co-funded the projects that have led to a given research product. Projects are characterized by a list of funding streams (e.g. FP7, H2020 for the EC), which identify the strands of fundings. Funding streams can be nested to form a tree of sub-funding streams. Of crucial interest to OpenAIRE is also the identification of the funders (e.g. European Commission, WellcomeTrust, FCT Portugal, NWO The Netherlands) that co-funded the projects that have led to a given result. Projects are characterized by a list of funding streams (e.g. FP7, H2020 for the EC), which identify the strands of fundings. Funding streams can be nested to form a tree of sub-funding streams.
--- ---
@ -16,7 +16,7 @@ _Type: String &bull; Cardinality: ONE_
Main entity identifier, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers). Main entity identifier, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers).
```json ```json
"id": "corda__h2020::70ea22400fd890c5033cb31642c4ae68" "id": "40|corda__h2020::70ea22400fd890c5033cb31642c4ae68"
``` ```
### code ### code
@ -46,13 +46,13 @@ Project's title.
"title": "OpenAIRE Advancing Open Scholarship" "title": "OpenAIRE Advancing Open Scholarship"
``` ```
### callIdentifier ### callidentifier
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The identifier of the research call. The identifier of the research call.
```json ```json
"callIdentifier": "H2020-EINFRA-2017"` "callidentifier": "H2020-EINFRA-2017"`
``` ```
### funding ### funding
@ -63,7 +63,7 @@ Funding information for the project.
```json ```json
"funding": [ "funding": [
{ {
"fundingStream": { "funding_stream": {
"description": "Horizon 2020 Framework Programme - Research and Innovation action", "description": "Horizon 2020 Framework Programme - Research and Innovation action",
"id": "EC::H2020::RIA" "id": "EC::H2020::RIA"
}, },
@ -81,8 +81,8 @@ The money granted to the project.
```json ```json
"granted": { "granted": {
"currency": "EUR", "currency": "EUR",
"fundedAmount": 1.0E7, "fundedamount": 1.0E7,
"totalCost": 1.0E7 "totalcost": 1.0E7
} }
``` ```
@ -109,36 +109,36 @@ _Type: String &bull; Cardinality: ONE_
] ]
``` ```
### openAccessMandateForDataset ### openaccessmandatefordataset
_Type: Boolean &bull; Cardinality: ONE_ _Type: Boolean &bull; Cardinality: ONE_
```json ```json
"openAccessMandateForDataset": true "openaccessmandatefordataset": true
``` ```
### openAccessMandateForPublications ### openaccessmandateforpublications
_Type: Boolean &bull; Cardinality: ONE_ _Type: Boolean &bull; Cardinality: ONE_
```json ```json
"openAccessMandateForPublications": true "openaccessmandateforpublications": true
``` ```
### startDate ### startdate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The start year of the project. The start year of the project.
```json ```json
"startDate": "2018-01-01" "startdate": "2018-01-01"
``` ```
### endDate ### enddate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The end year pf the project. The end year pf the project.
```json ```json
"endDate": "2021-02-28" "enddate": "2021-02-28"
``` ```
### subject ### subject
@ -161,11 +161,11 @@ Short summary of the project.
"summary": "OpenAIRE-Advance continues the mission of OpenAIRE to support the Open Access/Open Data mandates in Europe. By sustaining the current successful infrastructure, comprised of a human network and robust technical services, it consolidates its achievements while working to shift the momentum among its communities to Open Science, aiming to be a trusted e-Infrastructurewithin the realms of the European Open Science Cloud.In this next phase, OpenAIRE-Advance strives to empower its National Open Access Desks (NOADs) so they become a pivotal part within their own national data infrastructures, positioningOA and open science onto national agendas. The capacity building activities bring together experts ontopical task groups in thematic areas(open policies, RDM, legal issues, TDM), promoting a train the trainer approach, strengthening and expanding the pan-European Helpdesk with support and training toolkits, training resources and workshops.It examines key elements of scholarly communication, i.e., co-operative OA publishing and next generation repositories, to develop essential building blocks of the scholarly commons.On the technical level OpenAIRE-Advance focuses on the operation and maintenance of the OpenAIRE technical TRL8/9 services,and radically improvesthe OpenAIRE services on offer by: a) optimizing their performance and scalability, b) refining their functionality based on end-user feedback, c) repackagingthem into products, taking a professional marketing approach with well-defined KPIs, d)consolidating the range of services/products into a common e-Infra catalogue to enable a wider uptake.OpenAIRE-Advancesteps up its outreach activities with concrete pilots with three major RIs,citizen science initiatives, and innovators via a rigorous Open Innovation programme. Finally, viaits partnership with COAR, OpenAIRE-Advance consolidatesOpenAIREs global roleextending its collaborations with Latin America, US, Japan, Canada, and Africa." "summary": "OpenAIRE-Advance continues the mission of OpenAIRE to support the Open Access/Open Data mandates in Europe. By sustaining the current successful infrastructure, comprised of a human network and robust technical services, it consolidates its achievements while working to shift the momentum among its communities to Open Science, aiming to be a trusted e-Infrastructurewithin the realms of the European Open Science Cloud.In this next phase, OpenAIRE-Advance strives to empower its National Open Access Desks (NOADs) so they become a pivotal part within their own national data infrastructures, positioningOA and open science onto national agendas. The capacity building activities bring together experts ontopical task groups in thematic areas(open policies, RDM, legal issues, TDM), promoting a train the trainer approach, strengthening and expanding the pan-European Helpdesk with support and training toolkits, training resources and workshops.It examines key elements of scholarly communication, i.e., co-operative OA publishing and next generation repositories, to develop essential building blocks of the scholarly commons.On the technical level OpenAIRE-Advance focuses on the operation and maintenance of the OpenAIRE technical TRL8/9 services,and radically improvesthe OpenAIRE services on offer by: a) optimizing their performance and scalability, b) refining their functionality based on end-user feedback, c) repackagingthem into products, taking a professional marketing approach with well-defined KPIs, d)consolidating the range of services/products into a common e-Infra catalogue to enable a wider uptake.OpenAIRE-Advancesteps up its outreach activities with concrete pilots with three major RIs,citizen science initiatives, and innovators via a rigorous Open Innovation programme. Finally, viaits partnership with COAR, OpenAIRE-Advance consolidatesOpenAIREs global roleextending its collaborations with Latin America, US, Japan, Canada, and Africa."
``` ```
### websiteUrl ### websiteurl
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The website of the project The website of the project
```json ```json
"websiteUrl": "https://www.openaire.eu/advance/" "websiteurl": "https://www.openaire.eu/advance/"
``` ```

View File

@ -1,527 +0,0 @@
---
sidebar_position: 1
---
# Research products
Research products are intended as digital objects, described by metadata, resulting from a scientific process.
In this page, we descibe the properties of the `ResearchProduct` object.
Moreover, there are the following sub-types of a `ResearchProduct`, that inherit all its properties and further extend it:
* [Publication](#publication)
* [Data](#data)
* [Software](#software)
* [Other research product](#other-research-product)
---
## The `ResearchProduct` object
### id
_Type: String &bull; Cardinality: ONE_
Main entity identifier, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers).
```json
"id": "doi_dedup___::80f29c8c8ba18c46c88a285b7e739dc3"
```
### type
_Type: String &bull; Cardinality: ONE_
Type of the research products. Possible types:
* `publication`
* `data`
* `software`
* `other`
as declared in the terms from the [dnet:result_typologies vocabulary](https://api.openaire.eu/vocabularies/dnet:result_typologies).
```json
"type": "publication"
```
### originalId
_Type: String &bull; Cardinality: MANY_
Identifiers of the record at the original sources.
```json
"originalId": [
"oai:pubmedcentral.nih.gov:8024784",
"S0048733321000305",
"10.1016/j.respol.2021.104226",
"3136742816"
]
```
### mainTitle
_Type: String &bull; Cardinality: ONE_
A name or title by which a research product is known. It may be the title of a publication or the name of a piece of software.
```json
"mainTitle": "The fall of the innovation empire and its possible rise through open science"
```
### subTitle
_Type: String &bull; Cardinality: ONE_
Explanatory or alternative name by which a research product is known.
```json
"subTitle": "An analysis of cases from 1980 - 2020"
```
### author
_Type: [Author](other#author) &bull; Cardinality: MANY_
The main researchers involved in producing the data, or the authors of the publication.
```json
"author": [
{
"fullName": "E. Richard Gold",
"rank": 1,
"name": "Richard",
"surname": "Gold",
"pid": {
"id": {
"scheme": "orcid",
"value": "0000-0002-3789-9238"
},
"provenance": {
"provenance": "Harvested",
"trust": "0.9"
}
}
},
...
]
```
### bestAccessRight
_Type: [BestAccessRight](other#bestaccessright) &bull; Cardinality: ONE_
The most open access right associated to the manifestations of this research product.
```json
"bestAccessRight": {
"code": "c_abf2",
"label": "OPEN",
"scheme": "http://vocabularies.coar-repositories.org/documentation/access_rights/"
}
```
### contributor
_Type: String &bull; Cardinality: MANY_
The institution or person responsible for collecting, managing, distributing, or otherwise contributing to the development of the resource.
```json
"contributor": [
"University of Zurich",
"Wright, Aidan G C",
"Hallquist, Michael",
...
]
```
### country
_Type: [ResultCountry](other#resultcountry) &bull; Cardinality: MANY_
Country associated with the research product: it is the country of the organisation that manages the institutional repository or national aggregator or CRIS system from which this record was collected.
Country of affiliations of authors can be found instead in the affiliation relation.
```json
"country": [
{
"code": "CH",
"label": "Switzerland",
"provenance": {
"provenance": "Inferred by OpenAIRE",
"trust": "0.85"
}
},
...
]
```
### coverage
_Type: String &bull; Cardinality: MANY_
### dateOfCollection
_Type: String &bull; Cardinality: ONE_
When OpenAIRE collected the record the last time.
```json
"dateOfCollection": "2021-06-09T11:37:56.248Z"
```
### description
_Type: String &bull; Cardinality: MANY_
A brief description of the resource and the context in which the resource was created.
```json
"description": [
"Open science partnerships (OSPs) are one mechanism to reverse declining efficiency. OSPs are public-private partnerships that openly share publications, data and materials.",
"There is growing concern that the innovation system's ability to create wealth and attain social benefit is declining in effectiveness. This article explores the reasons for this decline and suggests a structure, the open science partnership, as one mechanism through which to slow down or reverse this decline.",
"The article examines the empirical literature of the last century to document the decline. This literature suggests that the cost of research and innovation is increasing exponentially, that researcher productivity is declining, and, third, that these two phenomena have led to an overall flat or declining level of innovation productivity.",
...
]
```
### embargoEndDate
_Type: String &bull; Cardinality: ONE_
Date when the embargo ends and this research product turns Open Access.
```json
"embargoEndDate": "2017-01-01"
```
### indicators
_Type: [Indicator](other#indicator-1) &bull; Cardinality: ONE_
The indicators computed for this research product;
currently, the following types of indicators are supported:
* [Citation-based impact indicators by BIP!](other#citationimpact)
* [Usage Statistics indicators](other#usagecounts)
```json
"indicators": {
"citationImpact": {
"influence": 123,
"influenceClass": "C2",
"citationCount": 456,
"citationClass": "C3",
"popularity": 234,
"popularityClass": "C1",
"impulse": 987,
"impulseClass": "C3"
},
"usageCounts": {
"downloads": "10",
"views": "20"
}
}
```
### instance
_Type: [Instance](other#instance) &bull; Cardinality: MANY_
Specific materialization or version of the research product. For example, you can have one research product with three instances: one is the pre-print, one is the post-print, one is the published version.
```json
"instance": [
{
"accessRight": {
"code": "c_abf2",
"label": "OPEN",
"openAccessRoute": "gold",
"scheme": "http://vocabularies.coar-repositories.org/documentation/access_rights/"
},
"alternateIdentifier": [
{
"scheme": "doi",
"value": "10.1016/j.respol.2021.104226"
},
...
],
"articleProcessingCharge": {
"amount": "4063.93",
"currency": "EUR"
},
"license": "http://creativecommons.org/licenses/by-nc/4.0",
"pid": [
{
"scheme": "pmc",
"value": "PMC8024784"
},
...
],
"publicationDate": "2021-01-01",
"refereed": "UNKNOWN",
"type": "Article",
"url": [
"http://europepmc.org/articles/PMC8024784"
]
},
...
]
```
### language
_Type: [Language](other#language) &bull; Cardinality: ONE_
The alpha-3/ISO 639-2 code of the language. Values controlled by the [dnet:languages vocabulary](https://api.openaire.eu/vocabularies/dnet:languages).
```json
"language": {
"code": "eng",
"label": "English"
}
```
### lastUpdateTimeStamp
_Type: Long &bull; Cardinality: ONE_
Timestamp of last update of the record in OpenAIRE.
```json
"lastUpdateTimeStamp": 1652722279987
```
### pid
_Type: [ResultPid](other#resultpid) &bull; Cardinality: MANY_
Persistent identifiers of the research product. See also the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers) to learn more.
```json
"pid": [
{
"scheme": "pmc",
"value": "PMC8024784"
},
{
"scheme": "doi",
"value": "10.1016/j.respol.2021.104226"
},
...
]
```
### publicationDate
_Type: String &bull; Cardinality: ONE_
Main date of the research product: typically the publication or issued date. In case of a research product with different versions with different dates, the date of the research product is selected as the most frequent well-formatted date. If not available, then the most recent and complete date among those that are well-formatted. For statistics, the year is extracted and the research product is counted only among the research products of that year. Example: Pre-print date: 2019-02-03, Article date provided by repository: 2020-02, Article date provided by Crossref: 2020, OpenAIRE will set as date 2019-02-03, because its the most recent among the complete and well-formed dates. If then the repository updates the metadata and set a complete date (e.g. 2020-02-12), then this will be the new date for the research product because it becomes the most recent most complete date. However, if OpenAIRE then collects the pre-print from another repository with date 2019-02-03, then this will be the “winning date” because it becomes the most frequent well-formatted date.
```json
"publicationDate": "2021-03-18"
```
### publisher
_Type: String &bull; Cardinality: ONE_
The name of the entity that holds, archives, publishes prints, distributes, releases, issues, or produces the resource.
```json
"publisher": "Elsevier, North-Holland Pub. Co"
```
### source
_Type: String &bull; Cardinality: MANY_
A related resource from which the described resource is derived. See definition of Dublin Core field [dc:source](https://www.dublincore.org/specifications/dublin-core/dcmi-terms/elements11/source).
```json
"source": [
"Research Policy",
"Crossref",
...
]
```
### subjects
_Type: [Subject](other#subject) &bull; Cardinality: MANY_
Subject, keyword, classification code, or key phrase describing the resource.
OpenAIRE classifies research products according to the [Field of Science](../../graph-production-workflow/indicators-ingestion/fos-classification.md)
and [Sustainable Development Goals](../../graph-production-workflow/indicators-ingestion/sdg-classification.md) taxonomies.
Check out the relative sections to know more.
```json
"subjects": [
{
"subject": {
"scheme": "FOS",
"value": "01 natural sciences"
},
"provenance": {
"provenance": "inferred by OpenAIRE",
"trust": "0.85"
}
},
{
"subject": {
"scheme": "SDG",
"value": "2. Zero hunger"
},
"provenance": {
"provenance": "inferred by OpenAIRE",
"trust": "0.83"
}
},
{
"subject": {
"scheme": "keyword",
"value": "Open science"
},
"provenance": {
"provenance": "Harvested",
"trust": "0.9"
}
},
...
]
```
### isGreen
_Type: Boolean &bull; Cardinality: ONE_
Indicates whether or not the scientific result was published following the green open access model.
### openAccessColor
_Type: String &bull; Cardinality: ONE_
Indicates the specific open access model used for the publication; possible value is one of `bronze, gold, hybrid`.
### isInDiamondJournal
_Type: Boolean &bull; Cardinality: ONE_
Indicates whether or not the publication was published in a diamond journal.
### publiclyFunded
_Type: String &bull; Cardinality: ONE_
Discloses whether the publication acknowledges grants from public sources.
---
## Sub-types
There are the following sub-types of `Result`. Each inherits all its fields and extends them with the following.
### Publication
Metadata records about research literature (includes types of publications listed [here](http://api.openaire.eu/vocabularies/dnet:result_typologies/publication)).
#### container
_Type: [Container](other#container) &bull; Cardinality: ONE_
Container has information about the conference or journal where the research product has been presented or published.
```json
"container": {
"edition": "",
"iss": "5",
"issnLinking": "",
"issnOnline": "1873-7625",
"issnPrinted": "0048-7333",
"name": "Research Policy",
"sp": "12",
"ep": "22",
"vol": "50"
}
```
### Data
Metadata records about research data (includes the subtypes listed [here](http://api.openaire.eu/vocabularies/dnet:result_typologies/dataset)).
#### size
_Type: String &bull; Cardinality: ONE_
The declared size of the research data.
```json
"size": "10129818"
```
#### version
_Type: String &bull; Cardinality: ONE_
The version of the research data.
```json
"version": "v1.3"
```
#### geolocation
_Type: [GeoLocation](other#geolocation) &bull; Cardinality: MANY_
The list of geolocations associated with the research data.
```json
"geolocation": [
{
"box": "18.569386 54.468973 18.066832 54.83707",
"place": "Tübingen, Baden-Württemberg, Southern Germany",
"point": "7.72486 50.1084"
},
...
]
```
### Software
Metadata records about research software (includes the subtypes listed [here](http://api.openaire.eu/vocabularies/dnet:result_typologies/software)).
#### documentationUrl
_Type: String &bull; Cardinality: MANY_
The URLs to the software documentation.
```json
"documentationUrl": [
"https://github.com/openaire/iis/blob/master/README.markdown",
...
]
```
#### codeRepositoryUrl
_Type: String &bull; Cardinality: ONE_
The URL to the repository with the source code.
```json
"codeRepositoryUrl": "https://github.com/openaire/iis"
```
#### programmingLanguage
_Type: String &bull; Cardinality: ONE_
The programming language.
```json
"programmingLanguage": "Java"
```
### Other research product
Metadata records about research products that cannot be classified as research literature, data or software (includes types of products listed [here](http://api.openaire.eu/vocabularies/dnet:result_typologies/other)).
#### contactPerson
_Type: String &bull; Cardinality: MANY_
Information on the person responsible for providing further information regarding the resource.
```json
"contactPerson": [
"Noémie Dominguez",
...
]
```
#### contactGroup
_Type: String &bull; Cardinality: MANY_
Information on the group responsible for providing further information regarding the resource.
```json
"contactGroup": [
"Networked Multimedia Information Systems (NeMIS)",
...
]
```
#### tool
_Type: String &bull; Cardinality: MANY_
Information about tool useful for the interpretation and/or re-use of the research product.

View File

@ -23,7 +23,7 @@ _Type: String &bull; Cardinality: ONE_
Main entity identifier, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers). Main entity identifier, created according to the [OpenAIRE entity identifier and PID mapping policy](../pids-and-identifiers).
```json ```json
"id": "doi_dedup___::80f29c8c8ba18c46c88a285b7e739dc3" "id": "50|doi_dedup___::80f29c8c8ba18c46c88a285b7e739dc3"
``` ```
### type ### type

View File

@ -24,7 +24,7 @@ Such a policy defines a list of data sources that are considered authoritative f
There is an exception though: Handle(s) are minted by several repositories; as listing them all would not be a viable option, to avoid losing them as PIDs, Handles bypass the PID authority filtering rule. There is an exception though: Handle(s) are minted by several repositories; as listing them all would not be a viable option, to avoid losing them as PIDs, Handles bypass the PID authority filtering rule.
In all other cases, PIDs are included in the graph as alternate Identifiers. In all other cases, PIDs are be included in the graph as alternate Identifiers.
## Delegated authorities ## Delegated authorities
@ -35,10 +35,10 @@ assigns PIDs to their scientific products from a given PID minter.
This "selection" can be performed when the entities in the graph sharing the same identifier are grouped together. The list of the delegated authorities currently includes This "selection" can be performed when the entities in the graph sharing the same identifier are grouped together. The list of the delegated authorities currently includes
| Datasource delegated | Datasource delegating | Pid Type | | Datasource delegated | Datasource delegating | Pid Type |
|--------------------------------------|----------------------------------|----------| |--------------------------------------|----------------------------------|-----------|
| [Zenodo](https://zenodo.org) | [Datacite](https://datacite.org) | doi | | [Zenodo](https://zenodo.org) | [Datacite](https://datacite.org) | doi |
| [RoHub](https://reliance.rohub.org/) | [W3ID](https://w3id.org/) | w3id | | [RoHub](https://reliance.rohub.org/) | [W3ID](https://w3id.org/) | w3id |
## Identifiers in the Graph ## Identifiers in the Graph
@ -47,7 +47,7 @@ OpenAIRE assigns internal identifiers for each object it collects.
By default, the internal identifier is generated as `sourcePrefix::md5(localId)` where: By default, the internal identifier is generated as `sourcePrefix::md5(localId)` where:
* `sourcePrefix` is a namespace prefix of 12 chars assigned to the data source at registration time * `sourcePrefix` is a namespace prefix of 12 chars assigned to the data source at registration time
* `localΙd` is the identifier assigned to the object by the data source * `localid` is the identifier assigned to the object by the data source
After years of operation, we can say that: After years of operation, we can say that:
@ -66,15 +66,16 @@ When the record is collected from a source which is not authoritative for any ty
Currently, the following data sources are used as "PID authorities": Currently, the following data sources are used as "PID authorities":
| PID Type | Prefix (12 chars) | Authority | | PID Type | Prefix (12 chars) | Authority |
|----------|-----------------------|-----------------------------------------| |-----------|------------------------|-------------------------------------------|
| doi | `doi_________` | Crossref, Datacite, Zenodo | | doi | `doi_________` | Crossref, Datacite, Zenodo |
| pmc | `pmc_________` | Europe PubMed Central, PubMed Central | | pmc | `pmc_________` | Europe PubMed Central, PubMed Central |
| pmid | `pmid________` | Europe PubMed Central, PubMed Central | | pmid | `pmid________` | Europe PubMed Central, PubMed Central |
| arXiv | `arXiv_______` | arXiv.org e-Print Archive | | arXiv | `arXiv_______` | arXiv.org e-Print Archive |
| ena | `ena_________` | EMBL-EBI | | handle | `handle______` | any repository |
| pdb | `pdb_________` | EMBL-EBI | | ena | `ena_________` | EMBL-EBI |
| uniprot | `uniprot_____` | EMBL-EBI | | pdb | `pdb_________` | EMBL-EBI |
| uniprot | `uniprot_____` | EMBL-EBI |
OpenAIRE also perform duplicate identification (see the [dedicated section for details](/graph-production-workflow/deduplication)). OpenAIRE also perform duplicate identification (see the [dedicated section for details](/graph-production-workflow/deduplication)).
All duplicates are **merged** together in a **representative record** which must be assigned a [dedicated OpenAIRE identifier](/graph-production-workflow/deduplication/research-products#openaire-identifier-of-the-representative-record) (i.e. it cannot have the identifier of one of the aggregated record). All duplicates are **merged** together in a **representative record** which must be assigned a dedicated OpenAIRE identifier (i.e. it cannot have the identifier of one of the aggregated record).

View File

@ -7,48 +7,36 @@ title: The Relationship object
A relationship in the Graph is represented with the data type presented in this page, which aims to model a directed edge between two nodes, providing information about its semantics, provenance and validation. A relationship in the Graph is represented with the data type presented in this page, which aims to model a directed edge between two nodes, providing information about its semantics, provenance and validation.
### source ### source
_Type: String &bull; Cardinality: ONE_ _Type: [Node](#the-node-object) &bull; Cardinality: ONE_
OpenAIRE identifier of the node in the graph. Represents the source node in the relation.
```json ```json
"source": "openorgs____::1cb75a3ad756e4c83e455e3e7347643b" "source": {
``` "id": "20|openorgs____::1cb75a3ad756e4c83e455e3e7347643b",
"type": "organization"
### sourceType }
_Type: String &bull; Cardinality: ONE_
Graph node type.
```json
"sourceType": "organization"
``` ```
### target ### target
_Type: String &bull; Cardinality: ONE_ _Type: [Node](#the-node-object) &bull; Cardinality: ONE_
OpenAIRE identifier of the node in the graph. Represents the target node in the relation.
```json ```json
"target": "doajarticles::022409068174087a003647ff46070f7f" "target": {
"id": "10|doajarticles::022409068174087a003647ff46070f7f",
"type": "datasource"
}
``` ```
### targetType ### reltype
_Type: String &bull; Cardinality: ONE_
Graph node type.
```json
"target": "datasource"
```
### relType
_Type: [RelType](#the-reltype-object) &bull; Cardinality: ONE_ _Type: [RelType](#the-reltype-object) &bull; Cardinality: ONE_
Represent the semantics of the relationship between two nodes of the graph. Represent the semantics of the relation between two nodes of the graph.
```json ```json
"relType": { "reltype": {
"name": "provides", "name": "provides",
"type": "provision" "type": "provision"
} }
@ -68,7 +56,7 @@ Indicates the process that produced (or provided) the information.
### validated ### validated
_Type: Boolean &bull; Cardinality: ONE_ _Type: Boolean &bull; Cardinality: ONE_
Indicates weather or not the relationship was validated. Indicates weather or not the relation was validated.
```json ```json
"validated": true "validated": true
@ -77,7 +65,7 @@ Indicates weather or not the relationship was validated.
### validationDate ### validationDate
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Indicates the validation date of the relationship - applies only when the validated flag is set to true. Indicates the validation date of the relation - applies only when the validated flag is set to true.
```json ```json
"validationDate": "2022-09-02" "validationDate": "2022-09-02"
@ -85,6 +73,29 @@ Indicates the validation date of the relationship - applies only when the valida
--- ---
## The `Node` object
The Node data type contains the minimum information needed to identify a graph node, its identifier and entity type.
### id
_Type: String &bull; Cardinality: ONE_
OpenAIRE identifier of the node in the graph.
```json
"id": "10|doajarticles::022409068174087a003647ff46070f7f"
```
### type
_Type: String &bull; Cardinality: ONE_
Graph node type.
```json
"type": "datasource"
```
## The `RelType` object ## The `RelType` object
The RelType data type models the semantic of the relationship among two nodes. The RelType data type models the semantic of the relationship among two nodes.
@ -92,7 +103,7 @@ The RelType data type models the semantic of the relationship among two nodes.
### type ### type
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
The relationship category, e.g. affiliation, citation. (see [relationship types](./relationship-types)). Relation category, e.g. affiliation, citation, see table Relation typologies.
```json ```json
"name": "provides" "name": "provides"
@ -101,7 +112,7 @@ The relationship category, e.g. affiliation, citation. (see [relationship types
### name ### name
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
Further specifies the relationship semantic, indicating the relationship direction, e.g. Cites, isCitedBy. Further specifies the relation semantic, indicating the relation direction, e.g. Cites, isCitedBy.
```json ```json
"type": "provision" "type": "provision"

View File

@ -1,36 +1,36 @@
# Relationship types # Relationship types
The following table lists all the possible relation semantics found in the Graph Dataset. The following table lists all the possible relation semantics found in the graph dump.
Note: the labels used to specify the semantic of the relationships are (for the large) inherited from the [DataCite metadata kernel](https://schema.datacite.org/meta/kernel-4.4/doc/DataCite-MetadataKernel_v4.4.pdf), which provides a description for them. Note: the labels used to specify the semantic of the relationships are (for the large) inherited from the [DataCite metadata kernel](https://schema.datacite.org/meta/kernel-4.4/doc/DataCite-MetadataKernel_v4.4.pdf), which provides a description for them.
| # | Source entity type | Target entity type | Relation name / inverse | Provenance | | # | Source entity type | Target entity type | Relation name / inverse | Provenance |
|:--:|:--------------------------------------:|:--------------------------------------:|:----------------------------------------------------------:|:-----------------------------------------------:| |:--:|:--------------------------------------:|:--------------------------------------:|:----------------------------------------------------------:|:-----------------------------------------------:|
| 1 | [Project](/data-model/entities/project) | [ResearchProduct](../../data-model/entities/research-product) | produces / isProducedBy | Harvested, Inferred by OpenAIRE, Linked by user | | 1 | [Project](/data-model/entities/project) | [Result](/data-model/entities/result) | produces / isProducedBy | Harvested, Inferred by OpenAIRE, Linked by user |
| 2 | [Project](/data-model/entities/project) | [Organization](/data-model/entities/organization) | hasParticipant / isParticipant | Harvested | | 2 | [Project](/data-model/entities/project) | [Organization](/data-model/entities/organization) | hasParticipant / isParticipant | Harvested |
| 3 | [Project](/data-model/entities/project) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user | | 3 | [Project](/data-model/entities/project) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user |
| 4 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsAmongTopNSimilarDocuments / HasAmongTopNSimilarDocuments | Inferred by OpenAIRE | | 4 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsAmongTopNSimilarDocuments / HasAmongTopNSimilarDocuments | Inferred by OpenAIRE |
| 5 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsSupplementTo / IsSupplementedBy | Harvested | | 5 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsSupplementTo / IsSupplementedBy | Harvested |
| 6 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user | | 6 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user |
| 7 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsPartOf / HasPart | Harvested | | 7 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsPartOf / HasPart | Harvested |
| 8 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsDocumentedBy / Documents | Harvested | | 8 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsDocumentedBy / Documents | Harvested |
| 9 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsObsoletedBy / Obsoletes | Harvested | | 9 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsObsoletedBy / Obsoletes | Harvested |
| 10 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsSourceOf / IsDerivedFrom | Harvested | | 10 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsSourceOf / IsDerivedFrom | Harvested |
| 11 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsCompiledBy / Compiles | Harvested | | 11 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsCompiledBy / Compiles | Harvested |
| 12 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsRequiredBy / Requires | Harvested | | 12 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsRequiredBy / Requires | Harvested |
| 13 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsCitedBy / Cites | Harvested, Inferred by OpenAIRE | | 13 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsCitedBy / Cites | Harvested, Inferred by OpenAIRE |
| 14 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsReferencedBy / References | Harvested | | 14 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsReferencedBy / References | Harvested |
| 15 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsReviewedBy / Reviews | Harvested | | 15 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsReviewedBy / Reviews | Harvested |
| 16 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsOriginalFormOf / IsVariantFormOf | Harvested | | 16 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsOriginalFormOf / IsVariantFormOf | Harvested |
| 17 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsVersionOf / HasVersion | Harvested | | 17 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsVersionOf / HasVersion | Harvested |
| 18 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsIdenticalTo / IsIdenticalTo | Harvested | | 18 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsIdenticalTo / IsIdenticalTo | Harvested |
| 19 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsPreviousVersionOf / IsNewVersionOf | Harvested | | 19 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsPreviousVersionOf / IsNewVersionOf | Harvested |
| 20 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsContinuedBy / Continues | Harvested | | 20 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsContinuedBy / Continues | Harvested |
| 21 | [ResearchProduct](../../data-model/entities/research-product) | [ResearchProduct](../../data-model/entities/research-product) | IsDescribedBy / Describes | Harvested | | 21 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsDescribedBy / Describes | Harvested |
| 22 | [ResearchProduct](../../data-model/entities/research-product) | [Organization](/data-model/entities/organization) | hasAuthorInstitution / isAuthorInstitutionOf | Harvested, Inferred by OpenAIRE | | 22 | [Result](/data-model/entities/result) | [Organization](/data-model/entities/organization) | hasAuthorInstitution / isAuthorInstitutionOf | Harvested, Inferred by OpenAIRE |
| 23 | [ResearchProduct](../../data-model/entities/research-product) | [Data source](/data-model/entities/data-source) | isHostedBy / hosts | Harvested, Inferred by OpenAIRE | | 23 | [Result](/data-model/entities/result) | [Data source](/data-model/entities/data-source) | isHostedBy / hosts | Harvested, Inferred by OpenAIRE |
| 24 | [ResearchProduct](../../data-model/entities/research-product) | [Data source](/data-model/entities/data-source) | isProvidedBy / provides | Harvested | | 24 | [Result](/data-model/entities/result) | [Data source](/data-model/entities/data-source) | isProvidedBy / provides | Harvested |
| 25 | [ResearchProduct](../../data-model/entities/research-product) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user | | 25 | [Result](/data-model/entities/result) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user |
| 26 | [Organization](/data-model/entities/organization) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user | | 26 | [Organization](/data-model/entities/organization) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user |
| 27 | [Organization](/data-model/entities/organization) | [Organization](/data-model/entities/organization) | IsChildOf / IsParentOf | Linked by user | | 27 | [Organization](/data-model/entities/organization) | [Organization](/data-model/entities/organization) | IsChildOf / IsParentOf | Linked by user |
| 28 | [Data source](/data-model/entities/data-source) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user | | 28 | [Data source](/data-model/entities/data-source) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user |

View File

@ -16,7 +16,7 @@ _Type: String &bull; Cardinality: ONE_
the OpenAIRE identifier of the data source the OpenAIRE identifier of the data source
```json ```json
"key":"openaire____::081b82f96300b6a6e3d282bad31cb6e2" "key":"10|openaire____::081b82f96300b6a6e3d282bad31cb6e2"
``` ```
### value ### value

View File

@ -6,7 +6,7 @@ sidebar_position: 1
# CommunityInstance # CommunityInstance
It is a subclass of [Instance](../../data-model/entities/research-product#instance) extended with information regarding the collection and hosting source for this materialization of the research product. It is a subclass of [Instance](../../data-model/entities/result#instance) extended with information regarding the collection and hosting source for this materialization of the result.
### hostedby ### hostedby
_Type: [CfHbKeyValue](./cfhb) &bull; Cardinality: ONE_ _Type: [CfHbKeyValue](./cfhb) &bull; Cardinality: ONE_
@ -16,7 +16,7 @@ Information about the source from which the instance can be viewed or downloaded
```json ```json
"hostedby": { "hostedby": {
"key": "issn___print::35ee75a5ad42581d604be113a8f56427", "key": "10|issn___print::35ee75a5ad42581d604be113a8f56427",
"value": "New Phytologist" "value": "New Phytologist"
}, },
@ -31,7 +31,7 @@ Information about the source from which the record has been collected
```json ```json
"collectedfrom": { "collectedfrom": {
"key": "openaire____::081b82f96300b6a6e3d282bad31cb6e2", "key": "10|openaire____::081b82f96300b6a6e3d282bad31cb6e2",
"value": "Crossref" "value": "Crossref"
} }
``` ```

View File

@ -6,7 +6,7 @@ sidebar_position: 1
# Context # Context
Information related to research initiative/community (RI/RC) related to the research product. Information related to research initiative/community (RI/RC) related to the result.
### code ### code
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
@ -31,7 +31,7 @@ Label of the RI/RC.
### provenance ### provenance
_Type: [Provenance](/data-model/entities/other#provenance-2) &bull; Cardinality: MANY_ _Type: [Provenance](/data-model/entities/other#provenance-2) &bull; Cardinality: MANY_
Why this research product is associated to the RI/RC. Why this result is associated to the RI/RC.
```json ```json

View File

@ -1,140 +0,0 @@
---
sidebar_position: 1
---
# Extended Research Product
It is a subclass of [ResearchProduct](../../data-model/entities/research-product) extended with information regarding projects (and funders), research communities/infrastructure and related data sources.
### projects
_Type: [Project](project.md) &bull; Cardinality: MANY_
List of projects (i.e. grants) that (co-)funded the production of the research products.
```json
"projects": [
{
"id": "corda__h2020::94c4a066401e22002c4811a301bb4655",
"code": "727929",
"acronym": "TomRes",
"title": "A NOVEL AND INTEGRATED APPROACH TO INCREASE MULTIPLE AND COMBINED STRESS TOLERANCE IN PLANTS USING TOMATO AS A MODEL",
"funder": {
"shortName": "EC",
"name": "European Commission",
"jurisdiction": "EU",
"fundingStream": "H2020"
},
"provenance": {
"provenance": "Harvested",
"trust": "0.900000000000000022"
},
"validated": {
"validationDate": "2021-0101",
"validatedByFunder": true
}
},
...
]
```
### context
_Type: [Context](./context) &bull; Cardinality: MANY_
Reference to relevant research infrastructure, initiative or communities (RI/RC) among those collaborating with OpenAIRE. Please see https://connect.openaire.eu that are publicly visible.
```json
"context":[
{
"code":"sdsn-gr",
"label":"SDSN - Greece",
"provenance":[
{
"provenance":"Inferred by OpenAIRE",
"trust":"0.9"
}
]
},
...
]
```
### collectedfrom
_Type: [CfHbKeyValue](./cfhb) &bull; Cardinality: MANY_
Information about the sources from which the record has been collected.
```json
"collectedfrom":[
{
"key":"openaire____::081b82f96300b6a6e3d282bad31cb6e2",
"value":"Crossref"
},
...
]
```
### instance
_Type: [CommunityInstance](./communityInstance) &bull; Cardinality: MANY_
Information about the source from which the instance can be viewed or downloaded.
```json
"instance": [
{
"license": "http://doi.wiley.com/10.1002/tdm_license_1.1",
"accessright": {
"code": "c_16ec",
"label": "RESTRICTED",
"scheme": "http://vocabularies.coar-repositories.org/documentation/access_rights/",
"openAccessRoute": null
},
"type": "Article",
"url": [
"https://api.wiley.com/onlinelibrary/tdm/v1/articles/10.1111%2Fnph.15014",
"http://onlinelibrary.wiley.com/wol1/doi/10.1111/nph.15014/fullpdf",
"http://dx.doi.org/10.1111/nph.15014"
],
"publicationdate": "2018-02-09",
"refereed": "UNKNOWN",
"hostedby": {
"key": "issn___print::35ee75a5ad42581d604be113a8f56427",
"value": "New Phytologist"
},
"collectedfrom": {
"key": "openaire____::081b82f96300b6a6e3d282bad31cb6e2",
"value": "Crossref"
}
},
...
]
```

View File

@ -8,7 +8,7 @@ sidebar_position: 1
# Extended Result # Extended Result
It is a subclass of [Result](../../data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources. It is a subclass of [Result](/data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources.
@ -25,7 +25,7 @@ List of projects (i.e. grants) that (co-)funded the production of the research r
"projects": [ "projects": [
{ {
"id": "corda__h2020::94c4a066401e22002c4811a301bb4655", "id": "40|corda__h2020::94c4a066401e22002c4811a301bb4655",
"code": "727929", "code": "727929",
"acronym": "TomRes", "acronym": "TomRes",
"title": "A NOVEL AND INTEGRATED APPROACH TO INCREASE MULTIPLE AND COMBINED STRESS TOLERANCE IN PLANTS USING TOMATO AS A MODEL", "title": "A NOVEL AND INTEGRATED APPROACH TO INCREASE MULTIPLE AND COMBINED STRESS TOLERANCE IN PLANTS USING TOMATO AS A MODEL",
@ -90,7 +90,7 @@ Information about the sources from which the record has been collected.
"collectedfrom":[ "collectedfrom":[
{ {
"key":"openaire____::081b82f96300b6a6e3d282bad31cb6e2", "key":"10|openaire____::081b82f96300b6a6e3d282bad31cb6e2",
"value":"Crossref" "value":"Crossref"
}, },
... ...
@ -126,11 +126,11 @@ Information about the source from which the instance can be viewed or downloaded
"publicationdate": "2018-02-09", "publicationdate": "2018-02-09",
"refereed": "UNKNOWN", "refereed": "UNKNOWN",
"hostedby": { "hostedby": {
"key": "issn___print::35ee75a5ad42581d604be113a8f56427", "key": "10|issn___print::35ee75a5ad42581d604be113a8f56427",
"value": "New Phytologist" "value": "New Phytologist"
}, },
"collectedfrom": { "collectedfrom": {
"key": "openaire____::081b82f96300b6a6e3d282bad31cb6e2", "key": "10|openaire____::081b82f96300b6a6e3d282bad31cb6e2",
"value": "Crossref" "value": "Crossref"
} }
}, },

View File

@ -9,7 +9,7 @@ sidebar_position: 1
# Project # Project
The information about the projects related to a research product. The information about the projects related to the result.
### id ### id
@ -22,7 +22,7 @@ Main entity identifier, created according to the [OpenAIRE entity identifier and
```json ```json
"id": "corda__h2020::70ea22400fd890c5033cb31642c4ae68" "id": "40|corda__h2020::70ea22400fd890c5033cb31642c4ae68"
``` ```
@ -99,7 +99,7 @@ Information about the funder funding the project.
_Type [Provenance](../../data-model/entities/other#provenance-2) &bull; Cardinality: ONE_ _Type [Provenance](../../data-model/entities/other#provenance-2) &bull; Cardinality: ONE_
The reason why the project is associated to the research product. The reason why the project is associated to the result.
```json ```json
@ -119,7 +119,7 @@ The reason why the project is associated to the research product.
_Type [Validated](validated.md) &bull; Cardinality: ONE_ _Type [Validated](validated.md) &bull; Cardinality: ONE_
Specifies whether the association between the project and the research product was validated. Specifies it the association between the project and the result was validated.
```json ```json

View File

@ -7,7 +7,7 @@ sidebar_position: 1
# Validated # Validated
Information about the validtion of the association between the research product and the funding information. Information about the validtion of the association between the result and the funding information.
### validationDate ### validationDate
@ -15,7 +15,7 @@ Information about the validtion of the association between the research product
_Type: String &bull; Cardinality: ONE_ _Type: String &bull; Cardinality: ONE_
When OpenAIRE collected the association between the funding and the research product from an authoritative source (i.e. Sygma). When OpenAIRE collected the association between the funding and the result from an authoritative source (i.e. Sygma).
```json ```json

View File

@ -4,13 +4,13 @@ sidebar_position: 2
# Beginner's kit # Beginner's kit
:::caution
This version is not accompanied with public dump files, hence the files in this section are based on [v5.0.0](/docs/5.0.0/) of the Graph. The data of v.5.1.0 are only exposed via the [OpenAIRE Graph API](https://graph.openaire.eu/develop/) and added-value services that are built on top of this version of the Graph (e.g., the [OpenAIRE Explore](https://explore.openaire.eu/)). If you would be interested to get bulk access to Graph v5.1.0 data, please contact us via our [helpdesk](https://graph.openaire.eu/support).
:::
The large size of the OpenAIRE Graph is a major impediment for beginners to familiarise with the underlying data model and explore its contents. The large size of the OpenAIRE Graph is a major impediment for beginners to familiarise with the underlying data model and explore its contents.
Working with the Graph in its full size typically requires access to a huge distributed computing infrastructure which cannot be easily accessible to everyone. Working with the Graph in its full size typically requires access to a huge distributed computing infrastructure which cannot be easily accessible to everyone.
[The OpenAIRE Beginners Kit](https://doi.org/10.5281/zenodo.7490191) aims to address this issue. It consists of two components: [The OpenAIRE Beginners Kit]( https://doi.org/10.5281/zenodo.7490192) aims to address this issue. It consists of two components:
<!-- :::caution
This version is not accompanied with public dataset files, hence the files in this section are based on [v6.0.0](/docs/6.0.0/) of the Graph. The current data are only exposed via the [OpenAIRE Graph API](https://graph.openaire.eu/develop/) and added-value services that are built on top of this version of the Graph (e.g., the [OpenAIRE Explore](https://explore.openaire.eu/)). If you are interested to get bulk access to our latest data, please contact us via our [helpdesk](https://graph.openaire.eu/support).
::: -->
* A subset of the Graph composed of the research products published between 2022-06-29 and 2022-12-29, all the entities connected to them and the respective relationships. * A subset of the Graph composed of the research products published between 2022-06-29 and 2022-12-29, all the entities connected to them and the respective relationships.
* A Zeppelin notebook that demonstrates how you can use PySpark to analyse the Graph and get answers to some interesting research questions. A guide to Apache Zeppelin can be found [here](https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.6.5/bk_zeppelin-component-guide/content/ch_overview.html). * A Zeppelin notebook that demonstrates how you can use PySpark to analyse the Graph and get answers to some interesting research questions. A guide to Apache Zeppelin can be found [here](https://docs.cloudera.com/HDPDocuments/HDP2/HDP-2.6.5/bk_zeppelin-component-guide/content/ch_overview.html).

View File

@ -2,28 +2,30 @@
sidebar_position: 1 sidebar_position: 1
--- ---
# Full graph dataset # Full graph dump
:::caution
This version is not accompanied with public dump files, hence the files in this section are based on [v5.0.0](/docs/5.0.0/) of the Graph. The data of v.5.1.0 are only exposed via the [OpenAIRE Graph API](https://graph.openaire.eu/develop/) and added-value services that are built on top of this version of the Graph (e.g., the [OpenAIRE Explore](https://explore.openaire.eu/)). If you would be interested to get bulk access to Graph v5.1.0 data, please contact us via our [helpdesk](https://graph.openaire.eu/support).
:::
You can download the full OpenAIRE Graph Dump as well as its schema from the following links:
You can download the full OpenAIRE Graph Dataset as well as its schema from the following links:
<!-- :::caution
This version is not accompanied with public dump files, hence the files in this section are based on [v6.0.0](/docs/6.0.0/) of the Graph. The current data are only exposed via the [OpenAIRE Graph API](https://graph.openaire.eu/develop/) and added-value services that are built on top of this version of the Graph (e.g., the [OpenAIRE Explore](https://explore.openaire.eu/)). If you are interested to get bulk access to our latest data, please contact us via our [helpdesk](https://graph.openaire.eu/support).
::: -->
Dataset: https://doi.org/10.5281/zenodo.3516917 Dataset: https://doi.org/10.5281/zenodo.3516917
Schema: https://doi.org/10.5281/zenodo.4238938 Schema: https://doi.org/10.5281/zenodo.4238938
The schema used to create this dataset mirrors the one described in the [Data Model](/data-model). The schema used to dump this dataset mirrors the one described in the [Data Model](/data-model).
This dataset is licensed under a Creative Commons Attribution 4.0 International License. This dataset is licensed under a Creative Commons Attribution 4.0 International License.
It is composed of several files so that you can download the parts you are interested into. The files are named after the entity they store (i.e. publication, dataset). Each file is at most 10GB and it is It is composed of several files so that you can download the parts you are interested into. The files are named after the entity they store (i.e. publication, dataset). Each file is at most 10GB and it is
a tar archive containing gz files, each with one json per line. a tar archive containing gz files, each with one json per line.
## How to acknowledge this work ## How to acknowledge this work
Open Science services are open and transparent and survive thanks to your active support and to the visibility and reward they gather. If you use one of the [OpenAIRE Graph datasets](https://doi.org/10.5281/zenodo.3516917) for your research, please provide a proper citation following the recommendation that you find on the dataset's Zenodo page or as provided below. Open Science services are open and transparent and survive thanks to your active support and to the visibility and reward they gather. If you use one of the [OpenAIRE Graph dumps](https://doi.org/10.5281/zenodo.3516917) for your research, please provide a proper citation following the recommendation that you find on the dump's Zenodo page or as provided below.
:::note How to cite :::note How to cite
Manghi P., Atzori C., Bardi A., Baglioni M., Schirrwagen J., Dimitropoulos H., La Bruzzo S., Foufoulas I., Mannocci A., Horst M., Czerniak A., Iatropoulou K., Kokogiannaki A., De Bonis M., Artini M., Lempesis A., Ioannidis A., Manola N., Principe P., Vergoulis T., Chatzopoulos S., Pierrakos D. (2022). "OpenAIRE Research Graph Dataset", *Dataset*, Zenodo. [doi:10.5281/zenodo.3516917](https://doi.org/10.5281/zenodo.3516917) ([BibTex](/bibtex/OpenAIRE_Research_Graph_dataset.bib)) Manghi P., Atzori C., Bardi A., Baglioni M., Schirrwagen J., Dimitropoulos H., La Bruzzo S., Foufoulas I., Mannocci A., Horst M., Czerniak A., Iatropoulou K., Kokogiannaki A., De Bonis M., Artini M., Lempesis A., Ioannidis A., Manola N., Principe P., Vergoulis T., Chatzopoulos S., Pierrakos D. (2022). "OpenAIRE Research Graph Dump", *Dataset*, Zenodo. [doi:10.5281/zenodo.3516917](https://doi.org/10.5281/zenodo.3516917) ([BibTex](/bibtex/OpenAIRE_Research_Graph_dump.bib))
::: :::
Please also consider citing [other relevant research products](/publications#relevant-research-products) that can be of interest. Please also consider citing [other relevant research products](/publications#relevant-research-products) that can be of interest.

View File

@ -6,29 +6,25 @@ sidebar_position: 4
In this page, we list other related datasets; please refer to their respective schema definitions for the data model they follow. In this page, we list other related datasets; please refer to their respective schema definitions for the data model they follow.
## The dataset of ScholeXplorer ## The dump of ScholeXplorer
Dataset: https://zenodo.org/doi/10.5281/zenodo.1200252 Dataset: https://doi.org/10.5281/zenodo.6338616
Schema (Scholix version 3): https://doi.org/10.5281/zenodo.1120275 Schema (Scholix version 3): https://doi.org/10.5281/zenodo.1120275
Schema (Scholix version 4): https://doi.org/10.5281/zenodo.6351557 Schema (Scholix version 4): https://doi.org/10.5281/zenodo.6351557
This dataset is licensed under a CC0 1.0 Universal (CC0 1.0) Public Domain Dedication. This dataset is licensed under a CC0 1.0 Universal (CC0 1.0) Public Domain Dedication.
The dataset contains the GZ-compressed dataset of the Scholix links exposed by the OpenAIRE ScholeXplorer service. The dataset contains the GZ-compressed dump of the Scholix links exposed by the OpenAIRE ScholeXplorer service.
## The OpenAIRE LOD dataset ## The OpenAIRE LOD dump
:::caution Dataset (RDF dump): https://doi.org/10.5281/zenodo.609943
The OpenAIRE LOD dataset has been discontinued. The SPARQL Endpoint is no longer supported but old LOD datasets can be found in the link below.
:::
Dataset (RDF): https://doi.org/10.5281/zenodo.609943 LOD Ontology: http://lod.openaire.eu/vocab
<!-- LOD Ontology: http://lod.openaire.eu/vocab SPARQL Endpoint: http://lod.openaire.eu/sparql
SPARQL Endpoint: http://lod.openaire.eu/sparql -->
The OpenAIRE Linked Open Data (LOD) Services and their integration with the OpenAIRE information space have been released as a beta version. The LOD exporting process started with a specification of the OpenAIRE data model as an RDF vocabulary, and then mapping of the OpenAIRE data to the graph-based RDF data model. To interlink the OpenAIRE data with related data on the Web, we have identified a list of potential datasets to interlinked with, including the DBpedia dataset extracted from Wikipedia and the publication databases DBLP and CiteSeer. The OpenAIRE Linked Open Data (LOD) Services and their integration with the OpenAIRE information space have been released as a beta version. The LOD exporting process started with a specification of the OpenAIRE data model as an RDF vocabulary, and then mapping of the OpenAIRE data to the graph-based RDF data model. To interlink the OpenAIRE data with related data on the Web, we have identified a list of potential datasets to interlinked with, including the DBpedia dataset extracted from Wikipedia and the publication databases DBLP and CiteSeer.
<!-- Please refer [here](http://lod.openaire.eu/documentation) for more details on the LOD documentation. --> Please refer [here](http://lod.openaire.eu/documentation) for more details on the LOD documentation.

View File

@ -2,69 +2,71 @@
sidebar_position: 3 sidebar_position: 3
--- ---
# Sub-graph datasets # Sub-graph dumps
In order to facilitate users, different datasets are available under the Zenodo community called [OpenAIRE Graph](https://zenodo.org/communities/openaire-research-graph). :::caution
This page lists all alternative datasets currently available. This version is not accompanied with public dump files, hence the files in this section are based on [v5.0.0](/docs/5.0.0/) of the Graph. More recent versions of the data are only exposed via the [OpenAIRE Graph API](https://graph.openaire.eu/develop/) and added-value services that are built on top of this version of the Graph (e.g., the [OpenAIRE Explore](https://explore.openaire.eu/)). If you would be interested to get bulk access to more recent versions of the Graph data, please contact us via our [helpdesk](https://graph.openaire.eu/support).
<!-- :::caution :::
This version is not accompanied with public dataset files, hence the files in this section are based on [v6.0.0](/docs/6.0.0/) of the Graph. The current data are only exposed via the [OpenAIRE Graph API](https://graph.openaire.eu/develop/) and added-value services that are built on top of this version of the Graph (e.g., the [OpenAIRE Explore](https://explore.openaire.eu/)). If you are interested to get bulk access to our latest data, please contact us via our [helpdesk](https://graph.openaire.eu/support).
::: -->
## The OpenAIRE COVID-19 dataset In order to facilitate users, different dumps are available under the Zenodo community called [OpenAIRE Graph](https://zenodo.org/communities/openaire-research-graph).
This page lists all alternative dumps currently available.
Dataset: https://doi.org/10.5281/zenodo.3980490
Schema: https://doi.org/10.5281/zenodo.3974225 ## The OpenAIRE COVID-19 dump
This dataset is licensed under a Creative Commons Attribution 4.0 International License. Dataset: https://doi.org/10.5281/zenodo.3980490
It contains metadata records of publications, research data, software and projects on the topic of Corona Virus and COVID-19.
This dataset is part of the activities of OpenAIRE to support the fight against COVID-19 together with the OpenAIRE COVID-19 Gateway.
The dataset consists of a tar archive containing gzip files with one json per line. Please refer [here](#alternative-sub-graph-data-model) for details on the data model of this dataset.
## The dataset of funded products Schema: https://doi.org/10.5281/zenodo.3974225
Dataset: https://doi.org/10.5281/zenodo.4559725 This dataset is licensed under a Creative Commons Attribution 4.0 International License.
It contains metadata records of publications, research data, software and projects on the topic of Corona Virus and COVID-19.
This dump is part of the activities of OpenAIRE to support the fight against COVID-19 together with the OpenAIRE COVID-19 Gateway.
The dump consists of a tar archive containing gzip files with one json per line. Please refer [here](#alternative-sub-graph-data-model) for details on the data model of this dump.
Schema: https://doi.org/10.5281/zenodo.3974225 ## The dump of funded products
This dataset is licensed under a Creative Commons Attribution 4.0 International License. Dataset: https://doi.org/10.5281/zenodo.4559725
Schema: https://doi.org/10.5281/zenodo.3974225
This dataset is licensed under a Creative Commons Attribution 4.0 International License.
It contains metadata records of research products (research literature, data, software, other types of research products) with funding It contains metadata records of research products (research literature, data, software, other types of research products) with funding
information available in the OpenAIRE Graph. Records are grouped by funder in a dedicated archive file. Each tar archive contains information available in the OpenAIRE Graph. Records are grouped by funder in a dedicated archive file. Each tar archive contains
gzip files, each with one json record per line. The model of this dataset differs from the one of the whole graph. gzip files, each with one json record per line. The model of this dump differs from the one of the whole graph.
Please refer [here](#alternative-sub-graph-data-model) for details on the data model of this dataset. Please refer [here](#alternative-sub-graph-data-model) for details on the data model of this dump.
## The dataset of delta projects ## The dump of delta projects
Dataset: https://doi.org/10.5281/zenodo.6419021 Dataset: https://doi.org/10.5281/zenodo.6419021
Schema: https://doi.org/10.5281/zenodo.4238938 Schema: https://doi.org/10.5281/zenodo.4238938
This dataset is licensed under a Creative Commons Attribution 4.0 International License. This dataset is licensed under a Creative Commons Attribution 4.0 International License.
It contains the metadata records of projects collected by OpenAIRE in a given time frame. Usually one deposition of collected projects is done for each release of the OpenAIRE Graph It contains the metadata records of projects collected by OpenAIRE in a given time frame. Usually one deposition of collected projects is done for each release of the OpenAIRE Graph
The deposition is one tar archive containing gzip files, each with one json record per line. The deposition is one tar archive containing gzip files, each with one json record per line.
## The datasets about research communities, initiatives and infrastructures ## The dumps about research communities, initiatives and infrastructures
Dataset: https://doi.org/10.5281/zenodo.3974604 Dataset: https://doi.org/10.5281/zenodo.3974604
Schema: https://doi.org/10.5281/zenodo.3974225 Schema: https://doi.org/10.5281/zenodo.3974225
This dataset is licensed under a Creative Commons Attribution 4.0 International License. This dataset is licensed under a Creative Commons Attribution 4.0 International License.
The dataset contains one file per community/initiative/infrastructure collaborating with OpenAIRE. Check out also their community gateways on The dataset contains one file per community/initiative/infrastructure collaborating with OpenAIRE. Check out also their community gateways on
CONNECT. Each file is a tar archive containing gzip files with one json per line. The only communities/research initiative/infrastructure included are publicly visible ones. CONNECT. Each file is a tar archive containing gzip files with one json per line. The only communities/research initiative/infrastructure we dump are those visible to everyone.
The model of this dataset differs from the one of the whole graph. The model of this dump differs from the one of the whole graph.
Please refer [here](#alternative-sub-graph-data-model) for details on the data model of this dataset. Please refer [here](#alternative-sub-graph-data-model) for details on the data model of this dump.
--- ---
## Alternative sub-graph data model ## Alternative sub-graph data model
It should be noted that the datasets for research communities, infrastructures, and products related to projects do not strictly follow the main data model of the OpenAIRE Graph. In particular, they differ in the following: It should be noted that the dumps for research communities, infrastructures, and products related to projects do not strictly follow the main data model of the OpenAIRE Graph. In particular, they differ in the following:
* only research products are included (no relations or other entities) * only research products are dumped (no relations, and entities different from results)
* the research products are extended with information that can be inferred in the whole dataset namely: * the dumped results are extended with information that can be inferred in the whole dump namely:
* funding information if present * funding information if present
* associated research community/infrastructure * associated research community/infrastructure
* associated data sources * associated data sources
So they have just one entity type, that is the [Extended Research Product](./alternative-model/extended-research-product.md). So they have just one entity type, that is the [Extended Result](alternative-model/extendedresult.md).

View File

@ -11,10 +11,10 @@ OpenAIRE materializes an open, participatory research graph (the OpenAIRE Graph)
OpenAIRE aggregates metadata records describing objects of the research life-cycle from content providers compliant to the [OpenAIRE guidelines](https://guidelines.openaire.eu/) and from entity registries (i.e. data sources offering authoritative lists of entities, like [OpenDOAR](https://v2.sherpa.ac.uk/opendoar/), [re3data](https://www.re3data.org/), [DOAJ](https://doaj.org/), and various funder databases). After collection, metadata are transformed according to the OpenAIRE internal metadata model, which is used to generate the final OpenAIRE Graph, accessible from the [OpenAIRE EXPLORE portal](https://explore.openaire.eu) and the [APIs](https://graph.openaire.eu/develop/). OpenAIRE aggregates metadata records describing objects of the research life-cycle from content providers compliant to the [OpenAIRE guidelines](https://guidelines.openaire.eu/) and from entity registries (i.e. data sources offering authoritative lists of entities, like [OpenDOAR](https://v2.sherpa.ac.uk/opendoar/), [re3data](https://www.re3data.org/), [DOAJ](https://doaj.org/), and various funder databases). After collection, metadata are transformed according to the OpenAIRE internal metadata model, which is used to generate the final OpenAIRE Graph, accessible from the [OpenAIRE EXPLORE portal](https://explore.openaire.eu) and the [APIs](https://graph.openaire.eu/develop/).
The transformation process includes the application of cleaning functions whose goal is to ensure that values are harmonised according to a common format (e.g. dates as YYYY-MM-dd) and, whenever applicable, to a common controlled vocabulary. The controlled vocabularies used for cleansing are accessible at [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). Each vocabulary features a set of controlled terms, each with one code, one label, and a set of synonyms. If a synonym is found as field value, the value is updated with the corresponding term. The transformation process includes the application of cleaning functions whose goal is to ensure that values are harmonised according to a common format (e.g. dates as YYYY-MM-dd) and, whenever applicable, to a common controlled vocabulary. The controlled vocabularies used for cleansing are accessible at [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). Each vocabulary features a set of controlled terms, each with one code, one label, and a set of synonyms. If a synonym is found as field value, the value is updated with the corresponding term.
In addition, the OpenAIRE Graph is extended with other relevant scholarly communication sources that need special handling, either because they do not strictly follow the OpenAIRE Guidelines or due to the vast amount of data of data they offer; these include Crossref, ORCID, Microsoft Academic Graph, Unpaywall). In addition, the OpenAIRE Graph is extended with other relevant scholarly communication sources that need special handling, either because they do not strictly follow the OpenAIRE Guidelines or due to the vast amount of data of data they offer (e.g. DOIBoost, that merges Crossref, ORCID, Microsoft Academic Graph, and Unpaywall).
<p align="center"> <p align="center">
<img loading="lazy" alt="Aggregation" src={require('../../assets/img/aggregation.png').default} width="100%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Aggregation" src={require('../../assets/img/aggregation.png').default} width="65%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
The OpenAIRE aggregation system collects information about objects of the research life-cycle compliant to the [OpenAIRE acquisition policy](https://www.openaire.eu/content-acquisition-policy) from [different types of data sources](https://explore.openaire.eu/search/find/dataproviders): The OpenAIRE aggregation system collects information about objects of the research life-cycle compliant to the [OpenAIRE acquisition policy](https://www.openaire.eu/content-acquisition-policy) from [different types of data sources](https://explore.openaire.eu/search/find/dataproviders):
@ -38,7 +38,7 @@ Objects and relationships in the OpenAIRE Graph are extracted from information p
- *Hybrid repositories/archives*: information systems where scientists deposit metadata and file of any kind of scientific products, incuding scientific literature, research data and research software (e.g. Zenodo) - *Hybrid repositories/archives*: information systems where scientists deposit metadata and file of any kind of scientific products, incuding scientific literature, research data and research software (e.g. Zenodo)
- *Aggregator services*: Information systems that collect descriptive metadata about publications or datasets from multiple sources in order to enable cross-data source discovery of given research products. Examples are DataCite, BASE, DOAJ; - *Aggregator services*: Information systems that collect descriptive metadata about publications or datasets from multiple sources in order to enable cross-data source discovery of given research products. Examples are DataCite, BASE, DOAJ;
- *Entity Registries*: Information systems created with the intent of maintaining authoritative registries of given entities in the scholarly communication, such as OpenDOAR for the institutional repositories, re3data for the data repositories, CORDA and other funder databases for projects and funding information; - *Entity Registries*: Information systems created with the intent of maintaining authoritative registries of given entities in the scholarly communication, such as OpenDOAR for the institutional repositories, re3data for the data repositories, CORDA and other funder databases for projects and funding information;
- *CRIS*: Information systems adopted by research and academic organizations to keep track of their research administration records and relative research products; examples of CRIS content are articles or datasets funded by projects, their principal investigators, facilities acquired thanks to funding, etc.. - *CRIS*: Information systems adopted by research and academic organizations to keep track of their research administration records and relative results; examples of CRIS content are articles or datasets funded by projects, their principal investigators, facilities acquired thanks to funding, etc..
- *Research Graphs*: services that maintain an information space of (possibly interlinked) scholalrly communication objects. Examples are CrossRef, ScholeXplorer and OpenAIRE itself. - *Research Graphs*: services that maintain an information space of (possibly interlinked) scholalrly communication objects. Examples are CrossRef, ScholeXplorer and OpenAIRE itself.
## How does OpenAIRE collect metadata records? ## How does OpenAIRE collect metadata records?

View File

@ -1,165 +0,0 @@
# Crossref & Unpaywall
This section describes the procedure used to integrate the contents from [Crossref](https://www.crossref.org) and [Unpaywall](https://unpaywall.org) in the OpenAIRE Graph.
## Data acquisition
The dataset containing all the Crossref records is obtained via a complete data dump on a monthly basis.
The Unpaywall dataset is no longer updated anymore but its latest snapshot (Dec 2021) is used to enrich the Crossref contents.
## Process
In the following we describe the process applied to the Crossref & the Unpaywall contents.
### Crossref filtering
Records in Crossref are ruled out according to the following criteria
* have blank title, examples:
* `10.1093/rheumatology/41.7.837`
* `10.1093/qjmed/95.7.430`
* `10.1371/journal.pone.0171434.g005`
* have one of the following publishers: `"Test accounts"`, `"CrossRef Test Account"`
* Examples from https://api.crossref.org/works?query.publisher-name=%22Test%20accounts%22
* `10.1007/bf00344543`
* `10.1007/bf00186154`
* `10.1306/64ed947a-1724-11d7-8645000102c1865d`
* have authors matching the following invalid names: `",", "none none", "none, none", "none &na;", "(:null)", "test test test", "test test", "test", "&na; &na"`
* Examples for `"none"` author from https://api.crossref.org/works?query.author=%22none%22
* `10.4007/annals.2016.184.3.11`
* `10.4007/annals.2012.176.1.6`
* `10.2172/6393585`
* Examples for `"test"` author from https://api.crossref.org/works?query.author=%22test%22
* `10.5116/ijme.54ca.a5ae`
* `10.5755/j01.ss.71.2.544`
* `10.5755/j01.ee.22.2.319`
* have `"Addie Jackson"` as author and `"Elsevier BV"` as publisher (empirically we say they are test records)
* Examples from https://api.crossref.org/works?query.author=Addie+Jackson&query.publisher-name=%22Elsevier%20BV%22
* `10.2139/ssrn.2082156`
* `10.2139/ssrn.2202300`
* `10.2139/ssrn.2255657`
* have not one of the following values in the field `type` : `"book-section"`, `"book"`, `"book-chapter"`, `"book-part"`, `"book-series"`, `"book-set"`, `"book-track"`, `"edited-book"`, `"reference-book"`, `"monograph"`, `"journal-article"`, `"dissertation"`, `"other"`, `"peer-review"`, `"proceedings"`, `"proceedings-article"`, `"reference-entry"`, `"report"`, `"report-series"`, `"standard"`, `"standard-series"`, `"posted-content"`, `"dataset"`,
* Example:
* `10.1371/journal.pone.0171434.g005`
* `10.7554/elife.21052.049`
* `10.1371/journal.pcbi.1005379.s006`
Records with `type=dataset` are mapped into OpenAIRE research products of type dataset. All others are mapped as OpenAIRE research products of type publication.
### Mapping Crossref properties into the OpenAIRE Graph
Properties in OpenAIRE research products are set based on the logic described in the following table:
| OpenAIRE Research Product field path | Crossref path(s) | Notes |
|----------------------------------------|--------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `id` | `doi` | id in the form `doi_________::md5(doi)` |
| `dateofcollection` | `indexed.datetime` | |
| `lastupdatetimestamp` | `indexed.timestamp` | |
| `type` | `type` | Using the **_dnet:result_typologies_** vocabulary, we look up the `instance.type` synonym to generate one of the following main entities: <ul><li>`publication`</li> <li>`dataset`</li></ul> |
| `originalId` | `doi, clinical-trial-number, alternative-id` | |
| `pid` | | The scheme tells the type of PID, the value contains the actual value |
| `pid.scheme` | | Default value: doi |
| `pid.value` | `doi` | The doi is normalised and lower-cased |
| `maintitle` | `title` | |
| `subtitle` | `subtitle` | |
| `author` | `author` | if available the sequence is mapped to rank and the ORCID is also mapped |
| `author.name` | `author.given` | |
| `author.surname` | `author.family` | |
| `author.fullname` | `author.given author.family` | |
| `author.rank` | | based on the order, starts from 1 |
| `author.pid` | | only if the ORCID is available |
| `author.pid.id.scheme` | | Default `'pending_orcid'` (meaning that it is not an id confirmed by ORCID) |
| `author.pid.id.value` | `author.ORCID` | |
| `author.pid.provenance.provenance` | | Default 'Harvested' |
| `author.pid.provenance.trust` | | Default '0.9' |
| `description` | `abstract` | |
| `subject` | `subject` | with `classid='keywords'`, i.e. no controlled vocabularies for Crossref subjects |
| `publicationdate` | `issued.datetime` or, if not available, `created.datetime` | |
| `publisher` | `publisher` | |
| `source` | `source` | only if the record is not of type `book` |
| `source` | concatenation of `container-title.head` + `"ISBN: "` + `ISBN.head` | only if the record is of type `book` |
| `container` | | It is set only for publications with information about the journal it was published in. |
| `container.name` | `container-title.head` | |
| `container.issnOnline` | `issn-type.value` | if `issn-type.type='electronic'` |
| `container.issnPrinted` | `issn-type.value` | if `issn-type.type='print'` |
| `container.vol` | `volume` | |
| `container.sp` | `page` | before `'-'` |
| `container.ep` | `page` | after `'-'` |
| `instance` | | One instance is created with the DOI URL |
| `instance.accessright` | | Values in `instance.accessright.code` and `instance.accessright.label` are set based on license and dateofacceptance:<br/>- `UNKNOWN`: if the license is blank<br/>- `OPEN ACCESS`: if the license is a CC license or an ACS license or an APA license (considered OPEN also by Unpaywall, see [Unpaywall FAQ](https://support.unpaywall.org/support/solutions/articles/44002063718-what-is-an-oa-license-) for details) or if OUP license, but only after 12 months from the publication date<br/>- `EMBARGO`: OUP license, before 12 months from the publication date<br/>- `CLOSED`: if there is a license not covered by the previous cases |
| `instance.accessright.code` | | Code from the [COAR vocabulary for access right](http://vocabularies.coar-repositories.org/documentation/access_rights/) |
| `instance.accessright.label` | | One of: `OPEN`, `RESTRICTED`, `CLOSED`, `EMBARGO` |
| `instance.accessright.scheme` | | Scheme that defines the code and label, i.e. the URL to the [COAR vocabulary for access right](http://vocabularies.coar-repositories.org/documentation/access_rights/) |
| `instance.accessright.openAccessRoute` | | only if `instance.accessright.value = 'OPEN ACCESS'`. Default is `hybrid`. The route is fixed in subsequent phases of DOIBoost, namely when intersecting with Unpaywall and patching the hostedby via DOAJ and the Gold-ISSN list. |
| `instance.license` | `license.URL ` | If there is a `license.content-version='vor'`, then this is used. Otherwise the first license entry is used. |
| `instance.pid` | | The scheme tells the type of PID, the value contains the actual value |
| `instance.pid.scheme` | | Default value: `doi` |
| `instance.pid.value` | `doi` | The doi is normalised and lower-cased |
| `instance.publicationdate` | `issued.datetime` or, if not available, `created.datetime` | |
| `instance.refereed` | | set to `peerReviewed` only if `relation.has-review.id` is not empty, `UNKNOWN` otherwise. |
| `instance.type` | `subtype` | mapped using the [OpenAIRE vocabulary for research products typologies](https://api.openaire.eu/vocabularies/dnet:result_typologies) |
| `instance.url` | `doi` | Full URL of the DOI |
All other fields of the Json schema not mentioned in the table contain empty values.
All the records from Crossref are related to the datasource with `name=Crossref` and `id=openaire____::081b82f96300b6a6e3d282bad31cb6e2`
Possible improvements:
* map `clinical-trial-number` and `alternative-id` in `alternateIdentifiers`?
* Verify if Crossref has a property for `language`, `country`, `container.issnLinking`, `container.iss`, `container.edition`, `container.conferenceplace` and `container.conferencedate`
* Different approach to set the `refereed` field and improve its coverage?
### Map Crossref links to projects/funders
Links to funding available in Crossref are mapped as funding relationships (`ResearchProduct -- isProducedBy -- Project`) applying the following mapping:
| Funder | Grant code | Link to |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|
| DOI: `{10.13039/100010663, 10.13039/100010661, 10.13039/501100007601, 10.13039/501100000780, 10.13039/100010665}` or name: `'European Unions Horizon 2020 research and innovation program'` | series of `4-9` digits in `award` | Link to H2020 project |
| DOI: `{10.13039/100011199, 10.13039/100004431, 10.13039/501100004963, 10.13039/501100000780}` | series of `4-9` digits in `award` | Link to FP7 project |
| DOI: `10.13039/501100000781` OR name: `'European Union's'` | series of `4-9` digits in `award` | Link to FP7 or H2020 project |
| DOI: `10.13039/100000001` | `award` | Link to NSF project |
| DOI: `10.13039/501100001665` OR name: `{'The French National Research Agency (ANR)', 'The French National Research Agency'}` | `award` | Link to ANR project |
| DOI: `10.13039/501100002341` | `award` | Link to Academy of Finland project |
| DOI: `10.13039/501100001602` | `award`, removing the initial 'SFI' if present | Link to SFI project |
| DOI: `10.13039/501100000923` | `award` | Link to ARC project |
| DOI: `10.13039/501100000038` | `award` ignore: we cannot map the project codes in Crossref to project codes in OpenAIRE | Link to NSERC (`unidentified` project) |
| DOI: `10.13039/501100000155` | `award` ignore: we cannot map the project codes in Crossref to project codes in OpenAIRE | Link to SSHRC (`unidentified` project) |
| DOI: `10.13039/501100000024` | `award` ignore: we cannot map the project codes in Crossref to project codes in OpenAIRE | Link to CIHR (`unidentified` project) |
| DOI: `10.13039/501100002848` OR name :`'CONICYT, Programa de Formación de Capital Humano Avanzado'` | `award` | Link to CONICYT project |
| DOI: `10.13039/501100003448` | series of `4-9` digits in award | Link to GSRT project |
| DOI: `10.13039/501100010198` | `award` | Link to SGOV project |
| DOI: `10.13039/501100004564` | series of `4-9` digits in award | Link to MESTD project |
| DOI: `10.13039/501100003407` | `award` | Link to MIUR project. Since OpenAIRE has a small subset of MIUR projects, a link to the MIUR funder (`unidentified`<br/> project) is also generated |
| DOI: `{10.13039/501100006588, 10.13039/501100004488}` | `award`, removing `'Project No'` and `'HRZZ'` prefix, if present | Link to HRZZ or MZOS project |
| DOI: `10.13039/501100006769` | `award` | Link to Russian Science Foundation project |
| DOI: `10.13039/501100001711` | `award` after `'_'` and before `'/'` | Link to SNSF project |
| DOI: `10.13039/501100004410` | `award` | Link to TUBITAK project |
| DOI: `10.10.13039/100004440` or name: `Wellcome Trust Masters Fellowship` | `award` | Link to Wellcome Trust specific project and to the `unidentified` project. |
### Intersect Crossref with UnpayWall by DOI
The fields we consider from UnpayWall are:
* `is_oa`
* `best_oa_location`
* `oa_status`
The records of Crossref that intersect by DOI with UnpayWall records are enriched with one additional `instance` with the following properties:
| OpenAIRE Research Product field path | Unpaywall field path | Notes |
|----------------------------------------|----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `instance` | | created only if `is_oa` and a `best_oa_location` is available |
| `instance.accessright` | | default value `Open Access`: we do not add instances if UnpayWall says there is no open version |
| `instance.accessright.code` | | Open Access code from the [COAR vocabulary for access right](http://vocabularies.coar-repositories.org/documentation/access_rights/) |
| `instance.accessright.label` | | Always `OPEN` |
| `instance.accessright.scheme` | | Scheme that defines the code and label, i.e. the URL to the [COAR vocabulary for access right](http://vocabularies.coar-repositories.org/documentation/access_rights/) |
| `instance.accessright.openAccessRoute` | `oa_status` | |
| `instance.url` | `best_oa_location` | |
| `instance.license` | `best_oa_location.license` | |
| `instance.pid` | | The scheme tells the type of PID, the value contains the actual value |
| `instance.pid.scheme` | | Default value: `doi` |
| `instance.pid.value` | `doi` | The doi is normalised and lower-cased |
For the definition of UnpayWall's `oa_status` refer to the [Unpaywall FAQ](https://support.unpaywall.org/support/solutions/articles/44001777288-what-do-the-types-of-oa-status-green-gold-hybrid-and-bronze-mean-)
The record will also feature a relation to the UnpayWall data source: `name="UnpayWall"`, `id=openaire____::8ac8380272269217cb09a928c8caa993`.

View File

@ -35,7 +35,7 @@ The metadata collection process identifies the most recent record date available
The table below describes the mapping from the XML baseline records to the OpenAIRE Graph dump format. The table below describes the mapping from the XML baseline records to the OpenAIRE Graph dump format.
| OpenAIRE Research Product field path | Datacite record JSON path | # Notes | | OpenAIRE Result field path | Datacite record JSON path | # Notes |
|--------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |--------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `id` | `\attributes\doi` | id in the form `doi_________::md5(doi)` | | `id` | `\attributes\doi` | id in the form `doi_________::md5(doi)` |
| <ul><li>`instance`</li> <li>`instance.type`</li></ul> | <ul><li>`\attributes\types\resourceType`</li> <li> `\attributes\types\resourceTypeGeneral` </li> <li>`attributes\types\schemaOrg`</li></ul> | Use the vocabulary **_dnet:publication_resource_** to find a synonym to one of these terms and get the `instance.type`. | | <ul><li>`instance`</li> <li>`instance.type`</li></ul> | <ul><li>`\attributes\types\resourceType`</li> <li> `\attributes\types\resourceTypeGeneral` </li> <li>`attributes\types\schemaOrg`</li></ul> | Use the vocabulary **_dnet:publication_resource_** to find a synonym to one of these terms and get the `instance.type`. |
@ -69,9 +69,9 @@ The table below describes the mapping from the XML baseline records to the OpenA
| OpenAIRE Relation Semantic and inverse | Datacite record JSON path | Source/Target type | #Notes | | OpenAIRE Relation Semantic and inverse | Datacite record JSON path | Source/Target type | #Notes |
|----------------------------------------|---------------------------------------|---------------------|------------------------------------------------------------------------------------------------------------| |----------------------------------------|---------------------------------------|---------------------|------------------------------------------------------------------------------------------------------------|
| `isProducedBy/produces` | `attributes\fundingReferences` | `ResearchProduct/Project` | only when the fundingReferences matches the pattern `(info:eu-repo/grantagreement/ec/h2020/)(\d{6})(.*)` | | `isProducedBy/produces` | `attributes\fundingReferences` | `result/project` | only when the fundingReferences matches the pattern `(info:eu-repo/grantagreement/ec/h2020/)(\d{6})(.*)` |
| `IsProvidedBy/provides` | | `ResearchProduct/Datasource` | Datasource is always set to `Datacite` | | `IsProvidedBy/provides` | | `result/datasource` | Datasource is always set to `Datacite` |
| `isHostedBy/host` | `\attributes\relationships\client\id` | `ResearchProduct/Datasource` | we defined a curated map clientId/Datasource if we found a match we create an _hostedBy Relation_ | | `isHostedBy/host` | `\attributes\relationships\client\id` | `result/datasource` | we defined a curated map clientId/Datasource if we found a match we create an _hostedBy Relation_ |
| `isRelatedTo` | `\attribute\relatedIdentifiers` | `ResearchProduct/ResearchProduct` | we create relationships whenever the pid of the target is resolved on the Research Graph | | `isRelatedTo` | `\attribute\relatedIdentifiers` | `result/result` | we create relationships whenever the pid of the target is resolved on the Research Graph |

View File

@ -10,7 +10,7 @@ Each Crossref record is enriched with:
* the following information from MAG: * the following information from MAG:
* abstracts * abstracts
* MAG identifiers of authors * MAG identifiers of authors
* affiliation (research product - organization) relationships * affiliation (result - organization) relationships
* subjects (MAG FieldsOfStudy) * subjects (MAG FieldsOfStudy)
* conference or journal information * conference or journal information
@ -66,13 +66,13 @@ Records in Crossref are ruled out according to the following criteria
* `10.7554/elife.21052.049` * `10.7554/elife.21052.049`
* `10.1371/journal.pcbi.1005379.s006` * `10.1371/journal.pcbi.1005379.s006`
Records with `type=dataset` are mapped into OpenAIRE research products of type dataset. All others are mapped as OpenAIRE research products of type publication. Records with `type=dataset` are mapped into OpenAIRE results of type dataset. All others are mapped as OpenAIRE results of type publication.
### Mapping Crossref properties into the OpenAIRE Graph ### Mapping Crossref properties into the OpenAIRE Graph
Properties in OpenAIRE research products are set based on the logic described in the following table: Properties in OpenAIRE results are set based on the logic described in the following table:
| OpenAIRE Research Product field path | Crossref path(s) | Notes | | OpenAIRE Result field path | Crossref path(s) | Notes |
|----------------------------------------|--------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |----------------------------------------|--------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `id` | `doi` | id in the form `doi_________::md5(doi)` | | `id` | `doi` | id in the form `doi_________::md5(doi)` |
| `dateofcollection` | `indexed.datetime` | | | `dateofcollection` | `indexed.datetime` | |
@ -119,7 +119,7 @@ Properties in OpenAIRE research products are set based on the logic described in
| `instance.pid.value` | `doi` | The doi is normalised and lower-cased | | `instance.pid.value` | `doi` | The doi is normalised and lower-cased |
| `instance.publicationdate` | `issued.datetime` or, if not available, `created.datetime` | | | `instance.publicationdate` | `issued.datetime` or, if not available, `created.datetime` | |
| `instance.refereed` | | set to `peerReviewed` only if `relation.has-review.id` is not empty, `UNKNOWN` otherwise. | | `instance.refereed` | | set to `peerReviewed` only if `relation.has-review.id` is not empty, `UNKNOWN` otherwise. |
| `instance.type` | `subtype` | mapped using the [OpenAIRE vocabulary for research products typologies](https://api.openaire.eu/vocabularies/dnet:result_typologies) | | `instance.type` | `subtype` | mapped using the [OpenAIRE vocabulary for result typologies](https://api.openaire.eu/vocabularies/dnet:result_typologies) |
| `instance.url` | `doi` | Full URL of the DOI | | `instance.url` | `doi` | Full URL of the DOI |
All other fields of the Json schema not mentioned in the table contain empty values. All other fields of the Json schema not mentioned in the table contain empty values.
@ -133,7 +133,7 @@ Possible improvements:
### Map Crossref links to projects/funders ### Map Crossref links to projects/funders
Links to funding available in Crossref are mapped as funding relationships (`ResearchProduct -- isProducedBy -- Project`) applying the following mapping: Links to funding available in Crossref are mapped as funding relationships (`result -- isProducedBy -- project`) applying the following mapping:
| Funder | Grant code | Link to | | Funder | Grant code | Link to |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------| |----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------|
@ -166,9 +166,9 @@ The fields we consider from UnpayWall are:
* `best_oa_location` * `best_oa_location`
* `oa_status` * `oa_status`
The records of Crossref that intersect by DOI with UnpayWall records are enriched with one additional `instance` with the following properties: The results of Crossref that intersect by DOI with UnpayWall records are enriched with one additional `instance` with the following properties:
| OpenAIRE Research Product field path | Unpaywall field path | Notes | | OpenAIRE Result field path | Unpaywall field path | Notes |
|----------------------------------------|----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |----------------------------------------|----------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `instance` | | created only if `is_oa` and a `best_oa_location` is available | | `instance` | | created only if `is_oa` and a `best_oa_location` is available |
| `instance.accessright` | | default value `Open Access`: we do not add instances if UnpayWall says there is no open version | | `instance.accessright` | | default value `Open Access`: we do not add instances if UnpayWall says there is no open version |

View File

@ -69,12 +69,12 @@ curl -s "https://www.ebi.ac.uk/europepmc/webservices/rest/MED/33024307/datalinks
``` ```
## Mapping ## Mapping
The table below describes the mapping from the EBI links records to the OpenAIRE Graph Dataset format. The table below describes the mapping from the EBI links records to the OpenAIRE Graph dump format.
We filter all the target links with pid type **ena**, **pdb** or **uniprot** We filter all the target links with pid type **ena**, **pdb** or **uniprot**
For each target we construct a Bioentity with the following mapping For each target we construct a Bioentity with the following mapping
| OpenAIRE Research Product field path | EBI record field xpath | Notes | | OpenAIRE Result field path | EBI record field xpath | Notes |
|-----------------------------|----------------------------------------------------------|---------------------------------------------------------------| |-----------------------------|----------------------------------------------------------|---------------------------------------------------------------|
| `id` | `target/identifier/ID` and `target/identifier/IDScheme` | id in the form `SCHEMA_________::md5(pid)` | | `id` | `target/identifier/ID` and `target/identifier/IDScheme` | id in the form `SCHEMA_________::md5(pid)` |
| `pid` | `target/identifier/ID` and `target/identifier/IDScheme` | `classid = classname = schema` | | `pid` | `target/identifier/ID` and `target/identifier/IDScheme` | `classid = classname = schema` |
@ -91,4 +91,4 @@ For each target we construct a Bioentity with the following mapping
### Relation Mapping ### Relation Mapping
| OpenAIRE Relation Semantic and inverse | Source/Target type | Notes | | OpenAIRE Relation Semantic and inverse | Source/Target type | Notes |
|----------------------------------------|---------------------|--------------------------------------------------------------------------| |----------------------------------------|---------------------|--------------------------------------------------------------------------|
| `IsRelatedTo` | `ResearchProduct/ResearchProduct` | we create relationships between the BioEntity and the pubmed publication | | `IsRelatedTo` | `result/result` | we create relationships between the BioEntity and the pubmed publication |

View File

@ -1,69 +0,0 @@
# Microsoft Academic Graph
## Data acquisition
The Microsoft Academic Graph dataset is generated from the latest released version of the graph, 06-12-2021.
### Changes from the previous version
* New workflow: MAG is no longer created within the DOIBoost process. Now, a new workflow normalizes the various MAG tables into a single table, from which the action set is generated.
* MAG discontinued: It is important to note that MAG has been finished. Therefore, normalization only occurs once data is imported from a complete dump of MAG.
## Process
The Microsoft Academic Graph (MAG) is a heterogeneous graph that contains scientific publication records, citation relationships between those publications, as well as authors, institutions, journals, conferences, and fields of study. The MAG schema is designed to capture the rich and complex relationships between these entities.
The main node types in the MAG schema are:
* `Paper`: Publications represent works of scientific research, such as articles, books, and book chapters.
* `PaperAbstractsInvertedIndex`: used to map the paper abstracts
* `Authors`: Authors represent the people who wrote the publications.
Institutions: Institutions represent the organizations with which the authors are affiliated.
* `Journals`: Journals represent the periodical series in which the publications are published.
* `Conferences`: Conferences represent the academic meetings in which the publications are presented.
The main edge types in the MAG schema are:
* `Citation relationships`: Citation relationships connect citing publications to cited publications.
* `Affiliation relationships`: Affiliation relationships connect authors to the institutions with which they are affiliated.
### Preprocess
In the first phase, a normalized table is defined containing all papers and associated relationships.
### Mapping MAG properties into the OpenAIRE Graph
Properties in OpenAIRE research products are set based on the logic described in the following table:
| OpenAIRE Research Product field path | MAG path(s) | Notes |
|---------------------------------------|------------------|-------------|
| `id` |`PaperId`| id in the form `mag_________::md5(PaperId)`|
| `instance.alternateIdentifier[@type = DOI]` |`Doi` | DOI intersected with Crossref. Only MAG papers with a DOI present in Crossref are filtered|
| `instance.instancetype` | `DocType` |Using the **_dnet:result_typologies_** vocabulary, we look up the `DocType` synonym to generate one of the following main entities: <ul><li>`publication`</li> <li>`dataset`</li><li>`software`</li><li>`otherresearchproduct`</li></ul>|
| `maintitle` | `OriginalTitle`| |
| `publicationdate` |`Year` | publication date if `Date` is not available|
| `publicationdate` | `Date`| |
| `publicationdate` |`OnlineDate` | Date the article was put online |
| `publisher` | `Publisher` | |
| `journal.name` |`ConferenceName` | |
| `journal.issnPrinted` | `JournalISSN` | |
| `journal.edition` | `JournalPublisher` | |
| `journal.ConferencePlace` | `ConferenceLocation` | |
| `journal.conferencedate` | `ConferenceStartDate`, `ConferenceEndDate`| conference date as an append of conferencestartdate-conferenceenddate |
| `journal.vol` | `Volume` | |
| `journal.iss` | `Issue`| |
| `journal.sp` | `FirstPage` | |
| `journal.ep` | `LastPage` | |
| `abstract` | `Paper abstract` | |
| **Author Mapping** | | |
| `author.fullname` | `AuthorName` | |
| `organization.legalname` | `AffiliationName` | |
| `organization.id` | `AffiliationId` | id in the form `mag_________::md5(AffiliationId)` |
|`organization.id` | `AffiliationId` | for each affiliation we generate an affiliation relation between paper and organization |
| `author.pid[@type = mag]` | `AuthorId` | |
| `author.rank` | `AuthorSequenceNumber` | |
| `organization.pid` | `GridId` | |

View File

@ -1,63 +0,0 @@
# Open Researcher and Contributor ID (ORCID)
ORCID (Open Researcher and Contributor ID) is a non-profit organization that provides a unique identifier for researchers. ORCID iDs are used to connect researchers with their contributions, such as publications, grants, and affiliations.
This document describes how OpenAIRE collects information about the researcher profiles and their works from the ORCID.
## Data acquisition
The ORCID full dataset can be downloaded publicly from [Figshare](https://orcid.figshare.com/) and are described on the [ORCID website](https://support.orcid.org/hc/en-us/articles/360006897394-How-do-I-get-the-public-data-file).
These datasets represented the initial import, whereas to keep up with the updates in the data a scheduled process retrieves the delta regularly.
The ORCID dataset consists in different compressed files containing information about researchers in XML format. Once uncompressed, the information extracted from the XML records was used to populate the three tables described below.
ORCID provides an API to get incremental updates, the parsed incremental data can be used to update the three tables with the latest changes.
### OpenAIRE ORCID Data model
- **Authors**: This table contains information about ORCID authors, including their ORCID ID, name, fullname, other names, employments, works, and ROAR IDs.
- **Employments**: This table contains information about the employments of ORCID authors, including their ORCID ID, organization, start date, end date, and ROAR ID.
- **Works**: This table contains information about the works of ORCID authors, including te paper PID and ORCID ID.
**Authors**
| Column name | Type |
|----------------------|----------------------------------------------|
| `biography` | `string` |
| `creditName` | `string` |
| `familyName` | `string` |
| `givenName` | `string` |
| `orcid` | `string` |
| `otherNames` | `array[string]` |
| `otherPids` | `array[struct[schema:string, value:string]]` |
| `visibility` | `string` |
| `lastModifiedDate` | `string` |
**Employments**
| Column name | Type |
|------------------|---------------------------------------|
| `affiliationId` | `struct[schema:string, value:string]` |
| `departmentName` | `string` |
| `endDate` | `string` |
| `orcid` | `string` |
| `roleTitle` | `string` |
| `startDate` | `string` |
**Works**
| Column name | Type |
|-------------|----------------------------------------------|
| `orcid` | `string` |
| `pids` | `array[struct[schema:string, value:string]]` |
| `title` | `string` |
For a more extensive description of the different fields and the schema of the record model please refer to the [ORCID project on GitHub](https://github.com/ORCID/orcid-model).
## Process
The information obtained by ORCID is used to enrich the Graph, in particular to add the author identifiers to the results not providing one.
This process is described in the [enrichment by PID](../../enrichment-by-pid/orcid-enrichment) section.

View File

@ -14,7 +14,7 @@ Pubmed exposes an entry point FTP with all the updates for each one. [ftp baseli
The table below describes the mapping from the XML baseline records to the OpenAIRE Graph dump format. The table below describes the mapping from the XML baseline records to the OpenAIRE Graph dump format.
| OpenAIRE Research Product field path | PubMed record field xpath | Notes | | OpenAIRE Result field path | PubMed record field xpath | Notes |
|--------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| |--------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **Publication Mapping** | | | | **Publication Mapping** | | |
| `id` | `//PMID` | id in the form `pmid_________::md5(pmid)` | | `id` | `//PMID` | id in the form `pmid_________::md5(pmid)` |

View File

@ -7,10 +7,10 @@ From this dataset, only the protein records linked to a PubMed publication are e
## Entity Mapping ## Entity Mapping
The table below describes the mapping from the TEXT metadata format to the OpenAIRE Graph Dataset format. The table below describes the mapping from the TEXT metadata format to the OpenAIRE Graph dump format.
You can check an example of the text metadata [here](https://rest.uniprot.org/uniprotkb/A0A0C5B5G6.txt) You can check an example of the text metadata [here](https://rest.uniprot.org/uniprotkb/A0A0C5B5G6.txt)
| OpenAIRE Research Product field path | FASTA record field xpath | Notes | | OpenAIRE Result field path | FASTA record field xpath | Notes |
|------------------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------------------| |------------------------------|--------------------------------------------------------------------------|------------------------------------------------------------------------------------------|
| **BIOEntity Mapping** | | | | **BIOEntity Mapping** | | |
| `id` | `LINE Starts with AC` | id in the form `uniprot_____::md5(id)` | | `id` | `LINE Starts with AC` | id in the form `uniprot_____::md5(id)` |

View File

@ -27,7 +27,7 @@ A vocabulary is a data structure that defines a list of terms, and for each term
[...] [...]
``` ```
Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [research product's instance typology](../data-model/entities/research-product#instance). Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](/data-model/entities/result#instance).
The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/).

View File

@ -2,23 +2,23 @@
The Deduction process (also known as “bulk tagging”) enriches each record with new information that can be derived from the existing property values. The Deduction process (also known as “bulk tagging”) enriches each record with new information that can be derived from the existing property values.
This process is used to associate research products to community/research initiatives that are part of OpenAIRE. This process is used to associate results to community/research initiatives that are part of OpenAIRE.
As of November 2022, three procedures are in place to relate a research product to a research initiative, infrastructure (RI) or community (RC) based on: As of November 2022, three procedures are in place to relate a research product to a research initiative, infrastructure (RI) or community (RC) based on:
* subjects: it is possible to specify a list of subjects that are relevant for the RC/RI. Every time one of the subjects is found among the subjects of a research products, the research products is linked to the RC/RI. * subjects: it is possible to specify a list of subjects that are relevant for the RC/RI. Every time one of the subjects is found among the subjects of a result, the result is linked to the RC/RI.
<p align="center"> <p align="center">
<img loading="lazy" alt="Bulktagging Subject" src={require('../../assets/img/enrichment/bulktagging_subject.png').default} width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Bulktagging Subject" src={require('../../assets/img/enrichment/bulktagging_subject.png').default} width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
* data sources: it is possible to list a set of data sources relevant for the RC/RI. All research products collected from these data sources will be linked to the RC/RI * data sources: it is possible to list a set of data sources relevant for the RC/RI. All the results collected from these data sources will be linked to the RC/RI
<p align="center"> <p align="center">
<img loading="lazy" alt="Bulktagging Data source" src={require('../../assets/img/enrichment/bulktagging_datasource.png').default} width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Bulktagging Data source" src={require('../../assets/img/enrichment/bulktagging_datasource.png').default} width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
When only some research products collected from a datasource are relevant for the RC/RI, it is possible to specify a set of selection constraints (SC) that have to be verified before linking the research product to the When only some results collected from a datasource are relevant for the RC/RI, it is possible to specify a set of selection constraints (SC) that have to be verified before linking the result to the
community. The selection constraint has the form <strong>SC = S1 or S2 or ... or Sn</strong>. The generic Si has the form <strong>Si = s<sub>i1</sub> and s<sub>i2</sub> and ...and s<sub>in</sub></strong> and each s<sub>ij</sub> is a condition on a specific field of the research product. The set of fields that can be specified is <strong>F={title, author, contributor, description, orcid}</strong>, community. The selection constraint has the form <strong>SC = S1 or S2 or ... or Sn</strong>. The generic Si has the form <strong>Si = s<sub>i1</sub> and s<sub>i2</sub> and ...and s<sub>in</sub></strong> and each s<sub>ij</sub> is a condition on a specific field of the result. The set of fields that can be specified is <strong>F={title, author, contributor, description, orcid}</strong>,
while the set of condition can be among <strong>V={contains, equals, not_contains, not_equals, contains_ignorecase, equals_ignorecase, not_contains_ignorecase, not_equal_ignorecase}</strong>, and the value is free text. while the set of condition can be among <strong>V={contains, equals, not_contains, not_equals, contains_ignorecase, equals_ignorecase, not_contains_ignorecase, not_equal_ignorecase}</strong>, and the value is free text.
A possible selection criteria can be: “All the products whose contributor contains DARIAH “ A possible selection criteria can be: “All the products whose contributor contains DARIAH “

View File

@ -5,30 +5,30 @@ relationships and values between the involved entities
As of November 2022, the following procedures are in place: As of November 2022, the following procedures are in place:
* Country propagation: updates the property “country” of a research product. This happens when the research product is collected from an institutional datasource or when the datasource hosting the research product is inserted in a whitelist. For all the research products whose hosting datasource verifies one of the conditions above, the country of the organization providing the datasource is added to the country of the research product: e.g. publication collected from an institutional repository maintained by an italian university will be enriched with the property “country = IT”. * Country propagation: updates the property “country” of a results. This happens when the result is collected from an institutional datasource or when the datasource hosting the result is inserted in a whitelist. For all the results whose hosting datasource verifies one of the conditions above, the country of the organization providing the datasource is added to the country of the result: e.g. publication collected from an institutional repository maintained by an italian university will be enriched with the property “country = IT”.
<p align="center"> <p align="center">
<img loading="lazy" alt="Country Propagation" src={require('../../assets/img/enrichment/propagation_country.png').default} width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Country Propagation" src={require('../../assets/img/enrichment/propagation_country.png').default} width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
* Project propagation: adds a "isProducedBy" relationship (and its inverse) between a Project P and research product R1, if R1 has a strong semantic relationship with another research product R2 and P produces R2: e.g. publication linked to project P “is supplemented by” a dataset D. Dataset D will get the link to project P. The relationships considered for this procedure are “isSupplementedBy” and “isSupplementTo”. * Project propagation: adds a "isProducedBy" relationship (and its inverse) between a Project P and Result R1, if R1 has a strong semantic relationship with another Result R2 and P produces R2: e.g. publication linked to project P “is supplemented by” a dataset D. Dataset D will get the link to project P. The relationships considered for this procedure are “isSupplementedBy” and “isSupplementTo”.
<p align="center"> <p align="center">
<img loading="lazy" alt="Project Propagation" src={require('../../assets/img/enrichment/propagation_resulttoproject.png').default} width="40%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Project Propagation" src={require('../../assets/img/enrichment/propagation_resulttoproject.png').default} width="40%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
* Research product to RC/RI through organization propagation. The manager of the RC/RI can specify a set of organizations whose product are relevant for the * Result to RC/RI through organization propagation. The manager of the RC/RI can specify a set of organizations whose product are relevant for the
community. community.
Each research product having such a relation of affiliation with at least one organization relevant for the RC/RI will be linked to it. Each result having such a relation of affiliation with at least one organization relevant for the RC/RI will be linked to it.
<p align="center"> <p align="center">
<img loading="lazy" alt="Research product to community through organization propagation" src={require('../../assets/img/enrichment/propagation_resulttocommunitythroughorganization.png').default} <img loading="lazy" alt="Result to community through organization propagation" src={require('../../assets/img/enrichment/propagation_resulttocommunitythroughorganization.png').default}
width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> width="50%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
* Research product to RC/RI through semantic relation: extends the set of products linked to a RC/RI by exploiting strong semantic relationships between the research products; * Result to RC/RI through semantic relation: extends the set of products linked to a RC/RI by exploiting strong semantic relationships between the results;
e.g. if a research product R1 is associated to the community C and is supplemented by a research product R2 then R2 will be linked to the community. The relationships considered for this procedure are “isSupplementedBy” and “supplements”. e.g. if a result R1 is associated to the community C and is supplemented by a result R2 then the result R2 will be linked to the community. The relationships considered for this procedure are “isSupplementedBy” and “supplements”.
<p align="center"> <p align="center">
<img loading="lazy" alt="Research product to community through semantic relation propagation" src={require('../../assets/img/enrichment/propagation_resulttocommunitythroughsemrel.png').default} width="40%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Result to community through semantic relation propagation" src={require('../../assets/img/enrichment/propagation_resulttocommunitythroughsemrel.png').default} width="40%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
* ORCID identifiers to research product through semantic relation. This propagation enriches the research products by adding ORCID identifiers to authors. The added ORCID will be marked as "potential" since they have been inserted through propagation. * ORCID identifiers to result through semantic relation. This propagation enriches the results by adding ORCID identifiers to authors. The added ORCID will be marked as "potential" since they have been inserted through propagation.
The process considers the set of overlapping authors between research products (R1 and R2) linked with a strong semantic relationship (IsSupplementedBy, IsSupplementTo). The process considers the set of overlapping authors between results (R1 and R2) linked with a strong semantic relationship (IsSupplementedBy, IsSupplementTo).
For each author A in the overlapping set, if R1 provides the ORCID value for A and R2 does not, then the author A in R2 will be enriched with the information of the ORCID found in R1. For each author A in the overlapping set, if R1 provides the ORCID value for A and R2 does not, then the author A in R2 will be enriched with the information of the ORCID found in R1.
<p align="center"> <p align="center">
@ -36,14 +36,14 @@ For each author A in the overlapping set, if R1 provides the ORCID value for A a
</p> </p>
* affiliation to organization through institutional repository. This propagation adds one "hasAuthorInstitution" relationship (and its inverse) * affiliation to organization through institutional repository. This propagation adds one "hasAuthorInstitution" relationship (and its inverse)
between a research product R and Organization O, between a Result R and Organization O,
if R was collected from a datasource D with type institutional repository, and D was provided by O. if R was collected from a datasource D with type institutional repository, and D was provided by O.
<p align="center"> <p align="center">
<img loading="lazy" alt="Affiliation propagation through institutional repository" src={require('../../assets/img/enrichment/propagation_affiliationistrepo.png').default} width="40%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Affiliation propagation through institutional repository" src={require('../../assets/img/enrichment/propagation_affiliationistrepo.png').default} width="40%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p> </p>
* affiliation to organization through semantic relation. This propagation adds one "hasAuthorInstitution" relationship (and its inverse) between a * affiliation to organization through semantic relation. This propagation adds one "hasAuthorInstitution" relationship (and its inverse) between a
research product R and an Organization O, Result R and an Organization O,
if R has an affiliation relation with an organization O1 that is in relation "isChildOf" with O. if R has an affiliation relation with an organization O1 that is in relation "isChildOf" with O.
<p align="center"> <p align="center">

View File

@ -1,10 +1,6 @@
# Deduplication # Deduplication
The OpenAIRE Graph is populated by aggregating metadata records from distinct data sources whose content typically overlaps. For example, the collection of article metadata records from publisher' archives (e.g. Frontiers, Elsevier, Copernicus) and from pre-print platforms (e.g. ArXiv.org, UKPubMed, BioarXiv.org). In order to support monitoring of science, the OpenAIRE Graph implements record deduplication and merge strategies, in such a way the scientific production can be consistently statistically represented. Such strategies reflect the following intuition behind OpenAIRE monitoring: "Two metadata records are equivalent when they describe the same research product, hence they feature compatible resource types, have the same title, the same authors, or, alternatively, the same PID". Finally, groups of duplicates can be whitelisted or blacklisted, in order to manually refine the quality of this strategy. Metadata records about the same scholarly work can be collected from different providers. Each metadata record can possibly carry different information because, for example, some providers are not aware of links to projects, keywords or other details. Another common case is when OpenAIRE collects one metadata record from a repository about a pre-print and another record from a journal about the published article. For the provision of statistics, OpenAIRE must identify those cases and “merge” the two metadata records, so that the scholarly work is counted only once in the statistics OpenAIRE produces.
It should be noticed that publication dates do not make a difference, as different versions of the same product can be published at different times; e.g. the pre-print and a published version of a scientific article, which should be counted as one object; abstracts, subjects, and other possible related fields, are not used to strengthen similarity, due to their heterogeneity or absence across different data sources. Moreover, even when two products are indicated as one a new version of the other, the presence of different authors will not bring them into the same group, to avoid unfair distribution of scientific reward.
Groups of duplicates are finally merged into a new "representative record", having its own id, embedding properties of the merged records and carrying provenance information about the data sources and the relative "instances", i.e. manifestations of the products, together with their resource type, access rights, and publishing date.
## Methodology overview ## Methodology overview
@ -37,7 +33,7 @@ To further limit the number of comparisons, a sliding window mechanism is used:
### Duplicates grouping (transitive closure) ### Duplicates grouping (transitive closure)
Once the similarity relations between pairs of records are drawn, the groups of equivalent records are obtained (transitive closure, i.e. “mesh”). From such sets a new **representative record** is obtained, which inherits properties from the merged records and keeps track of their provenance. Once the similarity relations between pairs of records are drawn, the groups of equivalent records are obtained (transitive closure, i.e. “mesh”). From such sets a new representative object is obtained, which inherits all properties from the merged records and keeps track of their provenance.
### Relation redistribution ### Relation redistribution

View File

@ -2,104 +2,36 @@
sidebar_position: 1 sidebar_position: 1
--- ---
# Research products # Research results
Duplicates among research products are identified among results of the same Duplicates among research results are identified among results of the same type (publications, datasets, software, other research products). If two duplicate results are aggregated one as a dataset and one as a software, for example, they will never be compared and they will never be identified as duplicates.
type (publications, datasets, software, other research products). If two OpenAIRE supports different deduplication strategies based on the type of results.
duplicate research products are aggregated one as a dataset and one as a
software, for example, they will never be compared and they will never be
identified as duplicates.
OpenAIRE supports different deduplication strategies based on the type of
results.
The next sections describe how each stage of the deduplication workflow is faced The next sections describe how each stage of the deduplication workflow is faced for research results.
for research products.
### Candidate identification (clustering) ### Candidate identification (clustering)
To match the requirements of limiting the number of comparisons, OpenAIRE To match the requirements of limiting the number of comparisons, OpenAIRE clustering for research products works with two functions:
clustering for research products works with two different strategies based on * *DOI-based function*: the function generates the DOI when this is provided as part of the record properties;
entity types: * *Title-based function*: the function generates a key that depends on (i) number of significant words in the title (normalized, stemming, etc.), (ii) module 10 of the number of characters of such words, and (iii) a string obtained as an alternation of the function prefix(3) and suffix(3) (and vice versa) on the first 3 words (2 words if the title only has 2). For example, the title ``Search for the Standard Model Higgs Boson`` becomes ``search standard model higgs boson`` with two keys key ``5-3-seaardmod`` and ``5-3-rchstadel``.
#### Software To give an idea, this configuration generates around 77Mi blocks, which we limited to 200 records each (only 15K blocks are affected by the cut), and entails 260Bi matches.
* *Title extraction functions*:
two clustering functions are applied to the title (normalized, stemming, etc.)
* *stats and suffix prefix of words*: the function generates a key that
depends on (i) number of significant words in the title, (ii) module 10 of
the number of characters of such words, and (iii) a
string
obtained as an alternation of the function prefix(3) and suffix(3) (and
vice-versa) on the first 3 words (2 words if the title only has 2). For
example, the title ``Search for the Standard Model Higgs Boson``
becomes the two keys ``5-3-seaardmod`` and ``5-3-rchstadel``
* *n-grams*: the function generates ngrams from the
title. For example, the
title ``Search for the Standard Model Higgs Boson``
becomes the keys ``tan``, ``sta``, ``ode``, ``mod``, ``ear``, ``hig``,
``igg``, ``sea``
* *DOI extraction function*: the function generates the DOI when this is
provided as part of the record properties
* *URL extraction function*: the function generates the hostname part provided
by the URL of the software, if any
#### Publication, Dataset and Other Research Product
* *PID extraction function*: the function generates the PIDs when at least one
is provided as part of the ``pid`` record properties
* *Author and Title extraction function*: the function generates a key that
depends on (i) the number of authors of the product, with a cap of 21
authors (ii) number of significant words in the title (normalized, stemming,
etc.), divided by 10, and (iii) a string obtained as an alternation of the
function prefix(3) and suffix(3) (and vice versa) on the first 3 words (2
words if the title only has 2).
<br />
For example, a product composed by 197 authors and
titled ``Search for the Standard Model Higgs Boson``
becomes the two keys ``21-0-seaardmod`` and ``21-0-rchstadel``
### Duplicates identification (pair-wise comparisons) ### Duplicates identification (pair-wise comparisons)
Comparisons in a block are performed using a *sliding window* set to 50 records. Comparisons in a block are performed using a *sliding window* set to 50 records. The records are sorted lexicographically on a normalized version of their titles. The 1st record is compared against all the 50 following ones using the decision tree, then the second, etc. for an NlogN complexity.
The records are sorted lexicographically on the normalized version of their A different decision tree is adopted depending on the type of the entity being processed.
titles. The 1st record is compared against all the 50 following ones using the Similarity relations drawn in this stage will be consequently used to perform the duplicates grouping.
decision tree, then the second, etc.
Local information about matching records is kept and possibly used to prune
unneeded comparisons, for example once it is known that A equals to both B and
C, B will not be compared against C because the A,B,C group will be anyway
discovered by the global transitive closure step later.
<br />
A different decision tree is adopted depending on the type of the entity being
processed.
Similarity relations drawn in this stage will be consequently used to perform
the duplicates grouping.
#### Publications #### Publications
For each pair of publications in a cluster the following strategy (depicted in For each pair of publications in a cluster the following strategy (depicted in the figure below) is applied.
the figure below) is applied.
The comparison goes through different stages: The comparison goes through different stages:
1. *trusted pids check*: comparison of the trusted pid lists (in the `pid` field of the record). If at least 1 pid is equivalent, records match and the similarity relation is drawn.
1. *trusted pids check*: comparison of the trusted pid lists (in the `pid` field 2. *instance type check*: comparison of the instance types (indicating the subtype of the record, i.e. presentation, conference object, etc.). If the instance types are not compatible then the records does not match. Otherwise, the comparison proceeds to the next stage
of the record). If at least 1 pid is equivalent, records match and the 3. *untrusted pids check*: comparison of all the available pids (in the `pid` and the `alternateid` fields of the record). In every case, no similarity relation is drawn in this stage. If at least one pid is equivalent, the next stage will be a *soft check*, otherwise the next stage is a *strong check*.
similarity relation is drawn. 4. *soft check*: comparison of the record titles with the Levenshtein distance. If the distance measure is above 0.9 then the similarity relation is drawn.
2. *instance type check*: comparison of the instance types (indicating the 5. *strong check*: comparison composed by three substages involving the (i) comparison of the author list sizes and the version of the record to determine if they are coherent, (ii) comparison of the record titles with the Levenshtein distance to determine if it is higher than 0.99, (iii) "smart" comparison of the author lists to check if common authors are more than 60%.
subtype of the record, i.e. presentation, conference object, etc.). If the
instance types are not compatible then the records does not match. Otherwise,
the comparison proceeds to the next stage
3. *untrusted pids check*: comparison of all the available pids (in the `pid`
and the `alternateid` fields of the record). In every case, no similarity
relation is drawn in this stage. If at least one pid is equivalent, the next
stage will be a *soft check*, otherwise the next stage is a *strong check*.
4. *soft check*: comparison of the record titles with the Levenshtein distance.
If the distance measure is above 0.9 then the similarity relation is drawn.
5. *strong check*: comparison composed by three substages involving the (i)
comparison of the author list sizes and the version of the record to
determine if they are coherent, (ii) comparison of the record titles with the
Levenshtein distance to determine if it is higher than 0.95, (iii) "smart"
comparison of the author lists to check if common authors are more than 60%
in case of titles whose length is greater than 30 chars or more than 90%
otherwise.
<p align="center"> <p align="center">
<img loading="lazy" alt="Publications Decision Tree" src={require('../../assets/img/decisiontree-publication.png').default} width="100%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Publications Decision Tree" src={require('../../assets/img/decisiontree-publication.png').default} width="100%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
@ -107,39 +39,12 @@ The comparison goes through different stages:
[//]: # (Link to the image: https://docs.google.com/drawings/d/19SIilTp1vukw6STMZuPMdc0pv0ODYCiOxP7OU3iPWK8/edit?usp=sharing) [//]: # (Link to the image: https://docs.google.com/drawings/d/19SIilTp1vukw6STMZuPMdc0pv0ODYCiOxP7OU3iPWK8/edit?usp=sharing)
#### Datasets and Other types of research products
For each pair of datasets or other types of research products in a cluster the
strategy depicted in the figure below is applied.
The decision tree is almost identical to the publication decision tree, with the
only exception of the *instance type check* stage. Since such type of record
does not have a relatable instance type, the check is not performed and the
decision tree node is skipped.
<p align="center">
<img loading="lazy" alt="Dataset and Other types of research products Decision Tree" src={require('../../assets/img/decisiontree-dataset-orp.png').default} width="90%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p>
[//]: # (Link to the image: https://docs.google.com/drawings/d/1uBa7Bw2KwBRDUYIfyRr_Keol7UOeyvMNN7MPXYLg4qw/edit?usp=sharing)
#### Software #### Software
For each pair of software in a cluster the following strategy (depicted in the figure below) is applied.
For each pair of software in a cluster the following strategy (depicted in the
figure below) is applied.
The comparison goes through different stages: The comparison goes through different stages:
1. *pids check*: comparison of the pids in the records. No similarity relation is drawn in this stage, it is only used to establish the final threshold to be used to compare record titles. If there is at least one common pid, then the next stage is a *soft check*. Otherwise, the next stage is a *strong check*
1. *DOI pids and URLs check*: comparison of the pids of type DOI and URLs in the 2. *soft check*: comparison of the record titles with Levenshtein distance. If the measure is above 0.9, then the similarity relation is drawn
records. If at least 1 DOI is equivalent or 1 URL is equivalent, then records 3. *strong check*: comparison of the record titles with Levenshtein distance. If the measure is above 0.99, then the similarity relation is drawn
match and the similarity relation is drawn
2. *title check*: comparison of the record titles with Levenshtein distance,
excluding versioning information.
If the distance is below 0.95 then the records does not match. Otherwise, the
comparison proceeds to the next stage
3. *untrusted DOI check*: comparison of all the available DOIs (in the `pid` and
the `alternateid` fields of the record). If at least 1 DOI is equivalent,
records match and the similarity relation is drawn
4. *authors check*: "smart" comparison of the author lists to check if the two
products share all authors
<p align="center"> <p align="center">
<img loading="lazy" alt="Software Decision Tree" src={require('../../assets/img/decisiontree-software.png').default} width="85%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Software Decision Tree" src={require('../../assets/img/decisiontree-software.png').default} width="85%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
@ -147,86 +52,18 @@ The comparison goes through different stages:
[//]: # (Link to the image: https://docs.google.com/drawings/d/19gd1-GTOEEo6awMObGRkYFhpAlO_38mfbDFFX0HAkuo/edit?usp=sharing) [//]: # (Link to the image: https://docs.google.com/drawings/d/19gd1-GTOEEo6awMObGRkYFhpAlO_38mfbDFFX0HAkuo/edit?usp=sharing)
### Duplicates grouping #### Datasets and Other types of research products
For each pair of datasets or other types of research products in a cluster the strategy depicted in the figure below is applied.
The decision tree is almost identical to the publication decision tree, with the only exception of the *instance type check* stage. Since such type of record does not have a relatable instance type, the check is not performed and the decision tree node is skipped.
The aim of the final stage is the creation of records that group all the <p align="center">
equivalent entities discovered pairwise by the previous step. This is done in <img loading="lazy" alt="Dataset and Other types of research products Decision Tree" src={require('../../assets/img/decisiontree-dataset-orp.png').default} width="90%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
multiple phases. </p>
#### Transitive closure [//]: # (Link to the image: https://docs.google.com/drawings/d/1uBa7Bw2KwBRDUYIfyRr_Keol7UOeyvMNN7MPXYLg4qw/edit?usp=sharing)
As the concluding step of duplicate identification, a transitive closure is ### Duplicates grouping (transitive closure)
performed against similarity relations to identify complete groups of duplicated
records (cliques). If a group exceeds 200 elements, only the first 200 elements
are included in the group, while the remaining elements are kept ungrouped.
#### Selection of the pivot record The general concept is that the field coming from the record with higher "trust" value is used as reference for the field of the representative record.
Each group of duplicate records needs to be identified in the final graph with The IDs of the representative records are obtained by appending the prefix ``dedup_`` to the MD5 of the first ID (given their lexicographical ordering). If the group of merged records contains a trusted ID (i.e. the DOI), also the ``doi`` keyword is added to the prefix.
an OpenAIRE identifier, derived from a record of the group known as the _pivot
record_. It is determined after sorting the group of duplicate records by the
following criteria:
1. Records with identifiers from a [PID authority](/data-model/pids-and-identifiers#pid-authorities).
2. Records chosen as pivots in the graph's previous generations.
3. Publications from CrossRef or datasets from DataCite.
4. Records with an earlier date of acceptance.
5. Records with smaller IDs in lexicographical order.
The first sorting criterion is possible because a state table, called "pivot
history", is maintained across graph generations. It keeps track of which
records were used as pivot records in what graph, guaranteed to retain data for
the last 12 months.
#### Creation of representative records
The representative record, also known as the "dedup record", replaces the group
of deduplicated records in the graph.
##### OpenAIRE identifier of the representative record
The OpenAIRE identifier of the representative record is generated based on the
identifier of the record chosen as the pivot of the group:
- if the pivot record comes from a "PID authority", the identifier of the
representative record is the same, but the "PID Type Prefix" part of the
identifier is modified to append ``_dedup``.<br/>
For example ```doi_________::d5021b53204e4fdeab6ff5d5bc468032``` will
become ```doi_dedup___::d5021b53204e4fdeab6ff5d5bc468032```
- otherwise the "PID Type Prefix" part will be set to the fixed value
``dedup_wf_002``, and the following hash will be calculated as the MD5 hash of
the entire raw id of the pivot record.<br/>
For example ``DansKnawCris::0829b5191605bdbea36d6502b8c1ce1g`` will
become ``dedup_wf_002::345e5d1b80537b0d0e0a49241ae9e516``
##### Content of the representative record
The representative records inherits properties from the records it merges
and tracks their provenance. Whenever possible, it preserves all data from the
merged records, such as the ``instance`` field. In cases where a specific value
must be chosen, the most representative one is selected. For example, for the
"dateofacceptance" field, the earliest value is chosen.
##### Merged and singleton representative record
Changes in metadata content or graph construction may lead to cases where
representative records disappear from the graph:
1. When two or more representative records are merged into one representative
record. Put it other terms this happens when a group of duplicated records
contains multiple records formerly used as pivot record.
2. When a record chosen as a pivot record leaves its group and remains alone.
3. When a record chosen as a pivot record is no longer published by its data
source (deletion of the metadata record).
To address these cases, the pivot history table ensures the visibility of
disappearing representative records for the first two cases. Specifically:
1. In the case of merged representative records, the new representative record
and the ones that would be lost are generated and linked as part of the new
representative record.
2. In the case of a record no longer serving as a pivot, a representative record
is generated and linked only with that record.
This approach ensures that users can access representative records that would
otherwise be lost.

View File

@ -4,14 +4,9 @@ sidebar_position: 1
# Affiliation matching # Affiliation matching
***Short description:*** The goal of the affiliation matching module is to match affiliation strings (identified in full-text PDFs or in scholarly databases, such as Crossref) with persistent organization identifiers (e.g., ROR identifiers). ***Short description:*** The goal of the affiliation matching module is to match affiliations extracted from the pdf and xml documents with organizations from the OpenAIRE organization database.
Depending on the data source, we currently employ two distinct methodologies:
- The [first](#algorithmic-details-of-the-first-method) method revolves around affiliations extracted from PDF and XML documents, which are subsequently matched with organizations within the OpenAIRE database. ***Algorithmic details:***
- The [second](#algorithmic-details-of-the-second-method) concerns affiliations retrieved from platforms such as Crossref, PubMed, and Datacite, and are matched to organizations of the ROR database.
## Algorithmic details of the first method
*The buckets concept* *The buckets concept*
@ -44,13 +39,13 @@ The total match strength is calculated in such a way that each consecutive voter
***Parameters:*** ***Parameters:***
* input * input
* input_document_metadata: [ExtractedDocumentMetadata](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/metadataextraction/ExtractedDocumentMetadata.avdl) avro datastore location. Document metadata is the source of affiliations. * input_document_metadata: [ExtractedDocumentMetadata](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/metadataextraction/ExtractedDocumentMetadata.avdl) avro datastore location. Document metadata is the source of affiliations.
* input_organizations: [Organization](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/importer/Organization.avdl) avro datastore location. * input_organizations: [Organization](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/importer/Organization.avdl) avro datastore location.
* input_document_to_project: [DocumentToProject](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/importer/DocumentToProject.avdl) avro datastore location with **imported** document-to-project relations. These relations (alongside with inferred document-project and project-organization relations) are used to generate document-organization pairs which are used as a hint for matching affiliations. * input_document_to_project: [DocumentToProject](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/importer/DocumentToProject.avdl) avro datastore location with **imported** document-to-project relations. These relations (alongside with inferred document-project and project-organization relations) are used to generate document-organization pairs which are used as a hint for matching affiliations.
* input_inferred_document_to_project: [DocumentToProject](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/referenceextraction/project/DocumentToProject.avdl) avro datastore location with **inferred** document-to-project relations. * input_inferred_document_to_project: [DocumentToProject](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/referenceextraction/project/DocumentToProject.avdl) avro datastore location with **inferred** document-to-project relations.
* input_project_to_organization: [ProjectToOrganization](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/importer/ProjectToOrganization.avdl) avro datastore location. These relations (alongside with infered document-project and document-project relations) are used to generate document-organization pairs which are used as a hint for matching affiliations * input_project_to_organization: [ProjectToOrganization](https://github.com/openaire/iis/blob/master/iis-schemas/src/main/avro/eu/dnetlib/iis/importer/ProjectToOrganization.avdl) avro datastore location. These relations (alongside with infered document-project and document-project relations) are used to generate document-organization pairs which are used as a hint for matching affiliations
* output * output
* [MatchedOrganization](https://github.com/openaire/iis/blob/master/iis-wf/iis-wf-affmatching/src/main/resources/eu/dnetlib/iis/wf/affmatching/model/MatchedOrganization.avdl) avro datastore location with matched publications with organizations. * [MatchedOrganization](https://github.com/openaire/iis/blob/master/iis-wf/iis-wf-affmatching/src/main/resources/eu/dnetlib/iis/wf/affmatching/model/MatchedOrganization.avdl) avro datastore location with matched publications with organizations.
***Limitations:*** - ***Limitations:*** -
@ -60,48 +55,3 @@ Java, Spark
***References:*** - ***References:*** -
***Authority:*** ICM &bull; ***License:*** AGPL-3.0 &bull; ***Code:*** [CoAnSys/affiliation-organization-matching](https://github.com/CeON/CoAnSys/tree/master/affiliation-organization-matching) ***Authority:*** ICM &bull; ***License:*** AGPL-3.0 &bull; ***Code:*** [CoAnSys/affiliation-organization-matching](https://github.com/CeON/CoAnSys/tree/master/affiliation-organization-matching)
## Algorithmic details of the second method
*Categorization*
The affiliations' strings are imported and undergo cleaning, tokenization, and removal of stopwords. Similar to the “buckets concept” of the first method, the goal is to split the affiliation strings, as well as the ROR organizations, into coherent groups. To achieve this, data preprocessing has already been conducted on ROR's data, involving the analysis of word frequency ('keywords') within the legal names of ROR's organizations to define specific categories. These categories include universities and institutes, laboratories, hospitals, companies, museums, governments, foundation, and rest organizations. ROR's organizations have subsequently been assigned to these categories based on their legal names. The algorithm employs a similar approach to categorize affiliations into these same groups.
*String Shortening*
The objective is to extract pertinent details from each affiliation string. The algorithm divides the string whenever a comma (,) or semicolon (;) is detected. It then applies specific 'rules' to these segments and retains only those containing relevant keywords. Additionally, it trims down the segments by preserving words in proximity to particular keywords like "university," "institute," "laboratory," or "hospital." As a result, the average string length is reduced from 90 to 35 characters.
*Matching with ROR's Database*
The algorithm checks whether a substring containing a keyword is linked to a legal name or to an alternative name in the organizations listed in the ROR's database. In order to identify the most accurate match, the algorithm employs cosine similarity.. Although alternative methods like Levenshtein Distance or Jaro-Winkler Distance were considered for measuring string similarity, it was concluded that cosine similarity was the most appropriate choice for this specific application.
*Refinement*
If multiple matches are found above the desired similarity thresholds, the algorithm performs another check. It applies cosine similarity between the organizations found in the ROR's database and the original affiliation string. This comparison takes into account additional information present in the original affiliation, such as addresses or city names. The algorithm aims to identify the best fit among the potential matches. Note that the case where two or more different organizations share the same name is also considered.
***Parameters:***
* input
* source of affiliations: JSON Crossref or XML Pubmed or Parquet DataCite files.
* organizations: [dix_acad.pkl](https://github.com/openaire/affro/blob/main/dictionaries/dix_acad.pkl), [dix_mult](https://github.com/openaire/affro/blob/main/dictionaries/dix_mult.pkl), [dix_city](https://github.com/openaire/affro/blob/main/dictionaries/dix_city.pkl), [dix_country](https://github.com/openaire/affro/blob/main/dictionaries/dix_country.pkl) (four pickled dictionaries with keys legalnames and alternativenames of organizations in the ROR database.)
* similarity thresholds: simU for universities, simG for other organizations (default values are simU = 0.64, simG = 0.87).
cument-organization pairs which are used as a hint for matching affiliations
* output
* JSON file with ROR ids of organizations and corresponding similarity scores for each DOI.
***Limitations:*** -
***Environment:***
Python
***References:*** -
***Authority:*** OpenAIRE &bull; ***License:*** AGPL-3.0 &bull; ***Code:*** [AffRo](https://github.com/openaire/affro)

View File

@ -1,6 +1,7 @@
# Citation matching # Citation matching
***Short description:*** During a citation matching task, bibliographic entries are linked to the documents that they reference. The citation matching module - one of the modules of the Information Inference Service (IIS) - receives as an input a list of documents accompanied by their metadata and bibliography. Among them, it discovers links described above and returns them as a list. It is worth mentioning that the implemented algorithm has been described in detail in [arXiv:1303.6906](https://arxiv.org/abs/1303.6906)[1]. ***Short description:*** During a citation matching task, bibliographic entries are linked to the documents that they reference. The citation matching module - one of the modules of the Information Inference Service (IIS) - receives as an input a list of documents accompanied by their metadata and bibliography. Among them, it discovers links described above and returns them as a list. In this document we shall evaluate if the module has been properly integrated with the whole
system and assess the accuracy of the algorithm used. It is worth mentioning that the implemented algorithm has been described in detail in arXiv:1303.6906 [cs.IR]1. However, in the referenced paper the algorithm was tested on small datasets, but here we will focus on larger datasets, which are expected to be analysed by the system in the production environment.
***Algorithmic details:*** ***Algorithmic details:***
@ -35,7 +36,6 @@ names, we have taken longest common subsequence (LCS) of two strings into consid
***Environment:*** ***Environment:***
Java, Spark Java, Spark
***References:*** ***References:*** -
* Fedoryszak, M., Tkaczyk, D., Bolikowski, Ł. (2013). Large Scale Citation Matching Using Apache Hadoop. In: Aalberg, T., Papatheodorou, C., Dobreva, M., Tsakonas, G., Farrugia, C.J. (eds) Research and Advanced Technology for Digital Libraries. TPDL 2013. Lecture Notes in Computer Science, vol 8092. Springer, Berlin, Heidelberg. [https://doi.org/10.1007/978-3-642-40501-3_37](https://doi.org/10.1007/978-3-642-40501-3_37)
***Authority:*** ICM &bull; ***License:*** AGPL-3.0 &bull; ***Code:*** [CoAnSys/citation-matching](https://github.com/CeON/CoAnSys/tree/master/citation-matching) ***Authority:*** ICM &bull; ***License:*** AGPL-3.0 &bull; ***Code:*** [CoAnSys/citation-matching](https://github.com/CeON/CoAnSys/tree/master/citation-matching)

View File

@ -1,18 +0,0 @@
import DocCardList from '@theme/DocCardList';
# Enrichment by mining
**OpenAIRE** collects the full-texts of the publications, in order to apply TDM (Text and Data Mining) algorithms on them and enrich the Graph with inference links.
The collection of the full-texts is handled by the internal **PDF Aggregation Service**. This service uses the publications' urls, from the OpenAIRE Graph and state-of-the-art algorithms, to crawl the web and try to locate and download the full-texts of the open access publications, while focusing on the most recent ones. It respects the servers of the repositories and publishers and avoids overloading them.
The service is orchestrating a distributed execution system, on the cloud, with multiple microservices running in parallel, in order to efficiently process and download a large number of publications. The microservices store the generated report records for the publications, in a database, and the full-texts in an S3 Object Store.
On the publication-page level, it applies text-mining algorithms to analyze the structure of the page, extract the full-text url and download the file. Additionally, it tracks various performance indicators to optimize the crawling speed, during execution.
The PDF Aggregation Service is also capable of bulk-importing full-texts from compatible data sources, which increases the collection speed of full-texts.
The different Text and Data Mining (TDM) algorithms used in the graph-enrichment process are grouped in the following categories.
<DocCardList></DocCardList>

View File

@ -1,8 +0,0 @@
import DocCardList from '@theme/DocCardList';
# Enrichment by PID
<DocCardList></DocCardList>

View File

@ -1,135 +0,0 @@
# Enrichment from ORCID
OpenAIRE enhances publication metadata by incorporating author information from ORCID. This involves adding persistent
identifiers to authors and leveraging ORCID data to improve author disambiguation.
## How does the enrichment work?
The following steps outline how ORCID information is integrated into the OpenAIRE Graph:
### Extracting Author and Work Information and creating ORCID-Work pairs
OpenAIRE extracts the following from ORCID profiles:
* Author information: ORCID, family name, given name, other names, credit name
* Work information: Persistent identifiers (DOI, PMC, PMID, arXiv, handle)
For each work identified by a persistent identifier (PID), a pair is created linking the ORCID to the work PID. For
example, if an ORCID profile (orcid1) has a DOI (doi1) and a PMC (pmc1) associated with it, the following pairs are generated:
- P1: `<orcid1, doi1>`
- P2: `<orcid1, pmc1>`
### Grouping by work persistent identifier
ORCID-Work pairs are grouped by the work's persistent identifier to identify multiple authors contributing to the same work.
Two ORCIDs (orcid1 and orcid2) associated with the same DOI (doi1), result in structures like:
* `<doi1, [orcid1, orcid2]>`
**Note:**
* The term "orcidx" refers to a structure containing the ORCID identifier along with the author's name information
(family name, given name, other names, and credit name) as extracted from the ORCID profile.
* The term "doix" refer to a structure
containing the schema and value of the persistent identifier. In case of the example "doix" : <"doi","10....">
### Matching with the Graph result and enriching the author metadata
For each persistent identifier pair, OpenAIRE searches for a corresponding result in the Graph based on the pair's
schema and value. Once a match is found, OpenAIRE attempts to identify the corresponding authors within the result by
comparing them to the authors listed in the ORCID profile. This process employs an Algorithm called *author name disambiguation*
to establish the correct matches. Successful matches allow OpenAIRE to enrich the result's author information with the
ORCID identifier from the profile.
### Author name disambiguation algorithm
The process involves comparing authors from two sets: those extracted from the graph (graph authors) and those derived
from ORCID profiles (ORCID authors) that share the same persistent identifier pair.
For each graph author, the algorithm iterates through the following matching strategies, ordered by decreasing confidence:
- Exact fullname match: If the full name of a graph author exactly matches the full name (constructed by concatenating the author given name and family name) of one author in the ORCID list, a match is found.
- Exact reversed fullname match: Similar to the previous strategy, but the ORCID full name is constructed by concatenating family name and given name.
- Ordered token match: Author names are tokenized into individual words. These tokens are then ordered and compared for matches or abbreviations. This strategy is applied to names with at least two words and such that the name word difference is two or less. This strategy allow for variability in the name. (some examples will be provided in the following)
- Exact match of ORCID credit name: If the graph author's full name matches an ORCID author's credit name, a match is considered.
- Exact match of ORCID other names: The graph author's full name is compared to each other name listed in the ORCID profile.
Upon identifying a match, the graph author's information is enriched with the corresponding ORCID data, and the matched
ORCID author is removed from the comparison list. This process continues until no further matches can be found.
By applying this multi-faceted approach, OpenAIRE aims to maximize the accuracy of author identification and linking.
#### Author name disambiguation example
Consider the following author lists
- Graph List: Robert Stein, Sjoert van Velzen, Marek Kowalski, Anna Franckowiak, James C. A. Miller-Jones, Sara Frederick, Itai Sfaradi, Assaf Horesh, Albert Kong, Ryan Foley
- Orcid List: Marek Kowalski, Itai Sfaradi, James Carl Miller-Jones, Assaf Horesh, Kong Albert, Ryan Foley
The graph list contains the full names of the authors as found in the metadata. Any potential ambiguities in splitting names into components (like first name and last name) are addressed by the first three steps.
The ORCID list names are expressed as the concatenation of the given name and the family name as provided in the ORCID profile
(i.e. "Kong Alber => Kong is given name and Albert is family name in the ORCID profile) For simplicity, other names and credit names are excluded from this list, since the corresponding strategies can be assimilated to an exact match comparison.
Algorithm Application
First of all the *Exact fullname match* strategy is applied.
Each graph author's full name is compared to every full name in the ORCID list until a match is found. A full name in the
ORCID list is constructed by concatenating the given name and family name in the order provided.
If an exact match is found, the ORCID identifier is used to enrich the corresponding graph's author record, and the ORCID author
is removed from the list for subsequent comparisons.
By applying this strategy we can find a match for Marek Kowalski, Itai Sfaradi, Assaf Horesh, Ryan Foley
Then the *Exact reverse fullname match* strategy is applied on the graph and orcid list that have not been match in the previous step:
- Graph List: Robert Stein, Sjoert van Velzen, Anna Franckowiak, James C. A. Miller-Jones, Sara Frederick, Albert Kong
- Orcid List: James Carl Miller-Jones, Kong Albert
The process is similar to step one, but the ORCID fullname is constructed by reversing the order of given name and family name.
This step accommodates variation in name formatting. As before if an exact match is found, the ORCID identifier is used to update the metadata of the
graph author, and the ORCID author is removed from the list for subsequent comparisons. With this strategy we can find a match for
Albert Kong.
The third step is the application of the *Oredered token match* strategy to the remaining authors to be matched. Before going to see
a running example, let us describe how the strategy works.
The tokens from the two lists are pairwise compared. The outcome of each comparison falls into one of three categories:
- No Match: This occurs when the initial characters of the compared tokens differ, or when the entire words don't match despite sharing the same starting character. A mismatch indicates that the authors are different, and the comparison process terminates.
- Short Match: A short match happens when both tokens begin with the same character, but one token consists solely of that character.
- Long Match: Exact correspondence between the two compared words
When a no match is encountered due to different initial characters, the algorithm proceeds
to compare the next token in the list with the lexicographically lower preceding token. This allows to be tolerant with missing
words in one of the two names.
A successful match (short or long) moves the comparison of the subsequent tokens in both lists.
This iterative process continues until either a no match is determined or both token lists have been exhausted.
If both lists have been exhausted, a match is found if:
- At list one long match exists
- The sum of short and long matches equals the length of the shorter token list, indicating that all the words
in the shorter list have a match in the longer one.
Going back to the example, the authors that remain to find a match for are:
- Graph List: Robert Stein, Sjoert van Velzen, Anna Franckowiak, James C. A. Miller-Jones, Sara Frederick
- Orcid List: James Carl Miller-Jones
Let us consider directly the names that can be matched by this strategy:
graph name = James C. A. Miller-Jones
orcid name = Carl James Miller-Jones
So the two names are broken down into individual words or token and sorted alphabetically to standardize the comparison process.
graph = A C James Miller-Jones
orcid = Carl James Miller-Jones
The comparison process works as follows:
- *A* and *Carl* are compared. No match since the initial characters are different. The graph list will be moved one step ahead for the next comparison
- *C* and *Carl* are compared. A short match is detected, since both start with the same character and the graph word is only that character. Both the lists will be moved one step ahead for the next comparison
- *James* and *James* are compared. A long match is detected. Both the lists will be moved one step ahead for the next comparison
- *Miller-Jones* and *Miller-Jones* are compared. A long match is found. The lists are exhausted and the computation ends.
Since at list one long match exists and the sum of long and short matches equals the length of the shorter list, the match is confirmed and
the graph author can be enriched with the ORCID information.
The ORCID list remains empty after the application of the third strategy and the author name disambiguation process ends.
Note: the application of the remaining two strategies can be remanded to the application of the *Exact name match* strategy.
Note: Even if the third strategy can subsume the first two, the reason they are applied before the third is for efficiency.
In this way, in fact,
we can claim a match as soon as the first pair of matching names is found. Applying only the third strategy, all the comparisons should be done and
a way to determine the best match should be found before claiming a match.
Example:
graph = Mario Enrico Rossi, Mario Rossi
ORCID = Mario Rossi
Applying only the third strategy, we would associate Mario Rossi's ORCID to Mario Fabrizio Rossi if this one was first in the author list.

View File

@ -7,12 +7,12 @@ The output of this final step is the final version of the OpenAIRE Graph.
## Filtering ## Filtering
Bibliographic records that do not meet minimal requirements for being part of the OpenAIRE Graph are eliminated during this phase. Bibliographic records that do not meet minimal requirements for being part of the OpenAIRE Graph are eliminated during this phase.
Currently, the only criteria applied horizontally to the entire graph aims at excluding research products whose title is not meaningful for citation purposes. Currently, the only criteria applied horizontally to the entire graph aims at excluding scientific results whose title is not meaningful for citation purposes.
Then, different criteria are applied in the pre-processing of specific sub-collections: Then, different criteria are applied in the pre-processing of specific sub-collections:
* [Crossref filtering](/graph-production-workflow/aggregation/non-compatible-sources/crossref_unpaywall#crossref-filtering) * [Crossref filtering](/graph-production-workflow/aggregation/non-compatible-sources/doiboost#crossref-filtering)
## Country cleaning ## Country cleaning
This phase is responsible for removing the country information from research products that match specific criteria. The need for this phase is driven by the fact that some datasources, although referred of national pertinence, they contain material that is not always related to the given country. This phase is responsible for removing the country information from result records that match specific criteria. The need for this phase is driven by the fact that some datasources, although referred of national pertinence, they contain material that is not always related to the given country.

View File

@ -1,6 +1,6 @@
# Graph production workflow # Graph production workflow
OpenAIRE collects metadata records from more than 70K scholarly communication sources from all over the world, including Open Access institutional repositories, data archives, journals. All the metadata records (i.e. descriptions of research products) are put together in a data lake, together with records from Crossref, Unpaywall, ORCID, ROR, and information about projects provided by national and international funders. Dedicated inference algorithms applied to metadata and to the full-texts of Open Access publications enrich the content of the data lake with links between research products and projects, author affiliations, subject classification, links to entries from domain-specific databases. Duplicated organisations and research products are identified and merged together to obtain an open, trusted, public resource enabling explorations of the scholarly communication landscape like never before. OpenAIRE collects metadata records from more than 70K scholarly communication sources from all over the world, including Open Access institutional repositories, data archives, journals. All the metadata records (i.e. descriptions of research products) are put together in a data lake, together with records from Crossref, Unpaywall, ORCID, ROR, and information about projects provided by national and international funders. Dedicated inference algorithms applied to metadata and to the full-texts of Open Access publications enrich the content of the data lake with links between research results and projects, author affiliations, subject classification, links to entries from domain-specific databases. Duplicated organisations and results are identified and merged together to obtain an open, trusted, public resource enabling explorations of the scholarly communication landscape like never before.
<p align="center"> <p align="center">
<img loading="lazy" alt="Data provision" src={require('../assets/img/architecture.png').default} width="100%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/> <img loading="lazy" alt="Data provision" src={require('../assets/img/architecture.png').default} width="100%" className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>

View File

@ -2,7 +2,7 @@
The final version of the OpenAIRE Graph is indexed on a Solr server that is used by the OpenAIRE portals ([EXPLORE](https://explore.openaire.eu), [CONNECT](https://connect.openaire.eu), [PROVIDE](https://provide.openaire.eu)) and APIs, the latter adopted by several third-party applications and organizations, such as: The final version of the OpenAIRE Graph is indexed on a Solr server that is used by the OpenAIRE portals ([EXPLORE](https://explore.openaire.eu), [CONNECT](https://connect.openaire.eu), [PROVIDE](https://provide.openaire.eu)) and APIs, the latter adopted by several third-party applications and organizations, such as:
* The OpenAIRE Graph APIs and Portals will offer to the EOSC (European Open Science Cloud) an Open Science Resource Catalogue, keeping an up to date map of all research products (publications, datasets, software), services, organizations, projects, funders in Europe and beyond. * The OpenAIRE Graph APIs and Portals will offer to the EOSC (European Open Science Cloud) an Open Science Resource Catalogue, keeping an up to date map of all research results (publications, datasets, software), services, organizations, projects, funders in Europe and beyond.
* DSpace & EPrints repositories can install the OpenAIRE plugin to expose OpenAIRE compliant metadata records via their OAI-PMH endpoint and offer to researchers the possibility to link their depositions to the funding project, by selecting it from the list of project provided by OpenAIRE. * DSpace & EPrints repositories can install the OpenAIRE plugin to expose OpenAIRE compliant metadata records via their OAI-PMH endpoint and offer to researchers the possibility to link their depositions to the funding project, by selecting it from the list of project provided by OpenAIRE.

View File

@ -1,2 +0,0 @@
# Field of Science

View File

@ -1,16 +1,16 @@
# Citation-based impact indicators # Impact indicators
This page summarises all calculated citation-based impact indicators, provided by [BIP!](https://bip.imsi.athenarc.gr/), which are included in the [bipIndicators](../../data-model/entities/other#bipindicators) property (found under the [indicators](../../data-model/entities/research-product#indicators) property of the reseach product). This page summarises all calculated impact indicators, provided by [BIP!](https://bip.imsi.athenarc.gr/), which are included in the [impactMeasures](/data-model/entities/other#impactmeasures) property (found under the [indicators](/data-model/entities/result#indicators) property of the result).
It should be noted that the citation-based impact indicators are being calculated on the level of the research output. It should be noted that the impact indicators are being calculated on the level of the research output.
Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses. Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses.
## Citation Count (CC) <small><span className="bip-indicator-names">&bull; influence_alt</span></small> ## Citation Count (CC)
***Short description:*** ***Short description:***
This is the most widely used citation-based impact indicator, which sums all citations received by each article. This is the most widely used scientific impact indicator, which sums all citations received by each article.
Citation count can be viewed as a measure of a publication's overall (citation-based) impact, since it conveys the number of other works that directly Citation count can be viewed as a measure of a publication's overall impact, since it conveys the number of other works that directly
drew on it. drew on it.
***Algorithmic details:*** ***Algorithmic details:***
@ -31,7 +31,7 @@ Also, since some indicators require the publication year for their calculation,
***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker) ***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker)
## "Incubation" Citation Count (iCC) <small><span className="bip-indicator-names">&bull; impulse</span></small> ## "Incubation" Citation Count (iCC)
***Short description:*** ***Short description:***
This measure is essentially a time-restricted version of the citation count, where the time window is distinct for each paper, i.e., This measure is essentially a time-restricted version of the citation count, where the time window is distinct for each paper, i.e.,
@ -58,7 +58,7 @@ Also, since some indicators require the publication year for their calculation,
***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker) ***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker)
## PageRank (PR) <small><span className="bip-indicator-names">&bull; influence</span></small> ## PageRank (PR)
***Short description:*** ***Short description:***
Originally developed to rank Web pages, PageRank has been also widely used to rank publications in citation Originally developed to rank Web pages, PageRank has been also widely used to rank publications in citation
@ -97,7 +97,7 @@ Also, since some indicators require the publication year for their calculation,
***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker) ***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker)
## RAM <small><span className="bip-indicator-names">&bull; popularity_alt</span></small> ## RAM
***Short description:*** ***Short description:***
RAM is essentially a modified Citation Count, where recent citations are considered of higher importance compared to older ones. RAM is essentially a modified Citation Count, where recent citations are considered of higher importance compared to older ones.
@ -131,7 +131,7 @@ Also, since some indicators require the publication year for their calculation,
***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker) ***Authority:*** ATHENA RC &bull; ***License:*** GPL-2.0 &bull; ***Code:*** [BIP! Ranker](https://github.com/athenarc/Bip-Ranker)
## AttRank <small><span className="bip-indicator-names">&bull; popularity</span></small> ## AttRank
***Short description:*** ***Short description:***
AttRank is a PageRank variant that alleviates its bias against recent publications (i.e., it is tailored to capture popularity). AttRank is a PageRank variant that alleviates its bias against recent publications (i.e., it is tailored to capture popularity).

View File

@ -2,7 +2,7 @@ import DocCardList from '@theme/DocCardList';
# Indicators ingestion # Indicators ingestion
In this step, research products are enriched with Impact and Usage Statistics indicators. In this step, results are enriched with Impact and Usage Statistics indicators.
The former are provided by [BIP!](https://bip.imsi.athenarc.gr/) while the latter are computed by OpenAIRE's [UsageCounts service](https://usagecounts.openaire.eu/). The former are provided by [BIP!](https://bip.imsi.athenarc.gr/) while the latter are computed by OpenAIRE's [UsageCounts service](https://usagecounts.openaire.eu/).
<DocCardList /> <DocCardList />

View File

@ -1,76 +0,0 @@
# Sustainable Development Goals
## Introduction
The Sustainable Development Goals (SDGs) are a set of 17 interconnected global goals established by the United
Nations in 2015.
They serve as a universal call to action to end poverty, protect the planet, and ensure peace and prosperity for
all by 2030.
The SDGs are designed to be a blueprint for achieving a better and more sustainable future.
<p align="center">
<img loading="lazy" alt="Data model" src={require('../../assets/img/sdg.png').default} width="100%"
className="img_node_modules-@docusaurus-theme-classic-lib-theme-MDXComponents-Img-styles-module"/>
</p>
## The 17 Sustainable Development Goals
1. [**No Poverty**](https://sdgs.un.org/goals/goal1): End poverty in all its forms everywhere.
2. [**Zero Hunger**](https://sdgs.un.org/goals/goal2): End hunger, achieve food security and improved nutrition, and
promote sustainable agriculture.
3. [**Good Health and Well-being**](https://sdgs.un.org/goals/goal3): Ensure healthy lives and promote well-being
for all at all ages.
4. [**Quality Education**](https://sdgs.un.org/goals/goal4): Ensure inclusive and equitable quality education and
promote lifelong learning opportunities for all.
5. [**Gender Equality**](https://sdgs.un.org/goals/goal5): Achieve gender equality and empower all women and girls.
6. [**Clean Water and Sanitation**](https://sdgs.un.org/goals/goal6): Ensure availability and sustainable
management of water and sanitation for all.
7. [**Affordable and Clean Energy**](https://sdgs.un.org/goals/goal7): Ensure access to affordable, reliable,
sustainable, and modern energy for all.
8. [**Decent Work and Economic Growth**](https://sdgs.un.org/goals/goal8): Promote sustained, inclusive, and
sustainable economic growth, full and productive employment, and decent work for all.
9. [**Industry, Innovation, and Infrastructure**](https://sdgs.un.org/goals/goal9): Build resilient infrastructure,
promote inclusive and sustainable industrialization, and foster innovation.
10. [**Reduced Inequalities**](https://sdgs.un.org/goals/goal10): Reduce inequality within and among countries.
11. [**Sustainable Cities and Communities**](https://sdgs.un.org/goals/goal11): Make cities and human settlements
inclusive, safe, resilient, and sustainable.
12. [**Responsible Consumption and Production**](https://sdgs.un.org/goals/goal12): Ensure sustainable consumption
and production patterns.
13. [**Climate Action**](https://sdgs.un.org/goals/goal13): Take urgent action to combat climate change and its impacts.
14. [**Life Below Water**](https://sdgs.un.org/goals/goal14): Conserve and sustainably use the oceans, seas, and
marine resources for sustainable development.
15. [**Life on Land**](https://sdgs.un.org/goals/goal15): Protect, restore, and promote sustainable use of
terrestrial ecosystems, manage forests sustainably, combat desertification, and halt and reverse land
degradation and halt biodiversity loss.
16. [**Peace, Justice, and Strong Institutions**](https://sdgs.un.org/goals/goal16): Promote peaceful and inclusive
societies for sustainable development, provide access to justice for all, and build effective, accountable, and
inclusive institutions at all levels.
17. [**Partnerships for the Goals**](https://sdgs.un.org/goals/goal17): Strengthen the means of implementation and
revitalize the global partnership for sustainable development.
## Application in Classification of Research Products
The SDG taxonomy is used to classify research products based on their relevance to the overarching goals. This
classification helps in identifying the impact of research on sustainable development and aligning research efforts
with global priorities. Heres how it can be applied:
1. **Mapping Research Outputs**: Research outputs such as publications are be mapped to specific SDGs based on their
objectives, methodologies, and outcomes.
2. **Evaluating Impact**: The classification allows for the evaluation of the impact of research on achieving the
SDGs, helping to highlight contributions to specific goals.
3. **Funding and Collaboration**: Aligning research with SDGs can attract funding from organizations focused on
sustainable development and foster collaborations with other researchers and institutions working towards
similar goals.
4. **Policy and Decision-Making**: Policymakers can use the classification to identify research that supports
sustainable development policies and make informed decisions based on evidence from relevant research.
By integrating the SDG taxonomy into the classification of research products, we can ensure that research efforts
are directed towards addressing the most pressing global challenges and contributing to a sustainable future.
## Conclusion
The Sustainable Development Goals provide a comprehensive framework for addressing global challenges. By applying
the SDG taxonomy to classify research products, we can better understand and enhance the impact of research on
sustainable development, ensuring that scientific advancements contribute to a more equitable and sustainable world.
Check an example of how the SDG classification appears in the OpenAIRE data in the
[data model](../../data-model/entities/research-product#subjects) section.

View File

@ -11,13 +11,13 @@ across the various datasources.
This phase is therefore responsible to compensate for such inconsistencies and performs This phase is therefore responsible to compensate for such inconsistencies and performs
a global grouping of every record available in the graph: a global grouping of every record available in the graph:
- entities are grouped by [`id`](../data-model/entities/research-product#id) - entities are grouped by [`id`](../data-model/entities/result#id)
- relations are grouped by [`source`, `target`, `reltype`](../data-model/relationships/relationship-object) - relations are grouped by [`source`, `target`, `reltype`](../data-model/relationships/relationship-object)
This ensures that the same record, possibly assigned to different types by different This ensures that the same record, possibly assigned to different types by different
mappings, appears only once in the graph and under a single typing. In case of clashing mappings, appears only once in the graph and under a single typing. In case of clashing
identifiers, the properties are merged (including the provenance information), considering identifiers, the properties are merged (including the provencance information), considering
the following precedence order for the research product typing: the following precedence order for the result typing:
``` ```
publication > dataset > software > other publication > dataset > software > other

View File

@ -4,11 +4,11 @@ sidebar_position: 7
# Relevant publications # Relevant publications
Open Science services are open and transparent and survive thanks to your active support and to the visibility and reward they gather. If you use one of the [OpenAIRE Graph Datasets](https://doi.org/10.5281/zenodo.3516917) for your research, please provide a proper citation following the recommendation that you find on the dataset's Zenodo page or as provided below. Open Science services are open and transparent and survive thanks to your active support and to the visibility and reward they gather. If you use one of the [OpenAIRE Graph dumps](https://doi.org/10.5281/zenodo.3516917) for your research, please provide a proper citation following the recommendation that you find on the dump's Zenodo page or as provided below.
:::note How to cite :::note How to cite
Manghi P., Atzori C., Bardi A., Baglioni M., Schirrwagen J., Dimitropoulos H., La Bruzzo S., Foufoulas I., Mannocci A., Horst M., Czerniak A., Iatropoulou K., Kokogiannaki A., De Bonis M., Artini M., Lempesis A., Ioannidis A., Manola N., Principe P., Vergoulis T., Chatzopoulos S., Pierrakos D. (2022). "OpenAIRE Research Graph Dataset", *Dataset*, Zenodo. [doi:10.5281/zenodo.3516917](https://doi.org/10.5281/zenodo.3516917) ([BibTex](/bibtex/OpenAIRE_Research_Graph_dump.bib)) Manghi P., Atzori C., Bardi A., Baglioni M., Schirrwagen J., Dimitropoulos H., La Bruzzo S., Foufoulas I., Mannocci A., Horst M., Czerniak A., Iatropoulou K., Kokogiannaki A., De Bonis M., Artini M., Lempesis A., Ioannidis A., Manola N., Principe P., Vergoulis T., Chatzopoulos S., Pierrakos D. (2022). "OpenAIRE Research Graph Dump", *Dataset*, Zenodo. [doi:10.5281/zenodo.3516917](https://doi.org/10.5281/zenodo.3516917) ([BibTex](/bibtex/OpenAIRE_Research_Graph_dump.bib))
::: :::
## Other relevant research products ## Other relevant research products

View File

@ -142,15 +142,7 @@ const config = {
theme: lightCodeTheme, theme: lightCodeTheme,
darkTheme: darkCodeTheme, darkTheme: darkCodeTheme,
}, },
matomo: {
matomoUrl: 'https://analytics.openaire.eu/',
siteId: '373',
phpLoader: 'piwik.php',
},
}), }),
plugins: [
'docusaurus-plugin-matomo',
],
}; };
module.exports = config; module.exports = config;

18
package-lock.json generated
View File

@ -13,7 +13,6 @@
"@easyops-cn/docusaurus-search-local": "^0.33.6", "@easyops-cn/docusaurus-search-local": "^0.33.6",
"@mdx-js/react": "^1.6.22", "@mdx-js/react": "^1.6.22",
"clsx": "^1.2.1", "clsx": "^1.2.1",
"docusaurus-plugin-matomo": "^0.0.6",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"hast-util-is-element": "^1.1.0", "hast-util-is-element": "^1.1.0",
"prism-react-renderer": "^1.3.5", "prism-react-renderer": "^1.3.5",
@ -5600,17 +5599,6 @@
"node": ">=6" "node": ">=6"
} }
}, },
"node_modules/docusaurus-plugin-matomo": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/docusaurus-plugin-matomo/-/docusaurus-plugin-matomo-0.0.6.tgz",
"integrity": "sha512-zAhUz3eMaW2tUJsvV5guOMwb554swoVEeI55BZA10LVk3+PyfWYpBl2FEHITe0ofA8/vG6BTuTzGNSWxW70NwA==",
"engines": {
"node": ">=12.13.0"
},
"peerDependencies": {
"@docusaurus/core": "^2.0.0-alpha.56"
}
},
"node_modules/dom-converter": { "node_modules/dom-converter": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
@ -16740,12 +16728,6 @@
"@leichtgewicht/ip-codec": "^2.0.1" "@leichtgewicht/ip-codec": "^2.0.1"
} }
}, },
"docusaurus-plugin-matomo": {
"version": "0.0.6",
"resolved": "https://registry.npmjs.org/docusaurus-plugin-matomo/-/docusaurus-plugin-matomo-0.0.6.tgz",
"integrity": "sha512-zAhUz3eMaW2tUJsvV5guOMwb554swoVEeI55BZA10LVk3+PyfWYpBl2FEHITe0ofA8/vG6BTuTzGNSWxW70NwA==",
"requires": {}
},
"dom-converter": { "dom-converter": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz", "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",

View File

@ -19,7 +19,6 @@
"@easyops-cn/docusaurus-search-local": "^0.33.6", "@easyops-cn/docusaurus-search-local": "^0.33.6",
"@mdx-js/react": "^1.6.22", "@mdx-js/react": "^1.6.22",
"clsx": "^1.2.1", "clsx": "^1.2.1",
"docusaurus-plugin-matomo": "^0.0.6",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"hast-util-is-element": "^1.1.0", "hast-util-is-element": "^1.1.0",
"prism-react-renderer": "^1.3.5", "prism-react-renderer": "^1.3.5",

View File

@ -31,7 +31,7 @@ const sidebars = {
description: 'The main entities of the OpenAIRE Graph are listed below.' description: 'The main entities of the OpenAIRE Graph are listed below.'
}, },
items: [ items: [
{ type: 'doc', id: 'data-model/entities/research-product' }, { type: 'doc', id: 'data-model/entities/result' },
{ type: 'doc', id: 'data-model/entities/data-source' }, { type: 'doc', id: 'data-model/entities/data-source' },
{ type: 'doc', id: 'data-model/entities/organization' }, { type: 'doc', id: 'data-model/entities/organization' },
{ type: 'doc', id: 'data-model/entities/project' }, { type: 'doc', id: 'data-model/entities/project' },
@ -54,55 +54,9 @@ const sidebars = {
] ]
}, },
{ {
type: 'category', type: "link",
label: "Public APIs", label: "Public API",
link: {type: 'doc', id: 'apis/home'}, href: "https://graph.openaire.eu/develop/overview.html"
items: [
{
type: 'category',
label: "Graph API",
link: { type: 'doc', id: 'apis/graph-api/graph-api' },
items: [
{ type: 'doc', id: 'apis/graph-api/getting-a-single-entity' },
{
type: 'category',
label: "Searching entities",
link: { type: 'doc', id: 'apis/graph-api/searching-entities/searching-entities' },
items: [
{ type: 'doc', id: 'apis/graph-api/searching-entities/filtering-search-results' },
{ type: 'doc', id: 'apis/graph-api/searching-entities/sorting-and-paging' },
]
},
{ type: 'doc', id: 'apis/graph-api/making-requests' },
]
},
{
type: 'category',
label: "Search API",
link: { type: 'doc', id: 'apis/search-api/search-api' },
items: [
{ type: 'doc', id: 'apis/search-api/research-products' },
{ type: 'doc', id: 'apis/search-api/projects' },
{ type: 'doc', id: 'apis/search-api/response-metadata-format' },
]
},
{
type: "link",
label: "ScholeXplorer API",
href: "https://api.scholexplorer.openaire.eu/swagger-ui/index.html?urls.primaryName=Scholexplorer%20API%20V2.0"
},
{
type: "doc",
id: "apis/dspace-eprints-api",
},
{
type: "doc",
id: "apis/broker-api"
},
{ type: 'doc', id: 'apis/terms' },
{ type: 'doc', id: 'apis/authentication' },
{ type: 'doc', id: 'apis/specification-changelog' },
]
}, },
{ {
type: 'category', type: 'category',
@ -138,9 +92,7 @@ const sidebars = {
label: "Non-compatible sources", label: "Non-compatible sources",
link: { type: 'generated-index' }, link: { type: 'generated-index' },
items: [ items: [
{ type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/crossref_unpaywall', label: 'Crossref & Unpaywall' }, { type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/doiboost', label: 'DOIBoost' },
{ type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/mag', label: 'Microsoft Academic Graph' },
{ type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/orcid', label: 'ORCID' },
{ type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/pubmed' }, { type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/pubmed' },
{ type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/datacite' }, { type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/datacite' },
{ type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/ebi', label: 'EMBL-EBI' }, { type: 'doc', id: 'graph-production-workflow/aggregation/non-compatible-sources/ebi', label: 'EMBL-EBI' },
@ -153,18 +105,13 @@ const sidebars = {
type: 'doc', type: 'doc',
id: 'graph-production-workflow/merge-by-id' id: 'graph-production-workflow/merge-by-id'
}, },
{
type: 'category',
label: "Enrichment by PID",
link: {type: 'doc', id: 'graph-production-workflow/enrichment-by-pid/enrichment-by-pid'},
items: [
{ type: 'doc', id: 'graph-production-workflow/enrichment-by-pid/orcid-enrichment' }
]
},
{ {
type: 'category', type: 'category',
label: "Enrichment by mining", label: "Enrichment by mining",
link: {type: 'doc', id: 'graph-production-workflow/enrichment-by-mining/enrichment-by-mining'}, link: {
type: 'generated-index',
description: 'The OpenAIRE Graph is enriched using the different Text and Data Mining (TDM) algorithms that are grouped in the following categories.'
},
items: [ items: [
{ type: 'doc', id: 'graph-production-workflow/enrichment-by-mining/affiliation_matching' }, { type: 'doc', id: 'graph-production-workflow/enrichment-by-mining/affiliation_matching' },
{ type: 'doc', id: 'graph-production-workflow/enrichment-by-mining/citation_matching' }, { type: 'doc', id: 'graph-production-workflow/enrichment-by-mining/citation_matching' },
@ -206,8 +153,6 @@ const sidebars = {
items: [ items: [
{ type: 'doc', id: 'graph-production-workflow/indicators-ingestion/impact-indicators' }, { type: 'doc', id: 'graph-production-workflow/indicators-ingestion/impact-indicators' },
{ type: 'doc', id: 'graph-production-workflow/indicators-ingestion/usage-counts' }, { type: 'doc', id: 'graph-production-workflow/indicators-ingestion/usage-counts' },
{ type: 'doc', id: 'graph-production-workflow/indicators-ingestion/fos-classification' },
{ type: 'doc', id: 'graph-production-workflow/indicators-ingestion/sdg-classification' }
] ]
}, },
{ type: 'doc', id: 'graph-production-workflow/finalisation' }, { type: 'doc', id: 'graph-production-workflow/finalisation' },
@ -242,11 +187,6 @@ const sidebars = {
label: "Helpdesk", label: "Helpdesk",
href: "https://graph.openaire.eu/support" href: "https://graph.openaire.eu/support"
}, },
{
type: "link",
label: "User forum",
href: "https://openaire.flarum.cloud/"
}
] ]
}; };

View File

@ -41,10 +41,6 @@
background-color: yellow; background-color: yellow;
} }
.bip-indicator-names {
color: #B9BBB6;
}
@media (min-width: 996px) { @media (min-width: 996px) {
.left-badge { .left-badge {

View File

@ -1,35 +0,0 @@
@dataset{manghi_paolo_2022_7488618,
author = {Manghi, Paolo and
Atzori, Claudio and
Bardi, Alessia and
Baglioni, Miriam and
Schirrwagen, Jochen and
Dimitropoulos, Harry and
La Bruzzo, Sandro and
Foufoulas, Ioannis and
Mannocci, Andrea and
Horst, Marek and
Czerniak, Andreas and
Iatropoulou, Katerina and
Kokogiannaki, Argiro and
De Bonis, Michele and
Artini, Michele and
Lempesis, Antonis and
Ioannidis, Alexandros and
Manola, Natalia and
Principe, Pedro and
Vergoulis, Thanasis and
Chatzopoulos, Serafeim and
Pierrakos, Dimitris},
title = {OpenAIRE Research Graph Dataset},
month = dec,
year = 2022,
note = {{A new version of this dataset is published every 6
months. The content available on the OpenAIRE
EXPLORE and CONNECT portals might be more up-to-
date with respect to the data you find here.}},
publisher = {Zenodo},
version = {5.0.0},
doi = {10.5281/zenodo.7488618},
url = {https://doi.org/10.5281/zenodo.7488618}
}

View File

@ -21,7 +21,7 @@
Vergoulis, Thanasis and Vergoulis, Thanasis and
Chatzopoulos, Serafeim and Chatzopoulos, Serafeim and
Pierrakos, Dimitris}, Pierrakos, Dimitris},
title = {OpenAIRE Graph Dataset}, title = {OpenAIRE Research Graph Dump},
month = dec, month = dec,
year = 2022, year = 2022,
note = {{A new version of this dataset is published every 6 note = {{A new version of this dataset is published every 6

File diff suppressed because one or more lines are too long

View File

@ -24,12 +24,12 @@ This section will document all notable changes for each graph version.
#### Added #### Added
- [Impact indicators](./data-model/entities/result#indicators) at the level of the Result - [Impact indicators](/data-model/entities/result#indicators) at the level of the Result
- [Beginner's kit](./downloads/beginners-kit) in the Downloads section - [Beginner's kit](/downloads/beginners-kit) in the Downloads section
- New relationship types were introduced; see the complete list [here](./data-model/relationships/relationship-types) - New relationship types were introduced; see the complete list [here](/data-model/relationships/relationship-types)
#### Changed #### Changed
- FOS and SDGs were removed from the [result subjects](./data-model/entities/result#subjects) - FOS and SDGs were removed from the [result subjects](/data-model/entities/result#subjects)
- Measures were removed from the [result instance](./data-model/entities/result#instance) - Measures were removed from the [result instance](/data-model/entities/result#instance)

View File

@ -27,7 +27,7 @@ A vocabulary is a data structure that defines a list of terms, and for each term
[...] [...]
``` ```
Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](../data-model/entities/result#instance). Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](/data-model/entities/result#instance).
The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/).

View File

@ -1,6 +1,6 @@
# Impact indicators # Impact indicators
This page summarises all calculated impact indicators, which are included in the [impactMeasures](/data-model/entities/other#impactmeasures) property which is part of the [indicators](../../data-model/entities/result#indicators) property of the result. This page summarises all calculated impact indicators, which are included in the [impactMeasures](/data-model/entities/other#impactmeasures) property which is part of the [indicators](/data-model/entities/result#indicators) property of the result.
It should be noted that the impact indicators are being calculated on the level of the research output. It should be noted that the impact indicators are being calculated on the level of the research output.
Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses. Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses.

View File

@ -8,7 +8,7 @@ sidebar_position: 1
# Extended Result # Extended Result
It is a subclass of [Result](../../data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources. It is a subclass of [Result](/data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources.

View File

@ -41,14 +41,14 @@ _Start Date: 2022-12-19 &bull; Release Date: 2022-12-28 &bull; Dump release: **y
#### Added #### Added
- [Impact & Usage indicators](./data-model/entities/result#indicators) at the level of the Result - [Impact & Usage indicators](/data-model/entities/result#indicators) at the level of the Result
- [Beginner's kit](./downloads/beginners-kit) in the Downloads section - [Beginner's kit](/downloads/beginners-kit) in the Downloads section
- New relationship types were introduced; see the complete list [here](./data-model/relationships/relationship-types) - New relationship types were introduced; see the complete list [here](/data-model/relationships/relationship-types)
#### Changed #### Changed
- FOS and SDGs were removed from the [result subjects](./data-model/entities/result#subjects) - FOS and SDGs were removed from the [result subjects](/data-model/entities/result#subjects)
- Measures were removed from the [result instance](./data-model/entities/result#instance) - Measures were removed from the [result instance](/data-model/entities/result#instance)
- Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022 - Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022
- Added ORCID works without a DOI from November 2022 - Added ORCID works without a DOI from November 2022

View File

@ -27,7 +27,7 @@ A vocabulary is a data structure that defines a list of terms, and for each term
[...] [...]
``` ```
Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](../data-model/entities/result#instance). Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](/data-model/entities/result#instance).
The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/).

View File

@ -1,6 +1,6 @@
# Impact indicators # Impact indicators
This page summarises all calculated impact indicators, which are included in the [impactMeasures](/data-model/entities/other#impactmeasures) property which is part of the [indicators](../../data-model/entities/result#indicators) property of the result. This page summarises all calculated impact indicators, which are included in the [impactMeasures](/data-model/entities/other#impactmeasures) property which is part of the [indicators](/data-model/entities/result#indicators) property of the result.
It should be noted that the impact indicators are being calculated on the level of the research output. It should be noted that the impact indicators are being calculated on the level of the research output.
Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses. Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses.

View File

@ -8,7 +8,7 @@ sidebar_position: 1
# Extended Result # Extended Result
It is a subclass of [Result](../../data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources. It is a subclass of [Result](/data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources.

View File

@ -27,8 +27,8 @@ _Start Date: 2023-02-13 &bull; Release Date: 2023-03-01 &bull; Dump release: **n
- Revised SDG classification: improved coverage (+600K classified DOIs) - Revised SDG classification: improved coverage (+600K classified DOIs)
- General increase of the funded scientific outputs, thanks to the full text mining scanning new OpenAccess publications - General increase of the funded scientific outputs, thanks to the full text mining scanning new OpenAccess publications
- Integrated contents from - Integrated contents from
- [EMBL-EBIs Protein Data Bank in Europe](./graph-production-workflow/aggregation/non-compatible-sources/ebi) - [EMBL-EBIs Protein Data Bank in Europe](/graph-production-workflow/aggregation/non-compatible-sources/ebi)
- [UniProtKB/Swiss-Prot](./graph-production-workflow//aggregation/non-compatible-sources/uniprot) - [UniProtKB/Swiss-Prot](/graph-production-workflow//aggregation/non-compatible-sources/uniprot)
#### Changed #### Changed
@ -60,14 +60,14 @@ _Start Date: 2022-12-19 &bull; Release Date: 2022-12-28 &bull; Dump release: **y
#### Added #### Added
- [Impact & Usage indicators](./data-model/entities/result#indicators) at the level of the Result - [Impact & Usage indicators](/data-model/entities/result#indicators) at the level of the Result
- [Beginner's kit](./downloads/beginners-kit) in the Downloads section - [Beginner's kit](/downloads/beginners-kit) in the Downloads section
- New relationship types were introduced; see the complete list [here](./data-model/relationships/relationship-types) - New relationship types were introduced; see the complete list [here](/data-model/relationships/relationship-types)
#### Changed #### Changed
- FOS and SDGs were removed from the [result subjects](./data-model/entities/result#subjects) - FOS and SDGs were removed from the [result subjects](/data-model/entities/result#subjects)
- Measures were removed from the [result instance](./data-model/entities/result#instance) - Measures were removed from the [result instance](/data-model/entities/result#instance)
- Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022 - Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022
- Added ORCID works without a DOI from November 2022 - Added ORCID works without a DOI from November 2022

View File

@ -8,7 +8,7 @@ sidebar_position: 1
# Extended Result # Extended Result
It is a subclass of [Result](../../data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources. It is a subclass of [Result](/data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources.

View File

@ -27,7 +27,7 @@ A vocabulary is a data structure that defines a list of terms, and for each term
[...] [...]
``` ```
Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](../data-model/entities/result#instance). Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](/data-model/entities/result#instance).
The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/).

View File

@ -1,6 +1,6 @@
# Impact indicators # Impact indicators
This page summarises all calculated impact indicators, provided by [BIP!](https://bip.imsi.athenarc.gr/), which are included in the It is a subclass of [Result](../../data-model/entities/result) extended with information regarding p[impactMeasures](/data-model/entities/other#impactmeasures) property (found under the [indicators](../../data-model/entities/result#indicators)rojects (and funders) property of the result). This page summarises all calculated impact indicators, provided by [BIP!](https://bip.imsi.athenarc.gr/), which are included in the [impactMeasures](/data-model/entities/other#impactmeasures) property (found under the [indicators](/data-model/entities/result#indicators) property of the result).
It should be noted that the impact indicators are being calculated on the level of the research output. It should be noted that the impact indicators are being calculated on the level of the research output.
Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses. Below we explain their main intuition, the way they are calculated, and their most important limitations, in an attempt help avoiding common pitfalls and misuses.

View File

@ -38,8 +38,8 @@ _Start Date: 2023-02-13 &bull; Release Date: 2023-03-01 &bull; Dump release: **n
- Revised SDG classification: improved coverage (+600K classified DOIs) - Revised SDG classification: improved coverage (+600K classified DOIs)
- General increase of the funded scientific outputs, thanks to the full text mining scanning new OpenAccess publications - General increase of the funded scientific outputs, thanks to the full text mining scanning new OpenAccess publications
- Integrated contents from - Integrated contents from
- [EMBL-EBIs Protein Data Bank in Europe](./graph-production-workflow/aggregation/non-compatible-sources/ebi) - [EMBL-EBIs Protein Data Bank in Europe](/graph-production-workflow/aggregation/non-compatible-sources/ebi)
- [UniProtKB/Swiss-Prot](./graph-production-workflow//aggregation/non-compatible-sources/uniprot) - [UniProtKB/Swiss-Prot](/graph-production-workflow//aggregation/non-compatible-sources/uniprot)
#### Changed #### Changed
@ -71,14 +71,14 @@ _Start Date: 2022-12-19 &bull; Release Date: 2022-12-28 &bull; Dump release: **y
#### Added #### Added
- [Impact & Usage indicators](./data-model/entities/result#indicators) at the level of the Result - [Impact & Usage indicators](/data-model/entities/result#indicators) at the level of the Result
- [Beginner's kit](./downloads/beginners-kit) in the Downloads section - [Beginner's kit](/downloads/beginners-kit) in the Downloads section
- New relationship types were introduced; see the complete list [here](./data-model/relationships/relationship-types) - New relationship types were introduced; see the complete list [here](/data-model/relationships/relationship-types)
#### Changed #### Changed
- FOS and SDGs were removed from the [result subjects](./data-model/entities/result#subjects) - FOS and SDGs were removed from the [result subjects](/data-model/entities/result#subjects)
- Measures were removed from the [result instance](./data-model/entities/result#instance) - Measures were removed from the [result instance](/data-model/entities/result#instance)
- Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022 - Updated DOIBoost to include publications from Crossref and the works from ORCID with a DOI until November 2022
- Added ORCID works without a DOI from November 2022 - Added ORCID works without a DOI from November 2022

View File

@ -11,12 +11,12 @@ The latest version of the JSON schema can be found on the [Downloads](../downloa
The figure above, presents the graph's data model. The figure above, presents the graph's data model.
Its main entities are described in brief below: Its main entities are described in brief below:
* [Results](./entities/result) represent the outcomes (or products) of research activities. * [Results](/data-model/entities/result) represent the outcomes (or products) of research activities.
* [Data Sources](./entities/data-source) are the sources from which the metadata of graph objects are collected. * [Data Sources](/data-model/entities/data-source) are the sources from which the metadata of graph objects are collected.
* [Organizations](./entities/organization) correspond to companies or research institutions involved in projects * [Organizations](/data-model/entities/organization) correspond to companies or research institutions involved in projects,
responsible for operating data sources or consisting the affiliations of Product creators. responsible for operating data sources or consisting the affiliations of Product creators.
* [Projects](./entities/project) are research project grants funded by a Funding Stream of a Funder. * [Projects](/data-model/entities/project) are research project grants funded by a Funding Stream of a Funder.
* [Communities](./entities/community) are groups of people with a common research intent (e.g. research infrastructures, university alliances). * [Communities](/data-model/entities/community) are groups of people with a common research intent (e.g. research infrastructures, university alliances).
:::note Further reading :::note Further reading

View File

@ -6,32 +6,32 @@ Note: the labels used to specify the semantic of the relationships are (for the
| # | Source entity type | Target entity type | Relation name / inverse | Provenance | | # | Source entity type | Target entity type | Relation name / inverse | Provenance |
|:--:|:--------------------------------------:|:--------------------------------------:|:----------------------------------------------------------:|:-----------------------------------------------:| |:--:|:--------------------------------------:|:--------------------------------------:|:----------------------------------------------------------:|:-----------------------------------------------:|
| 1 | [Project](../../data-model/entities/project) | [Result](../../data-model/entities/result) | produces / isProducedBy | Harvested, Inferred by OpenAIRE, Linked by user | | 1 | [Project](/data-model/entities/project) | [Result](/data-model/entities/result) | produces / isProducedBy | Harvested, Inferred by OpenAIRE, Linked by user |
| 2 | [Project](../../data-model/entities/project) | [Organization](../../data-model/entities/organization) | hasParticipant / isParticipant | Harvested | | 2 | [Project](/data-model/entities/project) | [Organization](/data-model/entities/organization) | hasParticipant / isParticipant | Harvested |
| 3 | [Project](../../data-model/entities/project) | [Community](../../data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user | | 3 | [Project](/data-model/entities/project) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user |
| 4 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsAmongTopNSimilarDocuments / HasAmongTopNSimilarDocuments | Inferred by OpenAIRE | | 4 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsAmongTopNSimilarDocuments / HasAmongTopNSimilarDocuments | Inferred by OpenAIRE |
| 5 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsSupplementTo / IsSupplementedBy | Harvested | | 5 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsSupplementTo / IsSupplementedBy | Harvested |
| 6 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user | | 6 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user |
| 7 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsPartOf / HasPart | Harvested | | 7 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsPartOf / HasPart | Harvested |
| 8 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsDocumentedBy / Documents | Harvested | | 8 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsDocumentedBy / Documents | Harvested |
| 9 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsObsoletedBy / Obsoletes | Harvested | | 9 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsObsoletedBy / Obsoletes | Harvested |
| 10 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsSourceOf / IsDerivedFrom | Harvested | | 10 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsSourceOf / IsDerivedFrom | Harvested |
| 11 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsCompiledBy / Compiles | Harvested | | 11 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsCompiledBy / Compiles | Harvested |
| 12 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsRequiredBy / Requires | Harvested | | 12 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsRequiredBy / Requires | Harvested |
| 13 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsCitedBy / Cites | Harvested, Inferred by OpenAIRE | | 13 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsCitedBy / Cites | Harvested, Inferred by OpenAIRE |
| 14 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsReferencedBy / References | Harvested | | 14 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsReferencedBy / References | Harvested |
| 15 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsReviewedBy / Reviews | Harvested | | 15 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsReviewedBy / Reviews | Harvested |
| 16 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsOriginalFormOf / IsVariantFormOf | Harvested | | 16 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsOriginalFormOf / IsVariantFormOf | Harvested |
| 17 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsVersionOf / HasVersion | Harvested | | 17 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsVersionOf / HasVersion | Harvested |
| 18 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsIdenticalTo / IsIdenticalTo | Harvested | | 18 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsIdenticalTo / IsIdenticalTo | Harvested |
| 19 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsPreviousVersionOf / IsNewVersionOf | Harvested | | 19 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsPreviousVersionOf / IsNewVersionOf | Harvested |
| 20 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsContinuedBy / Continues | Harvested | | 20 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsContinuedBy / Continues | Harvested |
| 21 | [Result](../../data-model/entities/result) | [Result](../../data-model/entities/result) | IsDescribedBy / Describes | Harvested | | 21 | [Result](/data-model/entities/result) | [Result](/data-model/entities/result) | IsDescribedBy / Describes | Harvested |
| 22 | [Result](../../data-model/entities/result) | [Organization](../../data-model/entities/organization) | hasAuthorInstitution / isAuthorInstitutionOf | Harvested, Inferred by OpenAIRE | | 22 | [Result](/data-model/entities/result) | [Organization](/data-model/entities/organization) | hasAuthorInstitution / isAuthorInstitutionOf | Harvested, Inferred by OpenAIRE |
| 23 | [Result](../../data-model/entities/result) | [Data source](../../data-model/entities/data-source) | isHostedBy / hosts | Harvested, Inferred by OpenAIRE | | 23 | [Result](/data-model/entities/result) | [Data source](/data-model/entities/data-source) | isHostedBy / hosts | Harvested, Inferred by OpenAIRE |
| 24 | [Result](../../data-model/entities/result) | [Data source](../../data-model/entities/data-source) | isProvidedBy / provides | Harvested | | 24 | [Result](/data-model/entities/result) | [Data source](/data-model/entities/data-source) | isProvidedBy / provides | Harvested |
| 25 | [Result](../../data-model/entities/result) | [Community](../../data-model/entities/community) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user | | 25 | [Result](/data-model/entities/result) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Harvested, Inferred by OpenAIRE, Linked by user |
| 26 | [Organization](../../data-model/entities/organization) | [Community](../../data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user | | 26 | [Organization](/data-model/entities/organization) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user |
| 27 | [Organization](../../data-model/entities/organization) | [Organization](../../data-model/entities/organization) | IsChildOf / IsParentOf | Linked by user | | 27 | [Organization](/data-model/entities/organization) | [Organization](/data-model/entities/organization) | IsChildOf / IsParentOf | Linked by user |
| 28 | [Data source](../../data-model/entities/data-source) | [Community](../../data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user | | 28 | [Data source](/data-model/entities/data-source) | [Community](/data-model/entities/community) | IsRelatedTo / IsRelatedTo | Linked by user |
| 29 | [Data source](../../data-model/entities/data-source) | [Organization](../../data-model/entities/organization) | isProvidedBy / provides | Harvested | | 29 | [Data source](/data-model/entities/data-source) | [Organization](/data-model/entities/organization) | isProvidedBy / provides | Harvested |

View File

@ -8,7 +8,7 @@ sidebar_position: 1
# Extended Result # Extended Result
It is a subclass of [Result](../../data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources. It is a subclass of [Result](/data-model/entities/result) extended with information regarding projects (and funders), research communities/infrastructure and related data sources.

View File

@ -27,7 +27,7 @@ A vocabulary is a data structure that defines a list of terms, and for each term
[...] [...]
``` ```
Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](../data-model/entities/result#instance). Each vocabulary is typically used to control and harmonise the values available in a specific field characterising the bibliographic records. The example above provides a preview of the vocabulary used to clean the [result's instance typology](/data-model/entities/result#instance).
The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/). The content of the vocabularies can be accessed on [api.openaire.eu/vocabularies](https://api.openaire.eu/vocabularies/).

Some files were not shown because too many files have changed in this diff Show More