vo-models


Namevo-models JSON
Version 0.4.2 PyPI version JSON
download
home_pageNone
SummaryPydantic data models for IVOA protocols
upload_time2024-10-21 14:05:38
maintainerNone
docs_urlNone
authorNone
requires_python>=3.10
licenseNone
keywords ivoa pydantic pydantic-xml
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # vo-models

`vo-models` is an open-source project to provide Python models for [IVOA](https://www.ivoa.net/) service protocols.

The project is designed to be used by IVOA members, service implementors, and developers to help facilitate the development of IVOA-compliant services and clients.

## Features

- **Pydantic-xml Models:** The project includes Python models for IVOA protocols, using [pydantic-xml](https://github.com/dapper91/pydantic-xml). Based on [Pydantic](https://docs.pydantic.dev/latest/), these models describe transactions for an IVOA protocol, such as UWS, and feature automatic validation, parsing and serialization of XML data for use with Python clients and web frameworks.

- **Expandability:** The project is designed with future expansion in mind. Plans include extending the schema and models to cover other IVOA standards and future versions of existing standards where possible.

## Protocols

The following IVOA protocols are currently supported:

- **UWS (Universal Worker Service) version 1.1**
- **VOSI (IVOA Support Interfaces) version 1.1**
  - VOSI Availability
  - VOSI Tables
  - VOSI Capabilities
- **VODataService version 1.2 (limited)**
  - DataType
  - FKColumn
  - ForeignKey
  - Table
  - TableParam
  - TableSchema
  - TableSet
  - others
- **VOResource version 1.1**
- **TAPRegExt version 1.0**

You can read more about using these models in our documentation: https://vo-models.readthedocs.io/


## Installation

The latest version of the project can be installed from PyPI:

```bash
pip install vo-models
```

### Conda

To install the project using Conda, you can use the provided environment file:

```bash
git clone https://github.com/spacetelescope/vo-models.git
cd vo-models
conda env create -f environment.yml
conda activate vo-models
pip install -r requirements.txt
pip install .
```

For active development, install the project in development mode:

```bash
pip install -e .[dev,test]
```

### Contributing

Contributions to the project are more than welcome. Collaboration and discussion with other IVOA members, service implementors, and developers is what started this project, and is what makes the IVOA great.

If you are interested in contributing, whether that be adding a new protocol, improving the schema, fixing a bug or even a typo, please feel free to open an issue or pull request.


### License

This project is licensed under the [MIT License](LICENSE).

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "vo-models",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": "ivoa, pydantic, pydantic-xml",
    "author": null,
    "author_email": "Joshua Fraustro <jfraustro@stsci.edu>, MAST Archive Developers <archive@stsci.edu>",
    "download_url": "https://files.pythonhosted.org/packages/1c/22/76de633f492f3cd4d38cc51a4c8b27842683024fd502bd76d641eefbefe1/vo_models-0.4.2.tar.gz",
    "platform": null,
    "description": "# vo-models\n\n`vo-models` is an open-source project to provide Python models for [IVOA](https://www.ivoa.net/) service protocols.\n\nThe project is designed to be used by IVOA members, service implementors, and developers to help facilitate the development of IVOA-compliant services and clients.\n\n## Features\n\n- **Pydantic-xml Models:** The project includes Python models for IVOA protocols, using [pydantic-xml](https://github.com/dapper91/pydantic-xml). Based on [Pydantic](https://docs.pydantic.dev/latest/), these models describe transactions for an IVOA protocol, such as UWS, and feature automatic validation, parsing and serialization of XML data for use with Python clients and web frameworks.\n\n- **Expandability:** The project is designed with future expansion in mind. Plans include extending the schema and models to cover other IVOA standards and future versions of existing standards where possible.\n\n## Protocols\n\nThe following IVOA protocols are currently supported:\n\n- **UWS (Universal Worker Service) version 1.1**\n- **VOSI (IVOA Support Interfaces) version 1.1**\n  - VOSI Availability\n  - VOSI Tables\n  - VOSI Capabilities\n- **VODataService version 1.2 (limited)**\n  - DataType\n  - FKColumn\n  - ForeignKey\n  - Table\n  - TableParam\n  - TableSchema\n  - TableSet\n  - others\n- **VOResource version 1.1**\n- **TAPRegExt version 1.0**\n\nYou can read more about using these models in our documentation: https://vo-models.readthedocs.io/\n\n\n## Installation\n\nThe latest version of the project can be installed from PyPI:\n\n```bash\npip install vo-models\n```\n\n### Conda\n\nTo install the project using Conda, you can use the provided environment file:\n\n```bash\ngit clone https://github.com/spacetelescope/vo-models.git\ncd vo-models\nconda env create -f environment.yml\nconda activate vo-models\npip install -r requirements.txt\npip install .\n```\n\nFor active development, install the project in development mode:\n\n```bash\npip install -e .[dev,test]\n```\n\n### Contributing\n\nContributions to the project are more than welcome. Collaboration and discussion with other IVOA members, service implementors, and developers is what started this project, and is what makes the IVOA great.\n\nIf you are interested in contributing, whether that be adding a new protocol, improving the schema, fixing a bug or even a typo, please feel free to open an issue or pull request.\n\n\n### License\n\nThis project is licensed under the [MIT License](LICENSE).\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Pydantic data models for IVOA protocols",
    "version": "0.4.2",
    "project_urls": {
        "Homepage": "https://github.com/spacetelescope/vo-models",
        "Issues": "https://github.com/spacetelescope/vo-models/issues"
    },
    "split_keywords": [
        "ivoa",
        " pydantic",
        " pydantic-xml"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "3a6db2d7d80176d0d34c70b63cb6739c59176566277d210f5f9608566b2cb9d1",
                "md5": "f4b2dc6d5c9e8228a8f5ac580cb99829",
                "sha256": "fc781f8f4746cf9d610687a2ce8a6ceb64717ba56e72ba487cafc4fe6df24907"
            },
            "downloads": -1,
            "filename": "vo_models-0.4.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f4b2dc6d5c9e8228a8f5ac580cb99829",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 30081,
            "upload_time": "2024-10-21T14:05:37",
            "upload_time_iso_8601": "2024-10-21T14:05:37.369897Z",
            "url": "https://files.pythonhosted.org/packages/3a/6d/b2d7d80176d0d34c70b63cb6739c59176566277d210f5f9608566b2cb9d1/vo_models-0.4.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1c2276de633f492f3cd4d38cc51a4c8b27842683024fd502bd76d641eefbefe1",
                "md5": "57f7aa860e032c554599288d006ccae2",
                "sha256": "cbca9c22d2ddd4a283c07d1d3e56726e7892b5acf110926417915284caf2583b"
            },
            "downloads": -1,
            "filename": "vo_models-0.4.2.tar.gz",
            "has_sig": false,
            "md5_digest": "57f7aa860e032c554599288d006ccae2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 25221,
            "upload_time": "2024-10-21T14:05:38",
            "upload_time_iso_8601": "2024-10-21T14:05:38.330749Z",
            "url": "https://files.pythonhosted.org/packages/1c/22/76de633f492f3cd4d38cc51a4c8b27842683024fd502bd76d641eefbefe1/vo_models-0.4.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-10-21 14:05:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "spacetelescope",
    "github_project": "vo-models",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "vo-models"
}
        
Elapsed time: 1.10895s