You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: MAINTANANCE.md
+51-7Lines changed: 51 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -14,16 +14,60 @@ The primary goals of the OntoLearner maintenance objectives are to:
14
14
15
15
A core team will be responsible for the ongoing maintenance of OntoLearner, including:
16
16
-**Lead Maintainers**: Oversee all maintenance activities, ensure the direction aligns with the project's vision, and handle critical issues.
17
-
-[Hamed Babaei Giglou](https://hamedbabaei.github.io/) – Project Lead – Responsible for the overall vision, maintenance activities, and coordination of the library’s development.
17
+
-[Dr. Jennifer D'Souza](https://sites.google.com/view/jen-web) and [Hamed Babaei Giglou](https://hamedbabaei.github.io/) – Project Lead – Responsible for the overall vision, maintenance activities, and coordination of the library’s development.
18
18
-[Andrei Aionei](https://www.linkedin.com/in/andreiaioanei/) – Project Senior Software Engineer – Responsible for maintenance activities and the library’s development.
19
-
-[Dr. Jennifer D'Souza](https://sites.google.com/view/jen-web) and [Prof. Dr. Sören Auer](https://www.tib.eu/en/research-development/research-groups-and-labs/data-science-and-digital-libraries/staff/soeren-auer) – Project Supervisors and Principal Investigators (PI) – Responsible for guiding ideation, refining ideas, and defining the project's high-level direction to align the library's goals with broader academic and research objectives.
19
+
-[Prof. Dr. Sören Auer](https://www.tib.eu/en/research-development/research-groups-and-labs/data-science-and-digital-libraries/staff/soeren-auer) – Project Supervisors and Principal Investigators (PI) – Responsible for guiding ideation, refining ideas, and defining the project's high-level direction to align the library's goals with broader academic and research objectives.
20
20
21
21
## 2. Current Ongoing Maintenance and Plans
22
22
23
23
A roadmap for new features and improvements, ensuring the library evolves in response to user needs and feedback is presented as follows. This list will be updated regularly as we explore the variety of works within the ontology alignment field to ensure the diverse methods within the library.
| Reasoning | Integration of reasoning-oriented prompt evaluation tasks to test LLM capabilities in generating consistent and logically valid ontological structures (e.g., subclass chains, disjointness, transitivity). | TODO |
28
-
| Agentic | Support for agent-based extensions using platforms like [CrewAI](https://github.com/crewAIInc/crewAI) to enable autonomous, multi-step ontology engineering workflows coordinated through modular agents. | TODO |
|Ontologizer| Adding more ontologies to the OntoLearner | InProgress|
28
+
| Reasoning | Integration of reasoning-oriented prompt evaluation tasks to test LLM capabilities in generating consistent and logically valid ontological structures (e.g., subclass chains, disjointness, transitivity). | TODO |
29
+
| Agentic | Support for agent-based extensions using platforms like [CrewAI](https://github.com/crewAIInc/crewAI) to enable autonomous, multi-step ontology engineering workflows coordinated through modular agents. | TODO |
30
+
|Documentation| Adding more documentation and tutorials | InProgress|
31
+
|Testing| Adding unittest to support different stages of modularization | InProgress|
32
+
|Learner| Incorporating more learner models. Including those from LLMs4OL challenge | InProgress|
33
+
|Reasoning| Adding reasoning techniques | To-Do|
34
+
|...| ... |...|
35
+
36
+
> **If you are willing to have your Ontology Learning model or feature within OntoLearner don't hesitate to contact us via [GitHub Issues](https://github.com/sciknoworg/ontolearner/issues) or via email to [[email protected]](mailto:[email protected])**.
37
+
38
+
## 3. Maintenance Regulations
39
+
The following activities will be performed regularly:
40
+
-**Code Quality**:
41
+
- Enforce PEP 8 compliance and code consistency using `pre-commit` hooks with `ruff` for linting and formatting.
42
+
- Run pre-commit checks regularly to maintain code quality and prevent style violations before commits.
43
+
- Perform continuous code refactoring to improve readability and reduce technical debt.
44
+
-**Version Control**:
45
+
- During the development or contribution we obligated to use Git with clear commit messages following best practices.
46
+
- We follow semantic versioning for the releases (e.g., v1.0.0 for the first stable release).
47
+
- OntoLearner Utilize GitHub **CI/CD** for automated ReadTheDocs deployment on every push to the main branch.
48
+
- Moreover, the PyPI release is automated for each versioning tag ensuring easy distribution.
49
+
- Each release includes (and should contain) proper documentation and a detailed in the **[CHANGELOG.md](CHANGELOG.md)** for new features, bug fixes, and breaking changes.
50
+
-**Release Cycle**:
51
+
-**Major Releases**: Major feature updates or breaking changes will be released every 6 months. These releases will introduce new features, remove deprecated functionality, or make significant changes to the architecture.
52
+
-**Minor Releases**: Regular updates that add new features or improvements will be released every month.
53
+
-**Patch Releases**: Bug fixes, security patches, and minor adjustments will be released as necessary, with a goal of addressing critical issues within 2-3 weeks of identification.
54
+
-**Documentation**
55
+
- Each new ontology should include a documentation guide for users to quickly use that model within the OntoLearner on real-world datasets.
56
+
- User documentation aim is to provide detailed information for each class and method for users to easily understand and apply.
57
+
- Code-level documentation is a "must" for the project as we use `Sphinx` to generate API documentation from docstrings.
58
+
-**Compatibility Checks**:
59
+
- Regularly monitoring and updating dependencies (e.g., `rdflib`, `owlready2`, `transformers`) to ensure compatibility with the latest Python versions and security patches.
60
+
- Regularly test compatibility with Python 3.10 and newer versions (e.g., Python 3.11, 3.12).
61
+
-**Security Management**:
62
+
- The sensitive data such as API keys or passwords are not allowed to be hard-coded in the repository. But allowed to use feed as an argument while using specific models.
63
+
- Each merge request will be assigned for code reviews focusing on security, especially when handling user data or integrating with external services.
64
+
65
+
66
+
## 4. Community Engagement
67
+
- We use [GitHub Issues](https://github.com/sciknoworg/ontolearner/issues) to track bugs, feature requests, and enhancements, ensuring critical issues get a response within **48 hours**.
68
+
- Contribution guidelines are outlined in **[CONTRIBUTING.md](CONTRIBUTING.md)**, detailing what contributions can be made, code standards, and PR submission processes.
69
+
70
+
- OntoLearner Code of Conduct is available at **[CODE_OF_CONDUCT.md](CODE_OF_CONDUCT.md)** to foster a welcoming and inclusive environment for community engagement.
71
+
72
+
73
+
For any inquiries for issue reporting, or long-term support, please feel free to contact the maintainer at **[[email protected]](mailto:[email protected])**.
0 commit comments