# Library Documentation

## CLI application

The source code for the CLI application is located in the [rudof_cli](https://github.com/rudof-project/rudof/tree/master/rudof_cli) folder.

## rudof library

Most of the rudof functionality is available through [rudof_lib](https://docs.rs/rudof_lib). Most of the clients are encouraged to access the library through this crate as the other elements could change.

## Library crates

The library is published as Rust crates, with the following ones:

- [dctap](https://docs.rs/dctap)
- [mie](https://docs.rs/mie)
- [pgschema](https://docs.rs/pgschema)
- [prefixmap](https://docs.rs/prefixmap)
- [rbe](https://docs.rs/rbe)
- [rdf_config](https://docs.rs/rdf_config)
- [rudof_config](https://docs.rs/rudof_config)
- [rudof_generate](https://docs.rs/rudof_generate)
- [rudof_iri](https://docs.rs/rudof_iri)
- [rudof_mcp](https://docs.rs/rudof_mcp)
- [rudof_rdf](https://docs.rs/rudof_rdf)
- [shacl](https://docs.rs/shacl)
- [shapes_comparator](https://docs.rs/shapes_comparator)
- [shapes_converter](https://docs.rs/shapes_converter)
- [shex_ast](https://docs.rs/shex_ast)
- [shex_validation](https://docs.rs/shex_validation)
- [sparql_service](https://docs.rs/sparql_service)


## Python bindings

The Python bindings are defined in the [python](https://github.com/rudof-project/rudof/tree/master/bindings/python).

- [python documentation](https://pyrudof.readthedocs.io/)
