rios.core


Namerios.core JSON
Version 0.10.0 PyPI version JSON
download
home_pagehttps://github.com/prometheusresearch/rios.core
SummaryParsing and Validation Library for RIOS Files
upload_time2025-02-12 19:00:49
maintainerNone
docs_urlNone
authorPrometheus Research, LLC
requires_pythonNone
licenseApache-2.0
keywords rios prismh research instrument assessment standard validation
VCS
bugtrack_url
requirements twine wheel pytest pytest-cov Sphinx sphinx-autobuild HTSQL tidypy
Travis-CI No Travis.
coveralls test coverage No coveralls.
            .. image:: https://github.com/prometheusresearch/rios.core/workflows/Test/badge.svg
   :target: https://github.com/prometheusresearch/rios.core/actions
.. image:: https://readthedocs.org/projects/rioscore/badge/?version=stable
   :target: https://rioscore.readthedocs.org
.. image:: https://img.shields.io/pypi/v/rios.core.svg
   :target: https://pypi.python.org/pypi/rios.core
.. image:: https://img.shields.io/pypi/l/rios.core.svg
   :target: https://pypi.python.org/pypi/rios.core

******************
RIOS.CORE Overview
******************

RIOS.CORE is a `Python`_ package that provides basic validation and
formatting functionality for data structures that adhere to the `RIOS`_
specifications (formally known as PRISMH).

.. _`Python`: https://www.python.org
.. _`RIOS`: https://rios.readthedocs.org


Example Usage
=============

This package exposes a handful of simple functions for validating and
formatting the standard RIOS data structures::

    >>> from rios.core import validate_instrument, get_instrument_json

    >>> instrument = {"foo": "bar", "id": "urn:my-instrument", "title": "An Instrument Title", "record": [{"id": "field1","type": "text"}], "version": "1.0"}
    >>> validate_instrument(instrument)
    Traceback (most recent call last):
        ...
    colander.Invalid: {'': u'Unrecognized keys in mapping: "{\'foo\': \'bar\'}"'}

    >>> del instrument['foo']
    >>> validate_instrument(instrument)

    >>> print get_instrument_json(instrument)
    {
      "id": "urn:my-instrument",
      "version": "1.0",
      "title": "An Instrument Title",
      "record": [
        {
          "id": "field1",
          "type": "text"
        }
      ]
    }


For more information on the available functionality, please read the API
documentation.


Contributing
============

Contributions and/or fixes to this package are more than welcome. Please submit
them by forking this repository and creating a Pull Request that includes your
changes. We ask that you please include unit tests and any appropriate
documentation updates along with your code changes.

This project will adhere to the `Semantic Versioning`_ methodology as much as
possible, so when building dependent projects, please use appropriate version
restrictions.

.. _`Semantic Versioning`: http://semver.org

A development environment can be set up to work on this package by doing the
following::

    $ python -m venv rios
    $ cd rios
    $ . bin/activate
    $ git clone git@github.com:prometheusresearch/rios.core.git
    $ cd rios.core
    $ pip install -e .
    $ pip install -r requirements.txt
    $ pytest


License/Copyright
=================

This project is licensed under the Apache v2 license. See the accompanying
``LICENSE.rst`` file for details.

Copyright (c) 2015, Prometheus Research, LLC


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/prometheusresearch/rios.core",
    "name": "rios.core",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "rios prismh research instrument assessment standard validation",
    "author": "Prometheus Research, LLC",
    "author_email": "contact@prometheusresearch.com",
    "download_url": "https://files.pythonhosted.org/packages/87/6d/d67dd25d8ae435637bfcdf4517458e2020200cf02db52fdf7eb421075c7c/rios_core-0.10.0.tar.gz",
    "platform": null,
    "description": ".. image:: https://github.com/prometheusresearch/rios.core/workflows/Test/badge.svg\n   :target: https://github.com/prometheusresearch/rios.core/actions\n.. image:: https://readthedocs.org/projects/rioscore/badge/?version=stable\n   :target: https://rioscore.readthedocs.org\n.. image:: https://img.shields.io/pypi/v/rios.core.svg\n   :target: https://pypi.python.org/pypi/rios.core\n.. image:: https://img.shields.io/pypi/l/rios.core.svg\n   :target: https://pypi.python.org/pypi/rios.core\n\n******************\nRIOS.CORE Overview\n******************\n\nRIOS.CORE is a `Python`_ package that provides basic validation and\nformatting functionality for data structures that adhere to the `RIOS`_\nspecifications (formally known as PRISMH).\n\n.. _`Python`: https://www.python.org\n.. _`RIOS`: https://rios.readthedocs.org\n\n\nExample Usage\n=============\n\nThis package exposes a handful of simple functions for validating and\nformatting the standard RIOS data structures::\n\n    >>> from rios.core import validate_instrument, get_instrument_json\n\n    >>> instrument = {\"foo\": \"bar\", \"id\": \"urn:my-instrument\", \"title\": \"An Instrument Title\", \"record\": [{\"id\": \"field1\",\"type\": \"text\"}], \"version\": \"1.0\"}\n    >>> validate_instrument(instrument)\n    Traceback (most recent call last):\n        ...\n    colander.Invalid: {'': u'Unrecognized keys in mapping: \"{\\'foo\\': \\'bar\\'}\"'}\n\n    >>> del instrument['foo']\n    >>> validate_instrument(instrument)\n\n    >>> print get_instrument_json(instrument)\n    {\n      \"id\": \"urn:my-instrument\",\n      \"version\": \"1.0\",\n      \"title\": \"An Instrument Title\",\n      \"record\": [\n        {\n          \"id\": \"field1\",\n          \"type\": \"text\"\n        }\n      ]\n    }\n\n\nFor more information on the available functionality, please read the API\ndocumentation.\n\n\nContributing\n============\n\nContributions and/or fixes to this package are more than welcome. Please submit\nthem by forking this repository and creating a Pull Request that includes your\nchanges. We ask that you please include unit tests and any appropriate\ndocumentation updates along with your code changes.\n\nThis project will adhere to the `Semantic Versioning`_ methodology as much as\npossible, so when building dependent projects, please use appropriate version\nrestrictions.\n\n.. _`Semantic Versioning`: http://semver.org\n\nA development environment can be set up to work on this package by doing the\nfollowing::\n\n    $ python -m venv rios\n    $ cd rios\n    $ . bin/activate\n    $ git clone git@github.com:prometheusresearch/rios.core.git\n    $ cd rios.core\n    $ pip install -e .\n    $ pip install -r requirements.txt\n    $ pytest\n\n\nLicense/Copyright\n=================\n\nThis project is licensed under the Apache v2 license. See the accompanying\n``LICENSE.rst`` file for details.\n\nCopyright (c) 2015, Prometheus Research, LLC\n\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Parsing and Validation Library for RIOS Files",
    "version": "0.10.0",
    "project_urls": {
        "Homepage": "https://github.com/prometheusresearch/rios.core"
    },
    "split_keywords": [
        "rios",
        "prismh",
        "research",
        "instrument",
        "assessment",
        "standard",
        "validation"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7eefbbdb22035aa9171f6b54259da32898d1f50cb992110027225ada23e612c5",
                "md5": "1e2447569a40710d61bdc25a3e320477",
                "sha256": "f024692b0ce89f1a9ee2166e56e418bd2c35fdfe0922396512639ada295446a0"
            },
            "downloads": -1,
            "filename": "rios.core-0.10.0-py2.py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "1e2447569a40710d61bdc25a3e320477",
            "packagetype": "bdist_wheel",
            "python_version": "py2.py3",
            "requires_python": null,
            "size": 34479,
            "upload_time": "2025-02-12T19:00:47",
            "upload_time_iso_8601": "2025-02-12T19:00:47.935700Z",
            "url": "https://files.pythonhosted.org/packages/7e/ef/bbdb22035aa9171f6b54259da32898d1f50cb992110027225ada23e612c5/rios.core-0.10.0-py2.py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "876dd67dd25d8ae435637bfcdf4517458e2020200cf02db52fdf7eb421075c7c",
                "md5": "fd4a4315689c22d260ed9732f955bea3",
                "sha256": "6e88d28b0a230159523ca653a81a56f99f2c25db68e88640c2b153d6adfaa81e"
            },
            "downloads": -1,
            "filename": "rios_core-0.10.0.tar.gz",
            "has_sig": false,
            "md5_digest": "fd4a4315689c22d260ed9732f955bea3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 72612,
            "upload_time": "2025-02-12T19:00:49",
            "upload_time_iso_8601": "2025-02-12T19:00:49.889442Z",
            "url": "https://files.pythonhosted.org/packages/87/6d/d67dd25d8ae435637bfcdf4517458e2020200cf02db52fdf7eb421075c7c/rios_core-0.10.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-12 19:00:49",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "prometheusresearch",
    "github_project": "rios.core",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "twine",
            "specs": []
        },
        {
            "name": "wheel",
            "specs": []
        },
        {
            "name": "pytest",
            "specs": []
        },
        {
            "name": "pytest-cov",
            "specs": []
        },
        {
            "name": "Sphinx",
            "specs": []
        },
        {
            "name": "sphinx-autobuild",
            "specs": []
        },
        {
            "name": "HTSQL",
            "specs": [
                [
                    ">=",
                    "2.3"
                ],
                [
                    "<",
                    "2.4"
                ]
            ]
        },
        {
            "name": "tidypy",
            "specs": []
        }
    ],
    "lcname": "rios.core"
}
        
Elapsed time: 0.40049s