openframe-criteria-set-protocol


Nameopenframe-criteria-set-protocol JSON
Version 2.5.0 PyPI version JSON
download
home_pageNone
SummaryA protocol and tools for defining and working with criteria sets
upload_time2025-11-06 12:23:09
maintainerNone
docs_urlNone
authorAndrés Angulo <aa@openframe.org>
requires_python>=3.10
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <img alt="Openframe ApS" src="https://openframe-public.s3.eu-west-1.amazonaws.com/assets/logo-text-google-admin.png" width="200" />

# Criteria Set Protocol

## Python library
This is a Python library with types and implementations of the Criteria Set Protocol. It is published
publicly on [PyPI](https://pypi.org/project/openframe-criteria-set-protocol/) as `openframe-criteria-set-protocol`.

### Installation
```bash
pip install openframe-criteria-set-protocol
```

### Contents
#### Protocol v1
The library contains the types defined in the protocol v1 specification.

##### Types
| Type                          | Remarks                                             |
|-------------------------------|-----------------------------------------------------|
| **Metadata types**            |                                                     |
| `Metadata`                    |                                                     |
| `Theme`                       |                                                     |
| `ThemeStyle`                  |                                                     |
| `Color`                       |                                                     |
| `RgbColor`                    |                                                     |
| **Task tree types**           |                                                     |
| `CriteriaTree`                |                                                     |
| `Criterion`                   |                                                     |
| `TaskGroup`                   |                                                     |
| `Task`                        |                                                     |
| `TaskItem`                    |                                                     |
| **TaskItem value types**      |                                                     |
| `SelectSingleType`            |                                                     |
| `SelectMultipleType`          |                                                     |
| `NumberType`                  |                                                     |
| `BooleanType`                 |                                                     |
| `PointOption`                 | Used by `SelectSingleType` and `SelectMultipleType` |
| `TaskItemValue`               | The raw value of a TaskItem, which can be an array  |
| `TaskItemScalarValue`         | The raw value of a TaskItem                         |
| **REST types**                |                                                     |
| `MetadataResponse`            | Metadata endpoint response body                     |
| `StreamCriteriaSetMatrixBody` | Request body for the matrix streaming endpoints     |
| `StreamMatrixResponse`        | Matrix streaming endpoints response body            |

##### Schemas
Validation schemas are provided for validating the endpoints of the protocol v1 specification.

| Schema                    | Remarks                                                                         |
|---------------------------|---------------------------------------------------------------------------------|
| `criteria_set_id`         | Regular expression for the criteria_set_id parameter for endpoints which use it |
| `version`                 | Regular expression for the version parameter for endpoints which use it         |
| **marshmallow schemas**   |                                                                                 |
| `TreeAndMatrixBodySchema` | Schema for validating the request body for tree and matrix endpoints            |

### Deployment
Deploy using the following commands:

```bash
python3 -m build
python3 -m twine upload dist/*
```

## License
<p xmlns:cc="http://creativecommons.org/ns#" xmlns:dct="http://purl.org/dc/terms/"><a property="dct:title" rel="cc:attributionURL" href="https://github.com/openframe-org/criteria-set-protocol">Openframe Criteria Set Protocol</a> by <a rel="cc:attributionURL dct:creator" property="cc:attributionName" href="https://github.com/andresangulo">Openframe ApS</a> is licensed under <a href="http://creativecommons.org/licenses/by-nd/4.0/?ref=chooser-v1" target="_blank" rel="license noopener noreferrer" style="display:inline-block;">CC BY-ND 4.0<img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1"><img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/by.svg?ref=chooser-v1"><img style="height:22px!important;margin-left:3px;vertical-align:text-bottom;" src="https://mirrors.creativecommons.org/presskit/icons/nd.svg?ref=chooser-v1"></a></p>

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "openframe-criteria-set-protocol",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.10",
    "maintainer_email": null,
    "keywords": null,
    "author": "Andr\u00e9s Angulo <aa@openframe.org>",
    "author_email": "Andr\u00e9s Angulo <aa@openframe.org>",
    "download_url": "https://files.pythonhosted.org/packages/1b/77/aaf52c13d393a91258e99df18d9d034755710c077116d6e695138af32c05/openframe_criteria_set_protocol-2.5.0.tar.gz",
    "platform": null,
    "description": "<img alt=\"Openframe ApS\" src=\"https://openframe-public.s3.eu-west-1.amazonaws.com/assets/logo-text-google-admin.png\" width=\"200\" />\n\n# Criteria Set Protocol\n\n## Python library\nThis is a Python library with types and implementations of the Criteria Set Protocol. It is published\npublicly on [PyPI](https://pypi.org/project/openframe-criteria-set-protocol/) as `openframe-criteria-set-protocol`.\n\n### Installation\n```bash\npip install openframe-criteria-set-protocol\n```\n\n### Contents\n#### Protocol v1\nThe library contains the types defined in the protocol v1 specification.\n\n##### Types\n| Type                          | Remarks                                             |\n|-------------------------------|-----------------------------------------------------|\n| **Metadata types**            |                                                     |\n| `Metadata`                    |                                                     |\n| `Theme`                       |                                                     |\n| `ThemeStyle`                  |                                                     |\n| `Color`                       |                                                     |\n| `RgbColor`                    |                                                     |\n| **Task tree types**           |                                                     |\n| `CriteriaTree`                |                                                     |\n| `Criterion`                   |                                                     |\n| `TaskGroup`                   |                                                     |\n| `Task`                        |                                                     |\n| `TaskItem`                    |                                                     |\n| **TaskItem value types**      |                                                     |\n| `SelectSingleType`            |                                                     |\n| `SelectMultipleType`          |                                                     |\n| `NumberType`                  |                                                     |\n| `BooleanType`                 |                                                     |\n| `PointOption`                 | Used by `SelectSingleType` and `SelectMultipleType` |\n| `TaskItemValue`               | The raw value of a TaskItem, which can be an array  |\n| `TaskItemScalarValue`         | The raw value of a TaskItem                         |\n| **REST types**                |                                                     |\n| `MetadataResponse`            | Metadata endpoint response body                     |\n| `StreamCriteriaSetMatrixBody` | Request body for the matrix streaming endpoints     |\n| `StreamMatrixResponse`        | Matrix streaming endpoints response body            |\n\n##### Schemas\nValidation schemas are provided for validating the endpoints of the protocol v1 specification.\n\n| Schema                    | Remarks                                                                         |\n|---------------------------|---------------------------------------------------------------------------------|\n| `criteria_set_id`         | Regular expression for the criteria_set_id parameter for endpoints which use it |\n| `version`                 | Regular expression for the version parameter for endpoints which use it         |\n| **marshmallow schemas**   |                                                                                 |\n| `TreeAndMatrixBodySchema` | Schema for validating the request body for tree and matrix endpoints            |\n\n### Deployment\nDeploy using the following commands:\n\n```bash\npython3 -m build\npython3 -m twine upload dist/*\n```\n\n## License\n<p xmlns:cc=\"http://creativecommons.org/ns#\" xmlns:dct=\"http://purl.org/dc/terms/\"><a property=\"dct:title\" rel=\"cc:attributionURL\" href=\"https://github.com/openframe-org/criteria-set-protocol\">Openframe Criteria Set Protocol</a> by <a rel=\"cc:attributionURL dct:creator\" property=\"cc:attributionName\" href=\"https://github.com/andresangulo\">Openframe ApS</a> is licensed under <a href=\"http://creativecommons.org/licenses/by-nd/4.0/?ref=chooser-v1\" target=\"_blank\" rel=\"license noopener noreferrer\" style=\"display:inline-block;\">CC BY-ND 4.0<img style=\"height:22px!important;margin-left:3px;vertical-align:text-bottom;\" src=\"https://mirrors.creativecommons.org/presskit/icons/cc.svg?ref=chooser-v1\"><img style=\"height:22px!important;margin-left:3px;vertical-align:text-bottom;\" src=\"https://mirrors.creativecommons.org/presskit/icons/by.svg?ref=chooser-v1\"><img style=\"height:22px!important;margin-left:3px;vertical-align:text-bottom;\" src=\"https://mirrors.creativecommons.org/presskit/icons/nd.svg?ref=chooser-v1\"></a></p>\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A protocol and tools for defining and working with criteria sets",
    "version": "2.5.0",
    "project_urls": {
        "Bug Tracker": "https://github.com/openframe-org/criteria-set-protocol/issues",
        "Homepage": "https://github.com/openframe-org/criteria-set-protocol"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3d4d958bc3edf924cff532e8779d5b3d8a0a5b2e5d4dbaa31aa2cbbe29f59e68",
                "md5": "0b99df01d2c7b1cc51c33e913d750575",
                "sha256": "4e77efbe644126b89a9629681ccf77b6901dc92ef2704dcfb1f4e1579d91fd7e"
            },
            "downloads": -1,
            "filename": "openframe_criteria_set_protocol-2.5.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "0b99df01d2c7b1cc51c33e913d750575",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.10",
            "size": 17107,
            "upload_time": "2025-11-06T12:23:05",
            "upload_time_iso_8601": "2025-11-06T12:23:05.257735Z",
            "url": "https://files.pythonhosted.org/packages/3d/4d/958bc3edf924cff532e8779d5b3d8a0a5b2e5d4dbaa31aa2cbbe29f59e68/openframe_criteria_set_protocol-2.5.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1b77aaf52c13d393a91258e99df18d9d034755710c077116d6e695138af32c05",
                "md5": "eb250a9e20e1a52ca2fb08561c938c49",
                "sha256": "e712850ad8c39499f9391d32d28be22dd25eb6470c8689de24fbc6a1887c03db"
            },
            "downloads": -1,
            "filename": "openframe_criteria_set_protocol-2.5.0.tar.gz",
            "has_sig": false,
            "md5_digest": "eb250a9e20e1a52ca2fb08561c938c49",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.10",
            "size": 16281,
            "upload_time": "2025-11-06T12:23:09",
            "upload_time_iso_8601": "2025-11-06T12:23:09.094983Z",
            "url": "https://files.pythonhosted.org/packages/1b/77/aaf52c13d393a91258e99df18d9d034755710c077116d6e695138af32c05/openframe_criteria_set_protocol-2.5.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-11-06 12:23:09",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "openframe-org",
    "github_project": "criteria-set-protocol",
    "github_not_found": true,
    "lcname": "openframe-criteria-set-protocol"
}
        
Elapsed time: 3.35065s