oc_ocdm


Nameoc_ocdm JSON
Version 8.0.1 PyPI version JSON
download
home_pagehttps://opencitations.net
SummaryObject mapping library for manipulating RDF graphs that are compliant with the OpenCitations datamodel.
upload_time2024-03-27 14:20:19
maintainerNone
docs_urlNone
authorSilvio Peroni
requires_python<4.0,>=3.8
licenseISC
keywords opencitations openscience datamodel mapping
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # oc_ocdm
[<img src="https://img.shields.io/badge/powered%20by-OpenCitations-%239931FC?labelColor=2D22DE" />](http://opencitations.net)
[![Run tests](https://github.com/opencitations/oc_ocdm/actions/workflows/run_tests.yml/badge.svg)](https://github.com/opencitations/oc_ocdm/actions/workflows/run_tests.yml)
![Coverage](https://raw.githubusercontent.com/opencitations/oc_ocdm/master/oc_ocdm/test/coverage/coverage.svg)
[![Documentation Status](https://readthedocs.org/projects/oc-ocdm/badge/?version=latest)](https://oc-ocdm.readthedocs.io/en/latest/?badge=latest)
[![PyPI version](https://badge.fury.io/py/oc-ocdm.svg)](https://badge.fury.io/py/oc-ocdm)
![PyPI](https://img.shields.io/pypi/pyversions/oc_meta)

[![DOI](https://zenodo.org/badge/322327342.svg)](https://zenodo.org/badge/latestdoi/322327342)
[![License: ISC](https://img.shields.io/badge/License-ISC-blue.svg)](https://opensource.org/licenses/ISC)

Documentation can be found here: [https://oc-ocdm.readthedocs.io](https://oc-ocdm.readthedocs.io).

**oc_ocdm** is a Python &ge;3.7 library that enables the user to import, produce, modify and export RDF data
structures which are compliant with the [OCDM v2.0.1](https://figshare.com/articles/Metadata_for_the_OpenCitations_Corpus/3443876) specification.

## User's guide
This package can be simply installed with **pip**:
``` bash
    pip install oc_ocdm
```
**Please, have a look at the notebooks [available here](https://github.com/opencitations/oc_ocdm/blob/master/notebooks/).**

## Developer's guide

### First steps
  1. Install Poetry:
``` bash
    pip install poetry
```
  2. Clone this repository:
``` bash
    git clone https://github.com/iosonopersia/oc_ocdm
    cd ./oc_ocdm
```
  3. Install all the dependencies:
``` bash
    poetry install
```
  4. Build the package (_output dir:_ `dist`):
``` bash
    poetry build
```
  5. Globally install the package (_alternatively, you can also install it inside a virtual-env,
  by providing the full path to the .tar.gz archive_):
``` bash
    pip install ./dist/oc_ocdm-<VERSION>.tar.gz
```
  6. If everything went the right way, than you should be able to use the `oc_ocdm` library in your Python modules as follows:
``` python
    from oc_ocdm.graph import GraphSet
    from oc_ocdm.graph.entities.bibliographic import AgentRole
    # ...
```

### How to run the tests
Just run the following command inside the root project folder:
``` bash
    poetry run test
```

### How to manage the project using Poetry
See [Poetry commands documentation](https://python-poetry.org/docs/cli/).

**AAA: when adding a non-dev dependency via `poetry add`, always remember to add
that same dependency to the `autodoc_mock_imports` list in `docs/source/conf.py`**
(otherwise "Read the Docs" won't be able to compile the documentation correctly!).

### How to publish the package onto Pypi
``` bash
    poetry publish --build
```
### Install dependencies needed for the documentation
``` bash
    pip install Sphinx sphinx_rtd_theme
```
### How to generate the documentation
``` bash
    rm ./docs/source/modules/*
    sphinx-apidoc  -o ./docs/source/modules oc_ocdm *test*
```

### How to build the documentation
___
**Warning! In order to avoid getting the following `WARNING: html_static_path entry '_static' does not exist`, you'll
need to manually create an empty `_static` folder with the command:**
``` bash
    mkdir docs/source/_static
```
___
  1. Always remember to move inside the `docs` folder:
``` bash
    cd docs
```
  2. Use the Makefile provided to build the docs:
      + _on Windows_
        ```
            make.bat html
        ```
      + _on Linux and MacOs_
        ```
            make html
        ```
  3. Open the `build/html/index.html` file with a web browser of your choice!

## Citation
If you are using or extending `oc_ocdm` as part of a scientific publication, we would appreciate a citation of our [article](https://link.springer.com/chapter/10.1007/978-3-031-06981-9_18).

```bibtex
@inproceedings{persiani2022programming,
  title={{A} {P}rogramming {I}nterface for {C}reating {D}ata {A}ccording to the {SPAR} {O}ntologies and the {O}pen{C}itations {D}ata {M}odel},
  author={Persiani, Simone and Daquino, Marilena and Peroni, Silvio},
  booktitle={The Semantic Web: 19th International Conference, ESWC 2022, Hersonissos, Crete, Greece, May 29--June 2, 2022, Proceedings},
  pages={305--322},
  year={2022},
  organization={Springer}
}
```

## Acknowledgements
This work has been funded by the project “Open Biomedical Citations in Context Corpus”
(Wellcome Trust, Grant n. 214471/Z/18/Z) and the project “Wikipedia Citations in Wikidata”
(Wikimedia Foundation, https://meta.wikimedia.org/wiki/Wikicite/grant/Wikipedia_Citations_in_Wikidata).

We would like to thank (in alphabetic order) Fabio Mariani (@FabioMariani), Arcangelo
Massari (@arcangelo7), and Gabriele Pisciotta (@GabrielePisciotta) for the constructive feedback.

            

Raw data

            {
    "_id": null,
    "home_page": "https://opencitations.net",
    "name": "oc_ocdm",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.8",
    "maintainer_email": null,
    "keywords": "opencitations, openscience, datamodel, mapping",
    "author": "Silvio Peroni",
    "author_email": "essepuntato@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/1f/60/4095a1f7e4daf40d814757cd8a1c2cfad6f8955da13384de1bb5dd850a48/oc_ocdm-8.0.1.tar.gz",
    "platform": null,
    "description": "# oc_ocdm\n[<img src=\"https://img.shields.io/badge/powered%20by-OpenCitations-%239931FC?labelColor=2D22DE\" />](http://opencitations.net)\n[![Run tests](https://github.com/opencitations/oc_ocdm/actions/workflows/run_tests.yml/badge.svg)](https://github.com/opencitations/oc_ocdm/actions/workflows/run_tests.yml)\n![Coverage](https://raw.githubusercontent.com/opencitations/oc_ocdm/master/oc_ocdm/test/coverage/coverage.svg)\n[![Documentation Status](https://readthedocs.org/projects/oc-ocdm/badge/?version=latest)](https://oc-ocdm.readthedocs.io/en/latest/?badge=latest)\n[![PyPI version](https://badge.fury.io/py/oc-ocdm.svg)](https://badge.fury.io/py/oc-ocdm)\n![PyPI](https://img.shields.io/pypi/pyversions/oc_meta)\n\n[![DOI](https://zenodo.org/badge/322327342.svg)](https://zenodo.org/badge/latestdoi/322327342)\n[![License: ISC](https://img.shields.io/badge/License-ISC-blue.svg)](https://opensource.org/licenses/ISC)\n\nDocumentation can be found here: [https://oc-ocdm.readthedocs.io](https://oc-ocdm.readthedocs.io).\n\n**oc_ocdm** is a Python &ge;3.7 library that enables the user to import, produce, modify and export RDF data\nstructures which are compliant with the [OCDM v2.0.1](https://figshare.com/articles/Metadata_for_the_OpenCitations_Corpus/3443876) specification.\n\n## User's guide\nThis package can be simply installed with **pip**:\n``` bash\n    pip install oc_ocdm\n```\n**Please, have a look at the notebooks [available here](https://github.com/opencitations/oc_ocdm/blob/master/notebooks/).**\n\n## Developer's guide\n\n### First steps\n  1. Install Poetry:\n``` bash\n    pip install poetry\n```\n  2. Clone this repository:\n``` bash\n    git clone https://github.com/iosonopersia/oc_ocdm\n    cd ./oc_ocdm\n```\n  3. Install all the dependencies:\n``` bash\n    poetry install\n```\n  4. Build the package (_output dir:_ `dist`):\n``` bash\n    poetry build\n```\n  5. Globally install the package (_alternatively, you can also install it inside a virtual-env,\n  by providing the full path to the .tar.gz archive_):\n``` bash\n    pip install ./dist/oc_ocdm-<VERSION>.tar.gz\n```\n  6. If everything went the right way, than you should be able to use the `oc_ocdm` library in your Python modules as follows:\n``` python\n    from oc_ocdm.graph import GraphSet\n    from oc_ocdm.graph.entities.bibliographic import AgentRole\n    # ...\n```\n\n### How to run the tests\nJust run the following command inside the root project folder:\n``` bash\n    poetry run test\n```\n\n### How to manage the project using Poetry\nSee [Poetry commands documentation](https://python-poetry.org/docs/cli/).\n\n**AAA: when adding a non-dev dependency via `poetry add`, always remember to add\nthat same dependency to the `autodoc_mock_imports` list in `docs/source/conf.py`**\n(otherwise \"Read the Docs\" won't be able to compile the documentation correctly!).\n\n### How to publish the package onto Pypi\n``` bash\n    poetry publish --build\n```\n### Install dependencies needed for the documentation\n``` bash\n    pip install Sphinx sphinx_rtd_theme\n```\n### How to generate the documentation\n``` bash\n    rm ./docs/source/modules/*\n    sphinx-apidoc  -o ./docs/source/modules oc_ocdm *test*\n```\n\n### How to build the documentation\n___\n**Warning! In order to avoid getting the following `WARNING: html_static_path entry '_static' does not exist`, you'll\nneed to manually create an empty `_static` folder with the command:**\n``` bash\n    mkdir docs/source/_static\n```\n___\n  1. Always remember to move inside the `docs` folder:\n``` bash\n    cd docs\n```\n  2. Use the Makefile provided to build the docs:\n      + _on Windows_\n        ```\n            make.bat html\n        ```\n      + _on Linux and MacOs_\n        ```\n            make html\n        ```\n  3. Open the `build/html/index.html` file with a web browser of your choice!\n\n## Citation\nIf you are using or extending `oc_ocdm` as part of a scientific publication, we would appreciate a citation of our [article](https://link.springer.com/chapter/10.1007/978-3-031-06981-9_18).\n\n```bibtex\n@inproceedings{persiani2022programming,\n  title={{A} {P}rogramming {I}nterface for {C}reating {D}ata {A}ccording to the {SPAR} {O}ntologies and the {O}pen{C}itations {D}ata {M}odel},\n  author={Persiani, Simone and Daquino, Marilena and Peroni, Silvio},\n  booktitle={The Semantic Web: 19th International Conference, ESWC 2022, Hersonissos, Crete, Greece, May 29--June 2, 2022, Proceedings},\n  pages={305--322},\n  year={2022},\n  organization={Springer}\n}\n```\n\n## Acknowledgements\nThis work has been funded by the project \u201cOpen Biomedical Citations in Context Corpus\u201d\n(Wellcome Trust, Grant n. 214471/Z/18/Z) and the project \u201cWikipedia Citations in Wikidata\u201d\n(Wikimedia Foundation, https://meta.wikimedia.org/wiki/Wikicite/grant/Wikipedia_Citations_in_Wikidata).\n\nWe would like to thank (in alphabetic order) Fabio Mariani (@FabioMariani), Arcangelo\nMassari (@arcangelo7), and Gabriele Pisciotta (@GabrielePisciotta) for the constructive feedback.\n",
    "bugtrack_url": null,
    "license": "ISC",
    "summary": "Object mapping library for manipulating RDF graphs that are compliant with the OpenCitations datamodel.",
    "version": "8.0.1",
    "project_urls": {
        "Documentation": "https://oc-ocdm.readthedocs.io",
        "Homepage": "https://opencitations.net",
        "Repository": "https://github.com/opencitations/oc_ocdm"
    },
    "split_keywords": [
        "opencitations",
        " openscience",
        " datamodel",
        " mapping"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b32d10bb60b3e18f1b99706bbe3f7e8db34b28291b194fa5f2363cdc790bcac8",
                "md5": "997c6270f7e856e23e7d0bb88c0b7f1c",
                "sha256": "6cdc02fbda441dc38493296f17f7cecf4a4e49fdd5f9692e66fdc83debe533ec"
            },
            "downloads": -1,
            "filename": "oc_ocdm-8.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "997c6270f7e856e23e7d0bb88c0b7f1c",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.8",
            "size": 171270,
            "upload_time": "2024-03-27T14:20:17",
            "upload_time_iso_8601": "2024-03-27T14:20:17.271648Z",
            "url": "https://files.pythonhosted.org/packages/b3/2d/10bb60b3e18f1b99706bbe3f7e8db34b28291b194fa5f2363cdc790bcac8/oc_ocdm-8.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1f604095a1f7e4daf40d814757cd8a1c2cfad6f8955da13384de1bb5dd850a48",
                "md5": "e63a5fc881b33f72f11423e8227777d7",
                "sha256": "640e67ce8f1900319eb65a9456734484831890361ebaecb2968c274a9b4dcedc"
            },
            "downloads": -1,
            "filename": "oc_ocdm-8.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "e63a5fc881b33f72f11423e8227777d7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.8",
            "size": 86581,
            "upload_time": "2024-03-27T14:20:19",
            "upload_time_iso_8601": "2024-03-27T14:20:19.375546Z",
            "url": "https://files.pythonhosted.org/packages/1f/60/4095a1f7e4daf40d814757cd8a1c2cfad6f8955da13384de1bb5dd850a48/oc_ocdm-8.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-03-27 14:20:19",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "opencitations",
    "github_project": "oc_ocdm",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "oc_ocdm"
}
        
Elapsed time: 0.21951s