#ontology #graph #ontologies #command-line #imports #command-line-tool #management

pyontoenv

Command line tool to manage ontologies and their imports in a local environment

20 releases

0.1.10-a1 Oct 8, 2024
0.1.9 Aug 29, 2024
0.1.9-a6 Jul 31, 2024
0.1.9-a1 Jun 20, 2024
0.1.6 Apr 29, 2024

#2 in #imports

BSD-3-Clause

1MB
2K SLoC

PyOntoenv

Installation

pip install pyontoenv

Usage

from ontoenv import Config, OntoEnv
from rdflib import Graph

cfg = Config(["../brick"], strict=False, offline=True)

# make environment
env = OntoEnv(cfg)

g = Graph()
# put the transitive owl:imports closure into 'g'
env.get_closure("https://brickschema.org/schema/1.4-rc1/Brick", g)

# or, get the graph directly
g = env.get_closure("https://brickschema.org/schema/1.4-rc1/Brick")

brick = Graph()
brick.parse("Brick.ttl", format="turtle")
# transitively import dependencies into the 'brick' graph, using the owl:imports declarations
env.import_dependencies(brick)

# pull Brick graph out of environment
brick = env.get_graph("https://brickschema.org/schema/1.4-rc1/Brick")

# import graphs by name
env.import_graph(brick, "https://w3id.org/rec")

Dependencies

~28–46MB
~748K SLoC