iscc-schema


Nameiscc-schema JSON
Version 0.4.1 PyPI version JSON
download
home_pagehttps://iscc.codes
SummaryISCC - JSON-LD Metadata and OpenAPI Service Descriptions
upload_time2024-01-21 22:35:14
maintainer
docs_urlNone
authorTitusz
requires_python>=3.7,<4.0.0
licenseApache-2.0
keywords iscc identifier media content hash blockchain similarity
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # **ISCC** - Schema

*ISCC - JSON-LD Metadata and OpenAPI Service Descriptions*

[![Build](https://github.com/iscc/iscc-schema/actions/workflows/tests.yml/badge.svg)](https://github.com/iscc/iscc-schema/actions/workflows/tests.yml)
[![Version](https://img.shields.io/pypi/v/iscc-schema.svg)](https://pypi.python.org/pypi/iscc-schema/)

## Introduction

This repository hosts all schema definitions of the ISCC. Schemas are defined in
[OpenAPI v3.1.0](https://spec.openapis.org/oas/v3.1.0.html) format and serve as a
single source of truth for auto-generated [JSON Schema](https://json-schema.org/)
definitions, [JSON-LD](https://json-ld.org/) contexts, and other schema related
artifacts.

## Metadata for Digital Content

Metadata is data about data. For digital content, metadata may describe assets for different
purposes such as data management, data provenance, allocation of royalties, indexing,
disambiguation, process automation, etc.

## ISCC Metadata

Calculating ISCC codes requires extensive processing of media assets. As a by-product, an ISCC
processor can automatically produce and retain metadata that describes the asset and helps with
comparing and matching digital content. ISCC creation is also an opportunity to embed metadata
into a digital asset. Once the metadata is embedded, an ISCC processor will automatically
regenerate the same ISCC Meta-Code without manually supplying custom metadata for processing.
As the ISCC targets a broad set of use-cases, it comes with a minimal and generic metadata schema.
This site documents the ISCC metadata model.

## Types of Metadata

For the identification of digital assets, ISCC distinguishes between two major types of metadata:

### Implicit Metadata

Implicit metadata is data that can be measured by analyzing a media asset. For example, an ISCC
processor can infer pixel width and height from an image or duration from an audio file. The use
of implicit metadata is very efficient and robust. It does not require a human to verify the
correctness of the data because it can be measured and verified automatically.

### Explicit Metadata

Explicit metadata is data about media assets assembled and curated by people. It is often stored
separately from the files in databases but may also be embedded into media assets. In contrast to
implicit metadata, human-curated metadata is prone to errors, laborious to manage, and often not
up to date. Platforms also tend to remove embedded metadata from the files they are hosting.

## Documentation

Documentation is hosted at [schema.iscc.codes](https://schema.iscc.codes)

## Status

Under development. Expect breaking changes until we reach a version 1.0 release.

## Generated files

The source of code generation are the files at `iscc_schema/models/*`.
The outputs produced when running `poe build` are:

- [`docs/schema/iscc.json`](https://github.com/iscc/iscc-schema/blob/main/docs/schema/iscc.json) - JSON Schema for ISCC Metadata
- [`docs/schema/index.md`](https://github.com/iscc/iscc-schema/blob/main/docs/schema/index.md) - JSON Schema Markdown documentation
- [`docs/context/iscc.jsonld`](https://github.com/iscc/iscc-schema/blob/main/docs/context/iscc.jsonld) - JSON-LD context for ISCC Metadata
- [`docs/terms/index.md`](https://github.com/iscc/iscc-schema/blob/main/docs/context/index.md) - ISCC Metadata Vocabulary documentation
- [`iscc_schema/schema.py`](https://github.com/iscc/iscc-schema/blob/main/iscc_schema/schema.py) - Pydantic models for ISCC Metadata
- [`iscc_schema/generator.py`](https://github.com/iscc/iscc-schema/blob/main/iscc_schema/generator.py) - Pydantic models for Generator Service API


## Published files

The generated files are published under the following canonical URLs:

- [`http://purl.org/iscc/schema`](http://purl.org/iscc/schema) - JSON Schema latest version
- [`http://purl.org/iscc/context`](http://purl.org/iscc/context) - JSON-LD Context latest version
- [`http://purl.org/iscc/terms`](http://purl.org/iscc/terms) - ISCC Metadata Vocabulary latest version
- [`http://pypi.org/project/iscc-schema`](http://pypi.org/project/iscc-schema) - Python package with pydantic models

## OpenAPI Docs

- [ISCC Generator Service](https://schema.iscc.codes/api)

## OpenAPI Extensions

The OpenAPI Specification allows for
[extending](https://spec.openapis.org/oas/latest.html#specification-extensions) the
specification with custom fields. Extensions must start with `x-`.
All ISCC extensions start with `x-iscc-`:

- `x-iscc-context` - for documenting JSON-LD contexts.
- `x-iscc-schema-doc` - for original descriptions from [schema.org](https://schema.org).
- `x-iscc-embed` - for information on how to embed fields into media assets.
- `x-iscc-status` - for information about status of the field

            

Raw data

            {
    "_id": null,
    "home_page": "https://iscc.codes",
    "name": "iscc-schema",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7,<4.0.0",
    "maintainer_email": "",
    "keywords": "iscc,identifier,media,content,hash,blockchain,similarity",
    "author": "Titusz",
    "author_email": "tp@py7.de",
    "download_url": "https://files.pythonhosted.org/packages/f8/ac/8429318eaa9834bc83264d6f058c7576dc6f60088647f39d9a10c930056e/iscc_schema-0.4.1.tar.gz",
    "platform": null,
    "description": "# **ISCC** - Schema\n\n*ISCC - JSON-LD Metadata and OpenAPI Service Descriptions*\n\n[![Build](https://github.com/iscc/iscc-schema/actions/workflows/tests.yml/badge.svg)](https://github.com/iscc/iscc-schema/actions/workflows/tests.yml)\n[![Version](https://img.shields.io/pypi/v/iscc-schema.svg)](https://pypi.python.org/pypi/iscc-schema/)\n\n## Introduction\n\nThis repository hosts all schema definitions of the ISCC. Schemas are defined in\n[OpenAPI v3.1.0](https://spec.openapis.org/oas/v3.1.0.html) format and serve as a\nsingle source of truth for auto-generated [JSON Schema](https://json-schema.org/)\ndefinitions, [JSON-LD](https://json-ld.org/) contexts, and other schema related\nartifacts.\n\n## Metadata for Digital Content\n\nMetadata is data about data. For digital content, metadata may describe assets for different\npurposes such as data management, data provenance, allocation of royalties, indexing,\ndisambiguation, process automation, etc.\n\n## ISCC Metadata\n\nCalculating ISCC codes requires extensive processing of media assets. As a by-product, an ISCC\nprocessor can automatically produce and retain metadata that describes the asset and helps with\ncomparing and matching digital content. ISCC creation is also an opportunity to embed metadata\ninto a digital asset. Once the metadata is embedded, an ISCC processor will automatically\nregenerate the same ISCC Meta-Code without manually supplying custom metadata for processing.\nAs the ISCC targets a broad set of use-cases, it comes with a minimal and generic metadata schema.\nThis site documents the ISCC metadata model.\n\n## Types of Metadata\n\nFor the identification of digital assets, ISCC distinguishes between two major types of metadata:\n\n### Implicit Metadata\n\nImplicit metadata is data that can be measured by analyzing a media asset. For example, an ISCC\nprocessor can infer pixel width and height from an image or duration from an audio file. The use\nof implicit metadata is very efficient and robust. It does not require a human to verify the\ncorrectness of the data because it can be measured and verified automatically.\n\n### Explicit Metadata\n\nExplicit metadata is data about media assets assembled and curated by people. It is often stored\nseparately from the files in databases but may also be embedded into media assets. In contrast to\nimplicit metadata, human-curated metadata is prone to errors, laborious to manage, and often not\nup to date. Platforms also tend to remove embedded metadata from the files they are hosting.\n\n## Documentation\n\nDocumentation is hosted at [schema.iscc.codes](https://schema.iscc.codes)\n\n## Status\n\nUnder development. Expect breaking changes until we reach a version 1.0 release.\n\n## Generated files\n\nThe source of code generation are the files at `iscc_schema/models/*`.\nThe outputs produced when running `poe build` are:\n\n- [`docs/schema/iscc.json`](https://github.com/iscc/iscc-schema/blob/main/docs/schema/iscc.json) - JSON Schema for ISCC Metadata\n- [`docs/schema/index.md`](https://github.com/iscc/iscc-schema/blob/main/docs/schema/index.md) - JSON Schema Markdown documentation\n- [`docs/context/iscc.jsonld`](https://github.com/iscc/iscc-schema/blob/main/docs/context/iscc.jsonld) - JSON-LD context for ISCC Metadata\n- [`docs/terms/index.md`](https://github.com/iscc/iscc-schema/blob/main/docs/context/index.md) - ISCC Metadata Vocabulary documentation\n- [`iscc_schema/schema.py`](https://github.com/iscc/iscc-schema/blob/main/iscc_schema/schema.py) - Pydantic models for ISCC Metadata\n- [`iscc_schema/generator.py`](https://github.com/iscc/iscc-schema/blob/main/iscc_schema/generator.py) - Pydantic models for Generator Service API\n\n\n## Published files\n\nThe generated files are published under the following canonical URLs:\n\n- [`http://purl.org/iscc/schema`](http://purl.org/iscc/schema) - JSON Schema latest version\n- [`http://purl.org/iscc/context`](http://purl.org/iscc/context) - JSON-LD Context latest version\n- [`http://purl.org/iscc/terms`](http://purl.org/iscc/terms) - ISCC Metadata Vocabulary latest version\n- [`http://pypi.org/project/iscc-schema`](http://pypi.org/project/iscc-schema) - Python package with pydantic models\n\n## OpenAPI Docs\n\n- [ISCC Generator Service](https://schema.iscc.codes/api)\n\n## OpenAPI Extensions\n\nThe OpenAPI Specification allows for\n[extending](https://spec.openapis.org/oas/latest.html#specification-extensions) the\nspecification with custom fields. Extensions must start with `x-`.\nAll ISCC extensions start with `x-iscc-`:\n\n- `x-iscc-context` - for documenting JSON-LD contexts.\n- `x-iscc-schema-doc` - for original descriptions from [schema.org](https://schema.org).\n- `x-iscc-embed` - for information on how to embed fields into media assets.\n- `x-iscc-status` - for information about status of the field\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "ISCC - JSON-LD Metadata and OpenAPI Service Descriptions",
    "version": "0.4.1",
    "project_urls": {
        "Bug Tracker": "https://github.com/iscc/iscc-schema/issues",
        "Changelog": "https://schema.iscc.codes/changelog",
        "Documentation": "https://schema.iscc.codes/",
        "Homepage": "https://iscc.codes",
        "Repository": "https://github.com/iscc/iscc-schema"
    },
    "split_keywords": [
        "iscc",
        "identifier",
        "media",
        "content",
        "hash",
        "blockchain",
        "similarity"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7a8371478a49b6d1e67c05bc86e19eceb92b111a331bb360ade20be608f28ed9",
                "md5": "e70c179b07abc8ec4ce8e19bd95ff68d",
                "sha256": "71459abf952436a878f34a4d8e8d912597b2a64cefdbfd491b1dfeed928a50cb"
            },
            "downloads": -1,
            "filename": "iscc_schema-0.4.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e70c179b07abc8ec4ce8e19bd95ff68d",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7,<4.0.0",
            "size": 44212,
            "upload_time": "2024-01-21T22:35:13",
            "upload_time_iso_8601": "2024-01-21T22:35:13.069658Z",
            "url": "https://files.pythonhosted.org/packages/7a/83/71478a49b6d1e67c05bc86e19eceb92b111a331bb360ade20be608f28ed9/iscc_schema-0.4.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f8ac8429318eaa9834bc83264d6f058c7576dc6f60088647f39d9a10c930056e",
                "md5": "efb2666446c75dea4e1d88912a8052a2",
                "sha256": "045dab9862acf5e32ebca462c2feaa9a97d470a343676aec19cdaf95646de378"
            },
            "downloads": -1,
            "filename": "iscc_schema-0.4.1.tar.gz",
            "has_sig": false,
            "md5_digest": "efb2666446c75dea4e1d88912a8052a2",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7,<4.0.0",
            "size": 31109,
            "upload_time": "2024-01-21T22:35:14",
            "upload_time_iso_8601": "2024-01-21T22:35:14.913894Z",
            "url": "https://files.pythonhosted.org/packages/f8/ac/8429318eaa9834bc83264d6f058c7576dc6f60088647f39d9a10c930056e/iscc_schema-0.4.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-01-21 22:35:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "iscc",
    "github_project": "iscc-schema",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "iscc-schema"
}
        
Elapsed time: 0.18417s