Skip to main content

NFDI

PyPI version Jupyter Book Badge

The Python library NFDI provides:

  • basic information about NFDI (also known as Nationale ForschungsDatenInfrastruktur and National Research Data Infrastructure) and all funded NFDI consortia,
  • support for Wikidata WikiProject NFDI aimed to create and edit the Wikidata entities and entity schemas relevant for NFDI,
  • simple named entity linker on texts for the accepted NFDI consortia.

The NFDI Jupyter Book describes:

Table of contents

Installation

pip install NFDI

How to use

Module info

[docs module info]

The module info has classes consortium and consortia:

from nfdi import info
nfdi = info.consortia()
berd = info.consortium('BERD@NFDI')

The instance nfdi has the following attributes: 'label', 'homepage', 'wikidata', 'github', 'google', 'linkedin', 'twitter', 'youtube', 'zenodo', 'labels', 'consortia'. For example:

nfdi.twitter

prints

"https://twitter.com/NFDI_de"

The instances nfdi and berd have the methods print, dict and _wikidata:

json = berd._wikidata()
nfdi.print()

The json variable contains JSON representation of the corresponding entity at Wikidata including labels, aliases and descriptions:

print('LABELS', json.get('labels'))
print('DESCRIPTIONS', json.get('descriptions'))
print('ALIASES', json.get('aliases'))

It prints:

LABELS {'en': {'language': 'en', 'value': 'BERD@NFDI'}, 'de': {'language': 'de', 'value': 'BERD@NFDI'}, 'fr': {'language': 'fr', 'value': 'BERD@NFDI'}, 'bar': {'language': 'bar', 'value': 'BERD@NFDI'}, 'de-at': {'language': 'de-at', 'value': 'BERD@NFDI'}, 'de-ch': {'language': 'de-ch', 'value': 'BERD@NFDI'}, 'de-formal': {'language': 'de-formal', 'value': 'BERD@NFDI'}, 'en-ca': {'language': 'en-ca', 'value': 'BERD@NFDI'}, 'en-gb': {'language': 'en-gb', 'value': 'BERD@NFDI'}, 'es': {'language': 'es', 'value': 'BERD@NFDI'}, 'nl': {'language': 'nl', 'value': 'BERD@NFDI'}, 'pt': {'language': 'pt', 'value': 'BERD@NFDI'}, 'simple': {'language': 'simple', 'value': 'BERD@NFDI'}}
DESCRIPTIONS {'en': {'language': 'en', 'value': 'NFDI consortium for Business, Economic and Related Data (Social and Behavioural Sciences)'}, 'de': {'language': 'de', 'value': 'NFDI für Wirtschaftsdaten und Verwandtes (Sozial- und Verhaltenswissenschaften)'}}
ALIASES {'en': [{'language': 'en', 'value': 'BERD-NFDI'}], 'de': [{'language': 'de', 'value': 'BERD-NFDI'}], 'fr': [{'language': 'fr', 'value': 'BERD-NFDI'}], 'bar': [{'language': 'bar', 'value': 'BERD-NFDI'}], 'de-at': [{'language': 'de-at', 'value': 'BERD-NFDI'}], 'de-ch': [{'language': 'de-ch', 'value': 'BERD-NFDI'}], 'de-formal': [{'language': 'de-formal', 'value': 'BERD-NFDI'}], 'en-ca': [{'language': 'en-ca', 'value': 'BERD-NFDI'}], 'en-gb': [{'language': 'en-gb', 'value': 'BERD-NFDI'}], 'es': [{'language': 'es', 'value': 'BERD-NFDI'}], 'nl': [{'language': 'nl', 'value': 'BERD-NFDI'}], 'pt': [{'language': 'pt', 'value': 'BERD-NFDI'}], 'simple': [{'language': 'simple', 'value': 'BERD-NFDI'}]}

Module data

[docs module data]

The module data has raw data as a dictionary:

from nfdi import data
data.raw()

Module nel

[docs module nel]

The module nel provides simple rule-based named entity linker for the NFDI consortia. In Jupyter Notebook use

from nfdi.nel import linker, test
t = linker(test)
t.render()

where test stores the following sentences:

What are BERD@NFDI, NFDI4Earth, NFDI4DataScience, NFDI-MatWerk, PUNCH4NFDI, FAIRmat and Text+?
How are they related to NFDI4Ing, NFDI4Culture, NFDI4Chem and NFDIGHGA?

In Python console use:

from nfdi.nel import linker, test
t = linker(test)
t.serve()

The Wikidata QIDs are stored in .ent_id_:

from nfdi.nel import linker, test
t = linker(test)
for span in t.doc.ents:
    print((span.text, span.ent_id_, span.label_))

It prints:

('BERD@NFDI', 'Q108542181', 'ORG')
('NFDI4Earth', 'Q108542504', 'ORG')
('NFDI4DataScience', 'Q108542422', 'ORG')
('NFDI-MatWerk', 'Q108542607', 'ORG')
('PUNCH4NFDI', 'Q108542637', 'ORG')
('FAIRmat', 'Q108542373', 'ORG')
('Text+', 'Q98271443', 'ORG')
('NFDI4Ing', 'Q98380344', 'ORG')
('NFDI4Culture', 'Q98276929', 'ORG')
('NFDI4Chem', 'Q96678459', 'ORG')
('NFDIGHGA', 'Q98380337', 'ORG')

NFDI Jupyter Book

Check out NFDI Jupyter Book.

Deploying the Book locally

First, create and activate conda environment using the provided docs/environment.yml:

conda env create -f docs/environment.yml
conda activate nfdi

Then, build the Book:

jb build docs

Open the file docs/_build/html/index.html in a browser.

To remove the build folder, run:

jb clean --all docs

Deploying the Book at GitHub

Install ghp-import:

pip install ghp-import

Once the book is built, run:

ghp-import -n -p -f docs/_build/html

Metadata

Release files for NFDI 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for NFDI 0.1.1
File Size Uploaded
NFDI-0.1.1.tar.gz 7.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for NFDI 0.1.1
File Interpreter ABI Platform
NFDI-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 15.5 kB

Release files / NFDI-0.1.1.tar.gz

Download URL NFDI-0.1.1.tar.gz
Size 7.3 kB
Tags Source
SHA-256 checksum
How to use checksums
4efd08b8ae78791e70d7f60ce8be27858649766992def561bb3145d75301be21
BLAKE2b-256 checksum
How to use checksums
4778dac7f713ecef70dd2f2f18809389d4143b90d703186e3f6751a793623d2e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.6

Release files / NFDI-0.1.1-py3-none-any.whl

Download URL NFDI-0.1.1-py3-none-any.whl
Size 8.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2744f58e1c1035f06551d7a46b94912e0f5226ae7a39554a2a21cfc1bf21acd0
BLAKE2b-256 checksum
How to use checksums
17292d2033544db996d706113ee2fbfa94dbd4a65fd9d5b16765a3a1d9373519
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.48.0 CPython/3.7.6

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page