Skip to main content

RDMO Plugin to document and query mathematical research data using the MaRDI infrastructure.

Project description

MaRDMO Logo by MaRDI, licensed under CC BY-NC-ND 4.0.

MaRDMO Plugin

This repository contains the MaRDMO Plugin for the Research Datamanagement Organizer (RDMO) developed within the Mathematical Research Data Initiative (MaRDI). The plugin allows a standardized documentation of interdisciplinary workflows, where the connection to experiments or computational approaches, like simulations, is possible and desired. Documented workflows can be stored locally (depreciated) or shared with other scientists on the MaRDI Portal. In the latter case a Wiki Page is created for the documented workflow and integral aspects of the workflow are integrated into the MaRDI Knowledge Graph. Integration into the MaRDI Knowledge Graph allows specific workflow queries which are also possible through the MaRDMO Plugin.

To document the underlying mathematical model(s) MaRDMO relies on the MathModDB ontology developed within Task Area 4 of MaRDI. Existing model documentations are retrieved from the MathModDB Knowledge Graph. Export into the MathModDB KG is possible upon authentification. If credentials are missing, it is possible to export the documented model into a standardized model documentation template and share it with the MaRDI TA4 Team for integration.

Currently it is not possible to export a workflow documentation and a model documentation at the same time to the respective KGs. This will be added in the next update, until then document the model, export it to the MathModDB KG and select it in the Workflow documentation.

MaRDMO Plugin Installation

To use the MaRDMO Plugin at least RDMO v2.0.0 is required. Follow the installation / update instructions of RDMO if required.

Go to the rdmo-app directory of your RDMO installation. In the virtual environment of the RDMO installation install the MaRDMO Plugin:

pip install MaRDMO

To connect the MaRDMO Plugin with the RDMO installation add the following lines to config/settings/local.py (if not already present):

from django.utils.translation import gettext_lazy as _ 
INSTALLED_APPS = ['MaRDMO'] + INSTALLED_APPS

PROJECT_EXPORTS += [
        ('mde', _('MaRDI Export/Query'), 'MaRDMO.export.MaRDIExport'),
        ]

OPTIONSET_PROVIDERS = [
    ('MaRDIAndWikidataSearch', _('Options for MaRDI and Wikidata Search'), 'MaRDMO.providers.MaRDIAndWikidataSearch'),
    ('MaRDISearch', _('Options for MaRDI Search'), 'MaRDMO.providers.MaRDISearch'),
    ('MSCProvider', _('Options for Mathematical Subject Classification Search'), 'MaRDMO.providers.MSCProvider'),
    ('ProcessorProvider', _('Options for Processor Search'), 'MaRDMO.providers.ProcessorProvider'),
    ('AvailableSoftware', _('Options for Available Software'), 'MaRDMO.providers.AvailableSoftware'),
    ('MathAreaProvider', _('Options for Math Areas'), 'MaRDMO.providers.MathAreaProvider'),
    ('EnvironmentProvider', _('Options for Environments'), 'MaRDMO.providers.EnvironmentProvider'),
    ('MethodProvider', _('Options for Methods'), 'MaRDMO.providers.MethodProvider'),
    ('DataProvider', _('Options for Data Sets'), 'MaRDMO.providers.DataProvider'),
    ('SoftwareProvider', _('Options for Software'), 'MaRDMO.providers.SoftwareProvider'),
    ('ResearchField', _('Options for Research Fields'), 'MaRDMO.providers.ResearchField'),
    ('RelatedResearchField', _('Options for Related Research Fields'), 'MaRDMO.providers.RelatedResearchField'),
    ('ResearchProblem', _('Options for Research Problems'), 'MaRDMO.providers.ResearchProblem'),
    ('ResearchFieldWithUserAddition', _('Options for Research Fields with User Additions'), 'MaRDMO.providers.ResearchFieldWithUserAddition'),
    ('RelatedResearchProblem', _('Options for Related Research Problems'), 'MaRDMO.providers.RelatedResearchProblem'),
    ('MathematicalModel', _('Options for Mathematical Models'), 'MaRDMO.providers.MathematicalModel'),
    ('RelatedMathematicalModel', _('Options for related Mathematical Model'), 'MaRDMO.providers.RelatedMathematicalModel'),
    ('MathematicalModelWithUserAddition', _('Options for Mathematical Models with User Additions'), 'MaRDMO.providers.MathematicalModelWithUserAddition'),
    ('QuantityOrQuantityKind', _('Options for Quantities and Quantity Kinds'), 'MaRDMO.providers.QuantityOrQuantityKind'),
    ('RelatedQuantity', _('Options for related Quantities'), 'MaRDMO.providers.RelatedQuantity'),
    ('RelatedQuantityKind', _('Options for related Quantity Kinds'), 'MaRDMO.providers.RelatedQuantityKind'),
    ('MathematicalFormulation', _('Options for Mathematical Formulation'), 'MaRDMO.providers.MathematicalFormulation'),
    ('MathematicalFormulationWithUserAddition', _('Options for Mathematical Formulations with User Additions '), 'MaRDMO.providers.MathematicalFormulationWithUserAddition'),
    ('QuantityOrQuantityKindWithUserAddition', _('Options for Quantities and Quantity Kinds with User Additions'), 'MaRDMO.providers.QuantityOrQuantityKindWithUserAddition'),
    ('WorkflowTask', _('Options for Workflow Task'), 'MaRDMO.providers.WorkflowTask'),
    ('Task', _('Options for Task'), 'MaRDMO.providers.Task'),
    ('RelatedTask', _('Options for related Tasks'), 'MaRDMO.providers.RelatedTask'),
    ('Publication', _('Options for Publications'), 'MaRDMO.providers.Publication'),
    ('AllEntities', _('Options for All Entities'), 'MaRDMO.providers.AllEntities')
    ]

Thereby, the MaRDMO Plugin is installed and a "MaRDI Export/Query" button is added in the project view.

MaRDI Portal and MathModDB Connection

To add data to the MaRDI Portal a login is required. In the MaRDMO Plugin this is currently facilitated using a bot. To set up the bot visit the MaRDI Portal, log in with your user credentials, choose Special Pages and Bot passwords. Provide a name for the new bot, select Create, grant the bot permission for High-volume (bot) access, Edit existing pages and Create, edit, and move pages and select again Create. Thereby, a bot is created. Add its credentials to config/settigs/local.py:

lgname = 'username@botname'
lgpassword = 'password'

To write to the MathModDB KG a login is required. Credentials might be obtained by contacting the MaRDI staff. Add the to config/settigs/local.py:

mathmoddb_username = 'username'
mathmoddb_password = 'password'

Local workflow and model documentations and workflow searches are possible without login credentials. Non-MaRDI users may contact the owner of the repository to facilitate the login for MaRDI portal and MathModDB publication.

MaRDMO-Questionnaire

The MaRDMO Plugin requires the MaRDMO-Questionnaire, download its latest release Latest Release.

Integrate the MaRDMO Questionnaire into your RDMO instance through the user interface of your RDMO instance (Management -> Import -> attributes.xml/optionsets.xml/conditions.xml/catalogs.xml) or via

python manage.py import /path/to/MaRDMO-Questionnaire/catalog/attributes.xml
python manage.py import /path/to/MaRDMO-Questionnaire/catalog/optionsets.xml
python manage.py import /path/to/MaRDMO-Questionnaire/catalog/conditions.xml
python manage.py import /path/to/MaRDMO-Questionnaire/catalog/catalogs.xml

Usage of MaRDMO Plugin

Once the MaRDMO Plugin is set up, the Questionnaire can be used to document and query interdisciplinary workflows and/or mathematical models. Therefore, select "Create New Project" in RDMO, choose a proper project name (project name will be used as wokflow name and label in the MaRDI portal), assign the "MaRDMO Catalog" and select "Create Project". The project is created. On the right hand side in the "Export" category the "MaRDI Export/Query" button is located to process the completed Questionnaire.

Choose "Answer Questions" to start the interview. The first questions define the operation modus of the MaRDMO Plugin. Following an identification, questions for the workflow and/or mathematical model documentation are provided. Once all questions are answered, return to the project overview page, choose 'MaRDI Export/Query' and your Workflow and/or Mathematical Model will be exported as selected during the interview.

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

mardmo-0.1.2.tar.gz (233.9 kB view details)

Uploaded Source

Built Distribution

MaRDMO-0.1.2-py3-none-any.whl (239.0 kB view details)

Uploaded Python 3

File details

Details for the file mardmo-0.1.2.tar.gz.

File metadata

  • Download URL: mardmo-0.1.2.tar.gz
  • Upload date:
  • Size: 233.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.15

File hashes

Hashes for mardmo-0.1.2.tar.gz
Algorithm Hash digest
SHA256 364a18ce7ed6bd3563d925edb54b543d56792506d4eb49bfc0e1829a1a19f2d3
MD5 b2df85c2d970af6deab7986bf8df7fc4
BLAKE2b-256 a91aa179e89e77e6f3cac0f20e260820f7024b679459f1bb9a014700f8190dc6

See more details on using hashes here.

File details

Details for the file MaRDMO-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: MaRDMO-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 239.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.15

File hashes

Hashes for MaRDMO-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 2174f4eab5642a5c0e4145991a6b7203c75cc6c9b1206049393c1068615f5ddb
MD5 a97dedfc4c5d6cac6dbada727670e804
BLAKE2b-256 4f619dc2bb4cf30a44034260106962a0ee9629931e58f8b5d20e3be0966eca2a

See more details on using hashes here.

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