# NUVA Python SDK
The **Unified Vaccine Nomenclature (NUVA)** Python SDK provides a comprehensive interface for working with vaccine nomenclature data. It's designed to aggregate vaccination histories from both digital and physical sources and build interpretable vaccination records for information systems.
## Installation
```bash
pip install nuva-sdk
```
## Quick Start
```python
from nuva import Nuva
# Load the latest NUVA database
nuva = Nuva.load(lang='en')
# Access repositories
vaccines = nuva.repositories.vaccines.all()
valences = nuva.repositories.valences.all()
diseases = nuva.repositories.diseases.all()
# Find specific items
vaccine = nuva.repositories.vaccines.find('vaccine_id')
valence = nuva.repositories.valences.find('valence_id')
disease = nuva.repositories.diseases.find('disease_id')
# Use queries for advanced searches
valences_for_vaccine = nuva.queries.valences_by_vaccine.call(vaccine)
vaccines_for_disease = nuva.queries.vaccines_by_disease.call(disease)
```
## Core Concepts
### Repositories
The library provides three main repositories:
- **vaccines**: Access to vaccine data
- **valences**: Access to valence (functional units) data
- **diseases**: Access to target disease data
Each repository exposes two methods:
- `all()`: Retrieve the entire collection
- `find(id)`: Retrieve a specific element by its identifier
### Queries
For advanced searches, the library provides query objects:
- `valences_by_vaccine`: Find valences for a given vaccine
- `vaccines_by_disease`: Find vaccines targeting a specific disease
- `vaccines_by_valence`: Find vaccines containing a specific valence
- `valences_by_disease`: Find valences targeting a specific disease
- `diseases_by_vaccine`: Find diseases targeted by a vaccine
- `diseases_by_valence`: Find diseases targeted by a valence
### Loading Data
You can load NUVA data in two ways:
1. **From CDN** (recommended):
```python
nuva = Nuva.load(lang='en') # Supports: en and fr
```
2. **From local file**:
```python
nuva = Nuva.load_from_file('path/to/database.db')
```
## License
This project is licensed under the MIT License.
## Contributing
Please see the main NUVA repository for contribution guidelines.
Raw data
{
"_id": null,
"home_page": "https://github.com/nuva/nuva-libs",
"name": "nuva-sdk",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.7",
"maintainer_email": null,
"keywords": "vaccine, vaccination, nomenclature, healthcare, immunization",
"author": "NUVA Team",
"author_email": "Syadem <developers@mesvaccins.net>",
"download_url": "https://files.pythonhosted.org/packages/e0/0e/9ca387b05d284bc6cb8dc2eec0e6d53b33afff3561c3f65f3579214040fd/nuva_sdk-1.0.0.tar.gz",
"platform": null,
"description": "# NUVA Python SDK\n\nThe **Unified Vaccine Nomenclature (NUVA)** Python SDK provides a comprehensive interface for working with vaccine nomenclature data. It's designed to aggregate vaccination histories from both digital and physical sources and build interpretable vaccination records for information systems.\n\n## Installation\n\n```bash\npip install nuva-sdk\n```\n\n## Quick Start\n\n```python\nfrom nuva import Nuva\n\n# Load the latest NUVA database\nnuva = Nuva.load(lang='en')\n\n# Access repositories\nvaccines = nuva.repositories.vaccines.all()\nvalences = nuva.repositories.valences.all()\ndiseases = nuva.repositories.diseases.all()\n\n# Find specific items\nvaccine = nuva.repositories.vaccines.find('vaccine_id')\nvalence = nuva.repositories.valences.find('valence_id')\ndisease = nuva.repositories.diseases.find('disease_id')\n\n# Use queries for advanced searches\nvalences_for_vaccine = nuva.queries.valences_by_vaccine.call(vaccine)\nvaccines_for_disease = nuva.queries.vaccines_by_disease.call(disease)\n```\n\n## Core Concepts\n\n### Repositories\n\nThe library provides three main repositories:\n\n- **vaccines**: Access to vaccine data\n- **valences**: Access to valence (functional units) data \n- **diseases**: Access to target disease data\n\nEach repository exposes two methods:\n- `all()`: Retrieve the entire collection\n- `find(id)`: Retrieve a specific element by its identifier\n\n### Queries\n\nFor advanced searches, the library provides query objects:\n\n- `valences_by_vaccine`: Find valences for a given vaccine\n- `vaccines_by_disease`: Find vaccines targeting a specific disease\n- `vaccines_by_valence`: Find vaccines containing a specific valence\n- `valences_by_disease`: Find valences targeting a specific disease\n- `diseases_by_vaccine`: Find diseases targeted by a vaccine\n- `diseases_by_valence`: Find diseases targeted by a valence\n\n### Loading Data\n\nYou can load NUVA data in two ways:\n\n1. **From CDN** (recommended):\n```python\nnuva = Nuva.load(lang='en') # Supports: en and fr\n```\n\n2. **From local file**:\n```python\nnuva = Nuva.load_from_file('path/to/database.db')\n```\n\n## License\n\nThis project is licensed under the MIT License.\n\n## Contributing\n\nPlease see the main NUVA repository for contribution guidelines.\n",
"bugtrack_url": null,
"license": null,
"summary": "Unified Vaccine Nomenclature (NUVA) Python SDK",
"version": "1.0.0",
"project_urls": {
"Bug Reports": "https://github.com/nuva/nuva-libs/issues",
"Documentation": "https://nuva.fr/docs",
"Homepage": "https://nuva.fr",
"Repository": "https://github.com/nuva/nuva-libs"
},
"split_keywords": [
"vaccine",
" vaccination",
" nomenclature",
" healthcare",
" immunization"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "c36cfa8b8c971097777cdd6f4088d079c3206b6d7ea30917579bf4fac7295448",
"md5": "ea717c65bbd5b5f83dea71735e256eb4",
"sha256": "e7de9a4b02c8367b71793e1e671e6b821a40b62083bca62045883567e471858b"
},
"downloads": -1,
"filename": "nuva_sdk-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "ea717c65bbd5b5f83dea71735e256eb4",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.7",
"size": 11697,
"upload_time": "2025-08-11T14:53:30",
"upload_time_iso_8601": "2025-08-11T14:53:30.238196Z",
"url": "https://files.pythonhosted.org/packages/c3/6c/fa8b8c971097777cdd6f4088d079c3206b6d7ea30917579bf4fac7295448/nuva_sdk-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e00e9ca387b05d284bc6cb8dc2eec0e6d53b33afff3561c3f65f3579214040fd",
"md5": "9c3a6b787e22a6797d0bd9ecc0b838dd",
"sha256": "2f81236ee3cdb39f7a38a2c34de935e596051887ddc3abf5ed2ca5e1ff0e4f80"
},
"downloads": -1,
"filename": "nuva_sdk-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "9c3a6b787e22a6797d0bd9ecc0b838dd",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.7",
"size": 8293,
"upload_time": "2025-08-11T14:53:31",
"upload_time_iso_8601": "2025-08-11T14:53:31.710254Z",
"url": "https://files.pythonhosted.org/packages/e0/0e/9ca387b05d284bc6cb8dc2eec0e6d53b33afff3561c3f65f3579214040fd/nuva_sdk-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-11 14:53:31",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "nuva",
"github_project": "nuva-libs",
"github_not_found": true,
"lcname": "nuva-sdk"
}