Skip to content
NeverBlink-OSSPublic

About

Find and download ontologies, and validate and convert LinkML schemas. One CLI for Linux, macOS and Windows, with libraries for Python, JS, the JVM and native code.

Topics

Resources

Code of conduct

Contributing

Stars

66 stars

Watchers

3 watching

Forks

Latest commit

 

History

397 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CLI release Discord GitHub stars License

ohi

ohi helps you find, download, and manage ontologies. ohi LinkML helps you write, check, and convert LinkML schemas. It's a single native command-line tool for Linux, macOS and Windows, with libraries for Python, JavaScript/TypeScript, C/C++/Rust, and the JVM.

What it does
ohi Search ontologies, download their files and manage ontology projects locally Docs · Browse
ohi LinkML Validate LinkML schemas and turn them into JSON Schema, SHACL, OWL, Pydantic and more Docs · Playground

Note

⭐ If you like ohi, consider giving it a star – it helps others find the project!

Install

On Linux, macOS, or Windows with Git Bash, MSYS2, Cygwin or WSL:

. <(curl -sSfL https://ohi.dev/install.sh)
ohi version

In PowerShell:

irm https://ohi.dev/install.ps1 | iex
ohi version

Read the scripts before running them: install.sh, install.ps1. For other ways to install (mise, manual download, the JAR) and how to verify a download, see the install guide.

Ontologies

Find an ontology on ohi.dev and download it:

ohi search foaf
ohi get foaf/foaf@2014-01-14 --format owl-turtle

Or record the ontologies your project depends on, so anyone can download the same files later:

ohi init
ohi add w3c/prov-o@2013 --format owl-turtle
ohi sync   # on another machine, after cloning

ohi.yaml lists what you asked for, and ohi.lock.json lists the exact files and their checksums. Commit both. See the ohi docs for the first-ontology walkthrough, projects and the full CLI reference.

LinkML

LinkML is a YAML-based language that lets you model your data or domain once. ohi LinkML is the engine that turns it into code, ontologies, and schemas your tools already use:

ohi linkml validate model.yaml
ohi linkml to json-schema model.yaml
ohi linkml to shacl model.yaml
ohi linkml from owl ontology.ttl   # turn an OWL ontology into LinkML

It tells you exactly what is wrong with your schema, and where:

LinkML schema validation in the CLI

  • Runs everywhere. Native binaries, the JVM, Node.js, the browser (no install – try the playground), Python, and C, C++ or Rust.
  • Fast. 22.9–38.5x faster than LinkML-Python, even on very large schemas.
  • Consistent. Every generator is rigorously tested against the same set of LinkML models.

Run ohi linkml --help for the full list of generators and importers, or read the LinkML docs.

Libraries

Language ohi LinkML ohi
Python neverblink-linkml ohi-sdk
JavaScript / TypeScript @neverblink/linkml @neverblink/ohi
JVM (Scala, Java, Kotlin) Maven Central, Javadoc eu.neverblink.ohi:ohi-sdk: Maven Central, Javadoc
C, C++, Rust Shared library from Releases –

Also available

Contributing

See CONTRIBUTING.md for how to build the project and send changes. Contributors need to sign our Contributor License Agreement. The project follows our Code of Conduct.

Have a question or an idea? Join our Discord – we're happy to help.

License and maintainers

ohi is licensed under the Apache License 2.0. See LICENSE for details.

ohi is developed and maintained by NeverBlink. For any inquiries, please email us.


This work has been supported by the HEDGE-IoT project grant number 101136216 funded by the European Commission as part of the Horizon Europe Framework Programme. However, views and opinions expressed are those of the authors only and do not necessarily reflect those of the European Union or the European Climate, Infrastructure and Environment Executive Agency. Neither the European Union nor the granting authority can be held responsible for them.

About

Find and download ontologies, and validate and convert LinkML schemas. One CLI for Linux, macOS and Windows, with libraries for Python, JS, the JVM and native code.

Topics

Resources

Code of conduct

Contributing

Stars

66 stars

Watchers

3 watching

Forks

Releases

Packages

Contributors

Languages