#owl #rdf #semantic-web

owlish

OWL 2 implementation with wasm support and turtle parsing

52 releases (18 breaking)

new 0.21.2 Jan 31, 2023
0.20.2 Jan 10, 2023
0.19.1 Dec 22, 2022
0.17.7 Nov 25, 2022
0.4.2 Jul 18, 2022

#126 in WebAssembly

Download history 88/week @ 2022-10-14 55/week @ 2022-10-21 26/week @ 2022-10-28 106/week @ 2022-11-04 63/week @ 2022-11-11 146/week @ 2022-11-18 52/week @ 2022-11-25 31/week @ 2022-12-02 51/week @ 2022-12-09 78/week @ 2022-12-16 22/week @ 2022-12-23 33/week @ 2022-12-30 89/week @ 2023-01-06 18/week @ 2023-01-13 9/week @ 2023-01-20 49/week @ 2023-01-27

170 downloads per month

MIT/Apache

1MB
11K SLoC

owlish

github crates.io docs.rs npmjs.com

This library provides OWL2 datastructures that allow you to build and work with ontologies.

The OWL2 model is based on functional style syntax. E.g. the function

ClassAssertion( :Person :Mary )

Is represented as a similar tuple struct

pub struct ClassAssertion(pub(crate) ClassConstructor, pub(crate) IndividualIRI);

Usage

owlish provides two APIs:

  1. A low level representation of OWL based on functional syntax
    • This is exported in owlish::owl::*
  2. A conceptional api that concatenates OWL data for relevant types.
    • TBD

Dev stuff

Build:

cargo build

Test:

cargo test

Run benchmark tests:

cargo bench

Commits and Releases

This crate uses convenentional commits to create automated releases whenever the main branch is updated. In addition the CHANGELOG.md is automatically generated.

Dependencies

~13MB
~256K SLoC