Metadata-Version: 2.4
Name: krrood
Version: 3.0.1
Summary: A python package for Knowledge Representation and Reasoning systems based on Object Oriented Design.
Author-email: Abdelrhman Bassiouny <abassiou@uni-bremen.de>, Tom Schierenbeck <tom_sch@uni-bremen.de>
License: MIT
Project-URL: Homepage, https://cram2.github.io/cognitive_robot_abstract_machine/krrood/intro.html
Project-URL: Source, https://github.com/cram2/cognitive_robot_abstract_machine
Project-URL: Bug Tracker, https://github.com/cram2/cognitive_robot_abstract_machine/issues
Keywords: Knowledge-representation,reasoning,ontology,orm,query-langauge,database,python
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.10
Description-Content-Type: text/markdown
Requires-Dist: rdflib
Requires-Dist: jinja2
Requires-Dist: owlrl
Requires-Dist: typing-extensions>=4.12.2
Requires-Dist: rustworkx>=0.14.0
Requires-Dist: sqlalchemy
Requires-Dist: black
Requires-Dist: sortedcontainers
Requires-Dist: anytree>=2.8.0
Requires-Dist: ordered_set>=4
Requires-Dist: pygraphviz>=1.7
Requires-Dist: typing-extensions>=4.12.2
Requires-Dist: graphviz
Requires-Dist: tabulate
Requires-Dist: ipython
Requires-Dist: requests
Requires-Dist: colorama
Requires-Dist: pygments
Requires-Dist: sqlalchemy
Requires-Dist: pandas
Requires-Dist: pyparsing>=3.2.3
Requires-Dist: omegaconf
Requires-Dist: rustworkx
Requires-Dist: pydot
Requires-Dist: ucimlrepo>=0.0.7
Requires-Dist: pdbpp
Requires-Dist: pytest
Provides-Extra: dev
Requires-Dist: pytest>=7.0.0; extra == "dev"

# KRROOD
KRROOD stands for Knowlege Representation & Reasoning Through Object Oriented Design. This project aims to provide a
unified way to represent and reason about knowledge in Python using the principles of object oriented design.

This project also is consistent with many of the ideas mentioned in the book
[Knowledge Representation and Reasoning](https://www.oreilly.com/library/view/knowledge-representation-and/9781558609327/).
And of course the books about object oriented design.

## Installation

```bash
pip install krrood
```
If you want to use the visualization feature, you will also need to install [rustworkx_utils](https://github.com/AbdelrhmanBassiouny/rustworkx_utils).
```bash
pip install rustworkx_utils
```

## Entity Query Language (EQL)

EQL is a relational query language that is pythonic, and intuitive.

The interface side of EQL is inspired by [euROBIN](https://www.eurobin-project.eu/) entity query language white paper.

## Ormatic

## Documentation

Read the documentation [here](https://code-iai.github.io/krrood/intro.html).
