ISCC - JSON-LD Metadata and OpenAPI Service Descriptions
Project description
ISCC - Schema
JSON Schema and JSON-LD Contexts for ISCC Metadata
What is iscc-schema?
iscc-schema provides the official schema definitions for the International Standard Content Code
(ISO 24138:2024). YAML-based OpenAPI 3.1.0 definitions
are the single source of truth for auto-generated JSON Schema,
JSON-LD contexts, Python models, and vocabulary
documentation.
Install
pip install iscc-schema
Quick Start
Core and Service metadata serialize as full JSON-LD by default:
from iscc_schema import IsccMeta
meta = IsccMeta(
iscc="ISCC:KACYPXW445FTYNJ3CYSXHAFJMA2HUWULUNRFE3BLHRSCXYH2M5AEGQY",
name="The Never Ending Story",
)
# Serialize as dict (set fields only)
meta.dict()
# {'iscc': 'ISCC:KACY...', 'name': 'The Never Ending Story'}
# Serialize as JSON (includes schema defaults)
meta.json()
# JSON-LD: includes @context, @type and a version-pinned $schema
Seed and Protocol records serialize as compact JSON — just the fields plus a version-pinned
$schema that anchors the schema version and lets any consumer recover full JSON-LD on demand:
from iscc_schema import STM, recover_context
seed = STM(
doi="10.5555/example.2020.0001",
resource_type="JournalArticle",
title="On the Stability of Quasilinear Forms",
publisher="Meridian Academic Press",
pubyear=2020,
)
# Compact JSON by default: fields plus the version-pinned $schema, no @context/@type
seed.json()
# Opt into full JSON-LD when you need it
seed.json(ld=True)
# Recover the JSON-LD @context from compact data using its $schema
recover_context(seed.dict())
Schema Categories
- ISCC Metadata. Core vocabulary for digital content identified by the ISCC. All fields are optional, covering content description, rights, technical properties, and cryptographic declarations.
- Seed Metadata. Industry-specific input for Meta-Code generation (
ISBN,ISRC,STM). Required fields ensure interoperable content fingerprinting across platforms. - Service Metadata. Use-case-specific schemas for ISCC registries (
TDM,GenAI). Machine-readable signals for text and data mining rights and generative AI disclosure. - Protocol Schemas. ISCC Discovery Protocol wire records (
IsccNote). Compact, signature-anchored declaration records for ISCC-HUB timestamping and registration.
Published Artifacts
| Artifact | URL |
|---|---|
| JSON Schema | http://purl.org/iscc/schema |
| JSON-LD Context | http://purl.org/iscc/context |
| Vocabulary | http://purl.org/iscc/terms |
| Python Package | https://pypi.org/project/iscc-schema |
Documentation
Documentation is hosted at schema.iscc.codes
Development
uv sync # Install dependencies
uv run poe all # Full build pipeline (codegen, tests, docs)
Status
Under development. Expect breaking changes until we reach a version 1.0 release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iscc_schema-0.8.0.tar.gz.
File metadata
- Download URL: iscc_schema-0.8.0.tar.gz
- Upload date:
- Size: 511.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ceca76958b4f76df686f93f37daef05d8026f24945db1d78e0aa5921b52cefc1
|
|
| MD5 |
0f7e200cb77abeaa7fa927dfdfb54a69
|
|
| BLAKE2b-256 |
e205430bd42956fd54770ca6ecf1debb9b0df70bd146d3c2eafd587578e54bd6
|
File details
Details for the file iscc_schema-0.8.0-py3-none-any.whl.
File metadata
- Download URL: iscc_schema-0.8.0-py3-none-any.whl
- Upload date:
- Size: 66.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
465a423647c8d845a704a3f4d04a7923f8633e33313eb618bb9ea80c60ec39b4
|
|
| MD5 |
4b8fc958143d1c6561307bbcdb9f55e4
|
|
| BLAKE2b-256 |
6c236b44c5bed78f6d76c365ddbe52ca8b5a9183cf763611b95481f98f363879
|