kodiak-taxonomy

![GitHub Top Language] ![Static unsafe] ![crates.io License] ![GitHub License]

![GitHub Latest Release] ![GitHub Commits]

![Code Coverage] ![GitHub Build Status] ![Static docs coverage] ![docs.rs] ![Libraries.io Dep Status]

![GitHub Security Schedule] ![GitHub Security Push]

![GitHub Open Issues] ![GitHub Closed Issues]

![crates.io Latest] ![crates.io Recent]

Get things organized with this powerful, yet easy to use taxonomy.

This library crate is a building block of the Kodiak project, thus the naming of the crate. Although, Kodiak has some quite specific requirements for a taxonomy, kodiak-taxonomy is kept generic, provides value on its own and might be of interest for other projects as well.

A taxonomy[^Wikipedia] is a classification scheme to organize things according to their types. Often, taxonomies offer a strictly hierarchical organization providing a tree-like structure. However, in practice, such taxonomies limit our ability to model our complex reality.

When looking for a powerful taxonomy which overcomes such limitations, kodiak-taxonomy might be a good fit for you. So, feel free to use it. If you consider using kodiak-taxonomy in your project but are missing functionality or have any other concerns, don't hesitate to file an issue on GitHub.

We are looking forward to your feedback.


You may be looking for:


Impressions

todo: show two examples of taxonomies supported by kodiak-taxonomy

Provide additional examples in EXAMPLES.md and link to it.

TL;DR

Kodiak's specific requirements regarding its taxonomy: - An element can have more than one superordinate element - The top of the taxonomy allows multiple elements, i.e. users are free to create multiple root-nodes - Elements might be complemented by arbitrary metadata (still todo: not implemented yet) - Edges (a tuple of a super and its sub element) might be complemented with arbitrary attributes (still todo: not implemented yet)

Known issues / limitations

Roadmap and future considerations

Version 0.7.0 (planned)

Version 0.6.0 (planned)

Version 0.5.0 (planned)

Version 0.4.0 (planned)

Version 0.3.0 (in progress)

Version 0.2.0 (delivered)

Version 0.1.0 (delivered)

Additional resources

Contributing

See CONTRIBUTING for more details.

Appendix

Cargo Geiger Safety Report

```

Metric output format: x/y x = unsafe code used by the build y = total unsafe code found in the crate

Symbols: 🔒 = No unsafe usage found, declares #![forbid(unsafecode)] ❓ = No unsafe usage found, missing #![forbid(unsafecode)] ☢️ = unsafe usage found

Functions Expressions Impls Traits Methods Dependency

0/0 0/0 0/0 0/0 0/0 🔒 kodiak-taxonomy 0.2.0

0/0 0/0 0/0 0/0 0/0

```

License

Licensed under either of

at your option.