Skip to main content

Python library for interacting with openMINDS metadata schemas

Project description

openMINDS Python

openMINDS Python is a small library that allows you the dynamic usage of openMINDS metadata models and schemas in your Python application for generating your own collection of openMINDS conform metadata representations (instances) as JSON-LDs.

Please note that openMINDS Python only helps you to generate correctly formatted JSON-LD metadata instances - the preparation on how you want to describe your research product with openMINDS is still up to you. If you need support in designing your own openMINDS metadata collection, check out the openMINDS Collab Tutorials which might give you hints on how to tackle your individual case or, of course, get in touch with us directly via our support-email (openminds@ebrains.eu).

Installation

The official versions are available at the Python Package Index and can be installed using pip install in your console:

pip install openMINDS

The latest unstable version is available on this GitHub.

Usage

As stated above, the openMINDS Python allows you the dynamic usage of openMINDS metadata models and schemas in your Python application for generating your own collection of openMINDS conform metadata representations (instances) as JSON-LDs. Here a small example:

import openMINDS

# Initialise the local copy of openMINDS
openMINDS.version_manager.init()

# Select which version of openMINDS to use
openMINDS.version_manager.version_selection('v2.0.0')

# initiate the helper class for the dynamic usage of a specific openMINDS version
helper = openMINDS.Helper()

# initiate the collection into which you will store all metadata instances
mycollection = helper.create_collection()

# create a metadata instance for (e.g.) the openMINDS Person schema
givenName_open = mycollection.add_core_person(givenName="open")

# add more metadata to a created instance
mycollection.get(givenName_open).familyName = "MINDS"

# add connections to other metadata instances
email_openminds = mycollection.add_core_contactInformation(email="openminds@ebrains.eu")
mycollection.get(givenName_open).contactInformation = email_openminds

# save your collection
mycollection.save("./myFirstOpenMINDSMetadataCollection/")

This example generates two linked JSON-LDs, one conform with the openMINDS (v3) Person schema and the other conform with the openMINDS (v3) ContactInformation schema.

To learn in general about the available openMINDS metadata models, schemas and their required or optional metadata properties, check out the openMINDS HTML views which are deployed as GitHub pages on the main openMINDS repository. You can also have a look at the full openMINDS documentation on the EBRAINS Collaboratory.

Within the openMINDS Python you can also get an overview of the requirements of a schema and all its properties by using the 'help_X' function. Here an example:

mycollection.help_core_person()

License

This work is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openMINDS-0.0.5.dev0.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

openMINDS-0.0.5.dev0-py3-none-any.whl (10.7 kB view details)

Uploaded Python 3

File details

Details for the file openMINDS-0.0.5.dev0.tar.gz.

File metadata

  • Download URL: openMINDS-0.0.5.dev0.tar.gz
  • Upload date:
  • Size: 11.2 kB
  • Tags: Source
  • Uploaded using 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.62.3 CPython/3.9.6

File hashes

Hashes for openMINDS-0.0.5.dev0.tar.gz
Algorithm Hash digest
SHA256 6db71535fc0bf7d71df12dffe2474889ecd3e5a2f43f9b2454124b5382d08e9f
MD5 49b8bdebe0a7b56f8ddb87da6531330e
BLAKE2b-256 160db27803143156fdfa76d4adef14010775a92fa66daa3ea7029f18ed13dd0c

See more details on using hashes here.

Provenance

File details

Details for the file openMINDS-0.0.5.dev0-py3-none-any.whl.

File metadata

  • Download URL: openMINDS-0.0.5.dev0-py3-none-any.whl
  • Upload date:
  • Size: 10.7 kB
  • Tags: Python 3
  • Uploaded using 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.62.3 CPython/3.9.6

File hashes

Hashes for openMINDS-0.0.5.dev0-py3-none-any.whl
Algorithm Hash digest
SHA256 031bcf2d46f933a845247d63085dbed5fdb9d5ce108e7f6444d68c36b37e2b18
MD5 ed022f26197a1e85b6e74b7243d376b3
BLAKE2b-256 dd942adb03849df5697b815e340ef00c9479b31dd26b00547ec9672802235f45

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page