linkml-runtime
Runtime environment for LinkML, the Linked open data modeling language
What it is and what it does
linkml-runtime is the companion library for LinkML, a linked data modeling language. When you use LinkML's schema compiler to generate Python dataclasses from a schema definition, those generated classes depend on this package to function. It provides the machinery to load data from external formats (JSON, YAML, RDF, TSV) into your generated dataclass instances and dump them back out, making it easy to work with structured data that conforms to a LinkML schema.
The package also bundles the Python representation of the LinkML metamodel itself and includes SchemaView, a utility for programmatically inspecting and manipulating LinkML schemas. It's designed for developers building data pipelines, knowledge graphs, or domain-specific data systems where schema-driven serialization and deserialization are central to the workflow.
Use it for:
- Load YAML or JSON configuration files into strongly-typed Python objects generated from a LinkML schema.
- Convert RDF data into Python dataclass instances for easier manipulation in application code.
- Serialize Python objects back to JSON, YAML, or RDF for storage or downstream processing.
- Programmatically inspect and validate LinkML schemas using SchemaView for code generation or documentation.
- Build data pipelines that move data between multiple formats (TSV, JSON, RDF) while maintaining schema compliance.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides runtime support for LinkML-generated Python dataclasses, including loaders and dumpers for converting between JSON, YAML, RDF, TSV, and LinkML object instances.
Yes, if you are using LinkML to generate Python dataclasses from schemas. This package is a required dependency for any generated model to work. It is actively maintained, has low install friction, carries a permissive license, and has no known security vulnerabilities. Install it as part of your LinkML workflow.
Install
linkml-runtime on PyPI
pip
pip install linkml-runtimeuv
uv add linkml-runtimepoetry
poetry add linkml-runtimeInstalling linkml-runtime
Before you install
Low install friction with a pure-Python wheel and active maintenance status. The package carries 14 runtime dependencies including jsonschema, pydantic, rdflib, and requests, which are all widely-used libraries.
License in practice
Licensed under CC0-1.0 (public domain equivalent), permissive treatment means you can use, modify, and distribute this package with minimal restrictions.
Quickstart
pip install linkml-runtime
from linkml_runtime.loaders import yaml_loader
from linkml_runtime.dumpers import yaml_dumper
# Load YAML data into a LinkML-generated dataclass instance
instance = yaml_loader.load(yaml_string, MyDataClass)
# Dump instance back to YAML
output = yaml_dumper.dumps(instance)
Requires Python 3.10 or later; designed to work with dataclasses generated by the LinkML schema compiler.
Verify before relying
- Whether the package is actively maintained by the LinkML project or community-driven; maintenance.status shows 'active' but repo metadata is unavailable.
- Performance characteristics when handling large RDF graphs or deeply nested YAML structures.
- Whether all 14 runtime dependencies are always required or if some are optional for specific loaders/dumpers.
Package facts
| License | CC0-1.0 (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 14 — click, curies, deprecated, hbreader, isodate, json-flattener, jsonasobj2, jsonschema, prefixcommons, prefixmaps, pydantic, pyyaml, rdflib, requests |
| Maintenance | actively maintained — 86 days since the last release |
| First released | |
| Downloads | 466,751/month — #6,502 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: linkml_runtime-1.11.1-py3-none-any.whl
Keywords: linkml, metamodel, owl, rdf, schema visualization, yaml
Tags
More Python Modules packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
PyYAMLPyYAML parses and emits YAML 1.1 data format,…
permissive · top 100 on PyPI
pydanticPydantic validates Python data structures…
permissive · top 100 on PyPI
annotated-typesProvides reusable metadata objects for use with…
permissive · top 100 on PyPI
typing-inspectionProvides runtime tools to inspect and…
permissive · top 100 on PyPI
linkmlLinkML is a modeling language for defining…
permissive · top 15,000 on PyPI
dataclass-wizardDataclass Wizard converts Python dataclasses to…
permissive · top 5,000 on PyPI
schema-saladSchema Salad is a schema language for…
permissive · top 15,000 on PyPI
rdflib-jsonldProvides JSON-LD parsing and serialization for…
permissive · top 15,000 on PyPI
datafilesDatafiles is a file-based ORM that…
permissive · top 15,000 on PyPI
ShExJSGShExJSG provides a Python object model for the…
permissive · top 15,000 on PyPI
databind.jsonDeserializes and serializes Python dataclasses…
permissive · top 15,000 on PyPI
databindDatabind deserializes JSON-like nested data…
permissive · top 15,000 on PyPI
SPARQLWrapperSPARQLWrapper provides a Python interface to…
unclear · top 5,000 on PyPI
openjd-modelParses, validates, and constructs Open Job…
permissive · top 15,000 on PyPI