Hello,
I am a student in DHBW Mannheim and I am working on my bachelor thesis there. My Bachelor Project is to Develop an add-on on the openHab Software. The Purpose of the add-on is to be able to read an ontology design and interpret it and take from it the rules and convert them to openHab Code. the ontology design is basically a diagram where entities represent things and applying on the rules to help whatever the purpose is. “Security, etc.”. I just finished the openHab Documentation to familiarize myself with openHab and developed some small scenarios on it. I am just seeking guidelines and headstart for developing this add-on.
Thanks,
Mohamed Hesham Elganainy (MHGanainy)
Thats rather ambitious and very complex. You got any ontology designer in mind?
Semantic web, inference engines. I know what you are trying to do.
But I would suggest do something simpler and concrete that helps the project. There are plenty of interesting problems that community has prioritised.
Thank you Diyha.
But as i said above this is my bachelor project and i am not in control of changing it.
No I don’t have an ontology designer. But i am also asked to be creative and design one.
You said that there are complexities. In what scope are you saying this?? And what are they that you see.
I forgot to add that i am going to develop this in JAVA and i will start coding on the add-on repo right?
Is there some hint or advice you could give me
Before you accept a BA thesis you should be familiar or have a rough idea about all related topics.
The basics:
- Java 8
- OSGi concept
- The Maven buildsystem / eclipse IDE
- Git
openHAB currently changes its buildsystem and it is a bad timing to start developing at the moment. There are basically no guides existing yet and you will have to do quite a few things from the command line at the moment.
You also need to know about openHAB itself:
- How to provide Things / channels to the core
- How does your idea fit into the Thing/Channel/Item concept of OH
Your description misses a lot of details. What does “convert to openHAB code” mean. Like generating Java code? Or just dynamically generating things and channels?
There is already a natural language processor in openHAB core (parts are in habot) including an intent system that is extendable and is using the semantic tag system that is also in openHAB.
I think the thesis is about a different topic?
Is this a design time only system or it is supposed to be generating code/config on the fly as well?
Designer would be text or visual tool?
After inference the generated artifacts would be rules, java code, config files?
@diyha The ontlogy desinging tool will be protégé. I should take the design and the rules on the design amd transform them to openhab rules to maintain the ontology design
First, What i mean by converting to openhab code is that to generate openhab rules based on the ontology provided. I am quite familiar with java 8 + maven + git. And i have no knowledge about OSGi. Can you please emphasis why would i go with the OSGi.
Second, how would it make a difference to develop on openhab now. And why would i execute from the command line